20222423 2024-2025-1 《网络与系统攻防技术》实验四实验报告

1. 实验内容

一、恶意代码文件类型标识、脱壳与字符串提取

对提供的rada恶意代码样本,进行文件类型识别,脱壳与字符串提取,以获得rada恶意代码的编写作者,具体操作如下:

(1)使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具;

(2)使用超级巡警脱壳机等脱壳软件,对rada恶意代码样本进行脱壳处理;

(3)使用字符串提取工具,对脱壳后的rada恶意代码样本进行分析,从中发现rada恶意代码的编写作者是谁?

二、使用IDA Pro静态或动态分析crackme1.exe与crakeme2.exe,寻找特定输入,使其能够输出成功信息。

三、分析一个自制恶意代码样本rada,并撰写报告,回答以下问题:

(1)提供对这个二进制文件的摘要,包括可以帮助识别同一样本的基本信息;

(2)找出并解释这个二进制文件的目的;

(3)识别并说明这个二进制文件所具有的不同特性;

(4)识别并解释这个二进制文件中所采用的防止被分析或逆向工程的技术;

(5)对这个恶意代码样本进行分类(病毒、蠕虫等),并给出你的理由;

(6)给出过去已有的具有相似功能的其他工具;

(7)可能调查处这个二进制文件的开发作者吗?如果可以,在什么样的环境和什么样的限定条件下?

(8)给出至少5种检测该恶意软件的方法,例如基于特征码的方法,需要详细介绍每种方法。

四、取证分析实践

Windows 2000系统被攻破并加入僵尸网络

问题: 数据源是Snort收集的蜜罐主机5天的网络数据源,并去除了一些不相关的流量,同时IP地址和其他敏感信息被混淆。回答下列问题:

(1)IRC是什么?当IRC客户端申请加入一个IRC网络时将发送那个消息?IRC一般使用那些TCP端口?

(2)僵尸网络是什么?僵尸网络通常用于什么?

(3)蜜罐主机(IP地址:172.16.134.191)与那些IRC服务器进行了通信?

(4)在这段观察期间,多少不同的主机访问了以209.196.44.172为服务器的僵尸网络?

(5)哪些IP地址被用于攻击蜜罐主机?

(6)攻击者尝试攻击了那些安全漏洞?

(7)那些攻击成功了?是如何成功的?

2. 实验过程

2.1 任务一:恶意代码文件类型标识、脱壳与字符串提取

对提供的样本RaDa.exe进行分析,脱壳与字符串提取,以获得rada恶意代码的编写作者

2.1.1 使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具

将文件传到kali端,使用file命令查看文件的格式和类型信息。file是kali里自带的

file RaDa.exe

由上面的结果我们可以得到RaDa.exe以下信息:

  • PE32: 它是32位的PE文件

  • CUI: 有图形用户界面

  • Intel 80386: 适用于使用Intel 80386处理器的计算机

  • for MS Windows:适用于Microsoft Windows操作系统

  • 3 sections:该文件分为了三个部分或段,一般指的是代码段、数据段和堆栈段

得到了基本信息,下面来使用PEID工具查看文件的是什么加壳工具

打开老师提供的peid工具,将文件放入即可

由结果不难看出,RaDa.exe使用了UPX加壳工具,UPX的使用在实验三已经进行过,比较熟悉

既然样本文件被加过壳,要直接分析还是有难度的,这里我们使用超级巡警脱壳机等工具对文件脱壳

拖了壳之后就好分析了

可以看到 sections变为了4 ,多了一个节

下面使用字符串提取工具,对样本进行分析,查找rada编写作者

这里我在windows主机使用命令分析的,但是windows并不自带strings命令,具体问题见后面的 问题与解决部分


比较长,不断向下翻找,总会找到的

总算找到了,可以看到rada代码编写的作者为

  • Raul Siles
  • David Perez

2.2 任务二:使用IDA Pro静态或动态分析crackme1.exe与crakeme2.exe,寻找特定输入,使其能够输出成功信息

首先和rada一样,使用file指令查看一下基本信息

  • console: 说明这两个是控制台程序

  • for MS Windows:则表示这是一个为Microsoft Windows操作系统设计的可执行文件

2.2.1 使用IDA pro查看分析crackme1.exe

这里我在windows使用的是网上下载的IDE8.4版本进行分析,具体过程见 问题与解决 部分

打开View-Open subviews-strings,查看字符串

