哥斯拉、冰蝎、中国蚁剑在护网中流量特征分析,收藏起来当资料吧,24年护网用得上

护网哥斯拉、冰蝎、中国蚁剑流量分析

【点击免费领取】CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》🔗包含了应急响应工具、入侵排查、日志分析、权限维持、Windows应急实战、Linux应急实战、Web应急实战。


护网中最担心的是木马已经到了服务器,我们的监控软件却没告警,之所以没有告警主要原因就是我们使用的木马进行了各种加密和变种,导致了监控软件根本无法解密识别,今天我们就对市面上最常见的三款shell管理工具哥斯拉、冰蝎、中国蚁剑的流量进行分析,以确保我们在护网时遇到看不懂。

在这里插入图片描述


0x1 冰蝎

冰蝎是一款基于Java开发的动态加密通信流量的新型Webshell客户端。老牌 Webshell 管理神器——中国菜刀的攻击流量特征明显,容易被各类安全设备检测,实际场景中越来越少使用,加密 Webshell 正变得日趋流行。

由于通信流量被加密,传统的 WAF、IDS 设备难以检测,给威胁狩猎带来较大挑战。冰蝎其最大特点就是对交互流量进行对称加密,且加密秘钥是由随机数函数动态生成,因此该客户端的流量几乎无法检测。

基于冰蝎的加密流量威胁,剖析其通信原理,冰蝎的通信过程可以分为两个阶段:密钥协商以及加密传输。
第一阶段:密钥协商
1)攻击者通过 GET 或者 POST 方法,形如 http://xx.xxx.xx.xx/shell.aspx?pass=645 的请求服务器密钥;
2)服务器使用随机数 MD5 的高16位作为密钥,存储到会话的 $_SESSION 变量中,并返回密钥给攻击者。
第二阶段-加密传输
1)客户端把待执行命令作为输入,利用 AES 算法或 XOR 运算进行加密,并发送至服务端;
2)服务端接受密文后进行 AES 或 XOR 运算解密,执行相应的命令;
3)执行结果通过AES加密后返回给攻击者。

在这里插入图片描述

冰蝎2.0

    使用**AES加密 + base64编码**,AES使用动态密钥对通信进行加密,进行请求时内置了十几个User-Agent头,每次请求时会随机选择其中的一个。因此当发现一个ip的请求头中的user-agent在频繁变换,就可能是冰蝎。

冰蝎3.0

使用AES加密 + base64编码,取消了2.0的动态获取密钥,使用固定的连接密钥,AES加密的密钥为webshell连接密码的MD5的前16位,默认连接密码是"rebeyond"(即密钥是md5('rebeyond')[0:16]=e45e329feb5d925b)。进行请求时内置了十几个User-Agent头,每次请求时会随机选择其中的一个。因此当发现一个ip的请求头中的user-agent在频繁变换,就可能是冰蝎。

3.0连接jsp的webshell的请求数据包中的content-type字段常见为application/octet-stream3.0连接jsp的webshell的请求数据包中的content-type字段常见为application/octet-stream

冰蝎4.0

  • 提供了传输协议自定义的功能,让用户对流量的加密和解密进行自定义,实现流量加解密协议的去中心化。v4.0版本不再有连接密码的概念,自定义传输协议的算法就是连接密码。

  • Accept字段(弱特征),通常是Accept: application/json, text/javascript, /; q=0.01 意思是浏览器可接受任何文件,但最倾向application/json 和 text/javascript。

  • Content-Type字段(弱特征),通常是Content-type: Application/x-www-form-urlencoded

  • 与冰蝎的前述版本相似,进行请求时内置了十几个User-Agent头,每次请求时会随机选择其中的一个。

  • 连接的端口有一定的特征,冰蝎与webshell建立连接的同时,java也与目的主机建立tcp连接,每次连接使用本地端口在49700左右(就是比较大的端口),每连接一次,每建立一次新的连接,端口就依次增加。

  • 使用长连接,避免了频繁的握手造成的资源开销。默认情况下,请求头和响应头里会带有 Connection:Keep-Alive

  • 有固定的请求头和响应头,请求字节头:dFAXQV1LORcHRQtLRlwMAhwFTAg/M ,响应字节头:TxcWR1NNExZAD0ZaAWMIPAZjH1BFBFtHThcJSlUXWEd

  • 默认时,冰蝎 webshell都有“e45e329feb5d925b” 一串密钥,与冰蝎3.0相同。

总结:冰蝎版本较多,但是通性就是同一个ip请求User-Agent头会不断的变化,冰蝎4.0要考虑User-Agent头、端口号、开头字节及connection


