AMSI
一个反病毒接口,分析恶意代码。
位置是在C:\windows\system32\amsi.dll
安全厂商也可以通过接入Amsi进行查杀提高安全性
AMSI的处理流程是:扫描—-触发—-病毒库
ASMI绕过方式
不进行绕过,的显示
PS C:\Users\32569> amsiutils
所在位置 行:1 字符: 1
+ amsiutils
+ ~~~~~~~~~
此脚本包含恶意内容,已被你的防病毒软件阻止。
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : ScriptContainedMaliciousContent
PS C:\Users\32569>
长度清零
先对Amsi.dll的使用IDA进行逆向,查调用函数存在一个AmsiScanBuffer函数。
扫描充满内容的缓冲区以查找恶意软件。
HRESULT AmsiScanBuffer(
[in] HAMSICONTEXT amsiContext,
[in] PVOID buffer,
[in] ULONG length,
[in] LPCWSTR contentName,
[in, optional] HAMSISESSION amsiSession,
[out] AMSI_RESULT *result
);
第三个参数是设置AMSi从缓冲区读取的长度,我们可以把这个设置为0让它读不到东西。
...