常用恶意软件分析方法及工具汇总

更新日期: 2022-06-14阅读: 975标签: 安全

恶意软件是指由网络犯罪分子设计的恶意程序,可通过创建后门入口来获得对计算设备的访问权,从而窃取个人信息、机密数据,实施对计算机系统的破坏。为了更好地防护恶意软件,避免由恶意软件造成的危害,必须对恶意软件进行分析,以了解恶意软件的类型、性质和攻击方法。

恶意软件分析工作主要包括在隔离环境下分析木马、病毒、rootkit、勒索软件或间谍软件等恶意软件家族的样本,运用各种方法,根据其行为了解攻击者动机、目的及恶意软件类型和功能等,并创建规则来实施相应的缓解措施。当我们分析受感染的机器或文件时,我们的目标主要包括:

  • 识别受感染的文件,检测计算机设备和网络系统中可能存在的恶意软件。
  • 了解可疑恶意软件的功能。
  • 全面评估和管理恶意软件可能造成的损害。
  • 对恶意软件进行指标分析,为后续检测和防护产品研发创建正确的规则措施。

有效的恶意软件分析可以帮助安全团队快速检测并防止攻击者实施破坏活动。本文将重点介绍目前常见的恶意软件分析方法及相关工具

静态恶意软件分析

静态恶意软件分析包括提取和检查不同二进制组件和可执行文件的静态行为,比如api 标头、引用的DLL、便携式可执行(PE)区域以及更多此类内容。任何有悖于正常结果的偏差都记录在静态调查中。静态分析在不执行恶意软件的情况下完成,而动态分析一般是在受控环境下执行恶意软件来进行。

在静态分析中,涉及以下几个方面的工作:

  1. 反汇编——程序可以移植到新的计算机平台上,通过在不同环境中编译源代码来实现。
  2. 文件指纹——用于识别和跟踪网络上的数据。
  3. 病毒扫描——删除恶意软件、病毒、间谍软件及其他威胁。
  4. 分析内存工件——在分析内存工件(比如RAM转储、pagefile.sys或hiberfile.sys)期间,检查方可以开始识别流氓进程。
  5. 打包器检测——用于检测打包器、密码器、编译器、打包器加扰器、连接器和安装器。

静态分析工具包括:

  • Hybrid-analysis——使用独特的混合分析技术,检测和分析未知威胁。
  • Virustotal.com——该免费服务可以分析可疑的文件和URL。
  • BinText——该文件文本扫描器/提取器可帮助查找深藏在二进制文件中的字符串。
  • Dependency Walker——该免费程序可列出便携式可执行文件的导入和导出模块。
  • IDA——该程序可以将机器语言转换成汇编语言。
  • Md5deep——这套跨平台工具可计算和审核输入文件的散列(Hash)。
  • PEiD——可针对便携式可执行(PE)文件检测大多数常见的打包器、加密器和编译器等。
  • Exeinfo PE——该软件可查看任何可执行文件的各种信息。
  • RDG Packer——可检测打包器、加密器和编译器等。
  • D4dot——该工具擅长将打包和混淆的程序集恢复到几乎原始的程序集。
  • PEview——可快速轻松地查看32位PE文件和组件对象文件格式(COFF)的结构和内容。

动态恶意软件分析

动态恶意软件分析是分析师发现恶意软件功能的首选方法。在动态分析中,分析师将构建用作恶意软件分析的虚拟机。分析师将通过沙盒来分析恶意软件,并分析恶意软件生成的数据包数据。在动态分析中,隔离环境以避免恶意软件逃逸非常重要。

在动态分析中,需要注意以下几个问题:

  • 检查单个路径(执行跟踪)。
  • 分析环境可能并非隐形的。
  • 分析环境可能并非全面的。

动态分析工具包括:

  • Procmon——这款先进的监控工具可显示文件系统、注册表和进程/线程的实时活动。
  • Process Explorer——这是一款面向Windows操作系统的系统资源监控工具。
  • Anubis——该动态恶意软件分析平台可在受控环境下执行提交的二进制代码。
  • Comodo Instant Malware Analysis——比较容易使用和理解的在线沙盒服务。
  • Process MonitorRegshot——这款流行的注册表监控工具可显示文件系统、注册表和进程/线程的实时活动。
  • ApateDNS——该工具通过易于使用的GUI来控制DNS响应。
  • OllyDbg——一款侧重二进制代码分析的x86调试器。
  • Regshot——这款开源注册表比较工具可迅速获取注册表的快照,并进行比对。
  • Netcat——该计算机网络实用工具使用TCP或UDP协议在网络中读取数据。
  • Wireshark——该免费开源数据包分析器可用于网络故障排查、分析、软件和通信协议开发等。

内存取证分析

内存取证分析含有关于系统运行时状态的信息,并提供将来自传统取证分析工件(网络、文件系统和注册表)关联起来的功能。

