1

挨拶、

今月から修士論文に取り掛かります。私の論文の主題は、ネットワーク セキュリティについてです。

ネットワーク インターフェイスとパケットを処理する必要があります。

以前に shappcap を使用してパケットを操作したことがありますが、C# がネットワーク プログラミングとパケットを処理するための最も強力な言語であるかどうかはわかりません。

私は Wireshark を少し使ってみましたが、それがいかに強力であるかを知りました。ご存じのとおり、winsharp は C++ を使用して開発されたオープン ソースです。

ネットワーク セキュリティ プログラミングに C# と C++ のどちらを使用すべきかわかりません。ネットワーク プログラミングとパケットのやり取りに最適な言語について教えてください。

C#、C++、Java、またはその他のものを使用する必要がありますか?

アドバイスをください。

ありがとうございました、

アップデート ..........................

各パケットを取得して各フィールドを読み取り、これらの値を使用してさまざまなパケットマイニングを行い、同じ段階でパケット値の一部を変更してから再送信します。

ネットワークインターフェイスで受信してからアプリケーション層に渡されるまでパケットを制御したい。

また

4

5 に答える 5

3

ほぼすべての言語を使用して、ネットワーク プログラミングを行うことができます。言及したすべての言語に同等に慣れている場合は、どのシステム ライブラリまたは API とやり取りするかを決定する必要があります。たとえば、Unix システムでパケット レベルのネットワーク プログラミングを行う場合は、おそらく C が最適です。Wireshark と統合する場合は、C++ を使用してください。Apache Commons コンポーネントを使用する場合は、Java を使用してください。使用する言語を決定する前に、実際のプログラムのより具体的な要件セットを考え出すことをお勧めします。

于 2010-05-03T05:30:27.037 に答える
3

WireShark は WinPCap を使用しているため、その方法も使用できます。

セキュリティ アプリケーションの場合、それは侵入検知システムですか、それとも問題のあるパケットを実際にドロップしたいですか? WinPCap、SharpPCap などでは、パケットをドロップすることはできません。これには、ある種の中間ドライバーを確認するか、Windows Filtering Platform (WFP)
http://www.microsoft.com/whdc/device/networkを確認する必要があります。 /WFP.mspx

IMHO、ユーザー モードにコールバックし、C# または C++ からのパケットをフィルタリングできるコールバック ドライバーを見つけることができれば、これはおそらく実験目的などには問題ありませんが、運用ソリューションの場合は、固執する必要があると思います。ピークボリュームに追いつくことができるように、カーネルレベルに。

于 2010-05-03T05:30:45.057 に答える
0

WinPcap を .NET コードでラップするPcap.Netという非常に強力なライブラリがあるため、C# を使用することをお勧めします。これにより、さまざまなプロトコルのさまざまなパケットを簡単に受信、送信、解釈できるようになります。

于 2010-05-04T20:31:41.343 に答える
0

C++、Boost、Poco を使えば、やりたいことができます。Boost asio は: ソケット、タイマー、ホスト名解決、ソケット iostream を含むポータブル ネットワークです。Poco ライブラリは、ネットワーク、暗号化 NetSSL などのソリューションも提供します。詳細については、www.boost.org および www.pocoproject.org をご覧ください。

于 2010-05-03T07:28:06.980 に答える
0

必要に応じて Java を使用できます - jpcap はうまく機能します。

于 2010-05-03T08:29:53.547 に答える