zoukankan      html  css  js  c++  java
  • 20145217《网络对抗》 恶意代码分析

    20145217《网络对抗》 免杀原理与实践

    知识点学习总结

    进行恶意代码分析之前必须具备以下知识:编程、汇编/反汇编、网络基本知识、PE文件结构以及一些常用行为分析软件。

    一、在一个已经感染了恶意代码的机器上如何找到病毒文件?

    • 找到恶意代码才能对其分析,找到恶意代码文件就是就是分析的第一步,一般来讲,恶意代码运行必然会创建一个进程,而这个进程就是我们找到他的突破口,一个打开的进程,可以通过任务管理器、Process Explorer等来找到其映像文件的地址,这样就能找到恶意代码文件了

    • 但是,现在的恶意代码可能其自身的进程隐藏,一般来讲,隐藏进程的方式就是“脱链”,在PEB中有三条链表,其中一条链表的指向进程,该链表的每一个元素代表着每一个进程,如果想对某进程隐藏,那么进行“脱链”即可。

    二、如何通过静态基础分析获取一些相关信息?

    • 首先,我们用PEID查看一些基本信息,用PE explorer等软件查看导入表,一个程序想对你的电脑进行某些操作,那么它必然会调用系统API,而导入表可以告诉我们这个程序调用了哪些API,我们凭借这些导入函数,可以大致猜测一下这个程序作了什么。

    • 可以对我们提供有效信息的不是只有导入表,查看字符串也经常会有一些意外收获,这个时候我们可以使用微软提供的控制台工具Strings查看程序的字符串信息,通过查看字符串,可以获取很多提示。

    三、如何确定恶意代码究竟干了些什么?

    • 这个时候那就需要用到动态基础分析了,别犹豫,上虚拟机,跑起来看看吧,跑之前我们先要打开一些行为监控软件,常用的是微软提供的Process Monitor、Process Explorer等这些软件可以监控到注册表、文件、进程、模块、网络、用户等等等等信息。还可以使用systracer拍摄快照并对比。

    • 很多后门和木马程序还会采用反弹式连接的方式链接到别的主机,这是可以采用nestat、wireshark等抓包工具进行抓包,确定其网络行为,发现攻击的主机,后期杀毒再做针对处理。

    实验过程概述

    一、virscan扫描结果分析

    • 编译器:visual C++5.0

    • 两大主要行为:网络行为和注册表行为,反弹连接一个IP并修改注册列表。

    二、peid扫描结果分析

    • 结果显然是没有加壳。在这里我们又见到了编译器信息。pied能够显示反汇编代码以及一些地址信息,不过最重要的作用还是查壳脱壳,对文件信息的分析不如接下来的两款PE软件好用。

    三、Dependency Walker扫描结果分析

    • 这个软件把程序的dll层级调用列出来了,他调用了什么dll,那些dll又调用了哪些文件。

    • 通过分析可以得到该程序对注册列表有改动的动作。

    四、PE explorer扫描结果分析

    • 文件头信息:可以看到文件编译时间,连接器等信息。

    • 表信息:这里主要查看第二个导入表,即调用了什么dll。

    • 分节信息:缺点是显示以ascll码表示,看不出所以然来。

    五、systracer分析恶意代码回连前后情况

    • 运行程序:多了cad5217.exe这样一个进程。

    • 载入的dll文件:cad5217调用了大量dll文件,很多在之前的引入表中也能看到。

    • 开放端口:可以看到cad5217程序通过tcp连接一个192.168.150.132的443端口。

    六、wireshark分析恶意代码回连前后情况

    • 我们知道443端口是https服务端口,通常采用ssl/tls安全通信协议。这里的大量ssl包和tcp包数据部分都是乱码,是经过加密处理的。

    七、TCPview分析恶意代码回连前后情况

    • 易看出在回连后出现cad5217这个进程,PID为3617,并且具有网络行为是连接另一台主机的https端口。

    • TCPview不仅可以查看还可以结束这个进程,还可以告诉你这个程序在你的机器上那个位置,为清除提供方便。

    • 结束进程后,linux这边显示程序die了。

    八、Process monitor查看恶意代码回连前后情况

    • 可以看到回连后程序信息,成功运行、日期时间

    • 可以看到父进程PID,查了一下是windows资源管理器

    九、Process Explorer查看恶意代码回连前后情况

    • 可以看到回连后程序信息

    • Process Explorer更像一个详细版的任务管理器,把进程的各种信息都直观地展示出来。双击后可以查看各种属性。
    • 具有网络连接行为:

    • 改程序跟ntdll.dll直接相关。ntdll.dll描述了windows本地NTAPI的接口。是重要的Windows NT内核级文件。

    十、netstat查看恶意代码回连前后情况

    • 可以看到正在联网到192.168.150.132:443,连接时建立的。这个小程序并不是太好用,虽然可以通过建立新任务的方式让它在后台不停地进行记录,但并不详细,当有其他程序时显然用其他程序更好。

    • 还遇到权限不够的问题

    • 权限解决:勾选以最高权限运行。

    • 效果图

    十一、sysmon查看恶意代码回连前后情况

    • 安装失败了

  • 相关阅读:
    前端学习之——h5适配
    Python学习之——【开始】
    前端学习之----隐式类型转换
    前端学习之----数据类型
    vue学习之——生命周期
    认识自己(一)
    判断一句话是否是回文,例如, 上海自来水来自海海上
    判断是否为质数
    Python之函数进阶
    Python之冒泡排序
  • 原文地址:https://www.cnblogs.com/jokebright/p/6642187.html
Copyright © 2011-2022 走看看