恶意代码安全攻防


第九章、恶意代码安全攻防html

第十章、缓冲区溢出web


Rootkit的定义

  • 一类隐藏性恶意代码形态,经过修改现有的操做系统软件,使 攻击者得到访问权并隐藏在计算机中。
  • Rootkit与特洛伊木马、后门
  • Rootkit也可被视为特洛伊木马
  • 获取目标操做系统上的程序或内核代码,用恶意版本替换 它们
  • Rootkit每每也和后门联系在一块儿
  • 植入Rootkit目的是为攻击者提供一个隐蔽性的后门访问
  • 定义特性:隐藏性
  • Rootkit分类: 用户模式、内核模式

分析一个自制恶意代码样本

  • 1.提供对这个二进制文件的摘要,包括能够帮助识别同同样本的基本信息。
  • 2.找出并解释这个二进制文件的目的。
  • 3.识别并说明这个二进制文件所具备的不一样特性。
  • 4.识别并解释这个二进制文件中所采用的防止被分析或逆向工程的技术。
  • 5.对这个恶意代码样本进行分类(病毒、蠕虫等),并给出你的理由。
  • 6.给出过去已有的具备类似功能的其余工具。
  • 奖励问题:
  • 7.可能调查出这个二进制文件的开发做者吗?若是能够,在什么样的环境和什么样的限定条件下?

准备工做

1确认文件完整性

2确认二进制文件格式

这里看出他是图像界面的

3取得文件中的可打印字符串

乱码,能够猜想是加壳了

4使用监控软件process explorer与wireshark


5反汇编工具PEID分析,这里能够看到文件的入口点、偏移、文件类型、EP段、汇编程序以及加壳类型。



能够看到其加壳类型

六、利用超级巡警自动脱壳工具脱壳

七、再次查看是否脱壳成功

能够看到产生大量函数调用名及其余有用字符串,能够从中寻找有用的信息。

八、进一步使用IDA分析

解答:

问题1解答

样本摘要及基本信息编程

  1. 大小:20,992字节
  2. MD5: md5sum计算 caaa6985a43225a0b3add54f44a0d4c7
  3. PE文件格式 运行在Windows 2000, XP and 2003及以上 版的操做系统中
  4. UPX加壳并进行了壳假装处理
  • UPX段更名为JDR
  • 版本号从1.25改成0.99

问题2解答

找出并解释这个二进制文件的目的浏览器

  • 后门工具 -> HTTP Bot?
  • 可以使远程的攻击者彻底地控制系统
  • 它采用的通讯方式使得只要系统可以经过浏览器上网,就可以得到来自攻击者的指令。
备注

网络行为
经过HTTP协议请求10.10.10.10\RaDa\RaDa_commands.html
行为解读
将自身复制至感染主机系统盘,并激活自启动
尝试获取一个HTML页面‖commands‖ 猜想是否后门接收控制指令?安全

问题3解答

识别并说明这个二进制文件所具备的不一样特性服务器

RaDa.exe被执行时,它会将自身安装到系统中,并经过修改注册表的方式使得每次系统启动,它都可以被启动,启动后循环执 行一下操做:网络

  • ⑴从指定的web服务器请求指定的web页面;
  • ⑵解析得到的web页面,获取其中的指令
  • ⑶执行解析出来的指令
  • ⑷等待一段时间
  • ⑸返回第⑴步

启动后,RaDa一直在后台运行,不会弹出任何窗口。它支持如下指令:tcp

  • exe 在宿主主机中执行指定的命令
  • put 将宿主主机中的指定文件上传到服务器
  • get 将服务器中的指定文件下载到宿主主机中
  • screenshot 截取宿主主机的屏幕并保存到tmp文件夹
  • sleep 中止活动一段时间


默默运行在后台,会按期给IP为10.10.10.10发出连接请求函数

问题4解答

识别并说明这个二进制文件所采用通信方法工具

  • 经过HTTP协议进行通讯,RaDa经过调用隐藏的IE实例向web服务器发送请求,获取命令。
  • Snort规则
alert tcp any any -> any $HTTP_PORTS (msg:"RaDa Activity Detected - Commands Request"; flow:to_server,established;  
content:"GET /RaDa/RaDa_commands.html"; depth:30; classtype:trojan-activity; sid:1000001; rev:1;)  
alert tcp any $HTTP_PORTS -> any any (msg:―RaDa Activity Detected - Commands Page‖; flow:from_server,established; 
content:―NAME=exe‖; nocase; depth:1024; classtype:trojan-activity; sid:1000003; rev:1;)  alert tcp any any -> any $HTTP_PORTS (msg:"RaDa Activity Detected - Multipart Message"; flow:to_server,established; 
content:"boundary=--------------------------0123456789012"; depth:1024; classtype:trojan-activity; sid:1000004; rev:1;)

问题5解答

识别并解释这个二进制文件中所采用的防止被分析或逆向工程的技术

  • ⑴、这个二进制文件使用UPX加壳以后又作了手工修改,使得难以脱壳,而不脱壳又会影响反汇编。

  • ⑵、脱壳以后,能够在文件中找到字符串“Starting DDoS Smurf remote attack.”这会使分析者误觉得样本能够发动DDos攻击,而实际上它没有提供任何用以发动DDos攻击的子程序。
  • ⑶、提供了—help参数,可是使用这个参数以后,除了输出版权信息外并无提供其余有用的信息。--verbose参数也没有什么用处, GUI窗口中的“Show config”及“Show usage”也显示与— help参数相同的信息。
  • ⑷、经过查看网卡的MAC地址以及查看VMware Tools的注册表项来判断操做系统是否运行在VMware虚拟机上,若是是,则使用— authors参数时将不会输出做者信息。

问题六、7解答

对这个恶意代码样本进行分类(病毒、蠕虫等),并给出你的理由

  • 这是一个后门程序,运行并按照攻击者命令进行工做;若是是多对1控制,则可认为是HTTP Bot
  • 这个样本不具备传播和感染的性质,因此它不属于病毒和蠕虫
  • 它也没有将本身假装成有用的程序以欺骗用户运行,因此他也不属于木马

  • 给出过去已有的具备类似功能的其余工具

    • Bobax – 2004年发现的木马,也是使用HTTP协议从指定的服务器下载命令文件,而后解析并执行其中的指令。Setiri及其前辈GatSlag

问题9解答-bonus

可能调查出这个二进制文件的开发做者吗? 若是能够,在什么样的环境和什么样的限定 条件下?

  • 能够直接从脱壳后的二进制程序中直接获取

  • 利用监视工具process explorer 能够查看结构信息,能够看出copyright (C)2004 baul siles &david perez

相关文章
相关标签/搜索