不难看到,crackme1.exe有四个关联语句,分别是“Pardon? What did you say?”,“I think you are missing something.”,“You know how to speak to programs, Mr. Reverse-Engineer”,“I know the secret”

但是分析中看到只有“I know the secret”这一条语句没有换行符,其他全有,推测其为要输入的语句

查看一下函数调用关系,打开View-Graphs-Function calls

可以看到主函数下包含了strcmp,printf,fprintf等语句,既然有strcmp推测会根据输入对比进而printf出不同的输出语句

再查看一下反汇编信息

由结构大体看出,程序共有四种特定输出。_mian函数中存在一条条件语句,判断是否满足条件语句的布尔值会进一步产生两种输出,某一种输出还会存在一条条件语句,同样会因判断的布尔值不同又存在两种不同输出。

为了看的更清楚,对main函数进行反编译,来查看一下结果

  • 果然和推测的一眼,程序会先判断输入参数的个数,如果不为2就继续输出“I think you are missing something.”

  • 如果输入了参数,会将字符串和“I know the secret”比对,如果一样才输出“You know how to speak to programs, Mr. Reverse-Engineer”,否则输出“Pardon? What did you say?”

  • 综上,我们可以推理出字符串“I know the secret”就是这个程序的“正确密码”
    提供一个二进制文件的摘要,包括可以帮助识别同一样本的基本信息

话不多说,测试一下

果然和推测的一致

2.2.2 使用IDA pro查看分析crackme2.exe

具体步骤和分析crackme1.exe一致

首先使用strings查看字符串

发现多了一条“crackmeplease.exe”

然后查看函数结构

发现在判断参数为2后的子分支中多出来一条判断分支,推测是判断参数是否为“crackmeplease.exe”

同样,对main函数进行反编译查看结果

果然和推测的一样和crackme1.exe不同之处就在于判断参数为2后,会比较参数一是否为“crackmeplease.exe”,若不是输出“I have an identity problem”,如果是则会继续判断另一个参数是不是为“I know the secret”,如果是,最后才会输出“正确答案”

话不多说,实践一下

果然,当两个参数都满足的时候,才会输出“We have a little secret: Chocolate”

2.3 任务三:分析一个自制恶意代码样本rada

2.3.1 提供对这个二进制文件的摘要,包括可以帮助识别同一样本的基本信息

首先打开kali端,使用自带的文件摘要命令,使用md5摘要算法,得到结果如下

md5sum RaDa.exe

为保险起见,使用网站再进行摘要对比一下

可以看到结果一致

2.3.2 找出并解释这个二进制文件的目的

下面使用IDA分析脱壳后的RaDa.exe(未脱壳的RaDa.exe是无法分析出来的)
使用strings查看

1.可以看到,首先会http连接到目标为10.10.10.10的主机下的RaDa_commands的网页上,download.cgi,upload.cgi表示会进行上传与下载操作

(download.cgi是一种基于CGI(通用网关接口)的脚本程序,用于实现网站上的文件下载功能,download.cgi同理)

2.在C盘创建RaDa文件夹,里面有两个子文件夹bin和tmp,当RaDa.exe运行的时候会将RaDa.exe复制到C://RaDa/bin的路径下

具体效果如下:

3.发动DDOS攻击

攻击网段在被红框圈出来的部分

4.添加了注册表,并对注册表进行部分操作

  • HKLM\Software\Microsoft\Windows\CurrentVersion\Run\ : 这代表windows注册表中的一个键,指定在windows启动时自启动的程序列表

  • REG_SZ: 存储包含零个或多个字符的数据值,例如文件路径、URL或使用文本格式编码的一些配置信息等

  • RegWrite: 用于在注册表中写入新的键值

  • RegRead:从注册表中读取指定键的数值

  • RegDelete:用于删除注册表中指定的键或键值

5.进行一些操作,获取隐私信息

  • 操作包含,包含exe、put、截屏(screenshot)、睡眠(sleep)等一系列操作

6.拥有一些可执行的指令

具体执行结果如下:

7.查询适配器

这里出现了SQL语句,代表查询受害主机上的可用适配器

2.3.3 识别并说明这个二进制文件所具有的不同特性

有了上面的具体分析,我们能得到以下结果

  • RaDa.exe运行后,会在受害主机C盘创建RaDa文件夹,并且自我复制到这个文件夹下,具有自我复制功能

  • 修改注册表以实现随系统开机自启动的功能

  • 获取受害主机的隐私信息,执行screenshot、sleep等命令

  • 指定网址http://10.10.10.10/Rada/Rada_command.html,上传下载文件

  • 发动DDOS攻击

