4

我目前正在为我的网络安全项目开发一个应用程序,其中涉及使用 C# 发起 smurf 攻击。Smurf 攻击包括你向任何服务器发送一个数据包(比如说 yahoo、google),但在你的目的地你放置任何受害者的 IP 地址(攻击者想要攻击的)。所以所有主机(yahoo、google)都发送响应受害者,如果发送大量请求,也会导致拒绝服务。现在问题是在 C# 中实现它,因为 C# 不允许你更改数据包头,如果我使用 TcpClient 类我只能给主机的 IP + 端口进行连接,但我无法更改数据包头中的任何内容(它会自动将您的 ip 放在数据包的目的地),我只想知道有什么方法可以访问和改变数据包头,?

在这种情况下,有没有可以帮助我的图书馆?

4

2 回答 2

2

Pcap.Net 库允许通过SendPacket(). 第二个链接中的示例向您展示了如何构造和发送 ICMP Echo 数据包。

于 2011-02-26T16:41:51.177 回答
1

由于 DOS 攻击无辜受害者的可能性,较新版本的 Windows 似乎不支持原始套接字:http: //msdn.microsoft.com/en-us/library/ms740548 (VS.85).aspx

如果操作系统允许,您应该能够使用来自 C# 的原始套接字来执行此操作,而无需任何外部库(当然,您必须手动制作 IP 标头)。

例如看这里:http ://bytes.com/topic/c-sharp/answers/249594-c-raw-sockets

于 2011-02-26T16:39:52.227 回答