20232801 2023-2024-2 《网络攻防实践》实践八报告

20232801 2023-2024-2 《网络攻防实践》实践八报告

1.实践内容

1.动手实践任务:
对提供的rada恶意代码样本,进行文件类型识别,脱壳与字符串提取,以获得rada恶意代码的编写作者.
2.动手实践任务二:分析Crackme程序
在WinXP Attacker虚拟机中使用IDA Pro静态或动态分析crackme1.exe和crackme2.exe,寻找特定的输入,使其能够输出成功信息。
3.分析实践任务一:(回答问题在下文中)
分析一个自制恶意代码样本rada,并撰写报告
4.分析实践任务二:(回答问题在下文中)
分析的数据源是用Snort工具收集的蜜罐主机5天的网络数据源,并通过编辑去除了一些不相关的流量并将其组合到了单独的一个二进制网络日志文件中,同时IP地址和其他特定敏感信息都已经被混淆以隐藏蜜罐主机的实际身份和位置。

2.实践过程

1. 动手实践一

(1)使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具;
打开WinXPattacker,将学习通上的Rada.exe下载传入虚拟机,进入文件所在位置使用
file rada.exe 查看文件信息。
看到它是一个32位Windows的可执行文件,由该表改文件的GUL图形界面
在这里插入图片描述
打开PEiD工具,可以看到文件的入口点为0000FD20、文件偏移为00004120、EP段为JDR1,加壳类型为UPX壳
在这里插入图片描述
在终端输入strings RaDa.exe中看到打印字符串,均是乱码。
在这里插入图片描述

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

使用超级巡警脱壳机工具对rada.exe进行脱壳处理,看到“脱壳成功”的字样后,会发现在当前目录下生成了rada_unpacked.exe文件:在这里插入图片描述
再在终端中输入strings RaDa_unpacked.exe,发现有大量函数调用名
在这里插入图片描述
使用IDA工具打开rada_unpacked.exe,在在string界面中选择Unicode编码
在这里插入图片描述
3)使用字符串提取工具,对脱壳后的rada恶意代码样本进行分析,从中发现rada恶意代码的编写作者是谁?
进行查找:找到Authors:Raul Siles & David Perez,2004,此处信息即编写作者
在这里插入图片描述

2. 动手实践任务二

在学习通中下载file crackme1.exe和file crackme2.exe
执行file crackme1.exe
file crackme2.exe 查看文件信息,但是这样这两个没有图形界面在这里插入图片描述

使用IDA pro Free工具打开crackme1.exe进行分析,发现两个字符串“I know the secret”和“You know how to speak to programs, Mr.Reverse-Engineer”,因此我们猜测I know the secret是我们需要的口令,You know how to speak to programs, Mr.Reverse-Engineer是口输入令正确时的程序反馈信息
在这里插入图片描述
进入到IDA View界面里,在IDA上选择view—graphs—function calls。发现其中包含函数fprintf和printf ,与上述两句话直接相关,猜测sub_401280即为我们要找的核心函数
在这里插入图片描述
view—graphs中打开sub_401280函数的流程图。判断:判断输入的参数个数是否为2,若参数个数不为2时输出I think you are missing something,若参数个数为2则会将第二个输入与I know the secret作比较,正确则输出You know how to programs
在这里插入图片描述
在终端测试验证猜想:crackme1.exe “I know the secret得到反馈信息。猜想正确
在这里插入图片描述
Crackme2
与上述一样进行分析
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在终端输入
copy crackme2.exe crackmeplease.exe crackmeplease.exe “I know secret” 得到结果We have a little secret:Chocolate
在这里插入图片描述

3. 分析实践任务一

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

输入命令md5sum Rada.exe,得到md5摘要为“caaa6985a43225a0b3add54f44a0d4c7”

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

该文件下载后门到目标主机,发动DOS攻击,与10.10.10.10主机进行了通信,并查询了Mac地址

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

能添加注册列表、移动文件位置至C盘,并与10.10.10.10建立相关连接,接收相关指令并执行相关指令。

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

采用了UPX 0.89.6 - 1.02 / 1.05 - 2.90 -> Markus & Laszlo的加壳方式,直接被一键脱壳。

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

应该是后门或者僵尸程序,因为它不能自主传播不是病毒或者蠕虫,没有附加在邮件上,也不是木马。利用程序远程接受执行命令。

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

