Windows应急响应
蓝队溯源流程
学习Windows
应急首先要站在攻击者的角度去学习一些权限维持和权限提升的方法.,文章中的方法其实和内网攻防笔记有类似l红队教你怎么利用 蓝队教你怎么排查 攻防一体,应急响应排查这些项目就可以
端口/服务/进程/后门文件都是为了权限维持,得到shell的方式就是传入文件然后CS
MSF
远控
- 可疑账号/新增账号/克隆账号(利用注册表普通命令不行)
- 异常端口/进程 (端口
3389
22
进程或许有进程迁移) - 启动项目/计划任务/服务自启动
- 日志 用户登陆时间
- 系统相关信息/补丁/目录
- 工具排查
排查可以是工具可以是手工,工具蓝队工具和D
盾都是可以整体看系统全局
lusrmgr.msc bet user // 查看账户
netstat -ano // 查看端口对应PID情况
wmic process get name.executablepath,processid|findstr 212 // 查询指定PID路径地址
eventvwr.msc // 查看日志
如查询主机所有开机自启利用工具包内置的Autoruns
即可查全局
Windows权限维持
隐藏方法
隐藏文件
命令隐藏
常规的属性隐藏很轻易就可以看到,红队上传文件后使用该命令隐藏文件属性,同样我们可以利用命令还原
attrib +A +R +S +H saber.txt // 隐藏 saber.txt
查杀方式
撤销 attrib -A -R -S -H // 在怀疑被上传文件被隐藏文件的目录下执行此文件就行
驱动机隐藏
驱动隐藏可以根据一些软件进行实现 Easy File Locker
// 下载地址
http://dx2.anxz.com/soft/E/EasyFileLockerxz.zip
取消勾选各类属性
查杀方式
排查C
盘路径如果出现以下文件说明主机受到驱动机隐藏
c:\windows\xlkfs.dat
c:\windows\xlkfs .dl1
C:\windows\xlkfs.ini
c:\windows\system32\driversxlkfs.sys
找到相关驱动机服务停止,并删除残留在C
盘中的驱动机文件,后重启系统
sc qc xlkfs // 查看相关服务
net stop xlkfs // 停止服务
sc delete xlkfs // 删除服务
隐藏账户
D盾查杀
D
盾检查隐藏账户并删除,并且存在很多功能查看端口外联还有进程迁移的情况普通的命令是无法查询到的注册表可以查到
进程迁移
一个端口只能绑定一个进程, 但是一个进程可以多次消耗端口进行绑定
CS MSF
远控木马工具得到权限后,可将原始的进程迁移到安全的进程中实现隐藏的效果,实现了文件权限维持,提高隐蔽性实现持久化,一般只学习MSF
会话注入 CS
注入
// 查看进程,如果一个进程PID存在有两个程序名很可能是进程迁移
tasklist // 可以实现内网横向
木马进程200
迁移到正常程序100
上,作为防守方排查看到正常程序就忽略了木马
木马 进程PID 200
qq.exe 进程PID 100
migrate 999 // MSF进程迁移命令将当前恶意进程(payload)迁移到另一个进程中,以提高持久性和隐蔽性
查杀方式
进程注入在内存列表中肯定会多出一块文件地址,找到多出的文件地址提取字符串在本地查看就会出现实际外联的IP
+端口
如正常排查了所有进程后仍无法找到那么肯定是迁移到了系统进程,使用火绒剑监控对可疑进程实施监控进程树,可疑进程监测就完事
后门方法
注册表自启动
注册表键值
因为红队会修改注册表自启动的程序替换为木马,实现开机自启动,下面是常用的注册表自启动键
无文件注册表后门
cs
可以创建powershell
无文件,CS端创建注册表
服务自启动
得到权限后创建服务路径为木马程序设置自动启动,每次开机就会上线
组策略自启动
打开组策略面板设置木马文件路径,达到开机自启权限维持效果
gpedit
计划任务自启动
计划任务
启动项自启动
探测隐藏后门
在网站庞大的代码量面前工具也可能存在Webshell
绕过的情况。另外,像暗链、网页劫持、页面跳转等常见的黑帽SEO
手法,也很难通过手动检测或工具检测全部识别出来,最好的方式就是做文件完整性验证。通过与原始代码对比,可以快速发现文件是否被篡改以及被篡改的位置。当然,第一个前提是,你所在的团队已具备代码版本管理的能力
**webshell
**查杀
D盾_Web查杀:http://www.d99net.net/index.asp
河马webshell查杀:http://www.shellpub.com
深信服Webshell网站后门检测工具:http://edr.sangfor.com.cn/backdoor_detection.html
文件**MD5
**校验
将网站所有文件,计算一次
hash
值保存,当出现应急情况时,重新计算一次hash
值,并与上次保存的hash
值进行对比,从而输出新创建的、修改过及删除的文件列表,二次计算都必须使用相同的校验算法,如果二者前后hash
值相同则认为文件是正确的,如果两个特征值不同,则认为下载到exe文件是被篡改过的
def md5sum(file):
m=hashlib.md5()
if os.path.isfile(file):
f=open(file,'rb')
for line in f:
m.update(line)
f.close
else:
m.update(file)
return (m.hexdigest())
diff命令
linux
使用此命令,比较两个文本文件的差异
如果服务器中存在隐藏的后门,需要进一步的排查和清除,以保障服务器的安全。可以采用以下方法进行探测和清除:
- 检查文件完整性:使用
md5sum
命令计算服务器上所有文件的哈希值,并将结果与之前保存的哈希值进行对比。如果有文件的哈希值发生了变化,则可能存在篡改,需要进一步排查。 - 查看日志:检查服务器日志文件,查看是否有可疑的登录信息或异常操作。可以使用
tail
命令实时查看日志,或者使用grep
命令查找特定的关键字。
使用diff
命令进行文件校验,判断文件是否被篡改
diff -rA file1 file2
-A
选项用于比较所有行
file1.txt file2.txt
1 file1.txt
2 file2.txt
3
4 # 此行为示例文本,非原始文本
5 # 如果存在此行,则文件可能被篡改
6
7 # 原始文本内容
8 content1
9 content2
10 # ...
11
如果存在差异行,则说明文件被篡改过
远程防御
通过设置防火墙规则、更新补丁、使用加密传输等手段来保护服务器免受攻击。同时,定期对系统进行漏洞扫描和渗透测试,及时发现并修复漏洞
版本控制工具
重新将代码上传至git
,打开项目,在历史提交版本里面,查看文件更改内容,很容易就可以发现代码被篡改的地方了
文件对比工具
使用软件Beyond Compare对两个文件夹进行差异对比,查看是否篡改
CS MSF远控应急
面试回答
远控工具必定有外联IP+端口查看系统对应进程,进程
PID
找到CS
告警文件,找到上传路径,如果隐藏利用手工结合工具找到 后续排查存在权限维持的点 服务/启动项/注册表/计划任务/组策略,删除对应文件红队修改心跳包为
0/1s
是无法看到外联端口,借助工具火绒剑时时监测
MSF
处理也是这样找外联进程确定文件位置排查启动项,包括蠕虫 挖矿只要涉及需要运行的项目就肯定有进程,根据进程找文件…通用方案)
netstat -ano
命令找到外联进程后杀死这个进程,木马上传肯定会进行权限维持操作, 可能会隐藏文件可能是实现自启动根据外联进程的PID
文件地址,进行查找对应的项目进行应急.找到删除就可以,服务自启动就是删除服务
内存马应急
暴力破解
RDP
- 排查
windows
日志确认攻击 - 禁止3389出网
- 设置连接IP白名单
日志分析
01-windows日志分析.pdf
windows
日志分析
Windows
系统日志是记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。用户可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹,主要有此三类日志
- 应用程序日志
- 系统日志
- 安全日志
eventvwr.msc // 命令查看或手动搜索事件日志文
应用程序日志
包含由应用程序或系统程序记录的事件,主要记录程序运行方面的事件,例如数据库程序可以在应用程序日志中记录文件错误,如果某个应用程序出现崩溃情况,那么我们可以从程序事件日志中找到相应的记录
系统日志
记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等
安全日志
记录系统的安全审计事件,包含各种类型的登录日志、对象访问日志、进程追踪日志、特权使用、帐号管理、策略变更、系统事件。安全日志也是调查取证中最常用到的日志。默认设置下,安全性日志是关闭的,管理员可以使用组策略来启动安全日志
分析事件ID
windows
事件日志分,不同的事件ID
对应了不同意义
筛选日志功能对3个日志的事件ID
进行筛选,比如暴力破解就可以筛选事件ID
为4625
登录成功类型方式
每个成功登录的事件都会标记一个登录类型,不同登录类型代表不同的方式:
日志分析工具
Log Parser
分析基于文本的日志文件、XML 文件、CSV(逗号分隔符)文件,以及操作系统的事件日志,
可以像使用 SQL 语句一样查询分析这些数据
windows
日志快速分析小工具
Web
日志分析
Web
访问日志记录了Web
服务器接收处理请求及运行时错误等各种原始信息
分析后可以帮助我们快速定位攻击者还原攻击路径,常见两个思路
- 确定入侵的时间范围,以此为线索,查找这个时间范围内可疑的日志,进一步排查,最终确定攻击者,还原攻击过程
- 攻击者在入侵网站后,通常会留下后门维持权限,以方便再次访问,我们可以找到该文件,并以此为线索来展开分析
日志统计分析技巧
统计IP
统计网段
统计域名
统计流量
病毒处理方案
勒索病毒
通过勒索病毒索引引擎查找勒索病毒相关信息,再通过各个安全公司提供的免费勒索软件解密工具解密,但是全拼运气,平时防护措施就是勤打补丁多备份
勒索病毒搜索
360
腾讯
启明星辰
奇安信
勒索软件解密工具
腾讯哈勃
金山毒霸
火绒
卡巴斯基
蠕虫病毒
它是一种自包含的程序(或是一套程序),通常通过网络途径传播,每入侵到一台新的计算机,它就在这台计算机上复制自己,并自动执行它自身的程序
处理流程
1、发现异常:出口防火墙、本地端口连接情况,主动向外网发起大量连接
2、病毒查杀:卡巴斯基全盘扫描,发现异常文件
3、确认病毒:使用多引擎在线病毒对该文件扫描,确认服务器感染conficker蠕虫病毒。
4、病毒处理:使用conficker蠕虫专杀工具对服务器进行清查,成功清除病毒。
挖矿病毒
表现特征为电脑CPU
占用率高C盘可使用空间骤降电脑温度升高、风扇噪声增大,因为后台一直在运行
1. 首先将已被感染的服务器进行断网,并立即把网络中其他机器进行隔离
2. 溯源排查服务器进行,找出哪个进程哪个端口异常,查看服务定时任务,开机启动项,确定挖矿文件路径
3. 手工或者杀软工具彻底删除文件
批量挂黑页
网站被挂上各种菠菜链接,链接可以访问,直接访问物理路径也可以看到文件,但是打开网站目录并没有发现这些文件
确定黑页上传文件的路径,到对应的文件夹目录修改文件夹属性尝试显示隐藏的文件,如有立即清除
打开电脑文件夹选项卡,取消”隐藏受保护的操作系统文件“勾选,把”隐藏文件和文件夹“下面的单选选择“显示隐藏的文件、文件夹和驱动器
再次查看,可以看到半透明的文件夹,清楚隐藏文件夹及所有页面
管理员账号被篡改
网站虽然前后端分离,后台只允许内网访问,管理员账号admin
却依然被多次被篡改
1. 使用工具扫描结合手工确定是否有webshell文件,存在则去对应目录查看恶意文件创建时间
访问对应时间段日志,对发出此文件的IP进行封禁
webshell文件可能携带sql语句,增加用户语句