Skip to content

Latest commit

 

History

History
351 lines (185 loc) · 17.1 KB

[朱厌安全团队]-2023-7-27-攻防演练中溯源思路.md

File metadata and controls

351 lines (185 loc) · 17.1 KB

攻防演练中溯源思路

朱厌安全团队

朱厌安全团队

微信号 AQ_F0R

功能介绍 WEB安全技术分享、CTF解题思路笔记分享、网安工具分享、渗透测试、漏洞挖掘等 推荐公众号:狐狸说安全


__发表于

收录于合集

以下文章来源于琴音安全 ,作者琴音安全

琴音安全 .

致力于红蓝对抗,渗透测试,网络安全技术分享,CTF 研究等。

**免责声明
**

由于传播、利用本公众号琴音安全所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号琴音安全及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉,谢谢!

0x01前言

在安全事件确认后,我们要对对方的攻击进行定位和查找。溯源的关键在于取证,获取到攻击机的相关信息所以溯源分为了四个步骤 1.攻击源获取 这就和安全事件的确定有关系。比如说领导告诉你我的主机有点卡或者web页面被篡改了等等。这时候就要去判断对方的攻击手段。然后去找攻击的痕迹。痕迹的寻找就是三个点,日志,网路痕迹,进程信息。这三点进行结合查看。 2.针对IP或者域名通过公网已有的开放信息进行查询 比如说我在日志里找到了对应的攻击者IP,那么我们就要对ip进行识别他的网络资产,比如站长之家识别一下,查看一下有无域名,对域名进行反查一下,看是否可以搜索到攻击者相关信息。还有就是如果这些信息无法获取,只知道了对方的ip,那就直接对对方进行反向渗透。进行取证,取证的主要是对方的office文件,各种第三方社交软件,比如说微信有个缓存文件db后缀结尾的,里面有聊天记录,拿去破解一下。 3.信息反查 取证,想尽办法搜索到和他相关的所有信息。 4.反制 反制分为技术手段和非技术手段 技术手段 1.分析对方工具的漏洞2.蜜罐 非技术手段 1.钓鱼和反钓鱼2.从攻击者目的思考反向获取对方信息反制还分为直接反制和钓鱼反制直接反制就是对对方主机进行攻击。钓鱼反制就是引诱对方进入。这里要说一下,让我们做蜜罐时候,一定要做的像内网的真实主机,不能让对方一眼识别。比如说网卡啊,虚拟机可以用别人测试的游戏虚拟机,相关文件,敏感文件,各种服务。OA啊,等等,做的真实一点点。

0x02正文

1.攻击源获取

安全设备报警,如EDR告警等。日志分析,获取攻击者指纹信息与攻击方式。服务器资源异常,如服务器上多了webshell文件或者计划任务。蜜罐告警,获取攻击者指纹信息。邮件钓鱼,其中一般有木马文件,通过对木马文件逆向分析获取攻击者信息。进程分析得到的病毒样本,可以在https://x.threatbook.cn/ 微步进行HASH查询,https://www.virustotal.com/ 这个网站上进行查询,可以检测是否为病毒,还有可以得到病毒的C2地址。看恶意邮件的邮件头获取恶意域名查看机器回连ip获取恶意ip地址查看webshell的编写方式有可能直接获取黑客id,因为不少黑客喜欢将自己的id设为webshell链接密码程序PDB信息泄露 ****比如拦截捕获到了木马样本,比如shellcode loader,通过自己编译生成的这种程序,如果生成了调试信息,没有勾选否,那么就可能会造成PDB信息泄露。 抓到的木马样本,通过C32看到程序尾部的信息,找到了生成木马的主机用户名,通常情况下很多黑客都喜欢用自己的ID作为主机用户名 攻击者使用代理获取真实IP

代理池溯源

分析请求头的X-Forwarded-For和Via字段

X-Forwarded-For字段:该字段用于揭示客户端的真实IP地址。当请求经过代理服务器时,代理服务器会将客户端的IP地址添加到X-Forwarded- For字段中,并将自己的IP地址作为新的请求来源添加到请求头中。这样,在后续的代理服务器或目标服务器上,可以通过读取X-Forwarded- For字段来获取客户端的真实IP地址。

