2006-11-13
AltSci Concepts

Computer Journal

Computer Journal
back
BitTorrent Protocol Attack
by Joel R. Voss aka. Javantea
jvoss@altsci.com
jvoss@myuw.net
Feb 23-26, 2005

BitTorrent Attack 0.3 Source [sig]
BitTorrent Attack 0.2 Source [sig]

DESCRIPTION

Official BitTorrent Protocol
Official BitTorrent Client
Netmap2 Page

The BitTorrent Attack is a small project to see what we can do with the BitTorrent protocol without sending or receiving legitimate data. It is part of Netmap2 (aka. Protocols and Services Project).

The only part of the BitTorrent source that I use is bencode.py, which is licensed under the BitTorrent Open Source License. I hope to fully comply with this license.

The Honeypot attack opens a torrent file, sends data to the tracker, gets data from the tracker, outputs the data to the console, then does a handshake with each peer that the tracker tells us about. It closes the connection immediately afterward. In the future, it will give bad data. Then it opens port 6881 and waits for peers to connect. When a peer connects, it will handshake, dump the info to the console, and then close the connection. In the future, it will receive and send data.

The Protocol attack opens a torrent file, connects to a peer, sends a handshake, receives a handshake, prints the handshake, and then closes the connection.

REQUIREMENTS

The BitTorrent Attack requires Python. Optionally threading support for Python, urllib, and urllib2 are used.

METHODS

More detailed information coming soon.
Until then, look at the source code.

BitTorrent Honeypot Attack
BE VERY CAREFUL running this, it will attack a BitTorrent network. The Honeypot attack is quite easy for BitTorrent.
We setup with the tracker so that peers come to us for the file.
We get a list of peers from the tracker so we can blast them.
We handshake with the peer and we dump their data to the database.
TODO: All the stuff after the handshake.
TODO: We should be able to send false data if we want to.
TODO: We can try to slow the peers down.



BitTorrent Protocol Attack
The problem with attacking BitTorrent for a banner is that you don't know what torrent they are seeding/downloading. If you knew that, it would be complete.
BitTorrent is smart to not give this information out to unknown peers. The handshake is symmetrical, but do bittorrent peers that are connected to recv() first or send() first? I bet they recv() first as a security measure. If the person gives an incorrect info_hash, they disconnect.

btproto1.py works extremely well with bthoney1.py as a full attack vector.

TODO: All the stuff after the handshake.



USAGE
python btproto1.py [-c] file
Dump information about file:
btproto1.py file
Start the attack client against 127.0.0.1:6881 for file:
btproto1.py -c file
Start the attack server/client against all targets for file:
bthoney1.py file

More detailed information coming soon.

Mod level: -1 0 1 2 3 4 5

Comments:

Modded: 0
bFwkTmwmCHiTgbxZ
by vsmpRCzUpZDs on 05/09/11
Kudos! What a neat way of thnkiing about it.
Modded: 0
NJykZBvroRWEZZf
by ZexLpGhPlgBuhZVdQ on 05/10/11
THX that's a great awnser!
Modded: 0
zSGZcXCrrCdqBKAh
by udwzQCohVntX on 05/10/11
You’re a real deep tihnker. Thanks for sharing.
Modded: 0
QAGnLMHhTVrU
by ryfdelWeYhhcTpE on 05/10/11
I feel so much happier now I understand all this. Tahnks!
Modded: 0
SAvyPlIDmnWWw
by suetRDGtsAtL on 05/11/11
That saves me. Thanks for being so sensblie!
Modded: 0
TbVUOeOrGFYYi
by BanGMFPPQkmvzTK on 05/11/11
Fell out of bed feeilng down. This has brightened my day!
Modded: 0
mdlHUJGIEXVkF
by tgLPsHasnsl on 05/11/11
That’s not just logic. That’s really sesnbile.
Modded: 0
fQWVxrHMVynuafb
by LgvHpssbcwfGtQ on 05/11/11
Thanks alot - your answer solved all my problems after several days srtgugling
Modded: 0
sBZJCDZYnuRyDHPDvcR
by gNMZwvSupc on 01/03/12
Times are channigg for the better if I can get this online!
Modded: 0
NoqFksdBGo
by ilJoHmsqYFreoI on 01/03/12
Dag naibbt good stuff you whippersnappers!
Modded: 0
gvaecnQixHsd
by rhThjsMhgEgDPzqhEl on 01/03/12
This aitcrle keeps it real, no doubt.
Modded: 0
IdynDDTuvftOIMoWtoe
by cDmHIogjXUVsFgG on 01/04/12
A mutine saved is a minute earned, and this saved hours!
Modded: 0
QYxdCWrnyuInhf
by LlFpPhDWQUsaOdOw on 01/04/12
You have more useful info than the Briisth had colonies pre-WWII.
Modded: 0
JtxcIZnUdSYrSO
by npJLujEsMwbbRSGvQ on 12/18/12
I have a agreed bugdet I give for music. This hasn't been different before or after I started downloading music. Now and again I take risks on new stuff, now and again I buy things I've already downloaded and liked.What has changed is that, now, I know if I like it before I buy it. They can't ploy me into export crap as often, and I'm no longer hesitant to find out a new artist. And that's the point. The music indst. isn't loosing money in all-purpose; the huge boys are loosing it to the small artists
Modded: 0
UUfIahznBi
by CbGkhaQpks on 12/21/12
They charge ftlatsaicanly unreasonable prices, for the most part, and that makes me not really care. A CD that cost, what, a dollar between manufacture and shipping, and artist costs divided between all the CD's I don't know another dollar, and they want to charge me twenty dollars for that CD? Ha. I haven't done any music downloading in oh, ten years but when I do want to hear a song I look for it on youtube or google, if it's not there, I don't listen to it, no huge deal.
Post a comment
Your Name: Login

Subject:

Comment:

RSS Feed
Home | Login | Others