20155327 李百乾 Exp4 恶意代码分析

基础问题回答

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

我想了解的大概有

修改了哪些注册表

创建了哪些进程

占用了哪些端口

修改、查看了哪些文件

连接了哪些网络

监控方法:

可以定时让主机执行netstat然后分析,发现网络连接异常

可以利用Sysmon,编写配置文件,记录与自己关心的事件有关的系统日志

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

可以利用Wireshark等网络工具查看是否存在可疑连接

可以利用工具Systracer拍摄快照,比对前后区别,分析改变的注册表及文件等信息。

实验步骤

一、系统运行监控

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

第一步:在windows命令行下输入命令:schtasks /create /TN 20155312netstat /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c:\netstatlog.txt"

创建成功结果如下:

第二步:在C盘要目录下建一个文件c:\netstatlog.bat

先创建一个netstatlog.txt文件,编辑文件内容如下:

date /t >> c:\netstatlog.txt

time /t >> c:\netstatlog.txt

netstat -bn >> c:\netstatlog.txt

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

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

第三步:编辑任务操作:

1.进入任务计划程序:“win+c”选择“设置”->进入“控制面板”->选择“管理工具”->进入“任务计划程序”

2.找到我们的任务20155312netstat,双击点开

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

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

5.在程序脚本处点击“浏览”->选择刚才创建的“netstat.bat”,“参数可选项”为空,

6.点击“确定”完成修改,详细信息处如下图:

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

第四步:等待;

第五步:用excel分析数据。

待分析数据如下:

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

1.首先查看所有联网程序的联网次数,统计图进行分析如下:

(2)安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。

写配置文件。

写与自己想要监控的事件想对应的配置文件,创建配置文件20155327Sysmoncfig.txt内容如下:

<Sysmon schemaversion="3.10">
<!-- Capture all hashes -->
<HashAlgorithms>*</HashAlgorithms>
<EventFiltering>
<!-- Log all drivers except if the signature -->
<!-- contains Microsoft or Windows -->
<ProcessCreate onmatch="exclude">
<Image condition="end with">chrome.exe</Image>
</ProcessCreate> <FileCreateTime onmatch="exclude" >
<Image condition="end with">chrome.exe</Image>
</FileCreateTime> <NetworkConnect onmatch="exclude">
<Image condition="end with">chrome.exe</Image>
<SourcePort condition="is">137</SourcePort>
<SourceIp condition="is">127.0.0.1</SourceIp>
</NetworkConnect>
<NetworkConnect onmatch="include">
<DestinationPort condition="is">80</DestinationPort>
<DestinationPort condition="is">443</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="end with">powershell.exe</SourceImage>
</CreateRemoteThread>
</EventFiltering>
</Sysmon>

exclude相当于白名单,不用记录。include相当于黑名单。

3.把配置文件放在C盘下。

第三步: 启动sysmon。

1.下载老师提供的SysinternalsSuite201608压缩包,解压。

2.在命令提示符(管理员)中进入到该目录下。win8中用管理员身份运行cmd方法:使用“win+x”调出win8开始菜单->选择“命令提示符(管理员)”

如果没有以管理员身份运行安装指令,安装后会提示:“You need to launch Sysmon as an Administrator.”如下图。且在第四步中将无法找到Windows下的Sysmon。

2.安装sysmon:执行命令sysmon.exe -i C:\20155312Sysmoncfig.txt,这里注意要把配置文件名换成自己的。

3.这里弹出的窗口点击agree:

4.成功安装的结果

第四步: 在事件查看器里查看日志

右键进入计算机管理,找到事件查看器。点击“事件查看器”右侧小箭头,选择日志的位置:应用程序和服务日志/Microsoft/Windows/Sysmon/Operational。利用Sysmon具体分析日志的例子我选择了自己实验二中生成的后门5327back_door.exe进行分析。



二、恶意软件分析

第一步:下载安装Systracer。

1.首先下载完成后进行安装,步骤为:agree->选第二个(全面点总不会有错吧)

->设置监听端口号(我设成了后门生成时利用的端口)

->安装完成

2.在打开后门前先快照一下,点击“take snapshot”,如图,按照以下步骤进行:

完成后显示Snapshop #1

3.Kali打开msfconsole,完成相关设置后开始监听,Windows运行后门后,拍摄快照:

完成后显示Snapshop #2

4.进行分析:

①点击上方“Applications”->左侧“Running Processes”->找到后门进程“zjy_backdoor.exe”->点击“Opened Ports”查看回连地址、远程地址和端口号:

