20145317《网络对抗》Exp4 恶意代码分析

一、基础问题回答

(1)总结一下监控一个系统通常需要监控什么、用什么来监控。

通常监控以下几项信息:

  • 注册表信息的增删添改
  • 系统上各类程序和文件的行为记录以及权限
  • 实现网络连接的进程,使用的IP地址和端口号等

用以下软件工具来监控:

  • TCPview工具查看系统的TCP连接信息
  • wireshark进行抓包分析,查看网络连接
  • sysmon用来监视和记录系统活动,并记录到windows事件日志,提供文件、进程等的详细信息

(2)如果在工作中怀疑一台主机上有恶意代码,请设计下你准备如何找到对应进程、恶意代码相关文件。

  • 使用tcpview工具检测有哪些程序在进行网络连接
  • 使用PE解析软件查看可疑进程的详细信息,查看其是否加壳,分析调用的DLL及其函数用途
  • 去专业网站扫描可疑进程,查看测评分数与信息
  • 使用快照分析进程对系统做了哪些改变,新增文件
  • 使用抓包软件分析进程网络连接传输的数据
  • 使用Dependency Walker来分析是否有关于注册表的异常行为等。

二、实践过程记录

恶意代码的静态分析

  • 通过VirScan的行为分析来分析恶意代码20145317backdoor.exe

  • 在扫描文件后等待片刻出现文件行为分析后点击查看分析:

  • 查看网络行为、注册表行为和其他行为:

PE explorer

  • 用PE explorer打开文件20145317backdoor.exe,查看PE文件编译的一些基本信息,导入导出表等。

  • 点击一下上面的“导入表(Import)”,查看一下这个程序都调用了哪些dll文件:

  • ADVAPI32.dll文件是一个高级API应用程序接口服务库的一部分,调用这个dll可以实现对注册表的操控,
  • WSOCK32.dllWS2_32.dll这两个DLL用于创建套接字,即会发生网络连接。

PEiD

  • PEiD(PE Identifier)是一款著名的查壳工具,其功能强大,几乎可以侦测出所有的壳,其数量已超过470 种PE 文档 的加壳类型和签名。我们使用PEiD打开test1.exe来查看这个程序是否加壳。

  • Nothing found [Debug]没加壳?正常的编译会显示编译器,如果什么都没找到,说明可能不识别该编译器。
  • 可以查看反汇编之后的代码。

Dependency Walker

  • Dependency Walker是一款Microsoft Visual C++ 中提供的非常有用的PE模块依赖性分析工具,可以查看 PE 模块的导入模块.查看 PE 模块的导入和导出函数.动态剖析 PE 模块的模块依赖性.解析 C++ 函数名称。
  • 我们使用这个软件打开

  • Dependency Walker能更专业,更细致具体的分析dll文件,条理更加清晰细致,功能强大。

  • 通过查看DLL文件的函数,该可执行文件会删除注册表键和注册表键值。

Tcpview

  • 可以用于查看进行网络连接的进程信息,所以我们可以通过查看每个进程的联网通信状态,初步判断其行为。

SysTracer

  • 打开攻击机msfconsle,开放监听;win10下对注册表、文件、应用情况进行快照,保存为Snapshot #1
  • win10下打开木马test1.exe,回连kali,win10下再次快照,保存为Snapshot #2
  • kali中通过msf发送文件给win10靶机,win10下再次快照,保存为Snapshot #4
  • kali中对win10靶机进行屏幕截图,win10下再次快照,保存为Snapshot #3
  • 我们可以通过“compare”操作来比较每次快照文件的区别。

  • 对比Snapshot #1Snapshot #2,可以看到注册表里面出现了新的表项,开放了新的端口。

  • 安装到目标机时,文件内容监控发现多了个文件

  • 对比一下Snapshot #4Snapshot #3。可以发现启动回连时注册表发生变化了,截屏时注册表也发生了一些变化。

