Как железо нас выдает

megaDED

Сержант
Модератор
Сообщения
34
Реакции
5
Как мы засвечиваем железо?
В этой главе мы вам расскажем о такой вещи, как компрометация рабочего оборудования. Это очень коварная вещь, вкупе с другими деанонимизирующими средствами готовая нанести существенный вред вашей анонимности.

Коварная она ввиду своей простоты и неочевидности; многим кажется несущественной! Часто мы, как простые пользователи, не задумываемся о том, что подключаем к своему рабочему компьютеру. Для удобства своей работы мы с вами часто используем общие:

✔ жесткие диски
✔ общие флеш-накопители
✔ общие подключаемые мониторы
✔ общие компьютерные мышки и прочее периферийное оборудование.

Ну ведь и вправду, зачем покупать отдельную мышку для рабочего компьютера, верно? Также временами применяем bluetooth устройства, в том числе наушники или клавиатуры. И, казалось бы, нет подвоха, а он есть и совсем рядом!!! Это конечно не Джиперс Криперс, но тоже не приятно.

Все подключаемые к компьютеру устройства хранятся в истории операционной системы. У каждого устройства, будь то даже самая обычная флешка, есть свой уникальный идентификатор.

Мы сейчас будем немного утрировать и приводить примеры (совпадения случайны). Дано: Тестировщик безопасности, имеющий два компьютера (один домашний сис.блок, а второй рабочий ноутбук). Также прочие мелкие устройства, подключаемые к двум компьютерам.

Пример первый:

Для домашних целей тестировщик использует системный блок (OS Windows 7-10, Mac OS), на нем он никогда не вбивает компроментирующие себя запросы в поисковиках, не использует домашний компьютер для взлома или других незаконных вещей. Полностью ведет разграничивающую деятельность. Поскольку тестировщик использует системный блок, то он подключает к нему монитор, мышь, и, для удобства работы и переноса данных, подключает жесткие диски и флешки. Для целей выхода в интернет у него есть домашний проводной интернет.

Пример второй:

Для работы тестировщик использует ноутбук. Подключается он к интернету либо из другого места жительства, либо использует внешний wi-fi адаптер. Поскольку пользователь хочет оставаться в тени, он покупал ноутбук либо с рук у постороннего человека, либо заказывал компьютер по несуществующим документам.

Он полностью разграничивает свою деятельность, никогда не заходит с рабочего компьютера в свои аккаунты, а также вживается в роль (формирует другую личность). У этой личности нет ничего общего с повседневным человеком. Другие увлечения, другой словарный запас и другие построение предложений. Теперь у него совсем другие политические взгляды, в общем говоря совсем другой человек. Но однажды у него начинают уставать глаза за монитором ноутбука и он решает подключить свой монитор с большой диагональю по (vga или hdmi). В следующий раз он использует внешний жесткий диск или флешки, который ранее подключал к сис.блоку. Поскольку аудитор много времени проводит за компьютером, то его кисть устает, и он решает подключить компьютерную мышку к ноутбуку.

Вывод:

А теперь давайте представим, что ОС (Windows, Mac и так далее) записывает все подключенные устройства в реестр (или лог.файлы), которые, в свою очередь, хранятся в системе до полной переустановки оной или очистки логов. Тут даже и представлять не нужно, ибо это очевидный факт.

Далее представим, что эти данные собирают и хранят у себя на серверах разработчики ОС. Хранят, мотивируя это так: «Мы собираем данные о всех подключенных устройствах к вашему компьютеру, чтобы улучшить работоспособность наших сервисов».

Далее представим, что боты Microsoft, Apple заносят в базу данных всех пользователей. В базе хранятся вообще все собранные данные на человека, в том числе подключаемые устройства. Делает ли это Windows, Apple? С достоверной точностью утверждать этого не можем, но все возможности для этого у них есть.
И вот настал час, когда взломщик в течение продолжительного времени использует свой ноутбук, подключая изредка к нему внешнее оборудование.
Историю подключенных устройств хранит любая операционная система, в том числе Линукс. А теперь давайте представим, что Линукс тоже отправляют эти данные на свои сервера, вероятность существенно меньше чем у Windows, но шанс есть. Если Linux дистрибутивы окажутся порядочными, то где гарантия, что вам не придет в голову установить Skype или подобное программное обеспечение? Теперь представим, что некоторые спецслужбы обязывают все операционные системы, все базы пользователей сливать по запросу и хранить их у себя на серверах.

Что мы имеем? Как только не добросовестный гражданин подключил к ноутбуку устройства , используемые в Windows, он себя скомпрометировал. При условии, что установленный, сторонний софт в OS Linux стал сливать данные разработчикам. И бесполезны были его попытки надеть сетевую маску, скрыться за множеством VPN и PROXY, бесполезными были попытки покупать чистое железо для работы. Действует ли подобная система в настоящем? Утверждать глупо, но все условия для этого в настоящее время существуют. То есть достаточно, чтобы все операционные системы находились под колпаком. Согласны , возможно, это звучит несколько пароноидально и невозможно, но предупрежден значит вооружен. Если мы о чем-то не знаем, то это не значит, что этого не существует!!!