2.3.4 识别并解释这个二进制文件中所采用的防止被分析或逆向工程的技术

  • 使用UPX压缩壳,防止被分析,在没有被脱壳前直接用IDA分析RaDa.exe得到的都是乱码,增加了对恶意代码的分析难度,因为对程序进行反汇编时,会得到的是被压缩的二进制代码,而不是原始代码。另外,UPX加壳还可能会运用代码混淆技术,使得代码结构和流程变得更为复杂难懂,提高破解难度。
2.3.5 对这个恶意代码样本进行分类(病毒、蠕虫等),并给出理由

首先回顾所学知识,看一下这些恶意代码都有什么特征

  • 病毒:依附性, 传染性,隐蔽性,自我复制

  • 蠕虫:独立性(不用宿主),自我复制

  • 木马:独立性,不能自我复制

  • 后门:非法访问,通过隐蔽通道

  • RootKit:提升攻击者权限,以控制OS

而RaDa.exe没有传染性,能够独立执行,可以远程获取指令,非法授权进行访问,此外没有进行伪装

综上所述,判定RaDa.exe为后门程序

2.3.6 给出过去已有的具有相似功能的其他工具

通过前几次的实验,可以总结出一些工具

  • MSF meterpreter,可以生成可执行文件,实现获取主机shell,通过shell获取目标主机音频、摄像头、击键记录等内容

2.3.7 可能调查处这个二进制文件的开发作者吗?如果可以,在什么样的环境和什么样的限定条件下?

  • 运行RaDa.exe,输入 RaDa.exe --authors

可以看到能够直接显示恶意代码段的作者是谁

  • 对文件脱壳之后,用strings命令也可以看到作者,具体内容见 2.2.1

2.3.8 给出至少5种检测该恶意软件的方法,例如基于特征码的方法,需要详细介绍每种方法

(1)基于机器学习的检测方法

  • 原理:
    利用机器学习算法,如监督学习、无监督学习等,对大量的已知恶意软件和正常软件样本进行学习,构建模型,然后用这个模型来预测新的软件是否为恶意软件。在监督学习中,会给算法提供带有标记(恶意或正常)的软件样本,算法学习这些样本的特征(如文件大小、文件头信息、程序执行流程等)来构建分类模型。无监督学习则主要关注数据中的异常模式,例如,通过聚类算法将软件样本分为不同的簇,如果某个样本不属于任何正常的簇,就可能被判定为恶意软件。

  • 方法介绍:
    例如,在构建一个基于监督学习的恶意软件检测模型时,首先收集大量的恶意软件和正常软件样本。将这些样本的特征提取出来,如可执行文件的熵值(衡量文件内容的随机性)、导入的函数库等。然后将这些特征和对应的标签(恶意或正常)输入到机器学习算法中,如决策树、支持向量机等算法。经过训练后得到一个分类模型。当有新的软件需要检测时,提取这个软件的相同特征,然后将这些特征输入到训练好的模型中,模型会输出这个软件是恶意软件还是正常软件的预测结果。

(2)基于沙箱的检测方法

  • 原理:
    沙箱是一个隔离的环境,可以在其中运行可疑的程序,而不会对真实的系统造成影响。通过在沙箱中运行程序,可以观察其完整的行为,包括文件系统访问、网络通信、内存使用等情况,从而判断其是否为恶意软件。

  • 方法介绍:
    当检测到一个可疑文件时,将其放入沙箱环境中运行。沙箱会模拟一个正常的操作系统环境,但是对其行为进行严格监控。如果程序在沙箱中表现出恶意行为,如试图突破沙箱限制、对模拟的文件系统进行恶意修改等,就可以判定为恶意软件。例如,一个恶意软件可能在沙箱中试图连接到恶意的C&C(命令与控制)服务器,这种行为会被沙箱检测到。

(3)基于启发式分析的检测方法

  • 原理:
    启发式分析通过分析程序的结构、指令序列和其他特征来判断其是否可能是恶意软件。它不像基于特征码的检测那样需要精确匹配,而是根据一些已知的恶意软件行为模式和编程习惯进行推测。

  • 方法介绍:
    例如,一个程序如果包含大量的加密和解密函数,并且试图隐藏自己的进程,同时有对系统关键区域进行频繁访问的行为,启发式分析系统可能会根据这些综合特征判断这个程序有较高的恶意软件嫌疑。它会根据一系列预先设定的规则和算法来对程序进行评估,这些规则可能涉及程序的代码结构、函数调用关系等。

