恶意代码
概述
- 恶意代码是指故意编制或设置的、对网络或系统会产生威胁或潜在威胁的计算机代码。最常见的恶意代码有计算机病毒(简称病毒)、特洛伊木马(简称木马)、计算机蠕虫(简称蠕虫)、后门、逻辑炸弹等。
- 特征:
- 恶意的目的,获取靶机权限、用户隐私等
- 本身是计算机程序,可以执行,并作用于靶机
- 通过执行发生作用,一般来说不运行是没问题的
恶意代码分析
- 在大多数情况下,进行恶意代码分析时,我们将只有恶意代码的可执行文件本身,而这些文件并不是我们人类可读的。为了了解这些文件的意义,你需要使用各种工具和技巧,而每种只能揭露出少量的信息。所以在实战中,我们要综合使用各种工具,才能看到一个全貌。
- 恶意代码分析有两类基本方法:
- 静态分析:在没有运行恶意代码时对其进行分析的技术
- 动态分析:相比较静态分析而言,则需要运行恶意代码,通过其产生的行为,如对计算机中注册表、文件的更改,网络的连接等动态数据进行分析,从而确定其具体行为
实践目标
1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行。
1.Windows计划任务schtasks
我的C盘莫名其妙出现了权限的问题,一新建文件就是这样:
百度上的办法D:icacls c:\ /setintegritylevel M 也不管用,算了,在D盘上创也是一样的
更新一波:把计算机>属性>系统保护>高级>>性能>数据执行保护设置成“为除下列......”,重启PC之后再执行上面的icacls c:\ /setintegritylevel M 就可以了
- 为实现每2min记录下有哪些程序在连接网络,输入以下命令:
schtasks /create /TN 1220netstat /sc MINUTE /MO 2 /TR "cmd /c netstat -bn > D:\netstatlog.txt"
解释:TN是TaskName的缩写,我们创建的计划任务名是1220netstat;sc表示计时方式,我们以分钟计时填MINUTE;TR=Task Run,要运行的指令是 netstat -bn,b表示显示可执行文件名,n表示以数字来显示IP和端口。
运行的时候老是提示请求需要提升(也是不懂这破电脑这里那里怎么这么多麻烦事),估计是普通身份的cmd权限不够吧,百度了一下,找到了解决办法:将下列命令写入netstatlog.bat,这样它每次调用的就是管理员身份的cmd
@echo off %1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit cd /d "%~dp0" date /t >> D:\netstatlog.txttime /t >> D:\netstatlog.txtnetstat -bn >> D:\netstatlog.txt
现在开始记录;
过了一会我的360居然给我提醒了....,可能这就是所谓的行为检测吧,真是好暖心!然而想到上次的免杀后门。。还是算了
下面学习黄姝妍学姐的Excel大法:
导入数据(步骤参见),导入进来的效果如图:
我设置的两分钟一次,所以没多久netstatlog.txt文件中的数据就有100多kb了
软件联网情况:
alibabaprotect.exe:优酷安装之后就有的,貌似有点流氓,不过安全问题还是不大,其他的几个类似lkcidtal.exe 是附属于软件 National Instruments Logos 由 National Instruments, Inc 发行。,有方法可以去掉,没什么安全问题。wuauserv我已开始查百度的时候有人说是病毒进程,吓了我一跳,结果细看原来是wuauserv.exe才是,我这个是wuauserv.dll系统文件.。上面的进程扫描结果我都了解了一下,没什么问题,我的电脑暂时还算干净
外部网络连接的情况:
121.195.187.54 北京市教育网;202.108.249.223 北京市北京市 联通; 61.135.186.152 北京市北京市 联通。。。。没什么不正常的,毕竟没什么可疑进程
1.2是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件;分析工具尽量使用原生指令或套件。
Sysmon
是Sysinternals工具集
里面一个重要工具,最主要的功能就是可以通过自定记录规则进行系统运行的监控,语法结构与HTML
一致,在老师配置文件的基础上我修改了一份自己的配置文件,
这之后开始记录了,到事件查看器里面就可以看到,如下图
可以监控到若干种不同的事件:
1.Process creation:RuntimeBroker.exe,用来开始屏幕磁贴与桌面的后台交互
2.Network connection detected:svchost.exe,微软的一个服务,作用是使用空闲的宽带在后台传送文件,如Windows更新之类的
3.File creation time changed,我的火狐浏览器相关事件,记录了我的浏览历史
由于我的电脑比较干净,所以看了一圈发现基本上都是些正常的事件
下面用我们上次用veil做的能够实现免杀的lys_veil_2.exe来检测一下看看效果,...怎么回事,我的kali 的IP突然变了,没办法,我只好又新做了一个后门,还是可以免杀
接下来我们来执行截屏,getuid以及罗列文件,如下
下面去sysmon里面看一看
首先是建立连接的时候,捕捉事件
我kali的IP也能查看得到:
截屏事件(file creation time changed):
文件资源罗列:
果然都被检测到了,可以可以。
问题回答
(1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
做实验之前没有这方面的意识,顶多就开个安全软件笼统地扫描扫描,做完实验之后知道还有可以重点关注我们觉得有问题的应用,监控的操作包括修改、创建文件操作、联网操作,创建进程,还有就是那些比较敏感的进程比如svchost.exe等后门喜欢拉上关系的,工具还是用我们这次的 sysmon吧,感觉监控功能挺强的(其他的我也不会....QAQ),
(2)如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
使用systracer工具建立若干个不同的快照吧,还可以用wireshark之类的抓抓包分析分析,PEiD查看是否加壳等,学电子的菜鸡之前没有怎么用过这些东西,实在不怎么懂,瑟瑟发抖~~~
实验感想
这次实验一开始做起来有点找不着北,但是看了那个excel分析案例之后还是明白了一点,感觉确实可以通过那个找到一点蛛丝马迹,我的电脑好像还比较干净(也不知道是真是假)所以没有发现什么明显的问题,至于那个sysmon,额,我看到那一大串信息的时候,如果我不是提前知道它是我做的后门,我是发现不了它有什么异常的,所以我觉得真的想要通过这些手段来查出问题还需要一定的相关方面的基础,不然一个后门摆在我面前都认不出来[尴尬。。。],这样的话做这个分析的意义就不大了[几乎没有意义]