Wireshark-bugs: [Wireshark-bugs] [Bug 9630] New: USB Mass Storage dissector doesn't support the
Bug ID |
9630
|
Summary |
USB Mass Storage dissector doesn't support the RealTek RTS5129 USB Card Reader Controller (VID=0xda0b/PID=0x2901)
|
Classification |
Unclassified
|
Product |
Wireshark
|
Version |
SVN
|
Hardware |
All
|
OS |
All
|
Status |
UNCONFIRMED
|
Severity |
Enhancement
|
Priority |
Low
|
Component |
Dissection engine (libwireshark)
|
Assignee |
bugzilla-admin@wireshark.org
|
Reporter |
tyson.key@gmail.com
|
Created attachment 12446 [details]
A USBPCap trace generated against the aforementioned stack, and RealTek's
Windows 8 driver
Build Information:
Version 1.11.2 (SVN Rev 53411 from /trunk)
Copyright 1998-2013 Gerald Combs <gerald@wireshark.org> and contributors.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Compiled (64-bit) with GTK+ 2.24.14, with Cairo 1.10.2, with Pango 1.30.1, with
GLib 2.34.1, with WinPcap (4_1_3), with libz 1.2.5, with SMI 0.4.8, with c-ares
1.9.1, with Lua 5.1, without Python, with GnuTLS 2.12.18, with Gcrypt 1.4.6,
without Kerberos, with GeoIP, with PortAudio V19-devel (built Nov 18 2013),
with
AirPcap.
Running on 64-bit Windows 8, build 9200, with WinPcap version 4.1.3 (packet.dll
version 4.1.0.2980), based on libpcap version 1.0 branch 1_0_rel0b (20091008),
GnuTLS 2.12.18, Gcrypt 1.4.6, without AirPcap.
AMD A6-5200 APU with Radeon(TM) HD Graphics , with 3529MB of physical
memory.
Built using Microsoft Visual C++ 10.0 build 40219
Wireshark is Open Source Software released under the GNU General Public
License.
Check the man page and http://www.wireshark.org for more information.
--
It seems that despite using the USB Mass Storage Bulk-Only Transport protocol
(bInterfaceProtocol = 0x50, as defined in
http://www.usb.org/developers/devclass_docs/usbmassbulk_10.pdf) in SCSI
transparent command set (bInterfaceSubClass = 0x06) mode, like most other USB
Mass Storage devices, Wireshark's UMS dissector doesn't work with this device,
since the bInterfaceClass is non-standard (set to 0xff, rather than 0x08):
No. Time Source Destination Protocol Length
Info
8 0.001005 1.0 host USB 67
GET DESCRIPTOR Response CONFIGURATION
Frame 8: 67 bytes on wire (536 bits), 67 bytes captured (536 bits)
Encapsulation type: USB packets with USBPcap header (153)
Arrival Time: Jan 9, 2014 13:33:38.359272000 GMT Standard Time
[Time shift for this packet: 0.000000000 seconds]
Epoch Time: 1389274418.359272000 seconds
[Time delta from previous captured frame: 0.000000000 seconds]
[Time delta from previous displayed frame: 0.000000000 seconds]
[Time since reference or first frame: 0.001005000 seconds]
Frame Number: 8
Frame Length: 67 bytes (536 bits)
Capture Length: 67 bytes (536 bits)
[Frame is marked: False]
[Frame is ignored: False]
[Protocols in frame: usb]
USB URB
USBPcap pseudoheader length: 28
IRP ID: 0xfffffa800505bb80
IRP USBD_STATUS: USBD_STATUS_SUCCESS (0x00000000)
URB Function: URB_FUNCTION_CONTROL_TRANSFER (0x0008)
IRP information: 0x01, Direction: PDO -> FDO
0000 000. = Reserved: 0x00
.... ...1 = Direction: PDO -> FDO (0x01)
URB bus id: 4
Device address: 1
Endpoint: 0x80, Direction: IN
1... .... = Direction: IN (1)
.000 0000 = Endpoint value: 0
URB transfer type: URB_CONTROL (0x02)
Packet Data Length: 39
Control transfer stage: Data (1)
[Request in: 7]
[Time from request: 0.000000000 seconds]
[bInterfaceClass: Unknown (0xffff)]
CONFIGURATION DESCRIPTOR
bLength: 9
bDescriptorType: 0x02 (CONFIGURATION)
wTotalLength: 39
bNumInterfaces: 1
bConfigurationValue: 1
iConfiguration: 4
Configuration bmAttributes: 0xa0 NOT SELF-POWERED REMOTE-WAKEUP
1... .... = Must be 1: Must be 1 for USB 1.1 and higher
.0.. .... = Self-Powered: This device is powered from the USB bus
..1. .... = Remote Wakeup: This device supports REMOTE WAKEUP
bMaxPower: 250 (500mA)
INTERFACE DESCRIPTOR (0.0): class Vendor Specific
bLength: 9
bDescriptorType: 0x04 (INTERFACE)
bInterfaceNumber: 0
bAlternateSetting: 0
bNumEndpoints: 3
bInterfaceClass: Vendor Specific (0xff)
bInterfaceSubClass: 0x06
bInterfaceProtocol: 0x50
iInterface: 5
ENDPOINT DESCRIPTOR
bLength: 7
bDescriptorType: 0x05 (ENDPOINT)
bEndpointAddress: 0x01 OUT Endpoint:1
0... .... = Direction: OUT Endpoint
.... 0001 = Endpoint Number: 0x01
bmAttributes: 0x02
.... ..10 = Transfertype: Bulk-Transfer (0x02)
.... 00.. = Synchronisationtype: No Sync (0x00)
..00 .... = Behaviourtype: Data-Endpoint (0x00)
wMaxPacketSize: 512
.... ..10 0000 0000 = Maximum Packet Size: 512
bInterval: 0
ENDPOINT DESCRIPTOR
bLength: 7
bDescriptorType: 0x05 (ENDPOINT)
bEndpointAddress: 0x82 IN Endpoint:2
1... .... = Direction: IN Endpoint
.... 0010 = Endpoint Number: 0x02
bmAttributes: 0x02
.... ..10 = Transfertype: Bulk-Transfer (0x02)
.... 00.. = Synchronisationtype: No Sync (0x00)
..00 .... = Behaviourtype: Data-Endpoint (0x00)
wMaxPacketSize: 512
.... ..10 0000 0000 = Maximum Packet Size: 512
bInterval: 0
ENDPOINT DESCRIPTOR
bLength: 7
bDescriptorType: 0x05 (ENDPOINT)
bEndpointAddress: 0x83 IN Endpoint:3
1... .... = Direction: IN Endpoint
.... 0011 = Endpoint Number: 0x03
bmAttributes: 0x03
.... ..11 = Transfertype: Interrupt-Transfer (0x03)
.... 00.. = Synchronisationtype: No Sync (0x00)
..00 .... = Behaviourtype: Data-Endpoint (0x00)
wMaxPacketSize: 3
...0 0... .... .... = Transactions per microframe: 1 (0)
.... ..00 0000 0011 = Maximum Packet Size: 3
bInterval: 10
0000 1c 00 80 bb 05 05 80 fa ff ff 00 00 00 00 08 00 ................
0010 01 04 00 01 00 80 02 27 00 00 00 01 09 02 27 00 .......'......'.
0020 01 01 04 a0 fa 09 04 00 00 03 ff 06 50 05 07 05 ............P...
0030 01 02 00 02 00 07 05 82 02 00 02 00 07 05 83 03 ................
0040 03 00 0a ...
It also appears that this device uses a proprietary, undocumented set of SCSI
commands for accessing Secure Digital, and Sony MemoryStick cards - although an
Open Source driver exists at
http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/staging/rts5139?id=c0fa05f3dec43d859d12f00d2843c770a12eef30,
and I can provide trace files, if there's interest.
In the meantime, it might be useful to hook USB VID 0xda0b, and PID 0x2901.
You are receiving this mail because:
- You are watching all bug changes.