`

Dynamic Code Obfuscation — 最精确地理解DCO(一)

阅读更多

首先请大家查看附件中的论文New Attack Tricks Antivirus Software。。下面是我的理解,请多多批评指正。

1. 传统多态病毒:

有自己的引擎,src code I -> src code II。一般的杀毒软件能找到引擎,分析它并入数据库。

2. DCO攻击:

引擎在黑客服务器上(对恶意代码的handle也在这儿),它为每个访问的用户生成一份“独一无二”的混淆出来的代码(长地不一样,本质却一样)。

3. Symantec采取措施:

控住浏览器,识别漏洞,在洞口待客(恶意代码)。常用的“模式匹配”貌似过气儿了,行为模式即将盛行。判断代码是否恶意,我们不找“签证”了,而是检测代码让系统在一开始要做的事情,例如调用系统API等,照样可以拦截住并干掉它!

4. 其它防护措施:

Finjan静态分析DCO代码,试图来识别混淆背后的模式,它是找那个built-in 函数,理解含义,就晓得代码干嘛了。“模式匹配”总地来讲没过气儿,“key”是那个built-in函数(该函数肯定是plain code喽),如果杀毒商们能在众多恶意代码样本中发现相同的代码片断,那该片断就可作为签证使用啦!

 

疑问:

如果多态都是通过那个built-in函数实现的,那么问题现在归结为:传统的多态病毒“一种病毒一个函数”,一对一,杀毒商们分析并找出签证入数据库以作匹配;而新型的DCO攻击,“一份代码一个函数”,而事实上黑客服务器可以造出无数份不同的病毒,所以杀毒商们赶不及分析如此“多”的函数,所以棘手了?

难道混淆算法有无数个或超多个?

如果不是,而是有限个,那杀毒商们早就统计出来入库作匹配了,还等着你逍遥法外啊。所以这条不成立。

如果是这样黑客们就随意搞出很多混淆代码和反混淆代码(built-in 函数)。

 

请问各位过路的大虾小虾们,我这样理解对地不?

  • DCO.rar (1.3 MB)
  • 描述: New Attack Tricks Antivirus Software 非常非常经典地一篇论文,共享给大家,共同学习
  • 下载次数: 0
分享到:
评论

相关推荐

    obfuscation

    obfuscation is important technology.

    ObfusPro 2010 .NET Obfuscation tool

    ObfusPro 是一款核级的.NET混淆保护工具。其强大的运行时混淆引擎,能为您的.NET 程序提供高强度的混淆保护。防止黑客通过搜索您的二进制文件获取敏感的应用程序字符串。最大限度的保护您的.NET 程序不受不法分子的...

    dbms_obfuscation_toolkit加密解密数据

    DBMS_OBFUSCATION_TOOLKIT是Oracle数据库提供的一种用于数据加密解密的强大工具包,自Oracle 8i版本开始引入。它支持多种加密算法,如DES、TripleDES以及MD5等,能够为数据的安全性提供强有力的保障。下面将详细介绍...

    web application obfuscation

    《Web Application Obfuscation》这本书由Mario Heiderich、Eduardo Alberto Vela Nava、Gareth Heyes和David Lindsay共同编写,旨在为读者提供一种新的保护Web应用程序的方法——代码混淆(Obfuscation)。...

    Web Application Obfuscation英文版

    混淆技术是一种用于增加代码复杂性,使其难以被逆向工程解析的技术,常用于防止恶意攻击者理解或篡改软件的内部逻辑。 混淆的核心目的是使代码变得难以理解和分析,从而提高其安全性。在Web应用中,混淆可以应用于...

    Randomtable and hash coding-based binary code obfuscation against stack traceanalysis

    <span xss=removed>Code obfuscation is intended to thwart reverse engineering by making programmes hard to understand. Call <span xss=removed>chains collected by stack tracing can be used to ...

    Bohannon-Revoke-Obfuscation-PowerShell-Obfuscation-Detection

    标题《Bohannon-Revoke-Obfuscation-PowerShell-Obfuscation-Detection》指出了文章的核心主题是关于PowerShell代码混淆与检测技术的研究。描述部分提到这篇文章是由安全研究者Daniel Bohannon和Lee Holmes合作撰写...

    Obfuscation.sh,ollvm移植到LLVM10.0.1以及更高版本的脚本

    Obfuscation.sh,Obfuscation移植到LLVM10.0.1以及更高版本的脚本,使用方法:https://blog.csdn.net/tabactivity/article/details/108995746

    Invoke-Obfuscation-Bypass + PS2EXE 绕过主流杀软1

    在描述中提到,通过将 Invoke-Obfuscation 应用到 C# 生成的 PowerShell 脚本上,然后使用 PS2EXE 工具将其转换为exe文件,可以有效地绕过某些主流杀软的检测。例如,在测试过程中,混淆后的脚本不再被某60云查杀和...

    Bohannon-Revoke-Obfuscation-PowerShell-Obfuscation-Detection-And

    标题“Bohannon-Revoke-Obfuscation-PowerShell-Obfuscation-Detection-And”与描述中的“Evasion-Using-Science-wp”共同指向一个主题,即PowerShell混淆技术的检测与规避方法,特别是利用科学手段进行的反混淆策略...

    obfuscation-maven-plugin:一个用于使用qprotect混淆编译文件的Maven插件

    混淆技术是软件开发中的一种策略,主要目的是为了保护代码不被轻易理解和篡改,特别是在开源或者需要发布可执行文件的场景中。在Java世界里,这一技术常用于Android应用开发,但也适用于桌面应用和其他Java项目。...

    藏经阁-Revoke-Obfuscation.pdf

    2. Revoke-Obfuscation:Revoke-Obfuscation 是一种 PowerShell 混淆技术,旨在规避检测和追踪。该技术通过使用各种方法来混淆 PowerShell 代码,例如使用 Base64 编码、AES 加密等。 3. Invoke-Obfuscation 和 ...

    python-obfuscation, 基于 python的项目模糊处理技术.zip

    python-obfuscation, 基于 python的项目模糊处理技术 python-代码保护机制基于 python的项目模糊处理技术。描述在这个存储库中,我将尝试和尝试基于 python的不同选项来保护基于的代码。组织目标是位于目录的项目,...

    .net的矛与盾 软件保护与软件破解程序源代码(收集reflector最全插件,大部分有源代码)

    20.CodeSearch: This add-in allows searching for strings and regular expressions in disassembled code. 21.RuleSetEditor: Editor for Windows Workflow Foundation rules. 22.AssemblyListEx:Register a file...

    extracting_matlab_thecode_

    另一种方法是使用“code obfuscation”,这是一种使代码难以阅读和理解的技术,而不会改变其功能。这可能包括变量名的混淆、代码重排、删除未使用的变量等步骤。提取在这种情况下可能意味着反混淆过程,但MATLAB本身...

Global site tag (gtag.js) - Google Analytics