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

一、实践目标

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

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

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

二、实践内容


2.1系统运行监控 (2分)

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

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

2.2恶意软件分析 (1.5分)

  • 启动回连,安装到目标机及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)该后门软件

  • 读取、添加、删除了哪些注册表项

  • 读取、添加、删除了哪些文件

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


三、实践过程

1、使用schtasks指令监控系统

  • 使用schtasks /create /TN netstat5320 /sc MINUTE /MO 5 /TR "cmd /c netstat -bn > c:\netstatlog.txt" 命令创建计划任务netstat5320,相关参数含义如下

    • TN : TaskName 任务名
    • sc :计时方式
    • tr : TaskRun 运行的指令
    • -bn:显示可执行的文件名、n表示数字和端口
  • 运行结果如图所示:

  • 在C盘中创建一个netstat5320.bat脚本文件,

  • 输入以下内容:

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

  • 打开任务计划程序,查看是否已经创建新任务

  • 双击该任务,进行编辑操作,将“程序或脚本”改为上一步创建的netstat5320.bat批处理文件

  • 修改该任务的条件选项卡中的只有计算机使用交流电时才启动此任务

  • 执行脚本一段时间,在netstat5320.txt文件中查看到本机一段时间内的联网记录

  • 按照教程:学姐的博客,将txt文件的数据导入Excel,按照TCP进行统计:

  • 发现这一段时间内主要是我在使用浏览器进行上网,其它的软件都是一些比较重要的驱动程序,没用发现其它异样的软件。

  • KillerServer为电脑的网卡驱动

  • NVIDA为电脑的显卡驱动

  • YoudaoNote为有道云笔记,用来写博客的

2、使用sysmon工具监测系统

  • 首先进入Sysmon官网下载相关压缩包,进行解压

  • 然后创建一个配置文件 Sysmon20165320.xml,进入Sysmon解压后的目录,使用Sysmon.exe -i .xml文件路径安装sysmon

  • 如果出现对话框,选择agree

  • 安装成功

  • 修改配置文件,使用Sysmon.exe -c .xml文件路径,对配置文件进行更新

  •   <Sysmon schemaversion="4.20">
    <!-- Capture all hashes -->
    <HashAlgorithms>*</HashAlgorithms>
    <EventFiltering>
    <!-- Log all drivers except if the signature -->
    <!-- contains Microsoft or Windows -->
    <DriverLoad onmatch="exclude">
    <Signature condition="contains">microsoft</Signat ure>
    <Signature condition="contains">windows</Signature>
    </DriverLoad> <NetworkConnect onmatch="exclude">
    <Image condition="end with">chrome.exe</Image>
    <Image condition="end with">iexplorer.exe</Image>
    <Image condition="end with">firefox.exe</Image>
    <SourcePort condition="is">137</SourcePort>
    <SourceIp condition="is">127.0.0.1</SourceIp>
    <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">firefox.exe</TargetImage>
    <TargetImage condition="end with">svchost.exe</TargetImage>
    <TargetImage condition="end with">winlogon.exe</TargetImage>
    <SourceImage condition="end with">powershell.exe</SourceImage>
    </CreateRemoteThread> <ProcessCreate onmatch="include">
    <Image condition="end with">chrome.exe</Image>
    <Image condition="end with">iexplorer.exe</Image>
    <Image condition="end with">firefox.exe</Image>
    </ProcessCreate> <FileCreateTime onmatch="exclude" >
    <Image condition="end with">firefox.exe</Image>
    </FileCreateTime> <FileCreateTime onmatch="include" >
    <TargetFilename condition="end with">.tmp</TargetFilename>
    <TargetFilename condition="end with">.exe</TargetFilename>
    </FileCreateTime> </EventFiltering>
    </Sysmon>

  • win10下,左下角开始菜单右击->事件查看器->应用程序和服务日志->Microsoft->Windows->Sysmon->Operational。在这里,我们可以看到按照配置文件的要求记录的新事件,以及事件ID、任务类别、详细信息等等。

  • 打开kali虚拟机,生成一个简单的后门程序,在win10主机运行该后门程序,然后查看相关日志

  • 能通过查询功能找到后门运行时候的日志,猜测应该是在建立一个TCP连接,能看到相关的源IP,目的IP,还有相关的端口号。

3、使用VirusTotal分析恶意软件

  • 将刚刚生成的一个简单的后门程序,放入VirusTotal官方网站上进行分析检查,能看到如下信息:

  • 还能查看到该后门所需要的一些库文件

  • 该文件的MD5值、SHA-1值、文件类型、文件大小等信息都能被检测出来,可以说分析得很透彻了(当然也可能是因为生成的后门太简单,没什么创意)

4、使用PEiD分析恶意软件

  • PEiD(PE Identifier)是一款著名的查壳工具,其功能强大,几乎可以侦测出所有的壳,其数量已超过470 种PE 文档 的加壳类型和签名。

  • 首先拿刚刚生成的无壳后门放入该工具进行检测,检测结果如下:

  • 然后在Kali生成一个加过UPX壳的后门,放入该工具进行检测,结果如下:

