20145304 Exp4 恶意代码分析

实验后回答问题

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

  • 监控连网记录,查看有没有可疑的信息,可使用Windows计划任务或schtasks来监控系统
  • 监控驱动加载、线程注入等,可使用Sysmon工具,在事件查看器查看。
  • 捕获数据包,分析其内容,看是否有不正常的连接,可开启wireshark。
  • 注册表,运行程序等,可使用systracer拍摄快照,进行对比。
  • 查看开放端口,是否有不需要开放的端口被开启。

    (2)如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
  • 可用PEView来查看该程序是否加壳。
  • PEView逆向查看该程序,可能会找到关于网络连接和编译的线索。
  • 使用systracer拍摄快照,分析程序运行前后的变化。

实验总结与体会

电脑中正在运行的东西,不仅仅只有我们看到的,还可能有一些我们感觉不到的恶意代码在运行,之前的几次实验我们学习的是如何制作恶意代码,这次的恶意代码分析,让我们能依据之前自己做的恶意代码的功能,去分析一些值得关注的一些内容,也为以后可能的分析提供了思路。通过之前的免杀,杀毒软件有时也是很不可靠的,还得靠自己来监控判断,掌握一项技能很重要。

实践过程记录

恶意代码静态分析

将逆序后的shellcode代码放到恶意代码的检测网站上检测。

分析结果显示,39款软件有5款认为其不安全,从检测报告可以推测出该程序可能为一个shellcode的木马。

查看文件行为分析可看到该程序未加壳,还可看到回连的IP与端口信息。

PEiD查看该代码是否加壳

可以看出其编译环境为VC

PEView

使用PEView逆向查看后门程序,猜想可能会有关于IP和端口的信息,但 没有找到,数据处大都是乱码,在调试部分,发现了本机上编译该代码的地址。

系统运行监控

使用schtasks分析网络连接情况

  • 创建计划任务。

  • 为方便观察,使用批处理,在C盘下建一个文件netstatlog.bat,并在计划任务中修改操作的添加参数为c:\netstatlog.bat

  • 将netstatlog.txt文件另存为.vbs文件,用Excel打开,进行筛选,查看结果。在5个小时里共有273条记录,删除重复项后只剩19条,除去无用的信息,观察剩下的,无可疑的地方。

使用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>
<SourceIp condition="is">127.0.0.1</SourceIp>
</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

  • 配置

  • 在事件查看器里查看、分析时发现了使用sogou截图

  • 创建配置文件

  • 不知道360在干嘛

  • audiodg.exe是Windows的音频操作进程。

恶意软件分析

使用systracer

  • 使用systracer分别建立了没有恶意软件时,装入恶意软件时,启动回连,执行系统命令,开启键盘捕获时的快照。

  • 快照1与2对比,发现文件处多了装入的恶意代码

  • 快照2与3对比,应用在运行

  • 快照3与4对比,应用中运行了CMD

  • 快照4与5对比,注册表发生了较大变化

使用wireshark在回连时捕包

  • 通过捕获到的数据包可以看出是本机主动连接虚拟机,并建立了TCP连接。

20145304 Exp4 恶意代码分析的更多相关文章

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

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

  2. 2018-2019 20165237网络对抗 Exp4 恶意代码分析

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

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

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

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

    - 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析 - 实验任务 1系统运行监控(2分) (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP ...

  5. 2018-2019-2 20165239《网络对抗技术》Exp4 恶意代码分析

    Exp4 恶意代码分析 实验内容 一.基础问题 1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控. •使用w ...

  6. 2018-2019 20165235 网络对抗 Exp4 恶意代码分析

    2018-2019 20165235 网络对抗 Exp4 恶意代码分析 实验内容 系统运行监控 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间并分析该文件 ...

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

    目录 Exp4 恶意代码分析 一.基础问题 问题1: 问题2: 二.系统监控 1. 系统命令监控 2. 使用Windows系统工具集sysmon监控系统状态 三.恶意软件分析 1. virustota ...

  8. 20155312 张竞予 Exp4 恶意代码分析

    Exp4 恶意代码分析 目录 基础问题回答 (1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控. (2)如果 ...

  9. 2018-2019-2 《网络对抗技术》Exp4 恶意代码分析 Week6 20165311

    2018-2019 20165311 网络对抗 Exp4 恶意代码分析 2018-2019 20165311 网络对抗 Exp4 恶意代码分析 实验内容 系统运行监控(2分) 恶意软件分析(1.5分) ...

随机推荐

  1. Oracle体系结构之oracle密码文件管理

    密码文件 密码文件作用: 密码文件用于dba用户的登录认证. dba用户:具备sysdba和sysoper权限的用户,即oracle的sys和system用户. 本地登录: 1)操作系统认证: [or ...

  2. js里常用函数之高阶函数

    高阶函数:将函数作为参数或者返回值的函数.将函数作为参数的用法通常称作回调函数,函数参数通常会在主函数被执行之后被高阶函数调用. 高阶函数的使用实例.可以把有相似操作的函数用一个高阶函数来重构,精简代 ...

  3. UDR rsync

    1. SOCK_DGRAM  UDP packets SOCK_STREAM   TCP 不同的协议下的 套接字 数据包 面向数据的 面向连接的 套接字 2. 数据 UDP 文件 TCP https: ...

  4. svm核函数的理解和选择

    https://blog.csdn.net/leonis_v/article/details/50688766 特征空间的隐式映射:核函数    咱们首先给出核函数的来头:在上文中,我们已经了解到了S ...

  5. 运行Chromium浏览器无法登录谷歌账号因为缺少google api密钥

    管理员身份运行CMD,然后依次输入以下三行内容(因为比较长,最好拷贝,因为某原因粘贴第一行后,我输入了下,结果第一次没成功,可能是输入错误了.): setx GOOGLE_API_KEY " ...

  6. ViewPager的OnPageChangeListener三个回调解析

    一个native crash最后是重写ViewPager解决的,过程中发现这三个回调还有点绕,于是理了一下 ViewPager有两个操作,一个是用手指滑动翻页,一个是直接setCurrentItem( ...

  7. 【Pyton】【小甲鱼】类和对象:一些相关的BIF(内置函数)

    1.issubclass(class,classinfo) 1)一个类被认为是其自身的子类 2)classinfo可以使类对象组成的元祖,只要class与其中任何一个候选类的子类,则返回True. & ...

  8. 【深入理解javascript】闭包

    1.作用域 “javascript没有块级作用域”.所谓“块”,就是大括号“{}”中间的语句.例如if语句: 再比如for语句: 所以,我们在编写代码的时候,不要在“块”里面声明变量,要在代码的一开始 ...

  9. 用Servlet获取表单数据

    用Servlet获取表单数据 在webroot下新建userRegist2.jsp 代码如下: <%@ page contentType="text/html;charset=gb23 ...

  10. dfs模板(真心不会深搜)

    栈 #include <stdio.h> #include <string.h> ][]; ][]; ,-, , }; , ,-, }; int Min; void dfs(i ...