(4)基于行为的检测方法

  • 原理:
    关注恶意软件在系统中的行为模式,而不是仅仅依赖于特定的代码特征。恶意软件通常会有一些与正常程序不同的行为,如试图修改系统关键文件、未经授权的网络连接、异常的进程启动等。

  • 方法介绍:
    安全系统会监控系统中的各种行为,如文件访问、网络通信、进程创建和内存使用等。一旦检测到异常行为,就会发出警报。例如,一个正常的文本编辑程序不会试图连接到一个陌生的外部服务器,但是如果一个恶意软件伪装成文本编辑程序并试图连接到外部服务器来发送窃取的用户数据,基于行为的检测系统就能够发现这种异常的网络连接行为并判断可能存在恶意软件。

(5)基于特征码的检测方法

  • 原理:
    基于特征码的检测是最传统的恶意软件检测方法之一。它依赖于预先定义的恶意软件特征码,这些特征码是从已知的恶意软件样本中提取出来的独特的字节序列或者代码模式。例如,一个恶意软件可能包含特定的加密算法或者特定的系统调用序列,这些都可以被定义为特征码。

  • 方法介绍
    反病毒软件或安全检测工具会维护一个庞大的特征码数据库。当扫描一个文件或系统时,它会将目标文件或系统中的数据与特征码数据库中的特征码进行比对。如果发现匹配的特征码,就会判定为存在恶意软件。

(6)文件完整性检查

  • 原理:
    许多恶意软件会修改系统中的重要文件,如系统配置文件、可执行文件等。基于文件完整性检查的方法就是通过对比文件的原始哈希值(如MD5、SHA - 1等)和当前文件的哈希值来判断文件是否被篡改。

  • 方法介绍:
    系统会预先计算并保存重要文件的哈希值。在检测时,重新计算文件的哈希值并与原始值进行比较。如果哈希值发生变化,就可能是因为文件被恶意软件修改了。例如,一个恶意软件可能会修改系统的登录程序文件,通过文件完整性检查可以发现登录程序文件的哈希值发生了变化,从而提示可能存在恶意软件入侵。

2.4 任务四: 取证分析实践:Windows 2000系统被攻破并加入僵尸网络

2.4.1 IRC是什么?当IRC客户端申请加入一个IRC网络时将发送那个消息?IRC一般使用那些TCP端口?

  • IRC(Internet Relay Chat)是一种基于文本的实时互联网通信协议,它允许用户通过网络进行实时的文本聊天。IRC最初由芬兰人Jarkko Oikarinen于1988年开发,旨在提供一个去中心化的聊天平台,允许多个用户同时在不同的频道中进行交流。IRC网络由多个IRC服务器组成,这些服务器相互连接,形成一个全球性的网络,用户可以通过IRC客户端软件连接到这些服务器上的频道。

  • 当IRC客户端申请加入一个IRC网络时,它会发送一条消息,通常是类似于"JOIN #channelname"的格式,表明它要加入某个频道。

  • IRC服务器通常使用两个TCP端口:

    • 6667端口:这是IRC的默认端口,用于明文传输。

    • 6697端口:这是IRC的SSL/TLS加密端口,用于加密传输,以提高通信的安全性。

2.4.2 僵尸网络是什么?僵尸网络通常用于什么?

  • 僵尸网络(Botnet)是指由攻击者控制的一组被感染的计算机或设备,这些设备被用作攻击其他网络或设备的工具。僵尸网络通常由恶意软件(如病毒、蠕虫或木马)感染,并通过网络连接到一个中央服务器,这个服务器被称为命令与控制(C&C)服务器。攻击者可以通过这个服务器向僵尸网络中的所有设备发送指令,执行各种恶意活动,如分布式拒绝服务(DDoS)攻击、发送垃圾邮件、窃取敏感信息等。

  • 僵尸网络的用途:

    • 分布式拒绝服务(DDoS)攻击:攻击者可以利用僵尸网络中的大量设备向目标服务器发送大量请求,导致服务器过载,无法正常服务合法用户。

    • 发送垃圾邮件:僵尸网络中的设备可以被用来发送大量垃圾邮件,这些邮件可能包含恶意链接或附件,用于传播恶意软件或进行钓鱼攻击。

    • 挖矿:僵尸网络中的设备可以被用来挖掘加密货币,如比特币,为攻击者带来经济利益。

    • 窃取敏感信息:攻击者可以通过僵尸网络中的设备窃取用户的登录凭证、信用卡信息等敏感数据。

    • 其他恶意活动:僵尸网络还可以被用于其他恶意活动,如传播恶意软件、进行网络间谍活动等。