0x2 哥斯拉

    哥斯拉支持多种加密方式,采用了和冰蝎 2.0 类似的密钥交换方式。它的webshell需要动态生成,可以根据需求选择不同的加密方式。

**
哥斯拉静态特征**

在默认脚本编码的情况下,jsp会出现xc、pass字符和Java反射(ClassLoader,getClass().getClassLoader()),base64加解码等特征。

哥斯拉动态特征

  • User-Agent字段(弱特征),如果采用默认的情况,会暴露使用的jdk信息。不过哥斯拉支持自定义HTTP头部,这个默认特征是可以很容易去除的。

  • Accept字段(弱特征),默认是Accept:text/html, image/gif, image/jpeg, *; q=.2, /; q=.2。同上,这个也可修改,只能作为辅助检测的特征。

  • Cookie中有一个非常关键的特征,最后会有个分号。估计后续的版本会修复。

  • 响应体的数据有一定特征,哥斯拉会把一个32位的md5字符串按照一半拆分,分别放在base64编码的数据的前后两部分。整个响应包的结构体征为:md5前十六位+base64+md5后十六位。


0x3 中国蚁剑

**
蚁剑webshell静态特征**

蚁剑中php使用assert、eval执行;asp只有eval执行;在jsp使用的是Java类加载(ClassLoader),同时会带有base64编码解码等字符特征。

蚁剑webshell动态特征

我们使用一句话木马上传webshell,抓包后会发现每个请求体都存在以@ini_set("display_errors","0");@set_time_limit(0)开头。并且响应体的返回结果是base64编码发混淆字符,格式为:随机数 结果 随机数


以上技术内容参考互联网各类技术大佬分享进行整合,如有错误还请大家留言指正。


网络安全成长路线图

这个方向初期比较容易入门一些,掌握一些基本技术,拿起各种现成的工具就可以开黑了。不过,要想从脚本小子变成hei客大神,这个方向越往后,需要学习和掌握的东西就会越来越多,以下是学习网络安全需要走的方向:
在这里插入图片描述

# 网络安全学习方法

​ 上面介绍了技术分类和学习路线,这里来谈一下学习方法:
​ ## 视频学习

​ 无论你是去B站或者是油管上面都有很多网络安全的相关视频可以学习,当然如果你还不知道选择那套学习,我这里也整理了一套和上述成长路线图挂钩的视频教程,完整版的视频已经上传至CSDN官方,朋友们如果需要可以点击这个链接免费领取。网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/22288.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java2实用教程上机实践9,10,11

前言 大家好呀,大家肯定遇到过学校布置的作业不会做的情况吧?这个时候大量的网上找资料,找如何做这道题,为了帮助用Java2实用教程(耿祥义 张跃平主编)的学子们拿满平时分,这里整理出这本书中比…

数据集成赛道重回数据领域兵家“必争之地”!

作者 | 郭炜 导读:此前,《技术成熟度曲线2024》第一、二部分内容已发布,详见《「从ETL 到ELT,到 EtLT的趋势」》、《数据集成成熟度模型解读》。本文为报告的最后一篇,主要对数据集成技术进行趋势预测与总结&#xff0…

python的DataFrame和Series

Series、DataFrame 创建 pd.Series() pd.DataFrame() # 字典{列名:[值1,值2],} [[]] [()] numpy Pandas的底层的数据结构,就是numpy的数组 ndarray 常用属性 shape (行数,) (行数,列数) values → ndarray index 索引名 siz…

华为管理工程部的前世今生

我们经常讲管理是一项系统工程,但在企业实际的管理建设和改进中,往往又并没有把管理当作一项系统工程来对待,更没有通过持续的管理变革或业务变革(BT,Business Transformation)来打造这一系统工程&#xff…

磐石云pscc系统电话不能正常使用,或者接不到电话,什么情况?

磐石云PSCC系统电话无法正常使用或接不到电话可能会出现以下情况: 网络问题:可能是由于网络连接不稳定或网络设置问题导致系统电话功能无法正常工作。建议检查网络连接是否正常,确保网络稳定。 系统配置问题:可能是由于系统配置错…

ffmpeg.dll在哪个文件夹?怎么快速的修复ffmpeg.dll文件的丢失

在处理多媒体文件时,ffmpeg.dll文件扮演着至关重要的角色。它是FFmpeg项目的一部分,该项目提供了一套能够录制、转换和流化音视频的工具和库。用户有时可能会遇到 ffmpeg.dll文件丢失的问题,这个问题可能会妨碍视频编辑软件等应用程序的正常运…

Python 表达:探索语言艺术的深度与广度

Python 表达:探索语言艺术的深度与广度 Python,这门简洁而强大的编程语言,以其优雅的表达方式吸引着无数开发者。在Python的世界中,表达不仅关乎代码的执行,更是一种艺术。本文将分四个方面、五个方面、六个方面和七个…