Via字段:该字段用于跟踪请求经过的代理服务器路径。每当请求经过一个代理服务器时,该服务器都会将自己的标识信息添加到Via字段中。通过查看Via字段,可以了解请求是如何穿过各个代理服务器并最终到达目标服务器的。

域前置溯源

详细可见如下文章:

https://www.anquanke.com/post/id/260888

** 2.针对IP或者域名通过公网已有的开放信息进行查询**

威胁情报


 微步在线:https://x.threatbook.cn/奇安信:https://ti.qianxin.com/启明Venuseye:https://www.venuseye.com.cn/绿盟NTI:https://nti.nsfocus.com/安恒:https://ti.dbappsecurity.com.cn/360:https://ti.360.cn/#/homepagefeed:https://feed.watcherlab.com/index/ioc

如果暴露域名要判断真实性,注意下是否是域前置或Dnslog


 中国万网域名WHOIS信息查询地址:https://whois.aliyun.com/西部数码域名WHOIS信息查询地址:https://whois.west.cn/https://who.is/(站长之家如果查到了不过信息被加密了,可以尝试用这个)站长工具-站长之家域名WHOIS信息查询地址:http://whois.chinaz.com/爱站网域名WHOIS信息查询地址:https://whois.aizhan.com/腾讯云域名WHOIS信息查询地址:https://whois.cloud.tencent.com/kali:whois -h 注册服务器地址 域名

证书查询


 1.https://crt.sh/2.https://censys.io/3.https://developers.facebook.com/tools/ct/4.https://google.com/transparencyreport/https/ct/

样本分析


 微步云沙箱:https://s.threatbook.com/360沙箱:https://ata.360.net/detectionVT:https://www.virustotal.com/gui/home/upload 

精准IP定位


https://www.ipip.net/ip.htmlhttps://chaipip.com/aiwen.htmlhttps://www.opengps.cn/Data/IP/ipplus.aspx

** 3.信息反查**

手机号反查 已知支付宝账号(手机号、邮箱),大额转账可验证姓氏,如果对的话,会提示成功,所以可以尝试多次。 淘宝找回密码,确定目标名字已知淘宝账号(任意手机号、邮箱、用户名,其一即可),手机app找回密码处,验证方式选择拍摄脸部。 邮箱反查注册人 whois


https://whois.domaintools.com/https://www.alibabacloud.com/zh/whoishttps://whois.cloud.tencent.com/https://www.whois.com/whois/https://www.namecheap.com/domains/whois/https://www.ename.com/https://whois.chinaz.com/https://www.reg007.com/ //查询注册了哪些网站https://zy.xywlapi.cc/home.html //多种信息反查

企业微信手机号查公司名称


 第一步,微信增加朋友,选择企业微信联系人。第二步,点击增加到通讯录,然后先不动。第三步,点击回退按钮。第四步,然后他的所属企业就显示出来了。

收集互联网侧的用户ID


收集手机号与互联网上的各种ID信息(利用google hacking)。通过黑客ID进行信息收集:(1) 百度信息收集:“id” (双引号为英文)(2) 谷歌信息收集(3) src信息收集(各大src排行榜)(4) 微博搜索(如果发现有微博记录,可使用tg查询weibo泄露数据)(5) 微信ID收集:微信进行ID搜索(6) 豆瓣/贴吧/知乎/脉脉 你能知道的所有社交平台,进行信息收集

** 4.反制**

云函数上线CS反制 判断流量特征 请求头特征:


X-Request-Id: 请求的id X-Api-FuncName: 函数名 X-Api-AppId: 对应账号但是不是账号 X-Api-ServiceId: 服务id X-Api-HttpHost: 就是把appid 账号id 还有腾讯云函数的域名放一起 X-Api-Status: 200 返回值 X-Api-UpstreamStatus: 200 返回值

