GVKun编程网logo

腾讯开源恶意软件分析工具 HaboMalHunter(在线恶意软件分析)

14

想了解腾讯开源恶意软件分析工具HaboMalHunter的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于在线恶意软件分析的相关问题,此外,我们还将为您介绍关于20154312曾林Exp4恶意

想了解腾讯开源恶意软件分析工具 HaboMalHunter的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于在线恶意软件分析的相关问题,此外,我们还将为您介绍关于20154312 曾林 Exp4恶意软件分析、Al-Khaser —— 恶意软件检测、Deepfence 开源软件漏洞查找分析工具 ThreatMapper、domain-name-system – 恶意软件DNS记录指向我的IP地址的新知识。

本文目录一览:

腾讯开源恶意软件分析工具 HaboMalHunter(在线恶意软件分析)

腾讯开源恶意软件分析工具 HaboMalHunter(在线恶意软件分析)

1月17日,腾讯宣布正式开源恶意软件分析工具 HaboMalHunter。

HaboMalHunter 是哈勃分析系统的开源子项目,用于 Linux 平台下进行自动化分析、文件安全性检测的开源工具。使用该工具能够帮助安全分析人员简洁高效的获取恶意样本的静态和动态行为特征。分析结果中提供了进程、文件、网络和系统调用等关键信息。

功能清单

开源代码支持Linux x86/x64 平台上的ELF文件的自动化静态动态分析功能。

静态分析

  1. 基础信息:包括文件md5,名称,类型,大小和SSDEEP等信息。

  2. 依赖so信息:对于动态链接的文件,输出依赖的so信息。

  3. 字符串信息

  4. ELF头信息,入口点

  5. IP和端口信息

  6. ELF段信息,节信息和hash值

  7. 源文件名称

动态分析

  1. 动态运行启动结束信息:耗时等

  2. 进程信息:clone系统调用,execve调用,进程创建结束等

  3. 文件操作信息:打开,读取,修改,删除等文件IO操作

  4. 网络信息:TCP, UDP, HTTP, HTTPS, SSL等信息

  5. 典型恶意行为:自删除,自修改和自锁定等

  6. API信息:getpid, system, dup 等libc函数调用

  7. syscall 序列信息

目前该项目已完成使用volatility和LiME进行内存分析,以及将输出的json数据格式转化成为HTML页面进行展示等功能,未来将会增加更多的病毒规则(./util/yara/malware)。

20154312 曾林 Exp4恶意软件分析

20154312 曾林 Exp4恶意软件分析

##写在前面

如果把恶意软件比作罪犯的话,怎么看这次实验?

  • **实验目的:**以后能够在茫茫人海中找到罪犯。

  • **实验过程:**现在以及抓到了一个罪犯,把他放到茫茫人海里去,看看他和普通人有啥区别。这些区别就是罪犯的特征,以后可以根据这些特征找到更多的罪犯。

  • **实验手段:**利用各种技术去找到罪犯和普通人的区别。

回答问题

Q:如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。 A:

  • 监控TCP连接
  • 监控注册表修改情况
  • 监控创建新的文件
  • 监控是否频繁连接未知IP
  • 利用日志进行监控

Q:如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。 A:

  • PEiD:是否加壳
  • PE Explorer:反汇编是否有问题,是否有不正常的Data
  • Wireshark:抓包分析,是否有可疑连接
  • TCPView:查看是否使用cifs端口
  • Systracer:程序运行前后是否有注册表、端口、文件的变化

实践过程记录

目录

1.系统运行监控 1.1Sysinternals工具集 1.1.1TCPView工具 1.1.2Sysmon工具 1.1.3Promon工具 1.2计划任务并记录联网行为 1.3Wireshrak分析 2.恶意软件分析 2.1VirScan分析恶意代码 2.2分析软件动态分析 2.2.1PE Explorer 2.2.2PEiD 2.2.3SysTracer

<h3 id=''1''> 1.系统运行监控</h3>

系统运行监控大致可以分为两种:

  • 通过Sysinternals工具集来进行实时的分析,分析出有哪些进程、程序是比较可疑的。
  • 通过建立任务计划,将一段时间内的程序动态记录在日志里,然后通过分析日志来检查是否有可疑的程序。

<h4 id=''1.1''>1.1Sysinternals工具集</h4>

Sysinternals Suite包含一系列免费的系统工具,其中有大名鼎鼎的Process Explorer、FileMon、RegMon等,如果把系统管理员比喻成战士的话,那么Sysinternals Suite就是我们手中的良兵利器。熟悉和掌握这些工具,并且对Windows的体系有一定的了解,将大幅度的提高日常的诊断和排错能力。

