恶意代码的网络特征


知识点

OPSEC-操作安全性:攻击者可以通过多种方法来探测到是否有研究人员对恶意代码进行的测试:

  • 发送带有某个特定连接的针对性访问的网络钓鱼邮件,观察是否有从期望区域之外的IP地址的访问请求
  • 设计一种利用方式,在博客篇评论中创建一个经过编码的链接,从而创建一个私人但是可以公开的感染审计记录
  • 在恶意代码中嵌入一个未使用的域名,观察这个域名的解析记录

Snort检测:https://www.snort.org/

寻找网络操作代码:评估网络通信的第一步是找到用于执行通信的系统调用,Windows套接字中的部分API是最常见的底层函数。使用这个API接口的恶意代码通常会使用如下函数:WSAStartup、getaddrinfo、socket、connect send、recv和WSAGetLastError。恶意代码可能会使用名为InternetOpen、InternetConnect、InternetOpenURL、HTTPOpenRequest、HTTPQueryInfo、HTTPSendRequest、InternetReadFile、InternetWriteFile这些API。另一种用于网络通信的API组件对象模型接口(COM)接口。通过如URLDowownloadToFile等函数隐式使用COM的情况非常常见,但是显式使用COM的情况则非常少见,显式使用COM的恶意代码通常使用CoInitalize、CoCreateInstance和Navigate等函数,例如显示使用COM创建一个浏览器对象,可以让恶意代码混淆流量,因为这与浏览器的流量完全一直,同时也能在网络流量之有效掩盖恶意代码的行为和连接。

了解网络内容的来源:下面是一些基本的数据源:

  • 随机数据(例如调用生成伪随机值函数所返回的数据)
  • 来源于标准网络库的数据(例如调用HttpSendREquest创建的GET请求)
  • 来源于恶意代码硬编码数据
  • 关于主机及及其配置的数据
  • 从其他来源接收的数据

课后练习

Lab14-1


本章结束🎊

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×