Skip to main content

Разведка в сетях IPV6

Перед тем как перейти к уязвимостям IPv6 и атакам на них, неплохо бы посмотреть, какие есть инструменты в арсенале пентестера на этот счёт. До недавнего времени существовал только один набор утилит для проведения атак на протоколы IPv6 и ICMPv6. Это THC-IPV6 от незабвенного Марка ван Хаузера, того самого автора брут-форсера THC-hydra и массы других незаменимых инструментов. Именно он в 2005 году серьёзно заинтересовался темой IPv6 и вплотную занялся изучением этого протокола и до недавнего времени оставался первопроходцем, но в последнее время ситуация стала меняться. Всё больше исследователей сетевой безопасности обращают своё внимание на IPv6, и, соответственно, стали появляться и новые утилиты, такие как LOKI и новые сканеры сетей, но на сегодня THC-IPV6 по-прежнему остаётся лучшим набором утилит для проникновения в сеть. В комплект его входит уже более 60 инструментов, разделённых на различные категории - от сканирования и MiTM до флудинга и фаззинга, но не будем забывать и реальную утилку scapy, позволяющую вручную создавать пакеты, с любыми заголовками, даже если таковые вариации не предусмотрены ни в одной RFC.

LOKI - ICMPv6 multicast или как посмотреть соседей по IPv6


Перед тем, как атаковать цель, нужно её хоть как-то обнаружить, поэтому стандартный пентест обычно начинается с поиска живых хостов, но здесь появляется проблема: мы не можем просканировать весь диапазон. Сканирование всего одной подсети затянется на годы, даже если отправлять миллион пакетов в секунду. Причина в том, что всего лишь одна подсеть /64 (или их ещё называют префиксами) больше, чем весь интернет сегодня, причём значительно больше. Поэтому самая серьёзная проблема с IPv6 - это обнаружение целей.

К счастью, выход есть. Вначале нужно будет найти подходящую AS (автономную систему), которая принадлежит цели (объекту пентеста). Сервисов, позволяющих искать по AS их владельцев, вполне достаточно, можно это делать прямо на сайтах региональных регистраторов (европейский регистратор - это RIPE NCC). Затем, зная номер AS, принадлежащей конкретной компании, можно уже искать выделенные ей IPv6 префиксы.

Самый удобный такой поисковый сервис предоставляет Hurricane Electric (bgp.he.net). В итоге можно найти несколько огромных подсетей, которые как мы убедились, нереально просканировать на предмет живых хостов. Поэтому нужно составлять список часто используемых адресов и проводить сканирование уже точно по ним.

Каким образом можно собрать такой словарь? Если проанализировать, как в компаниях, которые уже внедрили IPv6, назначаются адреса клиентам, то можно выделить три основные группы: автоконфигурация, ручное назначение адресов и DHCPv6.

Автоконфигурация может осуществляться тремя способами: на основе MAC адреса, с использованием privacy option (то есть в случайном порядке и, например, меняться раз в неделю) и fixed random (полностью случайным образом). В данной ситуации возможно сканировать только те адреса, что строятся на основе MAC адреса. В результате могут выйти подсети, сравнимые по размеру с IPv4 класса А, процесс работы с такими сетями не очень быстрый, но всё равно это уже вполне реально. Например, зная, что в целевой компании массово используются ноутбуки определенного производителя, можно строить сканирование, основываясь на знаниях о том, как будет формироваться адрес.

Если адреса задаются вручную, то они могут назначаться либо случайным образом, либо по некоему шаблону. Второе, естественно, в жизни встречается гораздо чаще. А шаблон вполне может быть ::1, ::2, ::3 или ::1001, ::1002, ::1003. Также иногда в качестве адреса используются порты служб, в зависимости от сервера: например, работающий Web-сервер может иметь адрес ::2:80.   

Если же брать DHCPv6, то в этом случае обычно адреса раздаются последовательно из пула (точно такое же поведение можно наблюдать и с обычным DHCPv4 сервером). Зачастую в DHCPv6 можно встретить пул вроде ::1000-2000 или ::100-200. Поэтому в итоге берём утилиту alive6 (она включена в комплект THC-IPV6 и, как и все рассматриваемые сегодня инструменты, по умолчанию входит в Kali Linux) и запускаем в таком виде:

alive6 - перебор пула DHCPv6


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

