应急响应|入侵的通用处置流程

VSole2023-06-15 10:15:27

应急响应通用方法

查看日志

通过 cmd 输入 eventvwr.msc 打开事件查看器

在 % SystemRoot%\System32\Winevt\Logs\ 位置存放着日志文件

常见的事件 ID

安全日志

security.evtx

PLAINTEXT

1
2
3
4
5
6
7
8
4624 -成功登录
4625 -失败登录
4647 -成功注销
4720 -创建⽤户
4722 -启⽤账户
4724 -重置密码
4732 -添加⽤户到组
4738 -修改账户

远程登录日志

Microsoft-Windows-TerminalServices-RemoteConnectionManager%4Operational.evtx

Microsoft-Windows-TerminalServices-LocalSessionManager%4Operational.evtx

PLAINTEXT

 1149:⽤户认证成功
• 21:远程桌⾯服务:会话登录成功
• 22:远程桌⾯服务: 已收到 Shell 启动通知
• 24:远程桌⾯服务:会话已断开连接
• 25:远程桌⾯服务:会话重新连接成功

连接其他机器日志

Microsoft-Windows-TerminalServices-RDPClient%4Operational.evtx

PLAINTEXT

• 1024:RDP ClientActiveX 正在尝试连接到服务器(ip)

• 1102:客户端启动了到服务器 ip 的多传输连接

系统日志

PLAINTEXT

1
2
• 7034:日志重新导入
• 104、1012:日志被清除

日志分析工具

EvtxLogparse

款用于快速筛查整理日志的工具,贴近实战场景

PLAINTEXT

基础用法
evtxLogparse.exe -s success security.evtx #SMB登录成功
evtxLogparse.exe -s fail security.evtx #SMB登录失败
evtxLogparse.exe -r success security.evtx #RDP登录成功
evtxLogparse.exe -r fail security.evtx #RDP登录失败

Aurora

https://github.com/cyb3rfox/Aurora-Incident-Response

进行入口溯源排查时,可以填入相应的地址时间,快速整理出一张攻击分析图,适用于大型网络

在线威胁分析平台

PLAINTEXT

深信服威胁情报中心
http//ti.sangfor.com./analysis-platform
微步在线
http//x.threatbook.cn
沙箱地址
http//s.threatbook.cn
天际友盟
http//redqueen.tj-un.c/IntelHome.htm
启明星辰
http//www.venuseye.com./
VirusTotal威胁情报中心
http//www.virustotal.com
在线沙箱AnyRun
http//app.any.run
勒索病毒查询
http//lesuobingdu.360.cn

web 日志分析

系统 log 日志

寻找带有 log 的目录

IIS 日志

存放位置 C:\WINDOWS\system32\LogFiles\

默认日志命名方式:ex + 年份的末两位数字 + 月份 + 日期 +.log

apache 日志

Windows: Linux:/usr/local/apache/logs

webshell 查杀

windows

1、使用 D 盾、安全狗等 webshell 查杀工具进行查杀

2、使用 everything 搜索 web 目录下的脚本文件

linux

挂载磁盘使用 d 盾进行查杀

http//github.c/winf/sshfs-win

下载安装好两个程序

![image-20220316145931147/images/image-20220316145931147.png)

添加映射网络驱动器

输入 linux 相应的账密

PLAINTEXT

1
\\sshfs\root@x.x.x.x\..\

内存马

简介:随着攻防演练热度越来越高,攻防双方的博弈,流量分析、EDR 等专业安全设备被蓝方广泛使用,传统的文件上传的 webshell 或以文件形式驻留的后门越来越容易被检测到,内存马使用越来越多。内存马又名无文件马,见名知意,也就是无文件落地的 Webshell 技术。内存马就是将 Webshell 注入到容器中的常驻进程中,将路由和 Webshell 进行绑定,就可以实现访问任意 url 或者指定 url,带上命令执行参数,即可让服务器返回命令执行结果。由于内存马没有文件落地,所以攻击者比较喜欢在 Web 服务上写入内存马进行权限维持。特别是在遇到 Java Web 开发的网站且网站存在代码注入、反序列化漏洞时,就会通过这些漏洞写入内存马,然后用 Webshell 管理工具连接。

哥斯拉内存马

冰蝎内存马

蚁剑内存马

排查处置

1、进行关机重启可清除内存马

2、java-memshell-scanner

http//github.c/c0n/java-memshell-scanner

下载内存马检测工具 放置在根目录下把对应的进行 kill 掉

3、Copagent

http//github.c/LandGr/copagent

使用 cop.jar 工具,运行 java -jar cop.jar,运行后会在.copagent 目录生成结果

webshell 流量特征

蚁剑

数据包字段以 0x 进行开头

冰蝎 2.0

快速识别特征方式

1、冰蝎 2 默认 Accept 字段的值很特殊,而且每个阶段都一样

