The source code to BTCrack under the GPL v3 License, this was an exlusive release for Backtrack 3.0 at the time.



Authors : Eric Sesterhen & Thierry Zoller


UPDATE: 06.06.2012 - Version 1.01 released

About
This is a straight forward linux port of Thierry Zollers' BTCrack. Should work with most other unixes too, code is nearly ansi clean, except for strdup(), but I guess every OS should have this by now.

Compiling was tested so far with :
  • gcc version 4.1.1 (Gentoo 4.1.1-r3) on i686-pc-linux-gnu
  • gcc version 4.3.0-alpha20061216 on i586-pc-linux-gnu
  • gcc version 3.3.6 on i586-pc-linux-gnu
  • gcc version 3.4.6 on i586-pc-linux-gnu
  • gcc version 2.95.4 20011002 (Debian prerelease) on i686-pc-linux-gnu
  • gcc version 4.0.3 on sparc-sun-solaris2.8
  • icc Version 9.1 Build 20060706Z on i686-pc-linux-gnu
  • Sun WorkShop 6 update 2 C 5.3 Patch 111679-11 2003/04/02

Test it with the provided csv file: ./btcrack 1 00:11:9F:C4:F3:AE 00:60:57:1A:6B:F1 ./Pin_654321.csv

Shawn Merdinger sent me this screenshot entitled "btcrack_pr0n" : Sonicwall seems to think that Btcrack cracks something else then Bluetooth ? (Most probably though the positive signature is due to the FLV downloading site)

Introduction

BTCrack is the worlds first Bluetooth Pass phrase (PIN) bruteforce tool, BTCrack will bruteforce the Passkey and the Link key from captured pairing* exchanges.

To capture the pairing data it is necessary to have a Professional Bluetooth Analyzer : FTE (BPA 100, BPA 105, others), Merlin OR to know how to flash a CSR based consumer USB dongle with special firmware.

Example of an Attack scenario :
  • Attacker reconstructs BD_ADDR of both Master and Slave through passive (reconstructing through a preamble sniff, even when the device is in hidden mode) or active means (redfang)
  • Attacker changes his BD_ADDR to the one of the Slave device
  • Attacker asks to pair with the Master indicating it has no key, the Master will more then often trash the old pairing data and request a new link key from the genuine slave
  • Attacker now captures the key (pairing) exchange taking place between the two devices as the users try to re-establish a connection
  • Attacker exports data to CSV format and imports into BTCrack
  • Attacker can now compromise Master and Slave Bluetooth device through usage of the cracked Linkkey and is able to decrypt the data transmitted between the bluetooth devices

Why the PIN is not as important as the LINKKEY
  • An Attacker will focus on recovering the Linkkey and not the PIN, here's why :
  • The Link-key allows remote connections without the victim noticing
  • The Link-key allows and attacker to connect to devices in non-pairing mode and non discoverable mode
  • The Link-key allows decryption of the data
History :
  • Olly Whitehouse - 2003 -Presented theoretic weaknesses in the implementation of the Pairing exchange 
  • Shaked and Wool - 2005 - Present their logic to break pairing exchanges and implement it in Private
  • Thierry Zoller - 2006 First implmentation and public release of the Shaked and Wool logic, breaking the encryption and recovering the LINKKEY. 
  • Thierry Zoller / David Hulton  - 2007 - Worlds first FPGA based Implementation of the

Screenshots :



Speed Comparison :
  • P4 2Ghz - Dual Core 200.000 keys/sec
  • FPGA E12 @ 50Mhz 7.600.000 keys/sec
  • FPGA E12 @ 75Mhz 10.000.000 keys/sec
  • FPGA E14 30.000.000 keys/sec
Known issues :
[+] Frontline 6.0 mixes Master & Slave Addresses