《计算机在材料科学中的应用》、《计算材料学》、《计算化学》、《计算物理学》、《计算矿物学》、《量子动力学与光谱》这些高校课程,优秀大学的老师都是怎么讲的?

《计算机在材料科学中的应用》、《计算材料学》、《计算化学》、《计算物理学》、《计算矿物学》、《量子动力学与光谱》等高校课程面临以下问题 PWmat开课优势:拥有30余年代码开发经验,产品拥有自主知识产权,软著和知识产权均国产化网上可查…

零基础python爬虫从入门到精通

零基础python爬虫从入门到精通 课程介绍学习地址下期更新预报 课程介绍 本套视频教程适合想掌握爬虫技术的学习者,以企业主流版本Python 3.7来讲解,内容包括:Python基础、Urllib、解析(xpath、jsonpath、beautiful)、…

BM25算法以及变种算法简介

深入理解TF-IDF、BM25算法与BM25变种:揭秘信息检索的核心原理与应用 原文链接: https://xie.infoq.cn/article/8b7232877d0d4327a6943e8ac BM25算法以及变种算法简介 Okapi BM25,一般简称 BM25 算法,在 20 世纪 70 年代到 80 年代…

Windows 11下载以及安装教程

1.下载安装 Windows 有三种下载方式,根据需求,选择其中一种方式就可以。 安装助手 下载工具,进行下载 下载Windows 11 镜像文件ISO 安装后效果 查看状态 2.下载 Windows 工具 https://pan.baidu.com/s/1dFl9QQ1rIGcsZLUD0dym6A?pwdwin1…

MYSQL数据库客户端常规指令使用

这里新开一章,对MYSQL进行更加底层的系统的一个学习 Mysql常用工具简介 emmmm这里的话就默认大家在linux系统上面都进行了MYSQL的安装了. 在mysql安装完成之后,一般在路径 /usr/bin 下的 我们对该路径进行一个文件的展示 这里是展示出来的辅助工具 …

海外短剧新体验:多平台适用,语言无障碍

前言 在数字化时代的浪潮下,海外短剧作为一种新兴的视听媒介,正逐渐走进我们的生活。这些由国外制作团队精心打造的短片或微电影,不仅内容丰富多彩,更在跨文化传播中展现出独特的魅力。 一、海外短剧系统有什么亮点? …

JS面试题:hash和history的区别

一、hash 模式和 history 模式的介绍 由于 Vue 项目为单页面应用,所以整个项目在开发和构建过程中,仅存在一个HTML物理文件。通过路由系统可以实现将项目的组件与可访问的URL路径进行绑定。由于Vue项目只有一个HTML物理文件,切换页面时既需要…

Android中打印某应用的堆栈信息

先更具报名获取pid adb shell "ps|grep 包名" zygote的堆栈dump 实际上这个可以同时dump java线程及native线程的堆栈&#xff0c;对于java线程&#xff0c;java堆栈和native堆栈都可以得到。 kill -3 <pid> debuggerd的堆栈dump debuggerd是android的一个…

20240604将OK3588-C的核心板刷机Buildroot之后强制横屏

20240604将OK3588-C的核心板刷机Buildroot之后强制横屏 2024/6/4 17:13 viewproviewpro-ThinkBook-16-G5-IRH:~/repo_RK3588_Buildroot20240508/kernel/arch/arm64/boot/dts/rockchip$ grep dsi0 . -R ./Makefile:dtb-$(CONFIG_ARCH_ROCKCHIP) rk3568m-serdes-evb-display-dsi…

代码解读 | Hybrid Transformers for Music Source Separation[01]

一、背景 今天对Hybrid Transformer Demucs代码进行解读&#xff0c;目标&#xff1a;明确图c中各个模块对应的代码具体在工程的哪个地方。解读的代码是开源工程中的htdemucs.py。 具体的paper解读看这篇文章。 二、代码解读 算法整体流程&#xff1a;图c其实是从下往上看的&a…

描述JSP的内置对象

JSP&#xff08;JavaServer Pages&#xff09;内置对象&#xff08;也称为隐式对象或预定义对象&#xff09;是JSP容器为每个页面提供的Java对象&#xff0c;开发者可以直接在JSP页面中使用它们&#xff0c;而无需显式声明。这些内置对象提供了对JSP页面运行环境信息的快速访问…

快速入门C++正则表达式

正则表达式&#xff08;Regular Expression&#xff0c;简称 Regex&#xff09;是一种强大的文本处理工具&#xff0c;广泛用于字符串的搜索、替换、分析等操作。它基于一种表达式语言&#xff0c;使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。正则表达式不仅在…