Windows权限维持-AMSI

admin 2021年9月29日02:20:43评论201 views字数 949阅读3分9秒阅读模式

Windows权限维持-AMSI


AMSI


AMSI是Windows下的一个接口,全称是Anti-Malware Scan Interface,叫反恶意软件扫描接口,用来检测恶意程序的。

例如Windows Defender就会和AMSI API进行交互,大概过程是这样的:比如要执行一段Powershell脚本,执行前会向Powershell进程注入一个AMSI.dll,该DLL会检测缓冲区内容、命令的内容,如果发现恶意关键字或恶意软件的签名,Windows Defender就会阻止并提醒存在危险操作。

不仅是Windows Defender,任何杀软都可以通过AMSI接口来进行相关功能的开发,AMSI除了会检测Powershell外,还会检测VBSript、exe、Scriptlet等。


Windows权限维持-AMSI


例如这里打开Powershell(Process Explorer)会发现进程中有出现amsi.dll:


Windows权限维持-AMSI


维持原理


向第三方杀软也可以使用AMSI接口来进行交互,以此识别恶意脚本或命令,微软提供了示例代码,该示例代码编译为dll,文件名为AmsiProvider,使用regsvr32注册后,会随着amsi一块注入到相关进程中。


dll中可指定触发命令的关键字,当powershell命令包含关键字时,恶意命令将运行,大概类似下面这个流程:


Windows权限维持-AMSI


维持测试


这里站在巨人的肩膀上,直接使用写好的测试,链接参考在最后面,下载AmsiProvider.dll进行注册:


Windows权限维持-AMSI


注册后打开powershell,输入关键字pentestlab来触发命令,上面命令会调用计算器:


Windows权限维持-AMSI


作者提供了cpp源码,关键字以及触发后执行的命令都可以修改,使用vs将源码导入从新编译即可。例如把关键字改为powershell,命令改为运行notepad:


Windows权限维持-AMSI


备注:AMSI应该是只有win10专业版、企业版和winserver2016支持。


参考链接


https://github.com/netbiosX/AMSI-Provider


https://docs.microsoft.com/en-us/samples/microsoft/windows-classic-samples/iantimalwareprovider-sample/

本文始发于微信公众号(aFa攻防实验室):Windows权限维持-AMSI

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年9月29日02:20:43
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Windows权限维持-AMSIhttps://cn-sec.com/archives/414721.html

发表评论

匿名网友 填写信息