2.4.3 蜜罐主机(IP地址为:172.16.134.191)与哪些IRC服务器进行了通信?

将提供的botnet_pcap_file.dat(这里我改了名,加上了自己的学号)复制到kali中,使用kali自带的wireshark打开该文件

然后设置过滤条件为ip.src == 172.16.134.191 && tcp.dstport == 6667

通过对数据包过程的分析,可以看到蜜罐主机对以下IPC服务器进行了通信:

  • 209.196.44.172

  • 66.33.65.68

  • 63.241.174.144

  • 217.199.175.10

  • 209.126.161.29

2.4.4 观察在这段时间内,多少不同的主机访问了以209.196.44.172为服务器的僵尸网络

首先在kali端下载tcpflow

然后使用tcpflow读取dat文件,并设置了过滤条件

tcpflow -r botnet_pcap_file.dat 'host 209.196.44.172 and port 6667'

  • TCPFlow会尝试重建 TCP 会话,并将每个会话的数据保存到一个单独的文件中。除xml文件外,每个文件代表了一个 TCP 会话,文件名会包含会话的源和目标 IP 地址以及端口号。

生成了三个文件一个report.xml和两个网段记录

 cat 209.196.044.172.06667-172.016.134.191.01152 | grep -a "^:irc5.aol.com 353" | sed "s/^:irc5.aol.com 353 rgdiuggac @ #x[^x]*x ://g" | tr ' ' '\n' | tr -d "\15" | grep -v "^$" | sort -u | wc -l 
  • cat 209.196.044.172.06667-172.016.134.191.01152: 通过cat命令读取文件内容,文件名为209.196.044.172.06667-172.016.134.191.01152;

  • grep -a "^:irc5.aol.com 353": 对文件内容进行过滤,只保留包含字符串^:irc5.aol.com 353的行;

  • sed "s/^:irc5.aol.com 353 rgdiuggac @ #x[^x]*x ://g": 对保留下来的内容进行处理,将其中的正则表达式^:irc5.aol.com 353 rgdiuggac @ #x[^x]*x :替换为空字符串;

  • tr ' ' '\n': 将一行中的空格替换成换行符,以进行逐行处理

  • tr -d "\r": 从文件内容中删除回车符

  • grep -v "^$": 过滤掉为空的行,即不包含任何字符的行

  • sort -u: 对整个文件内容进行排序,并保留唯一的行值

  • wc -l: 对最终处理的结果进行行数统计,即参与聊天的人数

可以看到有3416个主机,访问过目标服务器

2.4.5 哪些IP地址被用于攻击蜜罐主机?

使用指令将共计蜜罐主机的IP筛选输出到20222423ip.txt中

tcpdump -n -nn -r 20222423_botnet_pcap_file.dat 'dst host 172.16.134.191' | awk -F " " '{print $3}' | cut -d '.' -f 1-4 | sort | uniq | more> 20222423ip.txt;wc -l 20222423ip.txt

从中可以看到有165个ip攻击了蜜罐主机

2.4.6攻击者尝试攻击了那些安全漏洞?

使用wireshark的 "Statistics->Protocol Hierarchy",进行协议分级统计

可以看到基本全是TCP数据包,占99.7%,UDP包只占0.3%,非常少

进一步细筛选端口

筛选TCP的端口

tcpdump -r 20222423_botnet_pcap_file.dat -nn 'src host 172.16.134.191' and tcp[tcpflags]== 0x12 | cut -d ' ' -f 3 | cut -d '.' -f 5 | sort | uniq

可以看到TCP的相应端口有:135、139、25、445、4899、80

同理,查看UDP协议的端口

可以发现使用了137端口

2.4.7 哪些攻击成功了?是如何成功的?

下面加上端口和协议过滤,分析共计这里利用了哪些漏洞

TCP的25号端口

  • 可以看到基本都是建立“三次握手”连接和“四次握手”断开连接,没有做实际的攻击行为,估计是利用了“全开扫描”扫描端口。其中有不少的数据包被重传了,肯能因为网络不佳出现丢包或者其他原因。

  • 25端口为SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)服务器所开放,主要用于发送邮件。

TCP的135端口

  • 计网狂喜,可以看到非常标准的一次完整TCP“三次握手”和“四次握手”,看样子没有进行什么攻击

  • 端口号为135主要用于远程过程调用(RPC)服务。RPC是一种允许程序在不同的计算机上运行,并通过网络相互通信的协议。通过RPC,一个程序可以调用另一个计算机上的函数或过程,就像调用本地函数一样