Raul siles、木马Bobax、特洛伊木马Setiri、GatSla

分析:
输入:md5sum Rada.exe,得到md5摘要为“caaa6985a43225a0b3add54f44a0d4c7”
在这里插入图片描述
文件下载后门到目标主机,发动DOS攻击,与10.10.10.10主机进行了通信,并查询了Mac地址。
在这里插入图片描述
查询了数据库相关信息、对应Mac地址等等
在这里插入图片描述
在c盘C:\RaDa\tmp目录下创建用于保存下载文件的文件夹,恶意软件还修改了注册表
在这里插入图片描述
作者相关信息:
在这里插入图片描述

4. 分析实践任务二

  1. 分析日志文件并回答以下给出的问题:
    (1)IRC是什么?当IRC客户端申请加入一个IRC网络时将发送哪个消息? IRC-般 使用哪些TCP端口?
IRC是Internet Relay Chat 的英文缩写,中文一般称为互联网中继聊天
申请加入的时候要发送口令、昵称和用户信息:USER 、PASS 、NICK ;对于曾经注册过的靶机,直接通过JOIN指令加入对应的频道,指令如下JOIN
IRC通常使用6660 - 6669端口进行监听。6667是明文端口,此外额外占用一个端口6697进行SSL加密传输

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

僵尸网络是指采用一种或多种传播手段,将大量主机感染bot程序(僵尸程序)病毒,从而在控制者和被感染主机之间所形成的一个可一对多控制的网络。
用于发动分布式拒绝服务攻击(DDoS)、发送垃圾邮件、窃取隐私信息、刷点击量等

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

209.126.161.29
66.33.65.58
63.241.174.144
217.199.175.10
206.196.44.172

使用kali来完成此实验:wireshark打开botnet_pcap_file.dat
设置过滤条件为:ip.addr == 172.16.134.191&&tcp.port == 6667 ,可以得到IRC服务器地址。

在这里插入图片描述

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

共3461台主机访问了僵尸网络

