Time Attack мифы и реальность.

Time Attack мифы и реальность.

Max Open Source


Эта тема довольно мало освещена на просторах инета, а объективно тем более, сейчас мы с вами и разберем что это и как работает на простом языке с примерами.

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


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


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


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


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


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


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

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

Пример:

metrics.torproject.org — проверяет использовался ли IP-адрес в качестве узла для передачи трафика в Tor.

check.torproject.org (https://check.torproject.org/cgi-bin/TorBulkExitList.py) github.com/SpiderLabs — найдет список всех выходных узлов Tor за последние 16 часов, которые мог связаться с IP;

ipqualityscore.com/user/proxy-detection-api/lookup - узнает, использует ли человек прокси, VPN или TOR.

только малая часть инструментов. (Смотрите еще тут)

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

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

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

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

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

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

Любой анализ, сбор инфы в Osunt это логика не забывайте не когда!

Как пишут многие, что спецслужбы "щёлкнут" и твоё устройство в один миг у них, ведь у них резиновый бюджет ( ФСБ в расчёт не берём) и якобы есть сильный интерес к твоей личности и думают, что будут использовать программные и аппаратные средства цифровой форензики , с сильным энтузиазмом будут вытаскивать ЭЦС (электронно-цифровые следы), а железо отправлять в СЭУ (судебно-экспертные учреждения).

Ага, прям смешно. Ещё раз повторюсь: всё зависит от того, как сильно наследили, кому нагадили, в каком размере был нанесён ущерб, интерес со стороны гос органов или редко - частных контор и ещё много факторов. Думаю понятно стало, хоть немного.

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

Так то, технически, векторов Time Attack уйма, пример:

⚒ Application-level Traffic 

⚒ Denial of Service 

⚒ Locating Onion Services 

⚒ Remote Code Execution

⚒ Remote Device Fingerprinting 

⚒ Replay Attacks 

Также есть вектора утечек часов(Clock Leak Attack):

⚒ ICMP Timestamps 

⚒ NTP Clients 

⚒ TCP Initial Sequence Numbers (ISNs) 

⚒ TCP Timestamps

Подробно про механизмы синхронизации времени есть материал (https://www.whonix.org/wiki/Dev/TimeSync) у whonix

Самое интересное, что защита от него есть, о ней пойдёт дальше.

Для борьбы в большинстве своём используют sdwdate

Подробней прочитаете тут:
kicksecure.com/wiki/Sdwdate
github.com/Whonix/sdwdate в связке с ПО, которое перемещает часы на несколько секунд и наносекунд в прошлое или будущее во время загрузки(boot time) случайным образом (не редко псевдослучайным) или по-другому называется Boot Clock Randomization, хотя и sdwdate выполняет схожую функцию
(в какой-то степени). Таким способом можно уверенно защищаться от снятия time-base фингерпринта и как раз от установления времени подключения, о котором писал выше. Главное использовать sdwdate (которое как бы тоже рандомизирует системные часы), кстати, это будет намного безопаснее чем использование программ для синхронизации и установки системного времени:

rdate (https://linux.die.net/man/1/rdate)

ntpdate (https://linux.die.net/man/8/ntpdate) .

Но, как показала практика, sdwdate могут неправильно рандомизировать часы, поэтому лучше использовать в  связке с вышеупомянутым bootclockrandomization (https://github.com/Whonix/bootclockrandomization). 

Как контр-меру атаке на получение TCP ISN CPU информации был разработан tirdad (https://github.com/Whonix/tirdad). Также лучше ещё:

⚒ отключать TCP временные метки(TCP timestamp) с помощью kernel sysctl

⚒ не забывать работать с iptables для ограничение(блокировки) входящих ICMP-сообщений и трафика.

⚒ удалить функцию вывода таймер из кода линукса TCP ISN(выше приводил tirdad, но можно и ручками)

Так что, в принципе возможно защититься от Time Attack, причём успешно, только многое будет зависеть от вашей бдительности, желания закопаться в техническую документацию инструментов выше, закопаться в общем в матчасть, связанную с синхронизацию времени, атаки и контр-меры. Да и в итоге, это будет уже считай один из последних массивов векторов атак, которые будут применены для установления личности после событий, в которых вы будете обвиняемым (атакующем и повлекшем любые убытки, в случае с попыткой совершения преступления редко применяется такое). Да и понятно в аспекте вашего ИБ играет большую роль выбор операционной системы, конечно если вы на windows или MacOS - все уже плохо.

Все эти тулзы и надстройки, уже есть в whonix (https://www.whonix.org/) и кубике QubeOs (https://www.qubes-os.org/). Но я рекомендую остановится whonix!

Мы с вами разобрали как векторы атак так и возможность защиты, а главное вы поняли логику этого вектара атаки.

Хочется всем пожелать стать образованней, умнее и богаче. 


Библиотека разведчика |Osint | Книги | Курсы

https://t.me/books_osint

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

С вами администрация канала Max Open Source (@coursmax)

Max Open Source https://t.me/coursmax