pc_zoneАндрей «skVoZNoY» комАроВ/ KOMAROV@ITDEFENCE.RU /Беспрецедентноехамство в Wi-Fi сетяхWi-Fiсеть5 новых уроков западлостроенияДля того чтобы положить ноутбук в рюкзак и запустить сканер беспроводных сетей, большогоума не надо. Можно долго ходить по окрестностям, до умопомрачения сканить эфир и, возможно,даже возомнить себя великим вардрайвером, но что с того? Тупое сканирование наобумедва ли даст желаемые результаты, а кайфа от этого — ноль. Поэтому недолго думая мы решили:если уж глумиться в беспроводных сетях, то по полной. И вот что из этого получилось.аз уж развелась куча девайсов, использующих беспроводнуюсвязь, а люди безнадежно привыкли к Wi-Fi, почему бырнемного не поприкалываться. В конце концов, пора спуститьбедняг на землю и напомнить им, что лучше дедовскихпроводных соединений до сих пор ничего не придумали. Оказалось, чтоподходящих способов поглумиться над Wi-Fi пользователями не один и недва, а привычные инструменты для взлома можно написать самому. Приналичии желания, естественно. Вот, пожалуй, с этого и начнем.Урок №1. ловкость рук и никакого мошенничестваКакой вообще смысл в западлостроении? Правильно, получить очереднуюпорцию кайфа и адреналина. Если речь идет о high tech западлостроении,очень важно сделать все самому с нуля. Ну, скажем, какой приколиспользовать уже готовые инструменты типа Netstumbler’а для поискабеспроводных устройств? Тут и делать-то ничего не надо: просто запустилпрограмму и все. Другое дело — смастерить свой сканер, показать егодрузьям и подумать, как его еще улучшить. Тем более что во всех пабликутилитах(Netstumbler, DStumbler, Wellenreiter) содержатся так называемые«пасхальные яйца», по сигнатурам которых можно определитьстороннюю активность и взять за яйца уже тебя. Поэтому сейчас мысделаем собственный сканер, который будет осуществлять пассивноесканирование сети методом перехвата SSID-идентификаторов.Весь проект займет несколько строчек кода на Python (в прошлом номерес его помощью мы написали свою навигационную систему), а в основу мыположим замечательную библиотеку Scapy (www.secdev.org/projects/scapy),предназначенную для манипуляции сетевыми пакетами. К сожалению, подВиндой это реализуется на несколько порядков сложнее, поэтому в качествеплатформы мы выберем Linux. Собственно, ничего страшного в этом нет,объясняю почему. Во-первых, дистрибутив подходящих никсов в лице SLAX(www.slax.org) будет на нашем диске; во-вторых, драйверы для беспроводныхинтерфейсов устанавливаются там автоматически; в-третьих, тебе дажене придется заморачиваться по поводу Python’а. Надо будет только скачатьнужную версию библиотеки и установить ее в системе:cd /scapy/ & python setup.py install.И все! Разве ж это сложно? Далее приступаем к составлению самойпрограммы. Наш сканер будет палить специальные фреймы, которые030xàêåð 08 / 104 / 07
pc_zoneДамп перехваченных голосовых данных в снифере WiresharkТаблица кодировок пейджинг-стандарта POCSAGсодержат уникальный идентификатор сети SSID (Service Set Identifier) ирассылаются точкой доступа. Их также называют Beacon-фреймами. Поним мы и будем определять найденные сети.import sysfrom scapy import *print "Wi-Fi SSID passive sniffer"interface = sys.argv[1] #задаем название интерфейса вкачестве дополнительного консольного аргументаdef sniffBeacon(p):if p.haslayer(Dot11Beacon):print p.sprintf("%Dot11.addr2%[%Dot11Elt.info%|%Dot11Beacon.cap%]")sniff(iface=interface,prn=sniffBeacon)Вывод программы содержит информацию о перехваченных Beaconфреймах:skvoz@box: sniffssid.py eth100:12:17:3c:b6:ed[‘netsquare4’|short-slot+ESS]00:30:bd:ca:1e:1e[‘netsquare7’|ESS+privacy]Советую тебе также поэкспериментировать с выбором haslayer(параметра мониторинга), поменяв его значение Dot11Beaconна: Dot11AssoResp, Dot11ProbeReq, Dot11ATIM, Dot11Auth,Dot11ProbeResp, Dot11Addr2MACField, Dot11Beacon, Dot11ReassoReq,Dot11Addr3MACField, Dot11Deauth, Dot11ReassoResp,Dot11Addr4MACField, Dot11Disas, Dot11WEP, Dot11AddrMACField,Dot11Elt, Dot11AssoReq, Dot11PacketList. Так можно перехватить не толькоSSID точки доступа, но и всю остальную информацию о сети. К примеру,узнать информацию о физических идентификаторах пользователей исетевых обращениях. Для этого мы задействуем протокол ARP:import sys, osfrom scapy import *interface = raw_input("enter interface") #пользовательзадает интерфейс сетиos.popen("iwconfig interface mode monitor") #переводкарты в режим монитора на заданном интерфейсе#функция перехвата MACdef sniffMAC(p):if p.haslayer(Dot11):mac = p.sprintf("[%Dot11.addr1%)|(%Dot11.addr2%)|(%Dot11.addr3%)]")print mac#функция перехвата IP-адресов и показа ARP сообщенийdef sniffarpip(p):if p.haslayer(IP):ip = p.sprintf("IP — [%IP.src%)|(%IP.dst%)]")print ipelif p.haslayer(ARP):arp = p.sprintf("ARP — [%ARP.hwsrc%)|(%ARP.psrc%)]-[%ARP.hwdst%)|(%ARP.pdst%)]")print arp# уровни, которые мы мониторимsniff(iface=interface,prn=sniffMAC, prn=sniffarpip)Вывод:skvoz@puffy: python sniff.py eth1[ff:ff:ff:ff:ff:ff)|(00:30:bd:ca:1e:1e)|(00:30:bd:ca:1e:1e)]IP — [192.168.7.41)|(192.168.7.3)]ARP — [00:0f:a3:1f:b4:ff)|(192.168.7.3)]-[00:00:00:00:00:00)|(192.168.7.41)]Урок №2. С глазу на глазНу вот — сканер готов, можно двигаться дальше. А дальше, кстати говоря,самое интересное. Я уже сказал, что беспроводную связь сейчас используютсамые разные девайсы, в том числе беспроводные видеокамеры,радиотелефоны, домашнее оборудование, работающее по протоколу x10,и даже некоторые автомобильные сигнализации. Не знаю, как у тебя, а уменя прямо руки чешутся — так хочется подключиться к системе видеокамеркакой-нибудь организации и посмотреть, кто, чем и где занимается.Думаешь, это невозможно? Ошибаешься. Процесс нахождения и эксплуатированияв своих целях подобных девайсов называется warviewing(иначе warspying) и впервые был упомянут в культовом журнале «2600».Большинство камер не имеет шифрования, поэтому перехватить передаваемуюими картинку, вообще говоря, ничего не стоит. И даже если попадетсякамера с пресловутым WEP-шифрованием, ничего не изменится.Поскольку «глазик» постоянно нагнетает трафик за счет своего вещания,можно очень быстро перехватить необходимое для взлома количествоинициализационных векторов (IV) и расшифровать ключ. Камеры в большинствесвоем работают по четырем каналам передачи сигнала:channel A = 2,411 ГГцchannel B = 2,434 ГГцchannel C = 2,453 ГГцchannel D = 2,473 ГГцОбычно для поиска таких аппаратов используют направленную антеннудля усиления сигнала и видеоресивер, а в случае необходимости ещеxàêåð 08 / 104 / 07031