2011-02-26 47 views
4

我目前正在爲我的網絡安全項目開發一個應用程序,該項目涉及使用C#啓動smurf攻擊。 Smurf攻擊包括你發送一個數據包給任何服務器(比如說雅虎,谷歌),但是在你的目的地你將任何受害者的IP地址(攻擊者想要攻擊的地址),所有主機(雅虎,谷歌)發送響應受害者,如果發送了大量的請求,那麼它也可能導致拒絕服務。現在問題是在C#中實現它,因爲C#不允許你更改數據包頭,如果我使用TcpClient類只能給主機的IP +端口連接,但我不能更改數據包標頭中的任何內容(它會自動將您的IP地址放在數據包的目的地),我只想知道有什麼方法我可以訪問 並更改包頭,?使用C#進行smurf攻擊#

有沒有什麼庫可以幫我在這方面?

+0

如果**你想問如何構建一個邪惡的網絡攻擊,並聲稱它是「爲了學校」,**你**可能想要使用適當的語言*在學校*。 – Tergiver 2011-02-26 20:42:47

+0

可以分享你的smurf攻擊c#項目?我需要一個大學項目。 – NET3 2013-06-30 16:00:45

回答

2

The Pcap.Net library允許您通過construct your own packetsSendPacket()。第二個鏈接中的示例顯示瞭如何構建和發送ICMP Echo數據包。

+0

感謝您的回覆Ori! 我已經探索過Pcap.NEt,它對我的​​項目非常有幫助.... :) – uyaseen 2011-02-26 19:32:20

+0

很高興爲您提供幫助。請確保您編寫的任何代碼都用於審計而不是傷害人員。祝你的項目好運。 – Ori 2011-02-28 23:49:56

+0

謝謝Ori,我只是做這個項目作爲研究的一部分;實際上這是我的課程網絡安全項目..我不會傷害任何人......別擔心...... :) – uyaseen 2011-03-03 15:45:12

1

這似乎是原始套接字不被新版本的Windows由於DOS'ing無辜受害者的潛在支持:http://msdn.microsoft.com/en-us/library/ms740548(VS.85).aspx

如果操作系統允許的話,你應該能夠使用原始套接字從C#做所以沒有任何外部庫(當然,你將不得不手動製作IP頭)。

例如請參閱:http://bytes.com/topic/c-sharp/answers/249594-c-raw-sockets

+0

如何翻譯「只有管理員組的成員才能在Windows 2000和更高版本上創建類型爲SOCK_RAW的套接字」。變成「不支持」? – 2011-02-26 16:54:41

+0

我一直指的是以「在Windows 7,Windows Vista,帶有Service Pack 2(SP2)的Windows XP和帶有Service Pack 3(SP3)的Windows XP」開頭的段落,能夠通過原始套接字發送流量限制在幾個方面「。 – 2011-02-26 16:57:27