这次我们主要使用的是:

  • TCPView
  • Sysmon
  • Promon

<h5 id=''1.1.1''> 1.1.1TCPView工具</h5>

顾名思义,TCPView自然是用来监测TCP连接的工具,在开启后门的情况下,打开工具就可以看到后门程序正在通过RemotePort:4312连接到RemoteAdress:192.168.15.132,值得注意的是LocalPort这一栏只有4312-3是cifs,其他的进程都是具体的端口号。

查阅资料可以知道cifs是一个新提出的协议,它使程序可以访问远程Internet计算机上的文件并要求此计算机提供服务。很明显如果有程序的LocalPort显示为cifs的时候就要注意了。

<h5 id=''1.1.2''>1.1.2Sysmon工具</h5>

SysmonSysinternals工具集里面一个重要工具,最主要的功能就是可以通过自定记录规则进行系统运行的监控,语法结构与HTML一致,在老师配置文件的基础上我修改了一份自己的配置文件。

<Sysmon schemaversion="4.00">
  <!-- Capture all hashes -->
  <HashAlgorithms>*</HashAlgorithms>
  <EventFiltering>
<!-- Log all drivers except if the signature -->
<!-- contains Microsoft or Windows -->
<DriverLoad onmatch="exclude">
  <Signature condition="contains">microsoft</Signature>
  <Signature condition="contains">windows</Signature>
</DriverLoad>

<NetworkConnect onmatch="exclude">
  <Image condition="end with">Chrome.exe</Image>
</NetworkConnect>

<NetworkConnect onmatch="include">     
  <DestinationPort condition="is">80</DestinationPort>      
  <DestinationPort condition="is">443</DestinationPort> 
  <DestinationPort condition="is">4312</DestinationPort>   
</NetworkConnect>

<CreateRemoteThread onmatch="include">
  <TargetImage condition="end with">explorer.exe</TargetImage>
  <TargetImage condition="end with">svchost.exe</TargetImage>
  <TargetImage condition="end with">winlogon.exe</TargetImage>
  <SourceImage condition="endwith">powershell.exe</SourceImage>
</CreateRemoteThread>
  </EventFiltering>
</Sysmon>

配置的时候可能会由于版本号不对导致无法进行配置,只要修改头部的版本号就可以了。就是这个<Sysmon schemaversion="x.xx">

显示Sysmon started之后就开始记录了,到事件管理器里面就可以看到。

使用Sysmon的查找功能可以迅速找到你想要查找的有关内容

或者使用筛选器,筛选出一段时间内的信息

结合这两点分析,就找到了电脑上的后门4312-3.exe

<h5 id=''1.1.3''>1.1.3Promon工具</h5>

同属于Sysinternals工具集主要是对于进程进行的分析,并且能够以进程树的形式分析每一个进程的行为。

刚开始分析就看到了一个很奇怪的东西

这个JUMP文件是我当时实践跳一跳脚本的文件夹,莫名其妙出现了一个LDSGameCenter的文件,正打算百度一下看看这是个啥,结果一念发现LDS=鲁大师这可能是个鲁大师的游戏中心文件,百度了一下果然是。我说我怎么一直找不到鲁大师游戏中心到底存哪了。顺藤摸瓜把它删了。

如果选择用ProcessTree视图查看可以看到很多cmd.exe的进程树,我觉得都很可疑,因为一般正常的程序是不会有一个cmd.exe进程在下面常驻的,一个一个点开看,果然看到了4312-3.exe

4312-3.exe进行分析,可以看到程序的链接路径

进行回连之后,先执行dir命令,可以看到4312-3.exe读取了整个Desktop的文件,并且进行了CreateFileCloseFile操作。

再看看执行webcam_snap会有什么不同,可以看到新出现了LoadImage等一系列操作。并且还修改了和COM3有关的注册表,COM3明显是一个端口,这一点已经很可疑了,一般不会有什么程序用到COM1 COM2之外的端口。

我们再用record_mic命令试试看

又一次修改了COM3端口有关的注册表,可以推测修改COM3端口是后门程序传输数据的一个重要特征。我们再看一看4312-3.exe的具体信息

可以看到还调用了advapi32.dll库,这个库包含了函数与对象的安全性、注册表操控以及事件日志。这也可以作为后门程序的一个特征了。

<h4 id=''1.2''> 1.2计划任务并记录联网行为</h4>

在创建计划任务之前,先创建一个netstatlog.bat文件(命令:echo netstatlog.bat),用来把netstat记录的东西格式化输出到netstatlog.txt,其内容如下:

date /t >> c:\netstatlog.txt
time /t >> c:\netstatlog.txt
netstat -bn >> c:\netstatlog.txt

