一、背景:
在内网渗透中,通过psexec进行横向扩展是红队非常常见的方式之一,由于该软件本身是微软官方发布的合法应用,因此大部分杀软不会对其报毒,由于缺乏了杀软对其的报毒提醒,这时便需要结合其他手段来辅助分析发现内网中是否存在基于此工具的横向渗透行为。
二、环境介绍:
分别模拟了两台机器,其中左边的是一台普通服务器,右边的是已经 被红队攻陷的服务器且假设红队已经获取到了某一组较为通用的账户密码
三、实验过程:
3.1攻击过程:
红队在已被攻陷的pentest主机里上传psexec,并通过使用假设前期已获取到的某一通用账号密码尝试去登陆web服务器
3.2威胁捕获过程:
(1)针对psexec的特性,他在初次使用时,默认会在目标机器上(本例中为web)的%systemroot%目录下植入psexesvc的应用程序,如图所示
文件hash为:
MD5:75b55bb34dac9d02740b9ad6b6820360
SHA-1:a17c21b909c56d93d978014e63fb06926eaea8e7
SHA-256:141b2190f51397dbd0dfde0e3904b264c91b6f81febc823ff0c33da980b69944
为什么会放上文件的hash值呢?因为有经验的红队会通过-r参数修改服务名和应用名,如图所示
此时web机中对应的服务名也对应的进行了修改
但文件hash值却没有改变
除此之外默认情况下也可在注册表中搜索psexe或psexesvc等字符串是否存在来判断是否,但在修改了注册名的情况下需要配合火绒剑等工具进行人工结合工具的搜索分析,如图所示(强烈推荐火绒剑,原因不多说,谁用了都说好!)
(2)除了结合工具自身的特性,我们也可以考虑结合windows日志来进行威胁捕获和分析
刚刚也提到了psexec在初次使用时默认会在对方系统注册一个名为psexesvc的服务,自然而然也会在系统的日志系统留下痕迹,通过排查分析发现psexec在使用过程中会留下三条日志,事件ID分别为7045和两条7036日志。
其中ID为7045的日志为初次使用时,服务注册成功的日志两条7026日志分别对应着服务启动和服务停止(攻击者退出服务时触发)
日志的详细中会明确说明psexesvc服务安装成功或运行中或已停止,因此通过此默认行为也可作为威胁捕获的方式之一,毕竟一般来说,服务器只要生产上线了,不会无缘无故突然注册安装一个服务上去
四、针对此攻击方式的蓝队建议:
(1)留意%systemroot%目录下的新建文件,重点排查近期出现或名字带有明显攻击意图的文件
(2)留意生产服务器上ID为7045和7036的日志,突然出现在生产服务器上,多半有鬼
(3)将默认文件hash加入监控特征库,配合HIDS之类的产品,定期排查主机上的文件hash,是否有命中
本文始发于微信公众号(赛博星人):红蓝对抗之内网中psexec的行为捕获
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论