在内存分析中,涉及以下几个方面的工作:

  • 映像全部的系统内存(不依赖API调用)。
  • 将进程的整个地址空间映像到磁盘,包括进程的已加载DLL、EXE、堆和堆栈。
  • 将内存中加载的指定驱动程序或所有驱动程序映像到磁盘。
  • 加密进程地址空间中的EXE和DLL(MD5、SHA1、SHA256)。
  • 验证EXE和DLL的数字签名(基于磁盘)。
  • 针对某个进程,输出内存中的所有字符串。

内存取证分析工具包括:

  • WinDbg——Windows系统的内核调试器。
  • Muninn ——使用Volatility自动执行部分分析的脚本。
  • DAMM ——基于Volatility,针对内存中恶意软件的差异分析。
  • FindAES ——查找内存中的AES加密密钥。
  • Volatility ——先进的内存取证框架

恶意软件检测

恶意软件检测是指扫描计算机和文件以检测恶意软件的过程。它不是单向过程,实际上相当复杂。它结合多款工具和方法进行检测,检测和清除过程通常在50秒钟内完成,在恶意软件检测方面卓有成效。

以下是常见的几种检测方式:

  • 基于特征或模式的匹配:特征是识别特定病毒唯一身份的算法或散列(从文本字符串获取的数字)。
  • 启发式分析或主动防御:启发式扫描类似特征扫描,只不过启发式扫描并非寻找特定的特征,而是在程序中寻找典型应用程序中没有的某些指令或命令。
  • 基于规则:启发式引擎中进行分析的组件(分析器)从文件中提取某些规则,并将这些规则与恶意代码的一组规则进行比较。
  • 行为分析:相比之下,可疑行为分析方法不是试图识别已知病毒,而是监测所有程序的行为。
  • 基于权重:根据危险程度,对所检测的每个功能赋予某个权重。
  • 沙盒:允许文件在受控的虚拟系统(即沙盒)中运行,查看其行为。

恶意软件检测工具包括:

  • YARA——分析员的模式匹配工具。
  • Yara规则生成器——根据一组恶意软件样本生成YARA规则。
  • File Scanning Framework——模块化递归式文件扫描解决方案。
  • hash deep——使用多种算法计算摘要散列。
  • Loki——基于主机的扫描器,扫描攻陷指标(IOC)。
  • Malfunction——在函数层面对恶意软件进行登记和比较。
  • MASTIFF——静态分析框架。

网络交互分析

网络交互分析在专注于网络安全的同时,还监控综合平台,以执行更普通的网络流量分析。被动网络嗅探器/数据包捕获工具可用于检测操作系统、会话、主机名和开放端口等,并不在网络上带来任何流量。可分析以太网、PPP、SLIP、FDDI、令牌环和空接口上的IPv4/6、TCP、UDP、ICMPv4/6、IGMP和Raw流量,采用与数据包嗅探相同的方式理解BPF过滤器逻辑。

网络交互分析工具包括:

  • Tcpdump——收集网络流量。
  • tcpick——从网络流量中跟踪和重组TCP数据流。
  • tcpxtract——从网络流量中提取文件。
  • Wireshark——网络流量分析工具。
  • CapTipper——恶意HTTP流量管理器。
  • Chopshop——协议分析和解码框架。
  • CloudShark——基于Web的工具,用于分析数据包和检测恶意软件流量。

代码调试器

代码调试器是实用的恶意软件分析工具,允许在底层分析代码。调试器的重要功能是断点(breakpoint)。断点命中时,程序执行被停止,并将控制权交给调试器,允许对当时的环境进行恶意软件分析。调试器可利用专门的中央处理单元(CPU)工具,可以让用户深入了解程序如何执行任务,并访问被调试程序的环境等。这在分析恶意软件时可能很有用,因为可以让用户看到调试器如何尝试检测篡改,并跳过有意插入的垃圾指令。

调试工具包括:

  • obj dump——GNU Binutils 的一部分,用于Linux二进制代码的静态分析。
  • OllyDbg——Windows可执行文件的汇编级调试器。
  • FPort——报告实时系统中敞开的TCP/IP和UDP端口,并将它们映射到对应的应用程序。
  • GDB——GNU调试器。
  • IDA Pro——Windows反汇编器和调试器,有免费评估版。
  • Immunity Debugger——用于分析恶意软件的调试器,附有Python API。

恶意URL分析

如今,网站暴露在各种威胁面前,受感染的网站将被用作跳板,帮助攻击者达到邪恶目的。比如,URL重定向机制已被广泛用于隐蔽地执行基于Web的攻击。重定向是指自动替换访问目的地,一般由Web上的HTTP协议加以控制。除了这种传统方法外,还经常使用自动访问外部Web内容(比如iframe标签)的其他方法。恶意URL分析是通过机器学习等方式,分析URL文本分词词频来检测恶意URL。

恶意URL分析工具包括:

  • Firebug——用于Web开发的Firefox扩展件。
  • Java Decompiler——反编译和检查Java应用程序。
  • jsunpack-n——模拟浏览器功能的javascript解包器。
  • Krakatau——Java 反编译器、汇编器和反汇编器。
  • Malzilla——分析恶意网页。