Смотрим на схематическое изображение внизу:

Давайте представим с вами, что радужный пряник желтого цвета - это вы, только не обижайтесь. У вас есть два компьютера, каждый из которых имеет уникальные идентификаторы. Один OS Windows (повседневный), который сливает о вас все и вся, а второй OS Linux (анонимный), который тише воды и ниже травы, но в которую вы установили Skype от Microsoft (пример). Между двумя компьютерами вы используете одно и тоже периферийное оборудование с уникальными идентификаторами. А теперь представьте, что вы владелец OS Windows и Skype, вы имеете возможность сливать всю информацию о любом пользователе, установившем ваш софт. Трудная для вас будет задача идентифицировать пользователя сравнив идентификаторы общих устройств на своих серверах? Задумайтесь, а ведь мы не знаем, что отправляют в этих отчетах безопасности!!!!

1609218637319.png

Переходим к практике

Что бы все вышесказанное не звучало так бредово, приведем вам несколько примеров из различных операционных систем.

Почему нельзя использовать внешний монитор?

Если вы используете дистрибутив Manjaro, то вам необходимо установить из пакетного менеджера следующие пакеты. Чтобы иметь возможность выполнить дальнейшие шаги.

Устанавливаем пакеты

Bash:
# xorg -xrandr
# edid-decode-git : # из репозитория AUR
1609218758950.png

1609218772347.png

После установки открываем терминал и выполняем команду:

Bash:
# xrandr --props
1609218816717.png

1609218829113.png

В моем случае получилось два блока EDID, которые состоят из длинного набора цифр и букв. В моем случае блоки замазаны оранжевым маркером. Почему два блока, спросите вы? Один блок - EDID встроенного в ноутбук монитора, а второй блок от подключенного через VGA разъем внешнего монитора. Теперь мы должны создать текстовый документ на рабочем столе или в любом другом удобном месте на компьютере. Я назвал этот документ, для примера, Edid. В текстовый документ копируем вывод команды #xrandr. То есть блок EDID, который я замазал оранжевым маркером, состоящий из множества знаков.

Код:
# edid-decode /home/user/Desktop/edid ( путь к файлу )
# xrandr --props
Мы вытащили вообще все данные по монитору. Поэтому немудрено, что ваша анонимность перестает быть таковою при использовании внешнего монитора (ранее используемого на домашнем железе).

header:
serial number:
version:
basic params:
chroma info:
established:
standard:
descriptor 1:
descriptor 2:
descriptor 3:
descriptor 4:
extensions:
checksum:
Manufacturer: Производителя и модель вашего монитора
Serial Number: серийный номер продукта
Made week:
EDID version
1609218946993.png

Почему нельзя использовать виртуальную машину на домашнем компьютере?

В некоторых случаях уникальный идентификатор процессора (серийный номер) проскакивает на виртуальную машину, как вы понимаете - это является не безопасным.
Во время тестирования я проводил данный опыт дважды. Один раз вывод данных процессора не поддерживался даже на основной машине. Соответственно, в таком случае, можно пользоваться виртуальной машиной.
Во втором же случае, используя тоже самое оборудование, но операционную систему на более старом ядре, я получил вывод серийного номера как на основной машине, так и на виртуальной VirtualBox.

✔ В Дистрибутиве Manjaro Mate на ядре 4.14.29.1 вывод не поддерживался. Как это проверить?

• Открываем пакетный менеджер и устанавливаем «libcpuid».
• Выполняем в терминале команду # cpuid_tool После чего на рабочем столе появляется текстовый документ report.txt, в котором содержатся данные о процессоре.
• В данном случае серийный номер не отобразился, соответственно на виртуальную машину он не протечет.

1609219033429.png

1609219044803.png

1609219060049.png

Как видно на снимке экрана, вверху строки serial number нет. Более того, другие системные команды также не поддерживают вывод серийного номера процессора.

✔ Дистрибутив Manjaro Linux MATE, но на более старом ядре. В виртуальной машине дистрибутив Manjaro XFCE также на старом ядре.
Вывод серийного номера процессора присутствует как на основной машине, так и на виртуальной машине virtualbox!!!!

1609219095051.png

1609219108702.png

На изображения выше я замазал серийный номер процессора красным маркером.
Теперь проделываем тоже самое, но на виртуальной машине.

1609219130097.png

1609219140753.png
Серийный номер процессора вновь замазан красным маркером. Из этого примера ясно, что если мы хотим быть в безопасности, то нужно заранее знать, протекают ли у нас идентификаторы, или нет.

Ко всему сказанному выше, очень нежелательно пробрасывать в виртуальную машину флеш-накопители или сетевые адаптеры. В крайнем случае, создавайте общую папку для передачи файлов между двумя компьютерами или используйте функцию Drag n drop. В противном случае система на виртуальной машине запомнит идентификаторы оборудования.

Какие данные о вашем железе имеет операционная система?

Стоит в очередной раз заметить, что то, к чему имеет доступ операционная система, имеют доступ и разработчики оной. Будут ли они ее сливать? Вопрос риторический. Конечно будут! во всяком случае Microsoft и Apple так точно.
Lshw : данная команда выводит на экран исчерпывающие данные о железе . Запускать от суперпользователя

