假设公共Internet上的服务器的IP为185.48.117.176其中/proc/sys/net/ipv4/ip_forward=1且没有iptable-rules。
什么防止攻击者是
连接到互联网从我的服务器作为她的路由器?
(我知道,没有适当的伪装设置它的无用,因为这些回收不会被路由回来,但是它仍然可以被用于UDP泛滥攻击,其中不应该有响应包。
我试图添加一个路由(在我的客户端/攻击者机器上)
route add 0.0.0.0 gw 185.48.117.176
在我添加了“假接口ip”
ip address add dev wlan0 scope link 185.48.117.176
防止SIOCADDRT: Network is unreachable错误消息。 然后,我删除了“假接口IP”,所以路线停留。
但是,我仍然无法使用服务器作为路由,因为没有包到达那里(我试图捕获ICMP包使用tcpdump)。
在docker问题上的这篇文章中 ,似乎与networking是否支持第2层交换有关。
为什么是这样? 我错过了什么?
来自@MarkoPolo(评论) :
您的设备将发送ARP请求(广播),尝试获取与185.48.117.176关联的第2层MAC地址。 因为没有接口物理连接到185.48.117.176,所以不会有ARP回复
为了达到目标( 185.48.117.176 ),你需要将包裹发送到一个物理连接到185.48.117.176的设备上。
例如,你可以用你的路由器伪造一个MAC地址来构build一个以太网包2. indirectly (through another router)地回答案例2. indirectly (through another router) ),并且它会把包裹放到公网上,这是可以的,路由工作。
你试图达到/注入一个包什么网?
所以只有在物理上连接到与私有networking物理连接的路由器时,才能尝试将包注入到私有networking中。
而身体上的连接毫无疑问,那么你当然需要适当的过滤。
编辑:
记住:
如果攻击者是来自ISP的ISP /控制设备,连接到路由器/数据中心,则可以将软件包接入您的networking。 如果您启用了NAT,则可以与私有networking中的设备进行通信。
如果这是你记住要设置适当的过滤的情况。
数据包不能同时被寻址到该机器和受害者。 如果发给受害者,它不会去那台机器。 如果发往那台机器,它将不会被转发,因为它已经到达目的地。
严格来说,一个数据包可以被发送到一个机器,然后到一个目的地 – 这就是所谓的源路由 。 但是,除非机器configuration错误,否则这样的要求是不被接受的。