.NET自动化混淆工具
2020-10-03 02:44:16 Author: mp.weixin.qq.com(查看原文) 阅读量:7 收藏

推一个混淆工具,只支持.NET

测试对象:Watson

以360为例

混淆后:

杀软一般就是静态分析和动态分析

我们可以利用工具pestudio来辅助测试

pestudio主要用来做静态分析和恶意软件评估

下载地址:

https://www.winitor.com/tools/pestudio/current/pestudio.zip

简单介绍:

https://www.prodefence.org/pestudio-malware-initial-assessment-tool/

Tip: 平时编译的时候这些debug信息记得去掉.

DefenderCheck可以定位WD查杀的关键字符串,但是我在实际中使用不太好用,爱报错.

这个程序会自动对类名,变量名,命名空间,附件信息(公司名等资源信息)等进行混淆.静态绕过一些AV查杀.

主要使用的是dnlib这个库来处理.NET程序,教程参考github:

https://github.com/0xd4d/dnlib

dnlib可以获得目的程序的所有类,方法,命名空间,导出方法等等.变换字符串很方便.

也能加入强签名,

demo:

        public static void obfuscateMethods(ModuleDef md)        {            foreach (var type in md.GetTypes())            {                // create method to obfuscation map                foreach (MethodDef method in type.Methods)                {                    // empty method check                    if (!method.HasBody) continue;                    // Obfuscate constructor                    if (method.IsConstructor) continue;
string encName = RandomString(10); Console.WriteLine($"{method.Name} -> {encName}"); method.Name = encName; } } }


遍历之后随机改变方法名.

https://github.com/BinaryScary/NET-Obfuscate/

编译选择Release

参考(原文)链接:https://www.xanthus.io/post/building-an-obfuscator-to-evade-windows-defender


文章来源: http://mp.weixin.qq.com/s?__biz=MzUyMDgzMDMyMg==&mid=2247483898&idx=1&sn=8557735331104381cccf69c35a6d906d&chksm=f9e52de7ce92a4f1fa47acada49c48fcf27af061141d6981c1c59f570e55a12fb816d87537dc&mpshare=1&scene=24&srcid=1003ud3MRq4k0TaCo7px9Ctb&sharer_sharetime=1601664255640&sharer_shareid=5191b3dcb328f693d5261ba6bca8d267#rd
如有侵权请联系:admin#unsafe.sh