Exp4 恶意代码分析

实验内容

一、基础问题

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

•使用windows自带的schtasks,设置一个计划任务,每隔一定的时间对主机的联网记录等进行记录。

•使用sysmon工具,通过修改配置文件,记录相关的日志文件。

•使用Process Explorer工具,监视进程执行情况。

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

•使用systracer工具对恶意软件的信息进行具体分析

•使用wireshark进行抓包从而获取恶意程序与主机的通信。

二、实验步骤

1、windows计划任务

•以管理员身份打开cmd,使用指令```schtasks /create /TN 5239netstat /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c:\netstatlog.txt创建计划任务5239netstat,记录每1分钟计算机联网情况:



•在桌面建立一个netstatlog.txt文件,内容为:

•在桌面建立一个netstatlog.txt文件,内容为:

date /t >> c:\netstatlog.txt

time /t >> c:\netstatlog.txt

netstat -bn >> c:\netstatlog.txt

  这些指令是用来将记录的联网结果格式化输出到netstatlog.txt文件中

•将后缀名改为.bat后,用管理员身份将该文件放入C盘

•打开计算机管理的“任务计划程序库”,可以查看到5239netstat任务就绪,打开其属性,修改其指令为c:\netstatlog.bat



•在属性中“常规”一栏最下面勾选“使用最高权限运行”,不然程序不会自动运行

•在属性中“条件”这一选项中的“电源”一栏中,取消勾选“只有计算机使用交流电源才启动此任务”,防止电脑一断电任务就停止

•可以在C盘的netstat5315.txt文件中查看到本机在该时间段内的联网记录:

•记录此时已足够进行分析,将这些数据导入Excel中。

•PS:导入方法

◦数据->自文本->导入文本文件->选择netstat5239.txt



2. 系统运行监控——利用Sysmon

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

确定监控对象

选择的是进程创建ProcessCreate、进程创建时间FileCreatTime、网络连接NetworkConnect、远程线程创建CreateRemoteThread。

写配置文件

写与自己想要监控的事件相对应的配置文件。编写好的20165239Sysmoncfig.txt内容如下:(配置文件是xml文件,为了简单编辑就直接命令为.txt,每次用写字本打开。)

*









chrome.exe

<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>

![](https://img2018.cnblogs.com/blog/1296709/201904/1296709-20190407133743024-461207227.png)

注释

•exclude相当于白名单,不包括,即不用记录。

include相当于黑名单,即要记录的。

•Image condition,映像条件,根据自己使用的浏览器更改。例如谷歌浏览器是“chrome.exe”,IE浏览器是“iexplore.exe”,我用的是360浏览器,进程名是“360chrome.exe”,也是以“chrome.exe”结尾的,所以这里只写“chrome.exe”即可。写在exclude中就是不记录由360浏览器创建的进程。

•进程创建时间类似,也是不创建浏览器创建进程的时间。

•网络连接为过滤掉浏览器的网络连接、源IP为127.1.0.0的网络连接和目的端口为137的连接服务,且查看目的端口为80(http)和443(https)的网络连接。 ◦137端口的主要作用是在局域网中提供计算机的名字或 IP地址查询服务,一般安装了NetBIOS协议后,该端口会自动处于开放状态。

◦127.0.0.1表示本机 IP。

•远程线程创建记录了目标为explorer.exe、svchost.exe、winlogon.exe和powershell.exe 的远程线程。 ◦explorer.exe是Windows程序管理器或者文件资源管理器

◦svchost.exe是一个属于微软Windows操作系统的系统程序,是从动态链接库 (DLL) 中运行的服务的通用主机进程名称。

◦winlogon.exe是Windows NT 用户登陆程序,用于管理用户登录和退出。

◦powershell.exe是专为系统管理员设计的新 Windows 命令行外壳程序。该外壳程序包括交互式提示和脚本环境,两者既可以独立使用也可以组合使用。

启动s

•下载sysmon,解压。

•安装sysmon:以管理员身份执行命令sysmon.exe -i C:\20165239Sysmoncfig.txt

ysmon



•就会在任务管理器中看到sysmon.exe已经在运行了



在事件查看器里查看日志

•图标“计算机”右键,点击打开“管理”。点击左侧“系统工具”->“事件查看器”->应用程序和服务日志/Microsoft/Windows/Sysmon/Operational





利用Sysmon具体分析日志。

4、打开之前实验3植入的20165239shellcode.upxed.exe后门,Kali用meterpreter回连,可以看到连接的信息

5、在服务日志中发现有后门程序的痕迹,360安全的记录日志等等,在运行时后门程序会被拦截



2.2恶意软件分析

1、使用VirusTotal分析恶意软件

将实验3中生成的加壳后门在VirusTotal进行扫描



该恶意代码的算法库支持情况如图:



2、使用PEiD分析恶意软件

PEiD是一款著名的查壳工具,其功能强大,几乎可以侦测出所有的壳;

win7中下载并安装PEiD:



3、动态分析——使用systracer分析恶意软件

在win7虚拟机下载安装SysTracer,



启动回连时,注册表发生了变化:





查找到端口的连接:

 实验中的问题:

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

安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为,在事件查看器里找到相关日志文件查看

实验感想:

本次实验我最大的麻烦是没有找到上次实验二中使用的文件,导致这次回连时不得不重新做一下实验二的内容,还有就是kali的使用期过了不得不在网上找破解方法, 最终在同学的帮助下完成了,我也参考了许多往届学长的博客,同时也查阅了一些资料,还有问了同学,舍友等等。

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

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

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

  2. 20145226夏艺华 网络对抗技术EXP4 恶意代码分析

    20145226夏艺华 网络对抗技术EXP4 恶意代码分析(未完成版) 回答问题 (1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作 ...

  3. 20155302《网络对抗》Exp4 恶意代码分析

    20155302<网络对抗>Exp4 恶意代码分析 实验要求 •是监控你自己系统的运行状态,看有没有可疑的程序在运行. •是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件:分析工 ...

  4. 20145208 蔡野 《网络对抗》Exp4 恶意代码分析

    20145208 蔡野 <网络对抗>Exp4 恶意代码分析 问题回答 总结一下监控一个系统通常需要监控什么.用什么来监控. 监控一个系统通常需要监控这个系统的注册表,进程,端口,服务还有文 ...

  5. 20145215《网络对抗》Exp4 恶意代码分析

    20145215<网络对抗>Exp4 恶意代码分析 基础问题回答 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用 ...

  6. 20155227《网络对抗》Exp4 恶意代码分析

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

  7. 20155232《网络对抗》Exp4 恶意代码分析

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

  8. 20155239 《网络对抗》Exp4 恶意代码分析

    20155239 <网络对抗>Exp4 恶意代码分析 使用schtasks指令监控系统运行 先在C盘目录下建立一个netstatlog.bat文件,用来将记录的联网结果格式化输出到nets ...

  9. 20155304《网络对抗》Exp4 恶意代码分析

    20155304<网络对抗>Exp4 恶意代码分析 实践内容 1.系统运行监控 1.1使用schtasks指令监控系统运行 我们在C盘根目录下建立一个netstatlog.bat的文本文件 ...

  10. 20155308《网络对抗》Exp4 恶意代码分析

    20155308<网络对抗>Exp4 恶意代码分析 实践说明 实践目标 是监控你自己系统的运行状态,看有没有可疑的程序在运行. 是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件: ...

随机推荐

  1. Istio

    什么是Istio Istio是Service Mesh(服务网格)的主流实现方案.该方案降低了与微服务架构相关的复杂性,并提供了负载均衡.服务发现.流量管理.断路器.监控.故障注入和智能路由等功能特性 ...

  2. python中__init__和__new__的区别

    参考:https://my.oschina.net/liuyuantao/blog/747164 python中__metaclass的详解 参考:https://www.cnblogs.com/ia ...

  3. 《Exception团队》第一次作业:团队亮相

    一.项目基本介绍 项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 作业链接地址 团队名称 Exception 作业学习目标 深入了解软件思想,强化编程技术 二.正文 1. ...

  4. C/C++面试题:编写类String的构造函数、析构函数和赋值函数。

    转https://www.cnblogs.com/alinh/p/9636500.html 考点:构造函数.析构函数和赋值函数的编写方法出现频率:☆☆☆☆☆已知类String的原型为:         ...

  5. LinkedHashMap源码分析及实现LRU

    概述 从名字上看LinkedHashMap相比于HashMap,显然多了链表的实现.从功能上看,LinkedHashMap有序,HashMap无序.这里的顺序指的是添加顺序或者访问顺序. 基本使用 @ ...

  6. 谈谈JAVA中的安全发布

    谈谈JAVA中的安全发布 昨天看到一篇文章阐述技术类资料的"等级",看完之后很有共鸣.再加上最近在工作中越发觉得线程安全性的重要性和难以捉摸,又掏出了<Java并发编程实战& ...

  7. unix域数据报回射程序(不完整)

    一.服务器程序 int main(int argc, char **argv) { int sockfd; struct sockaddr_un servaddr, cliaddr; sockfd = ...

  8. Ubuntu18.04应用程序安装集锦

    整理网上的资源: Python Web开发工具箱 ubuntu美化及超NB的zsh配置 api文档查询工具:zeal,dash(收费)

  9. python 去除html 超链接href 如何实现?

    今天持久男 在抓取数据的时候发现很多内容都加了锚文本, 这怎么办呢? 没办法只能通过工具解决 我是这样解决的: 例如: soup = BeautifulSoup('<p>Hello < ...

  10. arguments.callee.caller

    1.Arguments Arguments是一个类似数组但不是数组的对象,说它类似数组是因为其具有数组一样的访问性质及方式,可以由arguments[n]来访问对应的单个参数的值,并拥有数组长度属性l ...