之后就可以在Windows>>计划任务里面创建新的计划,注意勾选以最高权限运行

设置里面启动的程序只要选netstatlog.bat就ok,积累了一天的日志可以开始分析了。

首先是把netstatlog.txt导入到excel中去,导入之后选择分隔符进行拆分就好了。

之后我们再建立数据透视表/图,这样可以更加直观的看到情况,注意筛选一下行标签就行。

筛选之后我们可以分别建立:

  • 程序联网频率图

  • 外部IP地址连接频率图

  • 连接状态频率图

  • 协议使用频率图

我们主要是分析前两个,通过分析比较,我发现了程序联网频率图里有一个连接频率高,而且我不认识的程序perfwaston2,上网一查,结果发现Virscan上75%概率是病毒。

利用搜索功能,我找到了这个perfwaston2,结果发现它竟然在VisualStudio的目录下面,通过百度,发现也有人说这个是VS用来防止扩展的。

以防万一,我上传到Virscan上试试看

和我自己做的后门的报错率竟然一样,引擎都一样是这个F-PORT。我接着去日志里面找到了它的连接情况

去找一下这个IP在哪

香港 Microsoft数据中心,可我还是不明白一个防扩展程序为什么要联网?接着把它反汇编一下

反汇编看不出来啥,我打算发封邮件去给微软了。

接着分析外部IP的数据透视图,不出意外找到了一个奇怪的IP地址,连接了1036次。

到日志里找一下看看到底是谁连的

XLServicePlatform,百度一下看看它是干啥的

%!@#*&……!@#……!流氓服务!还连了1036次!我的流量啊!

另外:这个地址是个山东联通的地址。

最后还是在茫茫人海里找到了我的后门。

<h4 id=''1.3''>1.3Wireshark分析</h4>

回连的时候Wireshrak可以捕获到整个过程

输入Webcam_snap命令之后可以看到,有N个满载(1514)的TCP数据包,大胆猜测,这几个就是传输Webcam拍到的图片的数据包。

<h3 id=''2''> 2.恶意软件分析</h3>

恶意软件分析部分主要是运用各种分析工具,从不同的角度对恶意软件进行“解刨”。

<h4 id=''2.1''> 2.1VirScan分析恶意代码</h4>

好像分析不出来啥???

<h4 id=''2.2''>2.2分析软件动态分析</h4>

利用分析软件进行动态分析可以知道每一个软件每时每刻在干啥,有比较直观的反馈。

<h5 id=''2.2.1''>2.2.1PE Explorer</h5>

利用PE Explorer可以看到程序的头部信息

以及程序的一些数据

还有就是程序的结头信息

PE也可以进行反汇编,反汇编之后得到如下信息

个人感觉PE的分析还是偏向于静态除非对于程序内部结构比较了解,不然在发现可疑程序方面不如动态的分析。

<h5 id=''2.2.2''> 2.2.2PEiD</h5>

这个查壳软件解释了之前为什么加壳什么用都没有,太容易被查了...

<h5 id=''2.2.3''>2.2.3SysTracer</h5>

在使用SysTracer之后发现,它最重要的功能不是在于可以做系统快照,而是在于可以比较系统快照之间的不同。

我根据

  • 为植入后门
  • 植入后门后进行回连
  • 回连之后使用dir命令

分别进行了三次系统快照,结果如下

通过三者之间两两比较可以发现注册表上的变化

很明显可以发现4312-3.exe这个可疑进程,并且第二张图里面可以看到,有一条奇怪的data执行了inetcpl.cpl.-4312#immutable1,查资料之后就会知道inetcpl.cpl是控制面板上的Internet选项,大胆猜测这个很有可能是后门程序添加了4312这个端口有关的参数到Internet选项中去,来方便通信。

实验总结与体会

一个可疑程序应该有哪些特点?

  • **TCPView:**LocalPort为cifs
  • **Sysmon:**频繁连接未知IP
  • Promon: 藏在cmd.exe 进程树下面,执行诸如LoadImage createfile之类的操作,并且修改端口注册表
  • Wireshark: 传输1514大小的TCP数据包给一个未知IP
  • **PE Explorer:**有异常的Data,反汇编后程序中有异常的跳转
  • **PEiD:**程序加过壳
  • **SysTracer:**修改inetcpl.cpl

最后**,日志分析**真的真的是个好东西!

Al-Khaser —— 恶意软件检测

Al-Khaser —— 恶意软件检测

Al-Khaser 是一款没有不良意图的“恶意”软件(处于 PoC 阶段),它通过执行一系列常见的恶意软件手段,以检测系统环境是否处于监控。

