Thursday, October 15, 2009

Make USB Flash Drive a CD-ROM

http://www.msfn.org/board/lofiversion/index.php/t121199.html

Any USB stick has two main components, controller chip and actual memory chips.

The controller chip has some internal firmware that basically controls:
1) Serial number of the device
2) Vid (Vendor Identification number)
3) Pid (Product Identification number)
4) Vendor Description
5) Product Description
6) Number of LUN's (only on some chips, there can be a stick seen as two devices)
7) Type of device (floppy, zip drive, HD, CD)
8) Fixed or Removable
9) Write protection of one of the two LUN's if multiLUN
10) Type and amount of memory chips connected
11) Class and Subclass

The BIOS (to a limited extent, and as explained by cdob often in a non-documented non-standard way) and the OS driver (as well not in a fully documented way) or the plug'n play read these info when detecting/accessing the device connected.

You cannot expect to have CDFS working on a device that is seen as HD-like.

Using a Manufacturer Tool, it is possible to change the firmware data and in some cases to have a CD-like device.

U3 appears to be nothing more than a "name" given to a multi LUN device with a device emulating a CD like device and one emulating a HD like device.

Read these:
http://www.boot-land.net/forums/?showtopic=4577
http://www.boot-land.net/forums/index.php?showtopic=4977
http://www.boot-land.net/forums/?showtopic=4661
http://www.911cd.net/forums//index.php?sho...c=21850&hl=

Unless you get the "right" stick and the "right" tool, you'd better use the "normal" way of USB Multibooting with a "standard" HD filesystem, FAT16, FAT32 or NTFS.

There is LIMITED support for chainloading ISO images in newish releases of grub4dos, read these:
http://www.boot-land.net/forums/index.php?showtopic=5187
http://www.boot-land.net/forums/index.php?showtopic=5041
http://www.boot-land.net/forums/?showtopic=5078

-------------------------------------------------------------------------

YES it is possible to create a CDFS partition on a USB mass storage device as long as it's firmware supports that (multi LUN). The only way to do that is with with the controller chip software. So:

1) Look here for your flash drive and see what controller it has. Be aware that this database is not so precisely, so look for multiple results and if they are the same you found your controller.
2) Now that you found your controller download the application necessary to modify the firmware here
3) Use it with caution

For example, my stick was Kingmax SuperStick KM-SS8G with the controller USBest UT165. I downloaded UT165 1.65.xx.0 and i was able to write and boot any bootable ISO image of any size including XP, Vista, Win 7 ...

-----------------------------------------------------------------------------------

http://hak5.org/forums/index.php?showtopic=13693

It's not a partition, it's a LUN, and the OS actually sees it as a CD-ROM class device ..
The flash-drives controller must support both multi-LUN and "autorun-feature" as they like to call it .
Many flash-controllers manufactured within the last 3-4 years have these features, even when it's not advertised or used .
To enable it, you will need the specific "Mass-production tool (MPT)" for the controller .
You can find a large collection of MPT's at the Russian site "flashboot.ru" .. google translate is your friend
You will also find a nice tool there that helps you identify the controller ..
There is no available MPT for sandisk-drives, they are after all a military contractor with Israeli security ...


NB : You can only write to the CD-ROM device using special software that can "talk" with the flash-controller ..
This may sound annoying, in real life it's very good because it makes it virtually impossible to delete (or infect )
anything residing on the CD-ROM ..

For u3-drives there is also " the universal customizer ", it allows you to load your own ISO on the CD-ROM .
Beware !! older versions of " the universal customizer " only supports up to 4GB, anything above "disappears" !!!
For Sandisk-drives you should use sandisk's own " LP-installer " ..

More info here : http://hak5.org/forums/index.php?showtopic=8614&hl=

-----------------------------------------------------------------------------

http://hak5.org/forums/index.php?showtopic=8614&hl=

-----------------------------------------------------------------------------

http://www.mcgrewsecurity.com/pub/hackingu3/

Mimmo97 Blog Archive