分析:
首先我们先获取209.196.44.172与172.016.134.191之间的所有的IRC数据包,使用命令:tcpflow -r botnet_pcap_file.dat "host 209.196.44.172 and port 6667"产生了左边三个文件:
在这里插入图片描述
打开report.xml文件。包括上述双方的ip地址,端口,mac地址,通信时间。
在这里插入图片描述
使用命令:`在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 发现共3461
在这里插入图片描述

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

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

在这里插入图片描述

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

TCP:135、139、25、445、4899、80  UDP:137

使用tcpdump筛选TCP和UDP端口
筛选tcp:tcpdump -r 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
在这里插入图片描述
筛选UDPtcpdump -r botnet_pcap_file.dat -nn 'src host 172.16.134.191' and udp | cut -d ' ' -f 3 | cut -d '.' -f 5 | sort | uniq
在这里插入图片描述
得到端口后,使用wireshark的analayse的协议分级功能,可以查看嗅探得到数据包的协议分级,如下图所示,下一步排查的重点协议为
TCP:IRC、HTTP(80)、NETBIOS session(SMB)(139);UDP:NETBIOS(137)、RPC(1434)
使用wireshark依次过滤筛选以上重点端口进行分析
(1)TCP端口80,过滤条件:ip.dst==172.16.134.191 && tcp.dstport==80 && http 这是一个红色代码蠕虫攻击,因为有dafault.ida为标识的code red
在这里插入图片描述
(2)TCP端口445,过滤条件 ip.dst==172.16.134.191 && tcp.dstport==445
在这里插入图片描述
(3)TCP端口139,过滤条件ip.dst==172.16.134.191 && tcp.dstport==139
若干个个不同的IP访问了这个端口,但攻击都未成功
在这里插入图片描述
(4)UDP端口1434,过滤条件ip.dst==172.16.134.191 && udp.dstport==1434:
SQL Slammer的蠕虫病毒
在这里插入图片描述
(7)哪些攻击成功了?是如何成功的?
针对TCP445端口的PSEXESVC攻击-(IP:61.111.101.78)是成功的

3.学习中遇到的问题及解决

问题1:在外部下载RADA.exe文件后,放入不了winxp

  • 问题1解决方案:发现我的防火墙将其自动查杀了,在老师的帮助下,恢复文件

4.实践总结

学习了如何一步步分析攻击内容,判断其是什么样的攻击类型。进一步提升自己的防护意识。

参考资料

参考上届同学的方法进行分析- …

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/582964.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 每日一题 ---- 【1017.负二进制转换】

LeetCode 每日一题 ---- 【1017.负二进制转换】 1017.负二进制转换方法一:模拟进制转换推广:任意进制转换 1017.负二进制转换 方法一:模拟进制转换 我们平常做进制转换最常用的方法就是辗转相除法,下面的图示分别给出了普通的10…

pmp培训哪家好?高通过率的靠谱机构如何选择

PMP培训机构的选择本来就是一个需要有挑选的人才能顺利进行,所以如果你正好是PMP小白的话一定要抓紧补充一下自己在挑选机构方面的知识,理清自己的需求才能进行多维度的挑选,最后才能选择一个比较合适的机构。已经换证一次的老鸟路过&#xf…

Linux网络开发基础知识

一个网络服务器的简单实现 项目需求 实现回声服务器的客户端/服务器程序&#xff0c;客户端通过网络连接到服务器&#xff0c;并发送任意一串英文信息&#xff0c;服务器端接收信息后&#xff0c; 将每个字符转换为大写并回送给客户端显示。 eoch_client.c #include <arpa/i…

利用RunnerGo数据大屏强化测试管理与决策

测试平台中的数据大屏在提供实时监控、统计分析、效率提升、制定策略和促进沟通等方面具有重要的意义。它为测试团队提供更全面、更直观的数据支持&#xff0c;有助于提高测试质量和效率&#xff0c;减少风险&#xff0c;并加强团队协作和沟通。 数据大屏也是RunnerGo的核心特…

软考高级 | 系统架构设计师笔记(二)

三. 软件架构设计 3.1 概述 a 定义 软件或计算机系统的软件架构是该系统的一个&#xff08; 或多个&#xff09; 结构&#xff0c; 而结构由软件元素、 元 素的外部可见属性及它们之间的关系组成。 软件系统架构是关于软件系统的 结构、 行为和属性 的高级抽象。 指定…

【车辆管理】车辆位置监控管理方案

车辆位置监控管理方案 位置管理模块&#xff0c;实现管理车辆基于位置的管理功能。包括实时位置追踪、历史轨迹回放、电子围栏配置等功能。模块关键功能如下&#xff1a; 1、实时位置调度 应用公网的无线传输作为数据传输的载体&#xff0c;真正地实现对车辆位置的全天候实时…

OLED(SSD1306+I2C协议显示屏模块)

工具 1.Proteus 8 仿真器 2.keil 5 编辑器 原理图 讲解 简介 OLED&#xff08;Organic Light-Emitting Diode&#xff09;显示屏&#xff0c;即有机发光二极管显示屏&#xff0c;是一种新型显示技术。它的工作原理是通过电流驱动有机材料发光&#xff0c;无需背光灯&#x…

MyBatis 插件介绍及应用

MyBatis 插件介绍及应用 MyBatis 是一个持久层框架&#xff0c;它允许开发者自定义 SQL 语句并将其映射到 Java 对象中。MyBatis 提供了一种灵活的数据库操作方式&#xff0c;但随着项目的复杂度增加&#xff0c;一些通用功能如分页、缓存、事务管理等可能需要重复编写。为了解…

【网络原理】IP协议的地址管理和路由选择

系列文章目录 【网络通信基础】网络中的常见基本概念 【网络编程】网络编程中的基本概念及Java实现UDP、TCP客户端服务器程序&#xff08;万字博文&#xff09; 【网络原理】UDP协议的报文结构 及 校验和字段的错误检测机制&#xff08;CRC算法、MD5算法&#xff09; 【网络…

uniapp-vue3-wechat:基于uniapp+vue3仿微信app聊天实例(H5+小程序+App端)

uni-vue3-wchat&#xff1a;基于uni-appvue3pinia2高仿微信app聊天模板。 原创基于最新跨端技术uni-appvue3.xpinia2vite4uv-ui构建三端仿微信app界面聊天实例。实现编辑框多行消息/emoj混合、长按触摸式仿微信语音面板、图片/视频预览、红包/朋友圈等功能。支持编译到H5小程序…

unity3d使用3D WebView播放网页中的视频

Unity2021.3.35f1&#xff0c;硬件ESP32-Cam&#xff0c;3D WebView插件 1.新建工程&#xff0c;导入3D WebView for Winfows和3D WebView for Android 2.打开场景Assets\Vuplex\WebView\Demos\Scenes\2_CanvasWebViewDemo 3.修改Canvas的Render Mode为Screen Space-Camera&am…

Spark持久化、broadcast广播变量和accumulator累加器

持久化操作 什么是持久化&#xff0c;为什么要持久化 Spark中最重要的功能之一是跨操作在内存中持久化&#xff08;或缓存&#xff09;数据集。当您持久化RDD时&#xff0c;每个节点将其计算的任何分区存储在内存中&#xff0c;并在该数据集&#xff08;或从该数据集派生的数…

AI大模型日报#0429:人大多模态Awaker1.0、清华「AI+材料」落地、微软小模型Orca-Math、GenAI黄金法则

导读&#xff1a; 欢迎阅读《AI大模型日报》&#xff0c;内容基于Python爬虫和LLM自动生成。目前采用“文心一言”生成了今日要点以及每条资讯的摘要。AI大模型日报今日要点&#xff1a; 中山大学与重庆大学合作开发的基于Transformer的单细胞注释方法SANGO在跨样本、平台和组织…

平安城市 校园 景区 停车场网络语音对讲立柱SV-11TS

平安城市 校园 景区 停车场网络语音对讲立柱SV-11TS 长方形立柱式设计&#xff0c;外观简约&#xff0c;线条优美&#xff0c;工艺考究&#xff0c;坚固耐用可一键实现在紧急情况下求助报警、事件咨询&#xff0c;与SIP网络对讲主机进行全双工对讲。内置警示灯&#xff0c;呼叫…

接口自动化框架篇:使用python连接数据库 - PySQL介绍!

PySQL介绍&#xff1a;使用Python连接数据库的接口自动化框架 在接口自动化测试中&#xff0c;经常需要使用数据库来操作测试数据&#xff0c;验证接口返回的数据是否正确。Python是一种功能强大的编程语言&#xff0c;可以轻松地连接数据库&#xff0c;并进行各种数据库操作。…

保证接口幂等性(token机制)

现在继续讲一讲保证接口的幂等性——使用token机制&#xff0c;并编写代码实现&#xff01; 1. 概念 Token机制是实现接口幂等性的一种常见策略&#xff0c;尤其是在处理如订单创建、支付确认等敏感操作时&#xff0c;确保即使用户因网络延迟、误操作等原因重复提交请求&#…

【TDengine】mac m1解决no taos in java.library.path

前言 使用macos搭建springbootmybatisplus&#xff0c;通过mqtt将数据更新到tdenigne 3.2.3&#xff0c;数据源使用远程服务器的tdengine。 问题 启动时报错&#xff1a; Caused by: java.lang.UnsatisfiedLinkError: no taos in java.library.path 以下是官方文档 打开本…

动手学深度学习——矩阵

1. 基本概念 1.1 标量 标量由只有一个元素的张量表示。 所以标量计算与程度开发中的普通变量计算没有差异。 import torchx torch.tensor(3.0) y torch.tensor(2.0)x y, x * y, x / y, x**y(tensor(5.), tensor(6.), tensor(1.5000), tensor(9.))1.2 向量 向量泛化自标量…

Hbase学习笔记

Hbase是什么 HBase是一个高可靠、高性能、面向列、可伸缩的分布式存储系统。它利用Hadoop HDFS作为其文件存储系统,并提供实时的读写的数据库系统。HBase的设计思想来源于Google的BigTable论文,是Apache的Hadoop项目的子项目。它适合于存储大表数据,并可以达到实时级别。HB…

部署YUM仓库及NFS共享服务

YUN仓库服务 YUM概述 基于RPM包构建的软件更新机制 可以自动解决依赖关系 所有软件包由YUM集中的软件仓库提供 yum软件仓库的常用类型 本地源仓库&#xff1a;baserulfile:// 在线源仓库&#xff1a;baserulhttp:// 或 https:// ftp源仓库&#xff1a;baserulftp:// RPM…