Но и это ещё не всё - естественно, можно использовать и DNS. С приходом IPv6 никуда не делись трансферы DNS-зоны и брутфорсы DNS по словарю. Применив все эти техники вместе, можно обнаружить до 80% всех включенных в сеть хостов в заданном IPv6 префиксе, что очень даже хорошо. В случае же компрометации одного лишь хоста обнаружитьвсех его соседей не составит никакого труда при помощи мультикаста. Достаточно будет запустить ту же утилиту alive6, только уже с ключом -l или воспользоваться пакетом LOKI как показано на скриншоте.

Из свежих фич THC-IPV6, и в частности утилиты alive6, можно отметить возможность искать живые хосты, передавая в качестве шаблона для перебора целую IPv4 подсеть:
alive6 - шаблон IPv4 для перебора IPv6

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

Пожалуй, единственная дополнительная техника при сканировании портов - это сканирование IPv4 вначале, а затем получение IPv6 информации по этим хостам. То есть некое расширение поверхности атаки. Для этого можно использовать как вспомогательный модуль метасплоита ipv6_neighbor, так и отдельные сценарии ipv6_surface_analyzer. Работают они по схожему принципу - принимают на входе префикс IPv4, сканируют его, находят живые хосты, проверяют порты на открытость, а затем, определив MAC адрес, высчитывают по нему IPv6 адрес и уже пробуют работать по нему. Иногда это действительно помогает, но в некоторых случаях (privacy option) IPv6 адреса обнаружить не удается, даже несмотря на то, что они есть.

Popular posts from this blog

Виртуальная сеть на базе Cisco CSR 1000V

Во время обучения, для того чтобы лучше разобраться как работает та или иная технология я пользовался и программой моделирования сетей DYNAGEN, и удаленным доступом к стенду с реальным оборудованием, любезно предоставленным нам организаторами обучения. Это, конечно же очень помогало, но меня все время не оставляла мысль найти какой-то вариант, который позволил бы иметь ощущение реальности при работе с устройством и в тоже время чтобы я мог его крутить так как мне захочется и в любое время, когда мне захочется. Я пробовал и GNS3, и IOU, при этом продолжая поиски. Так я узнал о таком продукте от CISCO как CSR 1000V Cloud Services Routerhttp://www.cisco.com/c/en/us/products/routers/cloud-services-router-1000v-series/index.html , скачать который можно в нашей подборке Cisco IOS. Небольшие выдержки из документации:
«Развернутый на виртуальной машине Cisco CSR 1000V с IOS XE обеспечивает точно такую же функциональность, как если бы IOS XE работала на традиционной аппаратной платформе Cis…

Проникновение в сеть оператора связи

Перво наперво стоит провести анализ идущего мимо сетевого трафика с помощью любого сетевого анализатора в "неразборчивом" режиме работы сетевой карты (promiscuous mode). В качестве сетевого анализатора для подобных целей замечательно подходит Wireshark или CommView. Чтобы выполнить этот этап, хватит и пары часов работы сетевого анализатора. По прошествии этого времени накопится достаточно данных для проведения анализа перехваченного трафика. И в первую очередь при его анализе следует обратить внимание на следующие протоколы: протоколы коммутации (STP, PVST+, CDP, DTP, VTP, и им подобные)протоколы маршрутизации (RIP, BGP, EIGRP, OSPF, IS-IS и другие)протоколы динамической конфигурации узла (DHCP, BOOTP)открытые протоколы (telnet, rlogin и подобные) Что касается открытых протоколов, – вероятность того, что они попадутся во время сбора пакетов проходящего мимо трафика в коммутируемой сети, достаточно мала. Однако, если такого трафика много, то в обследуемой сети явно наблюдаютс…

Инженер электросвязи майнил BitCoin на $ 9.000 в день

Исследователь безопасности Эдвард Сноуден, ранее работавший в компании Booz Allen Hamilton говорит, что он обнаружил ряд совершенных одним системным оператором Bell Canada неавторизованых транзакций Bitcoin.



Для генерации биткоинов инженер электросвязи скомпрометировал пулы. В свою очередь, участники пулов продолжали отдавать часть производительности своих компьютеров на поиск блока криптографического алгоритма Bitcoin, при этом все получаемые им доходы доставались системному инженеру Bell Canada. Техника перенаправления обманывала участников для того, чтобы продолжать искать блок криптографических алгоритмов Bitcoin, позволяя сетевому оператору сохранить доходы на свой счёт. На пике своей деятельности, согласно подсчетам Сноудена, инженер электросвязи из Bell Canada перехватывал поток биткоинов и других цифровых валют, включая dogecoin и worldcoin, и обналичивал их в сумме около $9 000 в день.

Сноуден считает, что сетевой инженер из Bell Canada применил стандартные команды управлени…