通常被用于虚拟机环境检测、仿真、调试器、沙箱检测等场景,常被用于反虚拟化、反沙箱机制、反自动化分析。

Deepfence 开源软件漏洞查找分析工具 ThreatMapper

Deepfence 开源软件漏洞查找分析工具 ThreatMapper

近日,Deepfence 宣布开源 ThreatMapper 工具,该工具可以跨环境自动扫描、映射和排列应用程序的漏洞。

Deepfence 成立于 2017 年,是一个云原生安全观察平台,主要专注于保护云原生工作负载,涵盖 Serverless、Kubernetes、容器和多云部署。以 Kubernetes 为例,企业可以通过部署 Deepfence 来分析网络流量、文件系统的完整性、运行的进程等。

虽然 Deepfence 一直为 ThreatMapper 工具提供了企业版和社区版,但后者从现在开始将正式以 Apache 2.0 许可协议进行分发。

ThreatMapper 由两个组件组成 —— Deepfence 管理控制台和一系列 Deepfence 传感器。传感器应部署在你的生产平台内,它们将清单和遥测数据安全地转发给你的专用控制台。控制台会计算你的应用程序的拓扑结构,询问清单以查找漏洞,并为你的应用程序显示 "威胁图"。

ThreatMapper 能够扫描整个软件供应链中的漏洞,帮助公司确定已识别的威胁并对威胁进行上下游的分析,从而优先考虑需要紧急处理的威胁。

ThreatMapper 建立在其他开源软件安全扫描器所使用的 50 多个威胁信息获取源之上,其中汇集了国家漏洞数据库(NVD)、各种供应商、操作系统发行版、开发语言维护者和 GitHub 仓库的数据库。

在去年,Deepfence 最初以免费增值的专有产品形式推出了 ThreatMapper,在近一年时间里,该公司与来自社区的 "早期使用者" 展开合作,逐步完善了该产品并使其完全开源。

Deepfence 的产品和社区主管 Owen Garrett 表示:"现代应用和服务在很大程度上依赖于开源组件,这些组件中的任何漏洞都可以在很大程度上被迅速利用。保护这些组件最有效的方式是社区努力;负责任的披露、公共漏洞反馈和免费提供的开源工具。"

在未来的几个月,Deepfence 还计划将一些现有的高级功能迁移到开源项目上,如网络流量的深度包检测(DPI)以及网络和资源异常检测。Deepfence 还计划推出 API,使开发者能够将 ThreatMapper 整合到其他应用程序中。

 

domain-name-system – 恶意软件DNS记录指向我的IP地址

domain-name-system – 恶意软件DNS记录指向我的IP地址

我已经使用BIND大约十年了,但绝不是专家.话虽如此,我只是因为恶意软件感染而擦拭我的VPS.

当我收到BIND设置备份时,我注意到我不拥有的域名(TLD)正在由我的IP地址托管.进一步检查显示该域的A记录指向我的IP.

我可以理解,没有什么可以防止有人设置A记录指向任何地方.但是我没有办法阻止这个吗?看起来这可能是一个非常基本的东西,我只是缺少,但我在排除故障时遇到了麻烦.我的大多数搜索都没有结果.

递归已关闭.

这是named.conf中的选项

options {
    listen-on port 53       { any; };
    listen-on-v6 port 53    { any; };
    directory               "/var/named";
    dump-file               "/var/named/data/cache_dump.db";
    statistics-file         "/var/named/data/named_stats.txt";
    memstatistics-file      "/var/named/data/named_mem_stats.txt";
    allow-query             { any; };
    allow-transfer          { none; };
    recursion               no;
    dnssec-enable           yes;
    dnssec-validation       yes;
    bindkeys-file           "/etc/named.iscdlv.key";
    managed-keys-directory  "/var/named/dynamic";
    pid-file                "/run/named/named.pid";
    session-keyfile         "/run/named/session.key";
};

解决方法

您无法更改其他人的域记录.

然而…

如果其他域实际上是负责提供恶意软件的域,则可以联系其DNS提供商及其域名注册商处的滥用联系人(如果不同),将域报告为恶意软件源(并包括其中的证据).然后,这些提供商可以执行某些操作,例如暂时或永久暂停域.

您还可以尝试从自己的服务提供商处获取新的IP地址.

我们今天的关于腾讯开源恶意软件分析工具 HaboMalHunter在线恶意软件分析的分享已经告一段落,感谢您的关注,如果您想了解更多关于20154312 曾林 Exp4恶意软件分析、Al-Khaser —— 恶意软件检测、Deepfence 开源软件漏洞查找分析工具 ThreatMapper、domain-name-system – 恶意软件DNS记录指向我的IP地址的相关信息,请在本站查询。

本文标签: