2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

时间:2021-03-31 18:52:34

实验后回答问题

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

答:我会使用sysmon工具来进行监控,可以每天晚上查看一下监控到的信息,还可以利用筛选工具对数据进行分析,监控网络连接,是否创建新的进程,注册表项目以及系统日志。

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

答:最简单的方法就是使用Virscan等网站进行扫描进行分析,复杂一点的话,可以自己使用wireshark抓包然后再对抓到的数据进行分析,还可以将数据制表找到规律。

实践目标

1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行。

1.2是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件;分析工具尽量使用原生指令或sysinternals,systracer套件。

1.3假定将来工作中你觉得自己的主机有问题,就可以用实验中的这个思路,先整个系统监控看能不能找到可疑对象,再对可疑对象进行进一步分析,好确认其具体的行为与性质。

实践内容

2.1系统运行监控

(1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包。

(2)安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。
参考:schtask与sysmon应用指导
实际日志的分析还需要发挥下自己的创造力,结合以前学过的知识如linux的文本处理指令等进行。分析的难点在于从大量数据中理出规律、找出问题。这都依赖对结果过滤、统计、分类等进一步处理,这就得大家会什么用什么了。

2.2恶意软件分析(1.5分)

分析该软件在

(1)启动回连,

(2)安装到目标机

(3)及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)。该后门软件

(3)读取、添加、删除了哪些注册表项

(4)读取、添加、删除了哪些文件

(5)连接了哪些外部IP,传输了什么数据(抓包分析)

实验过程

使用Windows计划任务schtasks监控系统运行

输入命令:

schtasks /create /TN 20155309netstat /sc MINUTE /MO 1 /TR "c:\netstatlog.bat"

创建计划任务netstat

指令解释:

TN:Task Name,本例中是netstat

SC: SChedule
type,本例中是MINUTE,以分钟来计时
TR: Task Run,要运行的指令是 netstat -bn,b表示显示可执行文件名,n表示以数字来显示IP和端口

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

此命令完成后,每1分钟就会监测哪些程序在使用网络,并把结果记录在netstatlog.txt文档里,为了显示日期和时间,我们通过bat批处理文件来实现。

在C盘创建一个文件netstatlog.bat,内容为:

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

保存后修改文件名为“netstatlog.bat”;

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

粘贴到C盘中,这是需要用管理员权限;

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

可以右键点击“编辑”用记事本查看bat文件内容。

第三步:编辑任务操作:
1.进入任务计划程序:“win+c”选择“设置”->进入“控制面板”->选择“管理工具”->进入“任务计划程序”
2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

2.找到我们的任务20155309netstat,双击点开
2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

3.点击下方“操作”->右侧所选项栏中“属性”->属性页面上方的“操作”

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

4.双击任务进入“编辑操作”界面

5.在程序脚本处点击“浏览”->选择刚才创建的“netstat.bat”,“参数可选项”为空
2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

6.点击“确定”完成修改,详细信息处如下图:
2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

7.查看netstat.txt文件,已经有了时间的记录,至此完成了任务的创建

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

每隔五分钟监控如下图:

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

等待一直两天;
这里需要一直保持开机联网状态,才能持续监控。

此外,如果发现netstatlog.txt没有每分钟更新一次,可能是因为设置时默认选择了“只有计算机使用交流电源时才启用此任务”,所以一旦我们不给电脑充电,任务就没法运行。解决方法就是在netstat任务属性的设置中取消选中该选项,如下图所示,然后就可以发现每隔一分钟命令行会闪现一下,其中包含netstatlog.bat中的三行指令,netstatlog.txt自己就随之更新了。

接下来我们用excel分析数据

我们要将netstatlog.txt的内容导入到Excel中。我使用的是WPS,依次点击:数据(选项卡)——导入数据——直接打开数据文件——选择数据源(找到netstatlog.txt所在文件夹,并选中)——打开。

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

