我正在寻找允许我从中心位置阻止某些连接(基于目的地IP)的内容。
我基本上都在运行Security Onion,并且正在向eth1发送完整网络的副本。我想知道是否可能(可能是iptables)监视eth1,直到找到特定的DST IP并在该连接上执行tcp重置。据我所知,包dsniff(在debian中)有tcpkill,它应该可以执行此操作。
任何提示或指示赞赏!
谢谢!
答案 0 :(得分:0)
<强>摘要强>
“我的目标是让网络中的主机可以根据目的地中断其他主机的连接”
回答#1:MitM
好的,假设您有三台计算机连接如下:
A <--------------------------> B <--------------------> C
192.168.1.2 192.168.1.1 10.0.0.1 10.0.0.2
假设您通过安装Linux发行版并将sysconfig变量B
设置为ip_forward
,将1
转换为Linux路由器。然后,您告诉A
通过C
将流量路由到B
,反之亦然。如果您启用B
的防火墙,则可以实施“中断”A
和C
之间流量的防火墙规则。一个防火墙规则可以是“如果发往C
的数据包否认它”。
您基本上是在实施MitM。
您也可以使用Ettercap执行此操作,但这通常会更复杂。
回答#2:嗤之以鼻,
如果没有MitM职位,您必须依赖Sniffing和Spoofing。在下图中,B
将有两个连接,用于嗅探流量的Span端口和来自A
或C
的Spoof数据包的LAN连接。
B
^ ^
S| |
P| |
A| |
N| |
A<----->|Switch|<----->C
嗅探
Span端口正在向B
发送数据包。如果打开原始套接字,则最容易查看它们(请参阅更多信息here)。使用原始套接字自己过滤流量并为事件创建处理程序。
欺骗
我认为最简单的方法是实现原始套接字并制作自己的TCP RST消息,设置正确的第3层和第2层信息,然后将其发送出局域网连接。
我认为这些都可以用Scapy完成,但我只用spoofing。