December 27, 2018

Тайминг-атака.

Представьте себе ситуацию: вы сотрудник спецслужбы, и ваша задача – вычислить особо опасного преступника, занимающегося шантажом и появляющегося в сети периодически и только для передачи данных.

Для преступной деятельности он завел отдельный ноутбук, из которого «вырезал» микрофон, колонки и камеру. Разумное решение, учитывая, что колонки тоже умеют слушать.

В качестве операционной системы он использует Tails, хотя для максимальной анонимности стоило бы взять Whonix. Так или иначе, весь трафик идет через Tor, он не доверяет VPN, да и для работы в Даркнете Tor ему все равно необходим.

Для общения он использует Jabber с PGP-шифрованием, он мог бы поставить и Телеграм, но это представитель старой школы преступников. Даже если у вас будет доступ к серверу Jabber, вы сможете получить лишь зашифрованные данные и IP-адреса Тор. Это бесполезная информация.

Преступник работает по принципу «молчание-золото», лишнего не скажет, ссылки или файла не откроет.

Известно лишь, что он должен находиться в одной стране с вами. Казалось бы, шансов установить его личность нет, но это иллюзия, установить его личность можно несмотря на все принимаемые им меры. Описанный случай идеален для применения тайминг-атаки по мессенджеру.

Первым делом необходима программа, которая будет отслеживать и записывать все входы и выходы пользователя. Он появился в сети – система сразу отмечает у себя время, ушел – система записала время выхода.

Лог выглядит примерно так:

Теперь на руках у вас есть лог его активности за несколько дней, пришло время воспользоваться системой ОРМ (оперативно-розыскных мероприятий).

Подобные системы есть в распоряжении спецслужб большинства стран, в России это СОРМ. Нужно выяснить, кто в эти временные промежутки +/- 5 минут в вашей стране подключался к сети Tor.  Мы знаем, что цель, которую необходимо деанонимизировать, подключилась 22.04.2018 в 11:07 и отключилась в 12:30.

В эти же временные точки (+/- 5 минут) на территории страны подключились к сети Tor и отключились от нее 3000 человек. Мы берем эти 3000 и смотрим, кто из них снова подключился в 14:17 и отключился в 16:54, как думаете, сколько человек останется?

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

Что может помешать проведению тайминг-атаки

Постоянная смена точек выхода в сеть делает подобную атаку бессмысленной. Если же цель периодически меняет точки выхода, это может затруднить поиск, но является заранее допустимым вариантом и не способно запутать систему.

Мы надеемся, что наши читатели не относятся к разыскиваемым преступникам и им не придется кочевать из одного кафе с публичным Wi-Fi в другое. Однако вторым советом против тайминг-атаки стоит воспользоваться каждому. Речь идет об отключении на уровне мессенджера передачи информации о статусе либо установлении постоянного статуса «офлайн». Большинство мессенджеров предоставляют одну из подобных возможностей.

Вот так это выглядит в Телеграм: 

СОВЕТ: Если в вашем мессенджере возможно скрыть данные о вашем статусе, скройте эту информацию.

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