Обнаружение клавиатуры Ubuntu из сценария удара

Ваш anonyminity не гарантируется с Почтовым ящиком или PMB (Личный почтовый ящик через частную компанию). Под 39 CFR 265.6 (d), человек может запросить имя и адрес владельца ПОЧТОВОГО ЯЩИКА или PMB в целях судебного иска. Я услышал о (но не знайте, обрабатывают ли его общее) люди и группы, злоупотребляющие Судом мелких тяжб, для получения доступа к этой информации и затем использующий его в целях другой процесс сервиса (который недопустим).

Далее, если клиент будет использовать Фиктивное Название компании или создавать Корпорацию, то большинство состояний свободно предоставит информацию о владельце по Интернету или телефону.

Если Ваш клиент будет жить в сутяжнической области (т.е. много сумасшедших активистских групп, которым нравится оспаривать эти виды в суде компаний из существования посредством сборов адвоката), то правовая система вызовет много головных болей.

Но даже игнорируя авеню судебного процесса, существует много Публичных актов, которые доступны в Интернете. Будьте осторожны относительно того, какая информация регистрируется и могут ли они перекрестно сослаться на данные для отступания информации. Довольно легко разыскать связанные стороны, если публичный акт использует подобный адрес или номер телефона к доменному имени и т.д.

6
задан 25 March 2010 в 20:48
5 ответов

Для USB-устройства можно использовать lsusb и ищите Устройство Интерфейса пользователя (интерфейсный класс 3) с протоколом клавиатуры (интерфейсный протокол 1), например.

$ lsusb -v
... loads of stuff deleted ...
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              0 
... loads of stuff deleted ...

Кроме того, можно позволить udev помогите Вам. Перечислите устройства под /dev/input/by-path/ и устройства клавиатуры заканчиваются в -kdb (по крайней мере, в Ubuntu, где правила udev указывают его), например.

$ ls -l /dev/input/by-path/*-kbd
lrwxrwxrwx 1 root root 9 2010-03-25 09:14 /dev/input/by-path/pci-0000:00:1a.2-usb-0:1:1.0-event-kbd -> ../event4

$ ls -l /dev/input/by-path/*-kbd
lrwxrwxrwx 1 root root 9 2009-08-29 09:46 /dev/input/by-path/platform-i8042-serio-0-event-kbd -> ../event1
5
ответ дан 3 December 2019 в 00:23
  • 1
    Спасибо Dan! Второй метод кажется, что работал бы на меня. –  Ryan Brubaker 26 March 2010 в 15:45

Один путь состоял бы в том, чтобы сделать это:

dmesg | grep keyboard

Вы могли бы также смочь использовать Выскочку и udev, чтобы обнаружить и действовать на присутствие клавиатуры.

1
ответ дан 3 December 2019 в 00:23

Для USB можно искать/sys/bus/usb/devices устройство с конфигурацией с интерфейсом с классом HID (0x03) и протокол Клавиатура (0x01).

Сценарий Bash:

#!/bin/bash
for dev in /sys/bus/usb/devices/*-*:*
do
  if [ -f $dev/bInterfaceClass ]
  then
    if [[ "$(cat $dev/bInterfaceClass)" == "03" && "$(cat $dev/bInterfaceProtocol)" == "01" ]]
    then
      echo "Keyboard detected: $dev"
    fi
  fi
done
0
ответ дан 3 December 2019 в 00:23

Для USB-клавиатур я обычно нахожу клавиатуру, просто просматривая вывод «lsusb -v» по слову «Keyboard»:

lsusb -v 2>/dev/null | egrep '(^Bus|Keyboard)' | grep -B1 Keyboard

Пример вывода:

Bus 001 Device 004: ID 413c:2006 Dell Computer Corp. 
  bInterfaceProtocol      1 Keyboard

Более общий метод заключается в поиске / sys / bus для любого устройства, которое одновременно является bInterfaceClass 03 и bInterfaceProtocol 01. Поскольку вам необходимо обнаруживать устройства, отличные от USB,и вы хотите использовать вывод в сценарии, этот метод, вероятно, подойдет вам лучше:

grep -l 03 /sys/bus/*/*/*/bInterfaceClass |
sed 's/Class$/Protocol/' |
xargs grep -l 01 |
xargs dirname

Пример вывода:

/sys/bus/usb/devices/1-4.1:1.0

Предостережение: я не могу найти клавиатуру PS / 2 для тестирования этого сценария. Поскольку этому потоку уже более семи лет, я предполагаю, что автор исходного вопроса уже давно ушел и больше не нуждается в обнаружении PS / 2. В любом случае я оставлю этот ответ в надежде, что кто-то другой сочтет его полезным, но имейте в виду, что я не тестировал его с устройствами, отличными от USB.

2
ответ дан 3 December 2019 в 00:23

Клавиатуры PS / 2 перечислены среди устройств / sys / class / input . Там также могут присутствовать USB-клавиатуры, потому что указанная ниже мышь - это USB-мышь:

$ grep "" /sys/class/input/*/name
/sys/class/input/input0/name:Power Button
/sys/class/input/input1/name:Power Button
/sys/class/input/input2/name:AT Translated Set 2 keyboard
/sys/class/input/input3/name:Microsoft Comfort Mouse 6000

$ grep keyboard /sys/class/input/*/name
/sys/class/input/input2/name

Еще одно открытие заключается в том, что каталоги клавиатуры содержат подкаталоги для статусных клавиш:

$ ls -d /sys/class/input/*/*::capslock
/sys/class/input/input2/input2::capslock
0
ответ дан 3 December 2019 в 00:23

Теги

Похожие вопросы