远程控制程序基础
- 远程控制程序:被控端 + 主控端
- 远程控制软件分类:
按连接方式分:正向、反向(注意:现在大都采用反向远程控制方式)
按目标系统分:Windows、Androd、iOS、各种版本的Linux操作系统。
为什么6200端口变成了一个“后门”
Netcat工具的使用:(以Metasploitable 2的80端口为例进行测试)
(1)使用Netcat扫描某IP地址的指定端口
nc -v 192.168.17.128 80
端口状态为:open
whoami用于显示用户的名称
(2)使用Netcat连接指定IP地址的指定端口
扫描80端口状态:open为开放的状态
nc -v 192.168.17.128 80
使用Netcat连接指定IP地址的指定端口
nc 192.168.17.128 80
- 激活笑脸漏洞,使其开启6200端口:
编写python脚本(文件名:backdoor.py):
Vim backdoor.py
执行并验证:运行脚本
python3.9 backdoor.py
2. 显示指定目录下的内容
使用Netcat连接目标的6200端口:
nc 192.168.17.128 6200
3. 尝试其它测试命令
ls查看
如何使用MSFPC生成被控端并进行远程控制
在Kali 2中生成被控端的工具:MSFPC(msfvenom的优化版)
生成windows系统下的被控端并进行远程控制
测试windows系统实验使用的网络环境,填写以下IP地址:
测试用windows系统(WinXPenSP)的IP: 192.168.17.129
测试用windows 7系统(32位Windows7)的IP: 192.168.17.131
虚拟机Kali Linux 2的IP: 192.168.17.130
- 步骤一:生成Windows操作系统下的被控端
- 步骤二:把被控端放到kali的网站主目录下,启动apache2,到目标靶机(WinXPenSP3)下载被控端并运行。
1.把被控端放到kali的网站主目录下
2.启动apache2
systemctl start apache2
检查apache2服务是否启动
systemctl status apache2
3、到目标靶机(WinXPenSP3)下载被控端并运行
(1)给被控端改一个好记的名字。
(2)在目标靶机下载被控端
(3)运行被控端
运行被控端成功,如果不成功就要关闭443端口
-
步骤三:在kali中运行主控端
配置对应的主控端
-
步骤四:控制目标靶机一(WinXPenSP3)
1、 查看会话,并选择会话。
2、 列出当前目录下的所有文件等。
3、打开cmd执行各种命令,如查看文件夹内容、操作系统信息、关机。
Shell
设置1000毫秒后关机,并弹出提示信息“hello!”。
shutdown -s -t 1000 -c "hello!"
主控端弹出弹窗
4、退出shell
- 步骤五:类似上述操作,控制目标靶机二(32位Windows7)
1、 在kali中使用background命令回到主控端控制台。
2、 到目标靶机(32位Windows7)下载被控端并运行
3、 在kali中是否自动打开?
4、查看并选择会话3,控制32位windows7。
5、打开cmd执行各种命令,如查看文件夹内容、操作系统信息、关机。
(1)输入shell
(2)查看操作系统信息
(3)延时关闭系统并显示提示信息
6、退出shell,关闭所有会话。
如果要结束会话1,使用什么命令?
sessions -k id
生成android系统下的被控端并进行远程控制
测试android系统实验使用的网络环境,填写以下IP地址:
测试用android系统的IP: 192.168.17.132
虚拟机Kali Linux 2的IP: 192.168.17.130
- 步骤一:生成android操作系统下的被控端
- 步骤二:把被控端放到kali的网站主目录下,启动apache2,到目标靶机(安卓虚拟机)下载被控端并运行。
1、把被控端放到kali的网站主目录
将被控端改名为:android
2、启动apache2
检查apache2服务是否启动?
如果没有启动,启动apache2.
3、到目标靶机(安卓虚拟机)下载被控端并运行
(1)在目标靶机(安卓虚拟机)下载被控端
(2)运行被控端
更改设置:允许安装来自未知来源的应用。
更改之后,再次运行被控端,并选择打开。
安装完成后打开 - 步骤三:在kali中运行主控端
配置对应的主控端(一定要用root身份运行)
安卓机运行被控端之前,如下图。
安卓机运行被控端之后,如下图。
- 步骤四:控制目标靶机(安卓虚拟机)
1、 查看会话,并选择会话
2、输入shell,执行各种命令,如查看操作系统信息、切换到root用户等。
查看当前用户帐号。
查看操作系统信息。
切换到root用户。
(1)在安卓虚拟机中弹出提示信息,选择“拒绝”。
在kali中可以看到操作结果是什么?
结果
(2)在安卓虚拟机中弹出提示信息,选择“允许”。
在kali中可以看到操作结果是什么?
在kali中输入whoami,显示当前用户。
切换为root用户之后,可以对安卓机进行最大权限的控制,比如关闭selinux、读取文件等。
I:当前安卓机的selinux状态:许可
II:尝试在Download目录下载一个windows的被控端。
切换到Download目录,查看当前目录的所有文件:
下载windows的被控端win.exe和txt文件haha.txt:
III:删除Download目录中的所有文件
2、 退出