将文本进行分割成excel表。
文件转换页面直接“下一步”

文本导入向导步骤1 ,文件类型一定要选择分隔符号;步骤2,分隔符号选择空格;步骤三,选择常规。

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

最后点击完成,就可以看到数据导入成功了

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

第六步:对数据进行统计学分析:

1.首先查看所有联网程序的联网次数,具体excel操作如下:

①首先选中我们要分析的列:

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

②其次点击上方“插入”->“数据透视图”
2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

③默认选择在一个新工作表中生成

可以发现生成了一个非常直观的数据透视表

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

在其中,我们可以发现浏览器与蓝墨云笔记用的十分多。

二、系统监控——Sysmon工具
Sysmon是微软Sysinternals套件中的一个工具,能监控几乎所有的重要操作。

  • Sysmon安装配置
    1.根据在实验指导中的链接Sysinternals套件,下载Sysinternals Suite,然后解压。
    2.接下里,我们来新建并编辑配置文件C:\Sysmoncfg.txt。exclude相当于白名单,里面的程序或IP不会被记录,include相当于黑名单,大家可以把自己想监控的写到黑名单中~
    3.下面,我们来安装sysmon:

sysmon.exe -i Sysmoncfg.txt

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

注:配置文件修改后,需要用指令更新一下:
sysmon.exe -c config_file_name

需要自己配置文件

<Sysmon schemaversion="3.10">
  <!-- 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>
  <Image condition="end with">iexplorer.exe</Image>
  <SourcePort condition="is">137</SourcePort>
</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="end with">powershell.exe</SourceImage>
</CreateRemoteThread>
  </EventFiltering>
</Sysmon>

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

注:配置文件修改后,需要用指令更新一下:
sysmon.exe -c config_file_name

安装 sysmon

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

依次次打开 :开始——事件查看器——应用程序和服务日志——Microsoft————Windows——Sysmon——Operational,既可以看到如下图所示的信息啦:

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

不同事件ID分析
5.可以看到系统一些具体活动。

事件识别码1 :进程建立
事件识别码2 :进程更改了文件创建时间
事件识别码3 :网络连接
事件识别码4 : Sysmon服务状态已变更
事件识别码5 :进程已终止
事件识别码6 :已载入驱动程式
事件识别码7 :已载入影像
事件识别码8 :创建远程线程
事件识别码9 : RawAccessRead
事件识别码10 :进程访问
事件识别码11 :文件创建
事件识别码12 :注册事件(创建和删除对象)
事件识别码13 :注册事件(值集)
事件识别码14 :注册事件(键和值重命名)
事件识别码15 :文件创建流哈希
事件识别码255 :错误

这个的事件识别码是3,证明与本地的互联网建立了连接。

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

这个事件识别码是1, conhost.exe是电脑触摸板相关程序。在使用触摸板时,建立进程。

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

该进程事件识别码是5,终止进程,Scmd.exe是MirosoftWindowsVista桌面搜索协议信程序
2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

4.利用Sysmon具体分析日志的例子我选择了自己实验二中生成的后门20155309_backdoor.exe进行分析

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

使用Systracer分析恶意软件

直接用汉化版的就是爽啊。

打开界面:

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

点击创建快照,若如下图没有全选,可以选择——仅扫描指定项,然后将下面的全选,之后就可以点击开始啦,接着耐心等待,扫描结束之后会弹出一个框,点击OK,快照就会自己保存下来~

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

接下来是有后门的分析
2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

然后做的是后门回连的分析

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

接下来我们再做一个dir

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

来一个keyscan_start的击键记录

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

screenshot抓屏走起

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

来进行差异分析:

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

让我们再用process explorer来分析一下

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

最后用peid分析一波

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

大功告成。

遇到的问题

问题2:在安装Sysmon时,出现下图错误,显示我配置文件中的版本时3.10,但是实际下载的版本是4.00,不匹配导致安装失败。

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析

改用版本即可成功

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析