netstat命令设置计划任务

    • 在e盘中创建一个netstat5317.bat文件

      date /t >> e:\netstat5317.txt
      time /t >> e:\netstat5317.txt
      netstat -bn >> e:\netstat5317.txt

    • 在任务计划程序中,新建一个触发器。

    • 上面内容可以显示我们连接的网络的时间和日期信息。
    • 将任务计划的操作选项栏的启动程序设为我们的netstat5317.bat,参数为>>e:\netstat5317.txt,这样我们的网络记录信息netstat5317.txt就会保存在f盘下。

    • 创建完成后,运行任务,发现f盘下出现netstat5317.txt文件,但是没有显示出我们想要的网络连接记录信息,而是显示了“请求的操作需要提升”。
    • 用管理员权限运行,即可成功。

20145317《网络对抗》Exp4 恶意代码分析的更多相关文章

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

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

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

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

  3. 2018-2019 20165319 网络对抗 Exp4 恶意代码分析

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

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

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

  5. 20155207 《网络对抗》exp4 恶意代码分析 学习总结

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

  6. 20155207王雪纯《网络对抗》Exp4 恶意代码分析

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

  7. 20155338《网络对抗》 Exp4 恶意代码分析

    20155338<网络对抗>恶意代码分析 实验过程 1.计划任务监控 在C盘根目录下建立一个netstatlog.bat文件(先把后缀设为txt,保存好内容后记得把后缀改为bat),内容如 ...

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

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

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

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

随机推荐

  1. python3学习笔记(7)_listComprehensions-列表生成式

    #python3 学习笔记17/07/11 # !/usr/bin/env python3 # -*- conding:utf-8 -*- #通过列表生成式可以生成格式各样的list,这种list 一 ...

  2. 英特尔和 Google 的 OKR 制度与我们一般所说的 KPI 有什么不同?

    英特尔和 Google 的 OKR 制度与我们一般所说的 KPI 有什么不同? - 知乎 https://www.zhihu.com/question/22478049?sort=created 知乎 ...

  3. Python爬虫实例(六)多进程下载金庸网小说

    目标任务:使用多进程下载金庸网各个版本(旧版.修订版.新修版)的小说 代码如下: # -*- coding: utf-8 -*- import requests from lxml import et ...

  4. 洛谷P2322 最短母串问题 [HNOI2006] AC自动机

    正解:AC自动机+最短路 解题报告: 传送门! 这题之前考试考到辣,,,我连题目都没看懂这种傻逼事儿就不要说了QAQ 然后就港正解辣 首先这题可以用dp做?等下写 但是一般来说看到这种,第一反应就,先 ...

  5. java 泛型没有协变类型, 所以要重用extends, 但使用List<? extends Fruit> 可以是ArrayList<Fruit>()、ArrayList<Apple>()、ArrayList<Orange>(), 因此不能add元素进去

    class Fruit{} class Apple extends Fruit{} class SubApple extends Apple{} class Orange extends Fruit{ ...

  6. xls的读写

    import xlrd # 读取xls文件 # 打开xls文件 data = xlrd.open_workbook('x1.xls') print(type(data)) # 获取表Sheet1 ta ...

  7. 理解SQL Server中索引的概念,原理

    转自:http://www.cnblogs.com/CareySon/archive/2011/12/22/2297568.html 简介 在SQL Server中,索引是一种增强式的存在,这意味着, ...

  8. mysql 数据操作 单表查询 目录

    mysql 数据操作 单表查询 mysql 数据操作 单表查询 简单查询 避免重复DISTINCT mysql 数据操作 单表查询 通过四则运算查询 mysql 数据操作 单表查询 concat()函 ...

  9. 16 jmeter中的监听器以及测试结果分析

    常用监听器 断言结果.查看结果树.聚合报告.Summary Report.用表格查看结果.图形结果.aggregate graph等 指标分析 -Samples:本次场景中一共完成了多少请求-Aver ...

  10. [kx]为什么计算机能读懂 1 和 0 ?

    CPU如何实现运算的? 下面是一个小伙的总结, 从物理电路到逻辑运算到数字电路,一步一步的好理解. 最好能看看那本<编码 隐匿在计算机软硬件背后的语言>的书. 为什么计算机能读懂 1 和 ...