makin
1.0.0
我创建了makin ,以使我的初始恶意软件评估对我来说更容易,我认为这对他人也很有用,它有助于揭示样本使用的调试器检测技术。
makin将样本打开为Debuggee,并注入asho.dll (主模块在注射前重命名所有dlls ), asho.dll在ntdll.dll和kernelbase.dll库中和参数检查后,将几个功能挂钩,它将相应的消息发送给Debugger( makin.exe )。
makin还为IDA Pro生成了一个脚本,以在检测到的API处设置断点。
目前, makin可以揭示以下技术:
ntdll.dll :
NtClose参考:“终极”反欺骗参考:7.b.iiNtOpenProcess参考:“终极”反欺骗参考:7.biNtCreateFile参考:“终极”反欺骗参考:7.b.iii(开放本身)NtCreateFile参考:“终极”反欺骗参考:7.b.iii(打开驱动程序)LdrLoadDll参考:“终极”反欺骗参考:7.b.ivNtSetDebugFilterState参考:“终极”反欺骗参考:7.D.VINtQueryInformationProcess参考:“终极”反欺骗参考:7.d.viii.a,7.d.viii.b,7.d.viii.c.cNtQuerySystemInformation参考:“终极”反欺骗参考:7.e.iiiNtSetInformationThread -ref:“终极”反欺骗参考7.f.iiiNtCreateUserProcess参考:“终极”反欺骗参考7.GINtCreateThreadEx参考:NTUERY博客文章NtSystemDebugControl参考:@waleedassar -PastebinNtYieldExecution参考:“终极”反欺骗参考7.d.xiiiNtSetLdtEntries参考:反帕克克技巧:第一部分-2.1.2NtQueryInformationThread -Ref:ntquery -ntqueryInformationThreadNtCreateDebugObject和NtQueryObject参考:抗debug ntqueryObjectRtlAdjustPrivilege参考:使用rtladjustprivilege检测insid3codeTeam的调试器PEB->BeingDebugged - 而不是调用IsDebuggerPresent() ,而是手动检查PEB (过程环境块)的BeingDebugged标志。PEB->NtGlobalFlag参考:al-khaserUserSharedData->KdDebuggerEnabled -ref:al -khaser -shareuserdata_kerneldebuggerPROCTECTED Hander Trick -Ref:Al -Khaser- handle_flag_protect_from_close kernelbase.dll :
IsDebuggerPresent参考:MSDNCheckRemoteDebuggerPresent参考:MSDNSetUnhandledExceptionFilter参考:“终极”反欺骗参考:d.xvRegOpenKeyExInternalW检查注册表键RegQueryValueExW检查注册表密钥值您可以通过编辑checks.json文件添加更多VM检查,而无需修改可执行文件
就目前而言,您可以随心所欲:)