hwinfo : подобно предыдущей команде выводит полные данные о железе . В некоторых дистрибутивах не установленна по умолчанию . Поэтому устанавливайте пакет из репозиториев . Разница лишь в более подробном выводе данных .

uname -a : вывод данных о дистрибутиве , версии ядра и архитектуре

ls -clt / | tail -n 1 | awk '{ print $7, $6, $8 }' : команда показывает дату установки системы на жесткий диск

Также существуют и графические утилиты

hardinfo , kinfocenter , i-nex : в некоторых случаях использовать графические утилиты удобнее поскольку позволяет просматривать показатели наглядно

Теперь давайте узнаем, какие данные имеет операционная система.
Для удобства я буду использовать одновременно две утилиты: lshw и hdinfo

Bash:
# sudo lshw
# sudo hdinfo
✔ Как видите, мы получили полное описание компьютера. В данном случае мы имеем Lenovo-g50-45. Также получили и серийный номер.
✔ Название, модель и серийный номер материнской платы, установленной в ноутбук

1609219365900.png

✔ Название, тип процессора. Также серийный номер процессора, в моем случае Not supported, но в вашем случае скорее всего будет и серийник.

1609219405829.png
✔ Название, производитель и серийный номер планок оперативной памяти, установленных в мой ноутбук.

1609219426461.png

✔ Ethernet интерфейс. Вывод подлинного мак-адреса.

1609219446229.png
✔ Название и серийный номер кард-ридера, установленного в ноутбуке.
✔ Название, тип и серийный номер веб-камеры, встроенной в ноутбук.

1609219466521.png

1609219477485.png

✔ Название, тип и серийный номер жесткого диска, установленного в ноутбуке.
✔ Название, тип и идентификаторы клавиатуры, подключенной к ноутбуку.
✔ Название, тип и идентификаторы компьютерной мыши и внешней клавиатуры.
✔ Название, тип, а также вывод мак-адреса wi-fi адаптера от производителя Alfa. Как можно заметить, на последнем снимке экрана вывело два адреса. Один из которых измененный, чтобы не оставлять следов на роутерах при подключении, а второй настоящий 00:c0:ca....... подлинный от производителя Alfa.

1609219513490.png

1609219524284.png

1609219533928.png

1609219542560.png
Возможно, у вас возникнет вопрос: «для чего эта глава?». Ответ: для того, чтобы вы поняли "Сетевая безопасность - это не только сокрытие от провайдеров, использование Openvpn, Proxy, SSH и Tor, но и грамотное скрытие идентификаторов железа и предохранение от утечки оных". Если привести банальный пример, то есть масса контор, такие как букмекерские, валютные или организации, предоставляющие площадки для игры в Poker. Данные структуры в целях предотвращения мошенничества со стороны игроков, как раз и применяют отслеживание пользователя по идентификаторам железа. Пока игрок в недоумении меняет ip-адрес, после очередного блокирования аккаунта, его банят вновь по идентификаторам железа. И поверьте - это самый банальный пример, который лежит на поверхности. К сожалению, мы живем в такое время, когда для обеспечения сетевой безопасности вовсе недостаточно смены ip адреса. Совершенствуются технологии -
совершенствуйтесь и вы!!!

Пример из Windows

Как уже упоминалось выше, все операционные системы хранят данные о ранее подключенных периферийных устройствах к компьютеру. В разделе реестра Windows хранятся записи о всех подключенных ранее устройствах. Телефоны, мыши, клавиатуры, жесткие диски, флешки и так далее. В данном случае показывается пример с оборудованием , которое было распознано как флеш-накопитель. Если вы не чистите реестр, то история подключенных устройств хранится вечно. Как это проверить?

Пуск>Выполнить>regedit

1609219636233.png1609219642946.png

Также просмотреть статистику подключенных устройств можно с помощью программы USBDeview.

1609219664577.png

Как видно, на скриншоте отображается статистика за довольно продолжительное время. Название устройства, тип устройства и уникальный серийный номер накопителя. Вот вам и анонимность.

1609219689798.png

Вывод

Из всего вышестоящего я думаю донес вам то, что любое установленное либо подключенное к компьютеру железо имеет свой неповторимый номер, по которому можно в некоторых случаях отследить владельца. Самое простое, что мы с вами можем сделать - это использовать виртуальные машины и не передавать данные через накопители между домашней и рабочей системой. Также, при должной технической подготовке, очень желательно удалить из компьютера неиспользуемые модули. Так в моем случае это встроенный wi-fi модуль, встроенная веб-камера и микрофон, кард-ридер, Gps – модуль, если присутствует, а также сетевую карту. Вместо которой при необходимости используйте внешнюю. Все зависит от условий, в которых вы находитесь и задач, которые перед собой поставили. В ряде случаев лучшим устройством для подключения к интернету являются адаптеры Alfa Networks, произведенные в Тайване. Имея один из данный адаптеров и хорошую направленную антенну, можно подключаться к интернету на приличном расстоянии.