②在快照界面“Snapshots”右下角点击“Compare”,比对一下回连前后计算机发生的变化:



5.在kali中进行屏幕截图,再次快照,保存为Snapshot #3



再次对比分析

使用VirusTotal分析恶意软件

1.把生成的恶意代码放在VirusTotal进行分析如下:

2.可以查看这个恶意代码的基本属性:

3.恶意代码的算法库情况:

20155327 李百乾 Exp4 恶意代码分析的更多相关文章

  1. 20155327李百乾 Exp3 免杀原理与实践

    20155327李百乾 Exp3 免杀原理与实践 实践guocheng 一.Msfvenom使用编码器 1.利用(virustota)[https://www.virustotal.com/]检测实验 ...

  2. 20155327李百乾《网络对抗》逆向及Bof基础

    20155327李百乾<网络对抗>逆向及Bof基础 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任 ...

  3. 2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析

    2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2或Exp3中生成后门 ...

  4. 2018-2019 20165237网络对抗 Exp4 恶意代码分析

    2018-2019 20165237网络对抗 Exp4 恶意代码分析 实验目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp2或Exp3中生成后 ...

  5. 2018-2019-2 20165325 网络对抗技术 Exp4 恶意代码分析

    2018-2019-2 20165325 网络对抗技术 Exp4 恶意代码分析 实验内容(概要) 一.系统(联网)运行监控 1. 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,逐步排查并且 ...

  6. 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析

    - 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析 - 实验任务 1系统运行监控(2分) (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP ...

  7. 2018-2019-2 20165239《网络对抗技术》Exp4 恶意代码分析

    Exp4 恶意代码分析 实验内容 一.基础问题 1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控. •使用w ...

  8. 2018-2019 20165235 网络对抗 Exp4 恶意代码分析

    2018-2019 20165235 网络对抗 Exp4 恶意代码分析 实验内容 系统运行监控 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间并分析该文件 ...

  9. 2018-2019-2 网络对抗技术 20162329 Exp4 恶意代码分析

    目录 Exp4 恶意代码分析 一.基础问题 问题1: 问题2: 二.系统监控 1. 系统命令监控 2. 使用Windows系统工具集sysmon监控系统状态 三.恶意软件分析 1. virustota ...

随机推荐

  1. Oracle闪回(FlashBack)数据库

    Flashback Database功能非常类似与RMAN的不完全恢复,它可以把整个数据库回退到过去的某个时点的状态,这个功能依赖于Flashback log日志.比RMAN更快速和高效,因此Flas ...

  2. ubuntu-15.04-desktop-amd64想要安装KDE桌面,结果出现如下问题

    The following packages have unmet dependencies: kubuntu-desktop : Depends: ark but it is not going t ...

  3. 转:MVC框架

    MVC框架是什么 MVC (Modal View Controler)本来是存在于Desktop程序中的,M是指数据模型,V是指用户界面,C则是控制器.使用MVC的目的是将M和V的实现代码分离,从而使 ...

  4. 使用截图工具FastStone Capture

    使用截图工具FastStone Capture -谨以此教程献给某位上进的测试人员- FastStone Capture是本人用过的windows平台上最好用的截图工具,界面简洁,功能强大,还支持屏幕 ...

  5. 北美IT求职攻略

    http://www.followmedoit.com/bbs/forum.php?mod=viewthread&tid=19&extra=page%3D1 身在北美,想留下来并能过得 ...

  6. Linux ntpdate命令详解

    ntpdate命令用于同步更新互联网时间,或者NTP服务器时间 NTP服务器[Network Time Protocol(NTP)]是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源 ...

  7. [2018HN省队集训D1T3] Or

    [2018HN省队集训D1T3] Or 题意 给定 \(n\) 和 \(k\), 求长度为 \(n\) 的满足下列条件的数列的数量模 \(998244353\) 的值: 所有值在 \([1,2^k)\ ...

  8. 021.15 IO流 其他流

    IO包中的其他类操作基本数据类型:DataInputStream与DataOutputStream操作字节数组:ByteArrayInputStream与ByteArrayOutputStream操作 ...

  9. 纯css3云彩动画效果

      效果描述: 纯CSS3实现的云彩动画飘动效果 非常逼真实用 使用方法: 1.将body中的代码部分拷贝到你的页面中 2.引入对应的CSS文件即可

  10. Java虚拟机16:Java内存模型

    什么是Java内存模型 Java虚拟机规范中试图定义一种Java内存模型(Java Memory Model,JMM)来屏蔽掉各种硬件和操作系统的访问差异,以实现让Java程序在各种平台下都能达到一致 ...