如果是stage,会有一个payload下载阶段,大小约为210kb,payload未解密之前间隔有大批量重复字符串(cs本身特征) 未经魔改的云函数配置在stage下载阶段访问/bootstrap-2.min.js (配置文件特征),同时返回包有很大一串加密数据,且路径的ascii之和与256取余计算值等于92(cs本身特征) 未经魔改的云函数会访问/api/getit这样类似api的模式,可以重点关注(配置文件特征)云函数的host是service-173y3w0z-xxxxxxxxxx.sh.apigw.tencentcs.com这样的格式,有点类似域前置,host为白域名,可以着重注意host为apigw.tencentcs.com格式的流量,如果业务部门没有这样的业务,特殊时期,可以直接封禁这个域名apigw.tencentcs.com(云函数特征) 反制 批量上线钓鱼马从cs客户端可以看出,上线后的ip过一会就会自动变一次(云函数特性),一次性上线大量ip会让红队直接无法分辨(直接放同一个虚拟机都行,因为每次云函数的特性,所以每个心跳包都是一个新的请求,都会分配一个新ip) 消耗云函数额度云函数隐藏C2 和 cdn很像,都有同一个弱点,就是访问是需要计费的,所以可以使用脚本把红队的额度跑掉就好,这样红队的所有马都无法上线工具

https://github.com/a1phaboy/MenoyGone

虚假上线重放心跳包进行上线,但是红队无法执行任何命令 截图举报收集好证据,主要是 host名 X-Api-FuncName X-Api-AppId 这些带有明显云函数的特征的证据,(X-Api-AppId这个很重要)说明该人正在使用云函数对我司进行恶意攻击,请求对其暂时封禁.

傀儡机器反制

一般拿到傀儡机之后,就需要查找下一步攻击者的信息了,当然攻击者也很有可能搭建socks代理来攻击,但是还是有可能会发现真实攻击者的蛛丝马迹的。 日志分析 1.Web日志分析 Nginx,Apache,IIS,Tomcat可以查看分析攻击者的IP,访问的UA

可以grep木马页面筛选攻击者IP,查看日志中某个路径访问最多的10个IP

cat gitsort.log | grep "/language/HTML" | cut -d ' ' -f 1 | sort | uniq -c | sort -nr | head -n 10

2.系统日志分析 可以看到访问者的IPWindows日志路径:

C:\Windows\System32\winevt\Logs

必看日志:

Security.evtx、System.evtx、Application.evt

Linux 日志路径:/var/log 必看日志:secure、history

/var/log/boot.log:录了系统在引导过程中发生的事件,就是Linux系统开机自检过程显示的信息  
/var/log/lastlog :记录最后一次用户成功登陆的时间、登陆IP等信息  
/var/log/messages :记录Linux操作系统常见的系统和服务错误信息  
/var/log/secure :Linux系统安全日志,记录用户和工作组变坏情况、用户登陆认证情况  
/var/log/btmp :记录Linux登陆失败的用户、时间以及远程IP地址  
/var/log/syslog:只记录警告信息,常常是系统出问题的信息,使用lastlog查看  
/var/log/wtmp:该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件,使用last命令查看  
/var/run/utmp:该日志文件记录有关当前登录的每个用户的信息。如 who、w、users、finger等就需要访问这个文件  
/var/log/syslog 或 /var/log/messages 存储所有的全局系统活动数据,包括开机信息。基于 Debian 的系统如 Ubuntu 在 /var/log/syslog 中存储它们,而基于 RedHat 的系统如 RHEL 或 CentOS 则在 /var/log/messages 中存储它们。  
/var/log/auth.log 或 /var/log/secure 存储来自可插拔认证模块(PAM)的日志,包括成功的登录,失败的登录尝试和认证方式。Ubuntu 和 Debian 在 /var/log/auth.log 中存储认证信息,而 RedHat 和 CentOS 则在 /var/log/secure 中存储该信息。

lastlog 查看最后登陆日志

查看 /var/log/secure日志

history命令 查看历史命令记录,运气好的话可以获得比较关键的信息

3.进程分析 Windows tasklist查看进程列表,eg:tasklist | find "16376"进一步查看16376进程的具体信息。WMIC扩展WMI(Windows Management Instrumentation,Windows管理规范) ,提供了从命令行接口和批命令脚本执行系统管理的支持。C:\users\fengxuan>wmic wmic:root\cli>这时,在命令行再输入process, 就可以查看完整的进程信息了。

windows的任务管理器是很好的进程查看工具,当然大家还可以使用一些其他工具,比如Kernel Detective 来帮助你检测

https://learn.microsoft.com/zh-cn/sysinternals/downloads/process-explorer