Accept: te/html, ima/gif, ima/jpeg, *; q=.2, /**; q=.2

2、Content-Length

Content-Length: 16, 16 就是冰蝎 2 连接的特征

流量特征共分为两次 get 请求,第一次请求服务端产生密钥写入 session,第二次请求用于获取 key

htt//tools.bugscaner.c/cryptoaes

到该网站使用上面的 key 进行 AES 解密,解密后的内容为 base64 编码后的结果

冰蝎 3.0

快速识别特征方式

1、Accept 字段

冰蝎中使用的 Accept 字段与常规浏览器使用的不同,且每次请求使用的 Accept 内容都相同

2、长连接

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

3、较长的 base64 编码的请求包

在加密通讯时,p/jsp shell 会提交 base64 编码后的请求数据

哥斯拉

请求含有 pass=

Cobaltstrike

BeaconEye 的核心原理是通过扫描 CobaltStrike 中的内存特征,并进行 BeaconConfig 扫描解析出对应的 Beacon 信息,项目地址是

http//github.c/CC/BeaconEye

常见的攻击事件分析

Struts2

特征

PLAINTEXT

1.content-type出现异常字段,非MIME类型标识
2.字段格式为典型的注入代码格式%{ognl}
3.存在命令执行方法java.lang.ProcessBuilder().start()
4.执行命令“whoami”,返回包中返回执行成功信息“root”
5.出现类似于“3345*23565”的日志,通常都是扫描器扫描的日志

weblogic

CVE-2017-10271 特征

PLAINTEXT

1.目标端口7001
2.URL包含/wls-ws/CoordinatorPortType
3.body部分为xml字段
4.执行命令“whoami”,返回包中返回执行成功信息“root”

CVE-2019-2725 特征

PLAINTEXT

1.目标端口7001
2.URL包含字/_asy/AsyncResponseService
3.body部分为超长xml字段,且为byte字节码
4.返回包无回显,状态码为202

shiro

特征

PLAINTEXT

1.cookie头的rememberMe字段超长
2.解密rememberMe可获取异常信息
在线解密网站:http//vulsee.c/too/shiro/shiroDecrypt.html http//simolin./too/shi/
3.若有回显,可以看到执行的相关命令和回显结果

fastjson

PLAINTEXT

1.body部分为json格式
2.body部分含有“dataSourceName”字段,且内容为 rm///exp或者lda///exp
3.body部分必定含有“@type”字段(指定反序列化类,调用类中属性的特定请求方法)
4.返回包状态码为500

webshell
本作品采用《CC 协议》,转载必须注明作者和本文链接
webshell新工具 -- PyShell
2023-07-24 10:21:11
0x01 工具介绍PyShell是多平台Python WebShell。该工具可以帮助您在web服务器上获得shell式的界面,以便远程访问。与其他webshell不同的是,该工具的主要目标是在服务器端使用尽可能少的代码,而不考虑使用的语言或服务器的操作系统。您可以在 Windows 和 Linux 中使用不同类型的 shell,具有命令历史记录、上传和下载文件,甚至可以像在目录中一样移动标准外壳。
场景:己经拿到了一个webshell,但是无法正常执行命令,因为被360安全大脑的主动防御拦截了。由于目标是 java 环境,这里可以尝试利用 jsp 执行系统命令上线,具体做法是先写一个 jsp的脚本然后放到 weblogic 的 webshell 路径下,如果找不到 webshell 可以使用文件查找命令dir c:\ /s /b |find "fuck4.jsp"
Webshell-Sniper是一款使用Python编写的基于终端的Webshell管理器,和以往我们分享的Webshell管理工具有所不同,所有操作都在终端中完成。使用它可对您的网站进行远程管理。虽然它没有图形化的GUI也没有WEB界面,但这样的操作也是另有一翻感觉。功能基于终端的shell交互反向连接shell数据库管理Webshell-Sniper安装与使用环境服务端 :. 需要注意的是,Webshell-Sniper服务端只支持Unix系统环境。
0x01 工具介绍该工具没什么技术含量,学了一点javafx,使用jdk8开发出了几个简单功能用来管理webshell。工具整合并改写了各类webshell,支持各个语言的cmd、蚁剑、冰蝎、哥斯拉,又添加了实际中应用到的一些免杀技巧,以方便实际需要。0x02 安装与使用直接下载releases版即可。
Webshell 检测综述
2022-12-15 09:45:32
通过Webshell,攻击者可以在目标服务器上执行一些命令从而完成信息嗅探、数据窃取或篡改等非法操作,对Web服务器造成巨大危害。Webshell恶意软件是一种长期存在的普遍威胁,能够绕过很多安全工具的检测。许多研究人员在Webshell检测领域进行了深入研究,并提出了一些卓有成效的方法。本文以PHP Webshell为例。
动态函数PHP中支持一个功能叫 variable function ,变量函数的意思。//最终是system;当一个变量后边带括号,那他就被视作一个函数。编译器会解析出变量的值,然后会去找当前是否存在名为“system()”的函数并执行它。这里就不给实例了,很多免杀案例中都用到了这个特性。也是被疯狂查杀的特征。回调函数回调函数,简单来说就是一个函数不是由我直接调用,而是通过另一个函数去调用它。
前言提到webshell免杀,方法无外乎对静态特征的变形,编码,或利用语言特性绕过。计算机中有很多符号,它们在编程语言中占据一席之地,这些符号作为运算符号,标识符号或起到特殊含义。本文以PHP为例介绍一些利用符号免杀方法。免杀WAF检测通过对安全狗、护卫神、D盾等常见软WAF的测试,发现WAF查杀主要依赖两种检测方法1.静态检测:通过匹配特征来查找webshell。如危险函数,文件特征码等。例如 ${$my_var[8]}与${$my_var}[8]的区分${xxx} 括起来的要当成变量处理。
通过URL信息获取如果能获取到恶意请求的URL信息,就可以根据URL信息定位到Webshell文件。URL信息可以通过态势感知、WAF等监测预警系统获取,也可以通过对系统异常时间段的Web日志进行审计获取。通过扫描工具扫描获取通过Webshell查杀工具进行扫描,可以定位到部分免杀能力不强的Webshell文件。默认情况下,Windows将仅在索引位置中查找最近修改的文件。
webshell免杀之传参方式及特征绕过传参方式 在这里解释一下为什么,需要讲述传参方式,由于在很多情况下,以请求头作为参数传递并非waf和人工排查的重中之重且非常误导和隐藏
VSole
网络安全专家