Changes :
1.0 First release
1.1 Intermediate Release
  • E12 + E14 FPGA Support ( http://www.picocomputing.com)
  • Speed increase (+15%)
Downloads :






Heisec 2007 Scheunentor Bluetooth Zoller

Hmm, I see a very clear trend of marketing entering the security process, sorry let me rephrase that, it's not a trend - it's there.

There is a clear indication that vulnerability counts have to be kept low as possible - especially in competitive markets like AV and browsers
.

The movements go as far as denying DoS to be a security issue, the reason given : there are so many of them - I am not kidding.

What the hell ? Denial of Service is a vulnerability per se. There is simply no discussion about it, it's the A in C.I.A. What you should measure is the Impact. If the vendor assess the the impact as being very low for their customers I have nothing against being told so and I simply make it clear in the advisory, however trying to tell me that remotely affecting the availability of an application does not affect security - is a joke.

The impact is what should be measured by vendors, make it very clear to your customers what the impact is, so your customers can make a concise risk decision on whether to patch or not, whether to mitigate or not.

The problem is, it doesn't look very good in vulnerability statistics, more and more products are regularly compared to how they perform on the "how many advisories for each product" and vendors are actively trying to keep that number as low as possible - responsibility ? my buttock.

From the 800 vulnerability notifications I send in the last 2 years, 3 (!) were published by vendors voluntarily, you would think that if they care about the security of their clients they would even if it's just due diligence advise their clients of security problems that were fixed - no, nada, niente. Out of those 3 advisories, one vendor choose to centralise 8 distinctive vulnerabilities into one advisory. The effect? In the vulnerability statistics you see on-line it will look as ONE bug. nice, responsible and fair. dream on.

Under the umbrella of responsible disclosure "we" security researches are playing the ball game. If you didn't know yet, instead of fighting with vendors over stupid bugs, lots of them sell the vulnerabilities, not only don't they have to deal with lengthy frustrating e-mails trying to help the vendor (for free), they even get paid to have found the problem.

The downside is that this is less responsible since you are telling a third party particular interesting information. (That mostly all sell it to interesting three letter agencies behind the back, while customers are waiting months to years for a patch).

The fact is that the most prominent and dominant security researchers have been bought, they either get regular contracts at those companies or directly work in their offices - vulns are silently handed over - payback time is another project, not officially of course. Manus manum lavat. Responsibility ? My buttock.

Here is an example of the Denial of Service is not a security vulnerability paradigm, the company in question will not be named yet (wait for the advisory) :

1. Report a remote DoS condition in Product X to Comp. Inc.

  • Comp. Inc. answers that DoS is not not a security issue, that there will be no credit nor an advisory, they bascialy don't care.
    2. Report a second remote DoS condition in Product Y to Comp. Inc
  • Comp. Inc. answers that DoS is not not a security issue, that there will be no credit nor an advisory, they bascialy don't care.
    3. Report a remote DoS condition in a Product where the market is more competitive to Comp. inc (NB same company)
  • Hell brakes loose, please Thierry, I dare you, be responsible, this is very serious to us

    Now what is it for Comp. Inc. ? Has Denial of Service now been spontanously been promoted to very important ? Or is it just that this makes them look bad in face of the competition. My answer to that company, was that they have to make a choice, either DoS is a security problem or it's not, I will respond accordingly and publish.

    Some backround :
    1 - Been reporting a (simple) browser bug - resulting in various DoS conditions
    2 - I have been met with some of the most astounding reactions I have ever had
  • James K. William (the original Packetstorm founder - for those who remember) just sent me a note that Computer Associates published the vulnerabiltities I reported while @nruns :

    ---
    Hey Thierry,
    FYI, our security notice was just published.

    "CA20090126-01: Security Notice for CA Anti-Virus Engine"
    https://support.ca.com/irj/portal/anonymous/phpsupcontent?contentID=197601
    ---

    Affected Platforms

  • Windows
  • UNIX
  • Linux
  • Solaris
  • Mac OS X
  • NetWare

    Affected Products:
  • CA Anti-Virus for the Enterprise (formerly eTrust Antivirus) 7.1, r8, r8.1
  • CA Anti-Virus 2007 (v8), 2008
  • eTrust EZ Antivirus r7, r6.1
  • CA Internet Security Suite 2007 (v3), 2008
  • CA Internet Security Suite Plus 2008
  • CA Threat Manager for the Enterprise (formerly eTrust Integrated Threat Management) r8, 8.1
  • CA Anti-Virus Gateway (formerly eTrust Antivirus Gateway) 7.1
  • CA Protection Suites r2, r3, r3.1
  • CA Secure Content Manager (formerly eTrust Secure Content Manager) 8.0, 8.1
  • CA Anti-Spyware for the Enterprise (Formerly eTrust PestPatrol) r8, 8.1
  • CA Anti-Spyware 2007, 2008
  • CA Network and Systems Management (NSM) (formerly Unicenter Network and Systems Management) r3.0, r3.1, r11, r11.1, r11.2
  • CA ARCserve Backup r11.1, r11.5, r12 on Windows
  • CA ARCserve Backup r11.1, r11.5 Linux
  • CA ARCserve client agent for Windows
  • CA eTrust Intrusion Detection 2.0 SP1, 3.0, 3.0 SP1, 4.0
  • CA Common Services (CCS) r11, r11.1

  •