Linux psps aux 查看进程/proc/进程号 进程信息 在浏览 /proc 目录的时候您会发现许多目录的名称是一些数字。这些目录保存了当前系统中运行的所有进程的信息。

Top 命令,查看进程占用系统资源情况lsof命令 4.流量分析 通用 netstat -an 查看网络连接 netstat -na|grep ESTABLISHED 查看已经连接上的网络IP netstat -unltp 查看进程占用的端口号 (很有用) ****

Windows

 wiresharkfiddler

linux tcpdump使用命令 tcpdump -i any -c100 -nn -w /tmp/tcpdump_save.cap 将抓到的包放到wireshark中进行分析 5.服务查询 Windows 常见的后门技术列表:1、隐藏、克隆账户 test$, 查找方式 :需要在界面上的用户管理查看,而不是单单在命令行查看2、shift后门 将C盘windows目录下面的system32文件里面的sethc.exe应用程序进行转移,并生成sethc.exe.bak文件。并将cmd.exe拷贝覆盖sethc.exe 查找方式 :Md5 sethc.exe 看下是不是cmd.exe 的MD5certutil -hashfile filename MD53、启动项、计划任务【启动项】查找方式 :window--开始--所有程序-- 启动【组策略欺骗】组策略,运行gpedit.msc,通过最策略的“脚本(启动/关机)”项来说实现。

查找方式 :具体位置在“计算机配置→Windows设置”项下。因为其极具隐蔽性,因此常常被攻击者利用来做服务器后门。【计划任务】查找方式 :window-- 开始--所有程序--附件--系统工具--任务计划程序 4、劫持技术 查找方式 :所谓的映像劫持就是Image File Execution Options(IFEO),位于注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options查找方式 :这个注册项中有恶意的键值对就需要排查0. 5、Powershell后门 如何创建稳定的powershell backdoor https://github.com/AV1080p/Schtasks-Backdoor查找方式 :查看进程中是否有powershell的常驻进程 6、远控软件 Cobaltstrike, 灰鸽子。只能通过进程分析和流量分析才能找到木马。因为cs可以注入到其他进程中比如说System进程。查找方式 :通过任务管理器分析进程,还需要通过WSExplorer进行进程抓包。 7、嗅探技术 Cain

查找方式 :查看进程LInux增加超级用户帐号echo "mx7krshell:x:0:0::/:/bin/sh" >> /etc/passwd查找方式 :查看 /etc/passwd 是否有UID为0的用户破解/嗅控用户密码查找方式 :查看进程,分析放置SUID Shellcp /bin/bash /dev/.rootshell chmod u+s /dev/.rootshell查找系统中设置了SUID权限的文件

find / -perm +4000 -exec ls -ld {} \; //查找设置了SUID权限的文件 find / -perm +6000 -exec ls -ld {} \; //上面的-6000表示既具有suid权限又具有sgid权限的文

利用系统服务程序修改

/etc/inetd.confdaytime stream tcp nowait /bin/sh sh –I

用trojan程序替换in.telnetd、in.rexecd等 inted的服务程序重定向login程序查找方式 :查看配置文件,查看文件MD5TCP/UDP/ICMP ShellPing Backdoor,通过ICMP包激活后门, 形成一个Shell通道。TCP ACK数据包后门,能够穿越防火墙。Linux下的icmp shell后门 容易被发现

http://prdownloads.sourceforge.net/icmpshell/ish-v0.2.tar.gz

这个是py版的

https://github.com/inquisb/icmpsh/blob/master/icmpsh_m.py

查找方式 :查看进程Crontab定时任务crontab -l #查看服务 6.其他技巧 查看公钥,获取攻击者电脑名

查看其他操作日志记录,比如说Openvpn 通用 查询在线登陆者LInux:w命令Windows:query user

** ** 0x03小结****

本文总结了常见的溯源思路,公众号查看不直观,所以做了一个Xmind的思维导图,公众号后台回复 溯源 获取下载链接

预览时标签不可点

微信扫一扫
关注该公众号

知道了

微信扫一扫
使用小程序


取消 允许


取消 允许

: , 。 视频 小程序 赞 ,轻点两下取消赞 在看 ,轻点两下取消在看