TCP的139端口

  • 发现数据包中除了“三次握手”之外,还有NBSS协议和SMB协议的数据包。

  • NBSS协议是NetBIOS协议的一部分,主要用于在网络上建立会话服务。NetBIOS是一种网络应用程序接口,它提供了一种在网络上进行通信的方式,特别是在早期的Windows网络环境中。

  • SMB是一种网络文件共享协议,它允许在网络上的计算机之间共享文件、打印机、串口等资源。SMB数据包是SMB协议的一部分,用于在客户端和服务器之间传输数据。SMB数据包包含了各种命令和响应,用于文件操作、打印机共享等

  • 通过流量分析不难看出,上面数据包仅仅是建立连接,没有具体使用相关功能,可以理解为也是一种端口扫描

TCP的445端口

  • 445端口和139端口功能很相似,都可以通过SMB协议实现

  • 但是注意数据包的内容,发现SMB协议不仅仅建立了连接,还进行了数据传输,其中61.111.101.78这个攻击者获取了更高的权限,并给蜜罐主机的445端口发送了PSEXESVC.EXE

  • 经查询,psexec是pstools工具包中的一个工具。是轻型的 telnet 替代工具,无需手动安装客户端软件即可执行其他系统上的进程,并且可以获得与控制台应用程序相当的完全交互性。PsExec 最强大的功能之一是在远程系统和远程支持工具(如 IpConfig)中启动交互式命令提示窗口,以便显示无法通过其他方式显示的有关远程系统的信息。

  • 所以看到这里攻击者已经对蜜罐主机进行了攻击,疑似是网络蠕虫,这里攻击成功了

TCP的4899端口

  • 4899端口是一个远程控制软件Radmin服务端监听的端口,由于其控制功能强、传输速度快、免杀效果好,经常被黑客利用

  • 可以看到在数据包中,有一个HTTP包使用了windows的cmd命令并使用了dir指令,这说明攻击成功了

TCP的80端口

  • 这个端口就非常容易看到攻击者对蜜罐主机进行了攻击,有许多异常的http包,攻击包括但不限于shellcode,缓冲区溢出(一长串CCCCCC....字符),页面跳转等等
    32889包

  • 其中最后一张图,看到第32889个包中有“c:\notworm”的字样,这是网络上流传的一种可能是恶意代码的文件夹路径名,程序也许是一个网络蠕虫

  • 说明这里攻击成功了

UDP的137端口

  • 可以看到许多的NBNS数据包,但是没有传输具体的数据和内容,并没有实施攻击

  • NBNS是NetBIOS Name Service的缩写,它在基于 NetBIOS 名称访问的网络上提供主机名和地址映射方法。

综上,我们可以看到下面这些端口攻击者成功攻击

TCP的80端口
TCP的445端口
TCP的4899端口

未能实现攻击的有

TCP的135端口
TCP的25端口
TCP的139端口
UDP的137端口

学习中遇到的问题及解决

  • 问题一:windows主机上没有strings命令

可以在官网进行下载,下载链接点这个

解压后就能使用

分析RaDa.exe的时候,使用strings命令一定要在所下载的文件的目录之下

PS: 后来发现kali里面自带的就有strings命令,就不用可以去在windows下载了,(kali真强大)

-问题二: IDA不兼容

我电脑安装老师提供的软件的时候,缺少好多功能,不太能兼容,后来只好自己去网上下载

下载链接点这

4. 实践总结

  • 经历了实验三veil安装和躲避360追杀两座大山的洗礼,这次实验真真切切过程上算是较为简单的了,但是这次实验重在分析,分析恶意代码的特征,分析数据流来往,分析程序函数结构等等,通过前几次的实验也加深了我对后门、病毒、蠕虫等一系列恶意代码特征的理解,提高了自己的安全防范意识

  • 此外就是学会了脱壳工具,PEID,IDA等等工具的使用,有了它们能够更加清楚地分析恶意代码的内部结构。同时最后分析wireshark数据包来逆向推理攻击者的手段,和刚学过的计算机网络课程中的知识相结合,进一步加深了我对于计算机网络交流的理解,也能更好的分析隐藏在大量数据包背后的攻击意向和特征

5. 参考资料

posted on 2024-11-02 14:59  云烟飘渺PM  阅读(47)  评论(0编辑  收藏  举报