在ubuntu上用qemu虚拟机,复现dir815漏洞,参考的看雪的博主的文章,流程很详细,前面的配置运行都成功了,但到最后一步监听反弹shell怎么都弹不出来,求解答。

在ubuntu上用qemu虚拟机,复现dir815漏洞,参考的看雪的博主的文章,流程很详细,前面的配置运行都成功了,但到最后一步监听反弹shell怎么都弹不出来,求解答。

引自免费微信小程序:皆我百晓生
从你提供的信息来看,你在尝试利用DIR-815路由器的漏洞进行远程调试,并尝试通过nc(netcat)工具监听特定端口以接收反弹shell,但是没有成功。这里有几个可能的问题点和解决步骤:
确保你nc监听的端口与GDBserver配置的端口一致。从你的描述中,GDBserver似乎是在6666端口监听,而你在nc命令中同时监听了9999和6666端口。如果目标是接收来自GDBserver的连接,那么你应该仅需监听6666端口。
nc -lvnp 6666
确认虚拟机(debian-mipsel)与宿主机(ubuntu20)之间的网络配置是否允许通信。你需要确保虚拟机能访问到宿主机监听的IP地址(默认情况下应该是宿主机的IP地址,除非你有特殊设置)。可以使用ping命令测试连通性。
确保GDBserver正确配置为监听并接受远程连接。通常,你需要指定--multi选项来允许多个客户端连接,并且可能需要设置--once来让GDBserver在处理完一个连接后退出,以便于下一次连接。
如果你有权限修改GDBserver的启动脚本(gdbser_inmq.sh),确保它类似这样启动GDBserver:
/path/to/gdbserver --multi --once :6666 /htdocs/cgi-bin
确保宿主机和虚拟机上的防火墙没有阻止6666端口的进出流量。在Ubuntu上,可以使用sudo ufw allow 6666/tcp来开放端口。
查看GDBserver和nc的输出,以及系统日志,寻找任何可能的错误信息或警告,这可能是导致连接失败的关键线索。
再次检查漏洞利用条件是否完全满足,包括但不限于路由器固件版本、漏洞触发的具体HTTP请求、以及任何必要的环境配置等。
尝试上述步骤后,如果仍然无法成功获取shell,请提供更多详细日志或描述进一步的问题现象,以便提供更精确的帮助。