20155218 《网络对抗技术》 MAL_恶意代码分析

实验内容:

1、使用schtasks指令监控系统运行

  • 1、在C盘下新建一个文本文档,输入一下内容后,更名为netstatlog.bat
date /t >> c:\netstatlog.txt
time /t >> c:\netstatlog.txt
netstat -bn >> c:\netstatlog.txt
  • 2、以管理员身份运行powershell或者cmd,并输入指令
schtasks /create /TN netstat /sc MINUTE /MO 2 /ru "System" /TR "d:\netstatlog.bat"

其中,TN是TaskName的缩写,我们创建的计划任务名是netstat5303;sc表示计时方式,我们以分钟计时填MINUTE;TR=Task Run,要运行的指令是 netstat -bn,b表示显示可执行文件名,n表示以数字来显示IP和端口。

  • 3、在netstatlog.txt中就可以看到一些记录
2018/04/13 周五
17:49
请求的操作需要提升。
2018/04/13 周五
17:49
请求的操作需要提升。
2018/04/13 周五
17:51 活动连接 协议 本地地址 外部地址 状态
2018/04/13 周五
17:52 活动连接 协议 本地地址 外部地址 状态
TCP 192.168.1.107:49461 180.163.251.163:80 SYN_SENT
[SoftupNotify.exe]
TCP 192.168.1.107:49462 106.120.160.155:80 SYN_SENT
[360tray.exe]
TCP 192.168.1.107:49463 106.120.160.155:80 SYN_SENT
[360tray.exe]
2018/04/13 周五
17:53 活动连接 协议 本地地址 外部地址 状态
TCP 192.168.1.107:49479 180.163.251.163:80 SYN_SENT
[360tray.exe]
2018/04/13 周五
17:54 活动连接 协议 本地地址 外部地址 状态
TCP 192.168.1.107:49482 122.193.207.44:80 SYN_SENT
[DgService.exe]
TCP 192.168.1.107:49483 210.52.217.139:80 SYN_SENT
[360tray.exe]
TCP 192.168.1.107:49484 210.52.217.139:80 SYN_SENT
[360tray.exe]
TCP 192.168.1.107:49485 210.52.217.139:80 SYN_SENT
[360tray.exe]
2018/04/13 周五
17:55

用excel对schtasks得到的数据进行分析

  • 删除重复的ip地址剩余185个;

  • 导入到whois查看ip

  • 4、遇到的问题:

    (1)

    程序无法执行,原因就在于我的运行条件中的设置,需要使用电源才能执行,而我正好没接电源。

2、使用sysmon工具监控系统运行

  • 根据老师要求需要记录一下三个事件:

  • 1、 sysmon微软Sysinternals套件中的一个工具,要使用sysmon工具先要配置文件

<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>
  • 2、配置好文件之后,要先使用Sysmon.exe -i C:\Sysmoncfg.txt指令对sysmon进行安装:



    出现小错误,但是但是按照提示做就可以了;
  • 3、在事件查看器里查看相应的日志:

  • 4、对Sysmoncfg.txt配置文件进行修改,重点监视80和443端口的联网情况
<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">SogouExplorer.exe</Image>
</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>

prcess creation :使用netasta.exe程序来统计联网信息的事件的建立。

process terminaled :使用netasta.exe程序来统计联网信息的事件的终止。

network connection

3、使用systracer工具分析恶意软件

使用systracer工具建立了4个状态的快照

  • 未放入病毒
  • 注入病毒
  • 运行病毒
  • kali执行命令

回连执行后,可以程序打开的端口和handles信息:

4、使用火绒剑

-实现成功回连后,查看火绒剑的进程监控:



-查看其回连ip地址;



-查看其调用栈,并且可以进行反汇编



-查看进程,可以发现20155218.exe为未知文件;

5、使用VirusTotal分析恶意软件

  • 把生成的恶意代码放在VirusTotal进行分析:66个杀软共有15个查出;

  • 查看该恶意代码的基本情况:
  • 该恶意代码的算法库支持情况:

6、实验问题回答

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

我会从一下方面:1、注册表;2、系统服务;3、开机启动项;4、文件创建;5、网络连接情况;6、钩子;7、内核 进行监控,可以使用systracer,sysmon,火绒剑等工具监控;

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

我可以使用wireshark查看其具体信息,比如用的什么协议,回连ip是多少,也可以使用火绒剑查看其调用的栈和其相关进程;

7、实验总结与体会

这个实验中,我们要学习如何分析恶意代码,从而知道如何设计恶意代码,在分析恶意代码的时候,有比较简单的工具,但需要大量的分析总结,也有比较成熟的软件,能够较快的查看到相关的信息。常在河边走,哪有不湿鞋,经常弄这个恶意代码,说不定哪天自己就被攻击了(模糊的记得好像有个虚拟机与我的mac采用了无缝连接,有点慌),使用这些工具可以监控自己的电脑,感觉放心了不少。

20155218 《网络对抗技术》 MAL_恶意代码分析的更多相关文章

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

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

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

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

  3. 20144306《网络对抗》MAL_恶意代码分析

    一.基础问题 1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控? 使用Windows自带的schtasks指 ...

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

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

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

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

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

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

  7. 20155217《网络对抗》Exp04 恶意代码分析

    20155217<网络对抗>Exp04 恶意代码分析 实践内容 使用schtasks指令监控系统运行 使用sysmon工具监控系统运行 使用virscan分析恶意软件 使用systrace ...

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

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

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

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

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

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

随机推荐

  1. Spring学习笔记(一):快速入门

    Spring简介:        Spring是一个开源框架,它由Rod Johnson创建.它是为了解决企业应用开发的复杂性而创建的.Spring使用基本的JavaBean来完成以前只可能由EJB完 ...

  2. 关于css样式文件和less的文件的比较说明

    1.css文件 css文件主要的用途是对网页中字体.颜色.背景.图像及其他各种元素的控制,使网页能够完全按照设计者的要求来显示.相信大家都对css比较了解了,再次不作过多说明. 2.less文件 Le ...

  3. the database needs something to populate existing rows.

    这是我在使用Django进行models编写时的一个错误. 解决办法: 为其指定一个默认值即可 object_id = models.CharField(max_length=50, default= ...

  4. python编写脚本

    #!/usr/bin/env python #-*- coding:utf-8 -*- import sys import os from subprocess import Popen,PIPE c ...

  5. 使用 Azure PowerShell 监视和更新 Windows 虚拟机

    Azure 监视使用代理从 Azure VM 收集启动和性能数据,将此数据存储在 Azure 存储中,并使其可供通过门户.Azure PowerShell 模块和 Azure CLI 进行访问. 使用 ...

  6. 迁移MSSQL实例的所有login(包含密码)

    迁移数据库的时候肯定会涉及到login的迁移(包含数据库除外). 而一般我们迁移login的时候,可能会使用在某个login上右键生成脚本这样的做法.但是这样生成的脚本不能把密码也生成出来. 而且你只 ...

  7. 总结Linux 下Redis 操作常用命令(转)

    Redis的配置 Linux下安装 ]# wget http://download.redis.io/releases/redis-2.8.17.tar.gz ]# tar xzf redis-2.8 ...

  8. ASP.NET动态引用样式表(css)和脚本(js)文件

    // 引入js文件 HtmlGenericControl scriptControl = new HtmlGenericControl("script"); scriptContr ...

  9. Django之MVC与MTV

    MVC框架 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写 模型 - 视图 - 控制器是一种通常用于开发用户界面的 ...

  10. python的学习之路day3

    大纲 1.汉字编码 2.浅拷贝与深拷贝 3.函数 4.return 5.函数的基本参数 6.format 7.三元运算(三目运算) 8.python的内置函数 abs() all() any() bo ...