5、使用SysTracer工具进行快照对比

  • 在win7里面运行SysTracer工具,截取四个快照

    • 完全正常的主机

    • 木马后门植入后,主机注册表与文件信息

    • 运行木马程序,回连Kali主机

    • 对win7进行相关控制操作

  • 对比1和2,主要发现桌面上多了后门程序

  • 而且能够发现后门程序会用到Apache 的 HTTP通信服务

  • 对比2和3,能清楚的看到后门程序回连时候一些操作,以及所打开的一些目录,利用到的端口和IP等信息,而且增加、删除了许多.dll文件,有关注册表的键值也发生了变化

  • 对比3和4,许多有关注册表中的变化信息查询不到,猜测应该是一些键值的变化。

6、使用Process Monitor分析恶意软件

  • Process Monitor 是一款由 Sysinternals 公司开发的包含强大的监视和过滤功能的高级 Windows 监视工具,可实时显示文件系统、注册表、进程/线程的活动。

  • 打开该程序,找到后门进程,观察相关信息如下

  • 点击能查看到详细的信息:

7、使用wireshark抓包分析恶意软件

  • 使用wireshark软件在后门程序回连的时候捕获所有与Kali控制端传输的包,发现出现有TCP三次握手,以及一些利用TCP传输的数据包

  • 所以猜测后门程序在回连的时候,应该首先与控制端主机通过TCP三次握手建立连接,相关的控制命令等作为有效数据被加入到TCP数据包发送到被控主机,然后被控主机读取相关数据,然后执行相应的操作。

四、实验后回答问题

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

    答:一个是使用sysmon工具修改配置文件,记录相关日志文件,查找有关的日志,从中找到一些线索。二是使用schtasks,观察一段时间内主机的联网记录,看有没有可疑的软件偷偷上网。

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

    答:将它扔到VirtualToatal上进行扫描分析,或者用sysTracer分析它的具体行为,相关信息。

五、实验心得

  • 这一次实验让我们去分析一些简单的后门程序,找它们的一些行为特征,而且利用了许多以前不曾听说过的软件,让我们以后面对恶意软件能够有一套最简单的分析方法,也让我们有了能够与之抗衡的资本,但在分析的过程中还是遇到了很多计算机基础知识不熟悉的问题,分析Sys快照的时候有关注册表的很多信息还是看不懂,所以在之后的学习中要加强基础知识的学习。

2018-2019-2 网络对抗技术 20165320 Exp4 恶意代码分析的更多相关文章

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

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

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

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

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

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

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

    2018-2019-2 网络对抗技术 20165225 Exp4 恶意代码分析 实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp2或Exp ...

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

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

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

    2018-2019-2 20165236 <网络对抗技术>Exp4 恶意代码分析 一.1.实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行; 1.2是分析一个恶意软件, ...

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

    2018-2019-2 网络对抗技术 20165316 Exp4 恶意代码分析 一.原理与实践说明 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2 ...

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

    2018-2019-2 网络对抗技术 20165228 Exp4 恶意代码分析 1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪 ...

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

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

随机推荐

  1. ef 仓储模式 Redis

    接着写一下 上一章提到的 BaseRepositoryRedis.cs 先说说题外话:由于公司希望用到缓存来提高访问速度.那么我理所当然的想到redis. 这个无可厚非.可是当时我们的项目已经开发的差 ...

  2. MT【70】图论的一些基本概念例题介绍

    此讲是纯粹竞赛,联赛二试题难度.仅供学有余力的学生看看.

  3. 本地项目上传到github 报错“master -> master (non-fast-forward)”

    接下来 第一步:建立git仓库 cd到你的本地项目根目录下,执行git命令,此命令会在当前目录下创建一个.git文件夹. git init 第二步:将项目的所有文件添加到仓库中 git add . 这 ...

  4. 自学Aruba4.2-Aruba AC基础配置(1)

    点击返回:自学Aruba之路 自学Aruba4.2-Aruba AC基础配置(1) 管理员登陆(admin/saic_admin): Cli Web 管理帐号 控制器基础设置: 控制器恢复出厂设置 查 ...

  5. poj3114 Contries in War (tarjan+dijkstra)

    缩完点后对每次询问做dijkstra即可 #include<cstdio> #include<cstring> #include<algorithm> #inclu ...

  6. SqlServer存储过程详解

    SqlServer存储过程详解 1.创建存储过程的基本语法模板: if (exists (select * from sys.objects where name = 'pro_name')) dro ...

  7. mongodb集群故障转移实践

    简介 NOSQL有这些优势: 大数据量,可以通过廉价服务器存储大量的数据,轻松摆脱传统mysql单表存储量级限制. 高扩展性,Nosql去掉了关系数据库的关系型特性,很容易横向扩展,摆脱了以往老是纵向 ...

  8. linux 一些命令(2)

    1.查看centos版本 # lsb_release -a 2.查找大于1000M的文件 find / -type f -size +1000M -print0 | xargs -0 du –h

  9. toogle

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  10. centos中文字符集,中文日志

    # CentOS 7 $ firewall-cmd --zone=public --add-port=80/tcp --permanent # nginx 端口 $ firewall-cmd --zo ...