首页 > 其他分享 >网络对抗实验四 恶意代码分析

网络对抗实验四 恶意代码分析

时间:2023-03-31 14:23:06浏览次数:54  
标签:分析 exe Explorer 恶意代码 程序 实验 工具 对抗

目录

[实践内容](#1)
(id="1")#实践内容

(一)系统运行监控

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

首先写好批处理脚本netcontrol1206.bat

date /t >> C:\Users\18824\Desktop\netstatlog.txt
time /t >> C:\Users\18824\Desktop\netstatlog.txt
netstat -bn >> C:\Users\18824\Desktop\netstatlog.txt


用命令行创建任务计划

schtasks /create /TN netcontrol1206 /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > C:\Users\18824\Desktop\netstatlog1206.txt"


Win+R再输入taskschd.msc打开任务计划管理窗口


在常规中选择“使用最高权限运行”

将“只有在计算机使用交流电源时才启动此任务”勾掉
选择批处理文件

等待一段时间即可获得在所创建任务计划netcontrol1206监视下获得的数据

在收集一定数量的数据后停止任务,将所得数据导入Excel中,在“数据”选项栏中选择“导入数据”

勾选所有的分隔符号,插入数据透视图,获得“协议”的统计分析

可以发现其中TCP检测到次数最多,为226次,第二多的是[chrome.exe]谷歌浏览器
同理可获得“外部IP” 的数据透视图

查询其中访问次数较多的一个外部IP172.217.160.74

另一个外部IP157.148.62.239

可以发现其来源于广东广州,是联通的网络

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

编写xml配置文件,xml关系如下

	<Sysmon schemaversion="4.81">
	  <!-- 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> 
	      <Image condition="end with">QQBrowser.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>


输入Sysmon.exe -i sysmon1206.xml开始安装sysmon

安装完成

Win+R输入eventvwr.msc打开事件查看器

应用程序和服务日志 -> Microsoft -> Windows -> Sysmon -> Operational

用Kali的windows/meterpreter组件生成Windows下的exe后门,并按照后门程序进行配置(实验二内容)

在WIndows事件查看器中查找sysmon的进程创建事件

(二)恶意软件分析

1.用wireshark分析TCP流量包

三次握手原理:

打开wireshark开始抓包,在Kali中打开msfconsole并进行监听,在Windows上运行20201206_backdoor.exe后门程序,Kali攻击机中通过TCP反弹获取到Windows端口
过滤wireshark捕获的包,筛选ip.addr == 192.168.217.135 && tcp

框中的内容为TCP的三次握手

2.使用SysTracer分析

systracer工具链接:https://gitee.com/wildlinux/NetSec/attach_files
systracer可以记录下计算机某个时刻的状态。然后过一段时间后再次记录。通过比较两次记录中计算机的不同进行相应的分析。
若出现提示systracer not registered,是因为免费版的只能用五次,解决办法卸载后重新下载就可以用了
我进行了三次snapshot
第一次是初始状态

第二次是是攻击机已经通过reverse_tcp攻击成功后的状态

第三次是攻击机进入到靶机的shell后的状态

比较第一次和第二次的不同

比较第二次与第三次的不同

3.使用Process Explorer分析恶意软件

下载链接:https://download.sysinternals.com/files/ProcessExplorer.zip
打开procexp.exe
Process Explorer可以监听到电脑上所有正在运行的程序,找到可疑行为,仔细观察是否有后门程序
通过Process Explorer中的Find工具查找使用了cmd的进行,直接定位到后门程序20201206_backdoor.exe


选中此后门程序后,可以直接点击Kill Progress杀死进程

报告内容

试验后回答问题

1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所以想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
  • 可以使用windows自带的schtasks,设置一个计划任务,设置适当的时间间隔让它全天都监控,导入WPS,制作出数据透视表和数据图表,根据联网次数排查出有疑点的进程,针对这部分进程进行静态或动态分析。
  • 使用Process Explorer监视主机状态,查找与该进程相关的句柄,看看其是否进行了危险操作(如运行cmd.exe等)
  • 使用systracer工具建立不同的快照,然后进一步分析注册表、端口、文件等变化情况
2.如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息.
  • 静态分析
  1. 用PE Explorer工具,对该程序进行抽丝剥茧地探查,这款工具的反汇编功能很强大,还可以扫描和显示处该程序依赖于外部的DLL列表,知道这个进程都有哪些功能模块
  2. 使用IDA对程序进行静态分析,反汇编代码并进行进一步分析
  • 动态分析
  1. 使用Wireshark抓包,分析恶意软件的通信过程
  2. SysTracer记录不同时刻系统的快照,对比不同时刻系统在注册表、磁盘文件、应用程序活动等方面的差异,发现该进程或程序都对自己的电脑做了哪些修改,好让自己知道自己应该采取什么样的应对措施进行弥补
  3. Process Explorer可以看的很清楚这个进程的实施者、端口等等

实验总结与体会

这次试验任务量比之前的三次实验大了很多,而且比较侧重于自己分析,通过利用一些专业的分析工具,可以对恶意代码进行静态和动态的分析,这些工具除了wireshark在之前学习使用过,其他工具都是从没有听说过,通过这些工具的使用也让我对恶意代码有了更深的认识。

标签:分析,exe,Explorer,恶意代码,程序,实验,工具,对抗
From: https://www.cnblogs.com/han-jin/p/17260795.html

相关文章

  • 实验3
    实验任务1程序代码:#include<stdio.h>#include<stdlib.h>#include<time.h>#include<Windows.h>#defineN80voidprint_text(intline,intcol,chartext[]);//函数声明voidprint_spaces(intn);//函数声明voidprint_blank_lines(intn);//函数声明int......
  • 实验三
    task1.实验代码#include<stdio.h>#include<stdlib.h>#include<time.h>#include<windows.h>#defineN80voidprint_text(intline,intcol,chartext[]);//函数声明voidprint_spaces(intn);//函数声明voidprint_blank_lines(intn);......
  • 202031603210-李震 实验一软件工程准备-简单认识软件工程
    项目目标课程班级博客链接2020级卓越工程师班本次作业要求链接实验一软件工程准备我的课程学习目标1.学会使用博客园进行学习2.了解GitHub的基本操作3.学习并掌握软件工程的相关知识本次作业在哪些方面帮我实现学习目标通过本次实验,我学习了1.Git......
  • 实验三
    任务1:代码:#include<stdio.h>#include<stdlib.h>#include<time.h>#include<windows.h>#defineN80voidprint_text(intline,intcol,chartext[]);voidprint_spaces(intn);voidprint_blank_lines(intn);intmain(){intline......
  • 202031607130-杨国周 实验一 软件工程准备—初识软件工程
    实验一软件工程准备项目内容班级博客链接https://edu.cnblogs.com/campus/xbsf/2020CSSE本次作业要求链接https://edu.cnblogs.com/campus/xbsf/2020CSSE/homework/12938我的课程学习目标学习软件工程的基本概念、方法和工具,提高软件开发的质量和效率。本......
  • c实验3
     实验任务1#include<stdio.h>#include<stdlib.h>#include<time.h>#include<windows.h>#defineN80voidprint_text(intline,intcol,chartext[]);voidprint_spaces(intn);voidprint_blank_lines(intn);intmain(){intline,col,i......
  • 实验3
    #include<stdio.h>#include<stdlib.h>#include<time.h>#include<windows.h>#defineN80voidprintf_text(intline,intcol,chartext[]);voidprintf_spaces(intn);voidprintf_blanks(intn);intmain(){intline,col,i;......
  • 202031607202-李锋斌 实验一 软件工程准备 对软件工程的初步认识
    实验一软件工程准备项目内容班级博客链接2023春软件工程2020级计算机科学与技术本次作业要求链接实验一软件工程准备我的课程学习目标学习软件工程的基本概念和方法,提高软件开发能力。本次作业在哪些方面帮我实现学习目标通过完成任务1-任务5,我了解了博......
  • 实验3
    task1.c1#include<stdio.h>2#include<stdlib.h>3#include<time.h>4#include<windows.h>5#defineN806voidprint_text(intline,intcol,chartext[]);7voidprint_blank_lines(intn);8intmain(){9intli......
  • 实验3
    实验任务1实验代码#include<stdio.h>#include<stdlib.h>#include<time.h>#include<windows.h>#defineN80voidprint_text(intline,intcol,chartext[]);voidprint_spaces(intn);voidprint_blank_lines(intn);intmain(){ intlin......