恶意代码分析利器 – scdbg

开发 开发工具
scdbg是一款多平台开源的Shellcode模拟运行、分析工具。其基于libemulibrary搭建的虚拟环境,通过模拟32位处理器、内 存和基本Windows API运行环境来虚拟执行Shellcode以分析其行为。有了虚拟执行妈妈再也不用担心我的电脑中病毒了。

什么是scdbg

scdbg是一款多平台开源的Shellcode模拟运行、分析工具。其基于libemulibrary搭建的虚拟环境,通过模拟32位处理器、内 存和基本Windows API运行环境来虚拟执行Shellcode以分析其行为。有了虚拟执行妈妈再也不用担心我的电脑中病毒了。

基本原理

众所周知,shellcode为了实现特定的功能必须通过调用系统API来完成-不论先前怎怎么变形怎么加密***都会调用系统API。scdbg就 是通过 模拟执行以及hook多达200多个API来探测shellcode的行为。当然比如创建文件和访问网络这些危险的API并没有真正的在本机执行,而是通 过传回虚假的返回值来欺骗shellcode让其平稳运行。

示例

直接命令行输入scdbg.exe example.sc 来看看输出:

其中example.sc文件就是以二进制形式保存的Shellcode,我们可以看到这段shellcode调用了两次较关键的函数 -CreateProcessA,***次调用tftp.exe程序下载winapi32.exe,第二次准备执行之。很典型的下载并执行行为。有了 scdbg我们就不必花很多时间在搭建测试环境、解码shellcode、调试理解各种分枝跳转、担心机器是否中招。。。。。。简单明了。

scdbg和通常的命令行工具一样,有着众多参数选项,这里只做最基本的演示,就不一一列举。想必大家都有在命令行下痛苦的经历,命令行的历史就是我等小菜的血泪史,还好scdbg有GUI图形界面版:

 

指定偏移,自定参数一目了然。

亮点

A.  跨平台开源

同时支持unix和windows系统。对有系统洁癖的同学来说可以放心在unix下搭建环境“调戏”shellcode了。

B.文档类格式漏洞

scdbg能很容易通过交互方式分析诸如pdf,excel,word等文档类漏洞释放出来的shellcode。这类漏洞的相同点就是首先肯定会通过调用GetFileSize找到宿主文

件句柄然后进行下一步操作(是这样的吧:)。感觉这项功能还是有很多应用场景的,命令行如下:

  1. $ ./scdbg -f test.sc -fopen bad.pdf -i 
  2. fopen(bad.pdf) = 4d565c 
  3. Loaded 312 bytes from file test.sc 
  4. Initialization Complete.. 
  5. Interactive Hooks enabled 
  6.               
  7. 401083  GetFileSize(4) = 2031b 
  8. 401112  GlobalAlloc(sz=2031b) = 60000 
  9. 401118  SetFilePointer(hFile=4, dist=0, FILE_BEGIN) 
  10. 401132  ReadFile(hFile=4, buf=60000, numBytes=2031b
  11. 401147  CreateFile(x.exe) 
  12.         Interactive mode local file: /tmp/WHhUmhtM 
  13. 401158  WriteFile() 
  14. 401176  WinExec(x.exe) 

其他重要功能

  内存监视-简单调试Shell-ROPshellcode分析-内存dump。。。。。。

资源下载

WIN32

可执行程序: http://sandsprite.com/CodeStuff/scdbg.zip

源代码:https://github.com/dzzie/VS_LIBEMU

  git clone git://github.com/dzzie/VS_LIBEMU.git

*nix/Cygwin Source

源代码 :  https://github.com/dzzie/SCDBG

git clone git://github.com/dzzie/SCDBG.git

原文链接:http://www.freebuf.com/tools/16320.html

 

责任编辑:陈四芳 来源: freebuf.com
相关推荐

2013-11-05 15:06:29

scdbg恶意代码分析安全工具

2016-11-24 11:07:54

Andriod恶意代码

2017-03-27 15:46:14

2013-11-12 13:09:46

2011-08-09 11:45:45

2014-10-23 09:40:57

2014-10-29 14:43:05

2014-12-12 14:55:42

移动恶意代码移动安全

2011-08-09 11:51:37

2021-03-01 11:33:03

微软恶意代码恶意软件

2014-10-23 18:26:02

破壳漏洞Shellshock远程代码执行漏洞

2016-12-26 15:28:34

恶意程序PowerShellA程序

2021-11-17 10:40:33

网络安全恶意代码网络攻击

2020-08-10 09:00:16

微软浏览器Windows

2013-07-27 21:04:58

2009-07-02 10:16:34

北京外国语大学恶意代码黑客

2021-06-15 09:10:41

漏洞网络安全程序员

2015-09-18 19:05:35

恶意代码病毒Xcode

2014-12-30 16:37:11

点赞
收藏

51CTO技术栈公众号