20145220《网络4对抗》实验四:恶意代码分析
恶意代码
•
定义一:恶意代码又称恶意软件。这些软件也可称为广告软件、间谍软件、恶意共享软件。是指在未明确提示用户或未经用户许可的情况下,在用户计算机或其他终端上安装运行,侵犯用户合法权益的软件。与病毒或蠕虫不同,这些软件很多不是小团体或者个人秘密地编写和散播,反而有很多知名企业和团体涉嫌此类软件。有时也称作流氓软件。
•
定义二:恶意代码是指故意编制或设置的、对网络或系统会产生威胁或潜在威胁的计算机代码。最常见的恶意代码有计算机病毒、特洛伊木马、计算机蠕虫、后门、逻辑炸弹等。
恶意代码分析
•静态分析:通过与恶意代码特征库中的一些信息比对,如果相同则认为某个程序是恶意代码。
•动态分析:通过监控计算机中某程序的运行或其行为,如果行为存在危险则判定其为恶意代码。
实验分析过程
schtasks
•随后将其保存为bat文件。即批处理文件。
•
打开命令行输入schtasks命令,创建了一个计划任务。
•
然后我们新建一个触发器。
•
然后再新建一个操作。
•
随后我们以管理员身份运行一下netstatlog20145220会发现在txt日记本文档中出现了我们的一些日志。
TCPView
•我们可以通过它来知道进程与网络通信的关系,可以监控进程是否联网。
wireshark
•在上学期的信息安全技术和这学期的网络安全协议中我都会经常用到这个软件,所以对它还是很了解,知道可以用它来实现抓包,方便我们对一些协议进行分析。
•
在后门程序回连时,我们用wireshark进行抓包可以得到一些信息。
•
在回连时,我们也可以用netstat指令看到5220端口的情况。
PROCESS MONITOR
•
通过PROCESS MONITOR这个程序我们可以看到系统中进程的更新、运行状态。
PROCESS EXPLORER
•
通过PE这个软件我们可以查看PE文件编译的一些基本信息。我刚刚用迅雷下载了PE,结果迅雷就出现了里面。
PE ID
•
PEID这个软件的作用是用来查壳,也对恶意代码的分析有巨大作用,但我在百度上搜索到的这个版本感觉很不靠谱,所以就没有下下来实验。
SysTracer
•首先在附件中下载,然后再进行使用。
•我们要使用的就是快照工具,对我们主机的注册表及硬盘等信息进行扫描分析。
•
在Kali还没启动监听时我们快照扫描一次主机,保存为#1。
•
在Kali启动监听时我们扫描一下主机,保存为#2。
•
在主机中后门程序回连时,我们再次快照,保存为#3。
•
在比较回连前和回连后的快照后,我们可以发现,注册表的内容会有所变化,会多了一个KEY。
•
PS:由于我使用主机做的快照,全部文件扫描花的时间实在太长,我就自主选择了一些东西进行扫描,但也可以看出回连前后主机确实发生了变化。
sysmon
•
在我使用sysmon时,安装的时候已经成功了,但在新建xml文件时会发生错误,重启过,重新安装过,但都不行,现在还没有解决这个问题,很苦恼。
感受
这次实验正如指导书上说的,不是让我们下多少软件,去了解每个软件的用途,还是要我们通过软件学会分析一些内容,一些系统中的重要信息。这些信息与我们的电脑性能及安全息息相关,比如哪天你快照时发现注册表突然多出来一个什么东西,那你就得小心了,很有可能就是恶意代码在作祟。我电脑开两台虚拟机做会很卡,所以这次实验我基本都用我的主机作为靶机来完成的,所以有些东西就很繁琐,因为内容实在太多了。唯一的遗憾就是sysmon那出了点问题,我试了很多很多次都还是没有解决,我会一直尝试做下去!不抛弃不放弃,就是一种最好的精神。
基础问答
1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所以想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
答:大概可分为动态分析和静态分析两部分。静态分析有:分析其函数链接库、壳的情况、特征库比对等操作,可以分出一部分恶意代码。但更多时候我们需要动态分析,我们可以通过进程随时观察我们的计算机,还可以通过观察注册表的变化来监控恶意代码,分析计算机中的日志,上一些网站时还可以通过抓包来进行分析。
2.如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
答:使用systracer工具建立不同的快照,然后进一步分析注册表、端口、文件等变化情况。TCPview可以用来查看TCP连接情况。sysmon来分析监控我们的系统。wireshark可以进行网络抓包。