URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 73817
[ Назад ]

Исходное сообщение
"Раздел полезных советов: Мониторинг активности USB-устройств"

Отправлено auto_tips , 06-Янв-11 11:32 
Начиная с Linux-ядра версии 2.6.11 в составе поставляется модуль usbmon, позволяющий осуществить полный мониторинг обмена данными с USB-устройствами.

Загружаем модуль:
   modprobe usbmon

Если не смонтирована debugfs, монтируем:

   mount| grep debugfs  
   mount -t debugfs none_debugs /sys/kernel/debug


Для анализа USB-пересылок также можно использовать Java-приложение из состава пакета [[http://people.redhat.com/zaitcev/linux/ USBMon-0.4.tar.gz]]:
  
   wget http://people.redhat.com/zaitcev/linux/USBMon-0.4.tar.gz
   tar xzf USBMon-0.4.tar.gz
   cd USBMon
   vi Makefile # правим путь в переменной JAVAC, оставляем просто javac (ставится из пакета openjdk-6-jdk)
   make
   java USBMon

Но удобнее, проще и нагляднее анализировать usbmon трафик в [[http://www.wireshark.org/ Wireshark]], в котором достаточно выбрать интерфейс для сниффинга usbmon0 или usbmonN, где N номер USB-шины, которую можно определить, например, утилитой lsusb. Главное удобство Wireshark состоит в гибких возможностях фильтрации, например, можно отобразить только соответствующие определенным критериям пересылки.

При наличии libpcap 1.0 для перехвата данных можно использовать любую поддерживающую данную библиотеку утилиту, включая tcpdump, начиная с версии 4.0:

   tcpdump -i usbmon0 -w usb.pcap

указание опции "-w" обязательно, без нее будет выведена ошибка "tcpdump: unsupported data link type USB_LINUX". Наглядно отслеживать пересылки tcpdump еще не умеет, но сохраненный файл usb.pcap можно использовать в сторонних анализаторах, таких как wireshark.

Сохранить дамп пересылок можно в текстовом виде, просто перенаправив вывод из сокета в директории /sys/kernel/debug/usb/usbmon:

   ls /sys/kernel/debug/usb/usbmon

   0s  1s  1u  2t  3s  3u  4t  5s  5u  6t  7s  7u
   0u  1t  2s  2u  3t  4s  4u  5t  6s  6u  7t

где, 0* - сокет сбора данных о всех шинах. Буквы "s", "u" и "t" указывают на формат вывода, отличающийся детализацией.

   cat /sys/kernel/debug/usb/usbmon/0u > usbmon.out

URL:
Обсуждается: http://www.opennet.me/tips/info/2479.shtml


Содержание

Сообщения в этом обсуждении
"Мониторинг активности USB-устройств"
Отправлено e2 , 06-Янв-11 11:32 
Круто. Можно проводить реверс-инженеринг для USB устройств не поддерживающихся в Linux.

"Мониторинг активности USB-устройств"
Отправлено pavlinux , 06-Янв-11 21:14 
Как Вы его проведёте, если оно не поддерживается? :)

Если только в Венду в виртуалку


"Мониторинг активности USB-устройств"
Отправлено e2 , 08-Янв-11 01:11 
begin
задать вопрос,
полубаться,
ответить на вопрос в стиле КО.
end

"Мониторинг активности USB-устройств"
Отправлено Michael Shigorin , 09-Янв-11 14:16 
Может поддерживаться закрытым, например.

"Мониторинг активности USB-устройств"
Отправлено User294 , 09-Янв-11 11:32 
> Можно проводить реверс-инженеринг для USB устройств не поддерживающихся в Linux.

Это такой современный вариант pkunzip.zip? :) А то если девайс не поддерживается - что сниффать то предполагается? oO


"Мониторинг активности USB-устройств"
Отправлено pavlinux , 09-Янв-11 14:22 
>> Можно проводить реверс-инженеринг для USB устройств не поддерживающихся в Linux.
> Это такой современный вариант pkunzip.zip? :) А то если девайс не поддерживается
> - что сниффать то предполагается? oO

Из отпуска что ль вернулся? Как там в Альпах, лыжи катят?!


"Мониторинг активности USB-устройств"
Отправлено netjedi , 06-Янв-11 18:05 
а так же, как нижний уровень для DLP систем