沙盒技术

沙盒是一个重要的安全分析系统,可以隔离程序,防止恶意或失败的项目损害或窥视PC上的任何剩余部分。沙盒是严格控制的环境,限制了一部分代码可以执行的操作。

沙盒分析工具包括:

  • firmware.re——可以拆解、扫描和分析几乎任何固件包。
  • Hybrid Analysis——基于VxSandbox的在线恶意软件分析工具。
  • IRMA——用于分析可疑文件的异步可定制分析平台。
  • Cuckoo Sandbox——开源自托管的沙盒和自动分析系统。
  • cuckoo-modified——使用GPL许可证的Cuckoo Sandbox的修改版。
  • PDF Examiner——分析可疑的PDF文件。
  • ProcDot——图形化恶意软件分析工具包。
  • Recomposer——将二进制代码安全地上传到沙盒的帮助脚本。
  • Sand droid——自动完整的安卓应用程序分析系统。

网域分析

网域分析是指安全分析师了解背景信息、检查网域和IP地址的过程。网域分析应该包括已找到信息的简要总结,以及使其他人能够找到该信息的参考资料。

网域分析工具包括:

  • SpamCop——基于IP的垃圾邮件阻止列表。
  • SpamHaus——基于网域和IP的阻止列表。
  • Sucuri SiteCheck——免费的网站恶意软件和安全扫描器。
  • TekDefense Automatic——用于收集有关URL、IP或散列的OSINT工具。
  • URLQuery——免费的URL扫描器。
  • IPinfo——通过搜索在线资源,收集有关IP或网域的信息。
  • Whois——免费在线whois搜索。
  • Mail checker——跨语言的临时电子邮件检测库。

参考链接:

https://gbhackers.com/malware-analysis-cheat-sheet-and-tools-list/。

来源: 安全牛

链接: https://fly63.com/article/detial/11730

Web前端安全同样不可忽视,编写前端代码时保持安全意识

随着网络的普及,黑客进行网络攻击的手段越来也多,越来越复杂。前端的HTML、JavaScript、CSS、Flash等技术变成了前端攻击者和开发者的战场,网站安全问题也开始向前端倾斜。

AJAX请求真的不安全么?谈谈Web安全与AJAX的关系。

AJAX请求真的不安全么?AJAX请求哪里不安全?怎么样让AJAX请求更安全?本文包含的内容较多,包括AJAX,CORS,XSS,CSRF等内容,要完整的看完并理解需要付出一定的时间。

第三方 CSS 并不安全

第三方内容在其沙箱区域内具有强大的能力。如果你担心恶意用户诱使你的网站加载第三方资源,可以通过 CSP 用作防护手段,其可以限制加载图片,脚本和样式的来源。

WEB应用程序安全检查列表

检查页面隐藏或丢失的内容:检查webserver元数据文件,如:robots.txt, sitemap.xml,.DS_Store, .htaccess,检查搜索功能可能的注入或攻击方式,检查不同agent代理访问网站显示内容的是否一致

利用CSS注入(无iFrames)窃取CSRF令牌

要做到无iFrame,我将使用一种类似于之前我讨论过的方法:我将创建一个弹窗,然后在设置计时器后更改弹出窗口的位置。使用这种方法,我仍然可以加载受害者的CSS,但我不再依赖于受害者是否允许iFrame。

30 分钟理解 CORB 是什么

我当前的 chrome 版本是 v68,如果是 v66 或更低版本可能提示的警告信息略有不同。印象中只对 CORS 比较熟悉,CORB 是个什么鬼?好奇心迫使我想要了解一下它到底是什么,于是暂时把手头工作放下查了一些资料并花时间汇总了一下,就有了这篇文章

谈 target=‘_blank’的安全问题

大家都喜欢target=_blank, 因为新页面打开不影响原来的页面。但是这个存在安全问题, 由target=_blank打开的页面, 可以通过window.opener访问原来的窗口。遍可以简单的将网页导航到其他网站, 这就存在很多的安全隐患了, 比如钓鱼,这种问题解决起来也很简单, 在链接中加入rel=noreferrer noopener属性就可以了

Web安全测试检查单

Web安全测试检查单。上传功能:绕过文件上传检查功能,上传文件大小和次数限制。注册功能:注册请求是否安全传输,注册时密码复杂度是否后台检验,激活链接测试

一些安全相关的HTTP header

HTTP Strict-Transport-Security,简称为HSTS。X-Frame-Options:是否允许一个页面可在<frame>、<iframe>、<object>中展现的标记。X-XSS-Protection作用:防范XSS攻击。

第三方CSS安全吗?

第三方内容在其沙箱中具有很高的影响力。 虽然图像或沙盒iframe有着非常小的沙箱,但脚本和样式的作用范围却影响你的整个页面,甚至是整个站点。如果你担心用户会欺骗你的网站去加载第三方资源,可以使用CSP(内容安全策略)保证安全

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!