- Hacking. Wi-Fi Penetration on MacOS
- installation requirements
- identify the target access point
- capturing a traffic
- brute forcing
- my results
- conclusion
- additional information
- You May Also Enjoy
- DELL. Configure Dell 10 gigabit switch with Ansible
- DELL. Upgrade firmware on Dell S4048 switch (S-series, OS9)
- DELL. Disabling SupportAssist on switch
- DELL. Setup SSH server on OS9 switch (S4048 10G switch)
- Добываем Wi-Fi соседа стандартными средствами MacOS
- Принципы добычи паролей соседского Wi-Fi
- Добываем пароли. Соседи вешайтесь 😉
- Как взломать пароль Mac без его изменения
- Шаг 1 Войдите режим восстановления
- Шаг 2 Отключить SIP
- Шаг 3 Извлеките целевой Plist
- Шаг 4 Скопируйте Plist на машину атакующего
- Шаг 5 Загрузите и выполните скрипт Python Hashdump
- Шаг 6 Взлом Хеша
- Как защитить себя от атак режима восстановления
Hacking. Wi-Fi Penetration on MacOS
Disclaimer: this post for education purposes only.
A wireless network with WPA/WPA security not guarantee a total safety. WiFi packets could be sniffed by an attacker that can stole a WiFi passwords, then he connects to your secured network. But he is need to decode a hash of password. The complexity and time to get a password phrase completely depends on the password. Passwords consists only digits cracks minutes or hours, the password “HasGUS%f@$SAfga63efSA%$S(SACSASj)” require a hundred years to crack it.
MacOS isn’t known as an ideal operating system for hacking without customization, but it includes native tools that allow easy control of the Wi-Fi radio for packet sniffing. Changing channels, scanning for access points, and even capturing packets all can be done from the command line.
This manual show a manual to crack WiFi password from my MacBook Pro with MacOS 10.13 (HighSierra). I want to save the instruction to the future. If you want to repeat it you should familiar with console terminal.
Let’s start cracking 😉
installation requirements
Install [JamWifi][https://github.com/0x0XDev/JamWiFi] app. It is a deauthenticating application in which unwanted clients from a Wi-Fi network have to keep off, jamming and especially their connection will be departed like dust in a second. Download and unzip by this link.
Test that all tools installed and available. The commands below should success return some help page about itself:
identify the target access point
- Basic Service Set Identifier (BSSID).
- Service Set Identifier (SSID).
- Radio Frequency (Channel).
- Access Point (AP).
Now, this command will be scanning the available Wi-Fi.
Wait till the installation is done. I want to hack my network named Ruslan Gainanov and BSSID 6e:57:ca:24:09:8c and channel 1 .
Copy the BSSID (my BSSID= 6e:57:ca:24:09:8c ) of the target Access Point.
capturing a traffic
- Run a command to help find a wireless interface ( en0 )
Deauth connected devices with Jam Wi-Fi app. Open the app. Press Scan, chose the target network and press Monitor, then press Do It! to restart all connections. Wait 15 seconds and press Done
When you “Done” with death, run quickly next command. You have to capture a handshake in time
Wait until you see some gotten frames, like this
After you have it press «Control + C» to stop capturing.
Merge the Beacon and Handshake
brute forcing
- Brute Force — A brute-force attack consists of an attacker submitting many passwords or passphrases with the hope of eventually guessing correctly.
- Wordlist — A written collection of all words derived from a particular source.
.1. Generating HCCPAX File
Hashcat doesn’t take cap files, only hccapx files. So we need convert this files. Other way to made it is use a online tool.
Review the result. You should see the phrase Networks detected: X. Written X WPA Handshakes . The example of success result is:
.2. Now, everything are right to execute the hashcat. We can use a wordlist or a pattern to broke a password. Using a wordlist (example of wordlists — https://github.com/kennyn510/wpa2-wordlists.git):
Using a pattern — 8 digits:
For more examples press here. For more patterns, see the documentation.
my results
I use the hashcat with pattern, that works on GPU. On my MacBook Pro, it yields a performance of 41kH/s: it tests 41000 passwords in a second.
The cracking a WiFi password consists 8 digits took me twenty minutes (20 mins, 17 secs).
Is true that my network named Ruslan Gainanov has a password — 12345670 .
conclusion
Please be aware that attacking Wi-Fi Protected Access (WPA) is illegal unless you have permission from the owner’s access point or affiliation involved. This post should be used as Educational Purposes, to help the public understand how hackers take advantage of your access.
additional information
- Youtube Video — video example of hacking WiFi password
- Hacking: Aircrack-ng on Mac OsX — Cracking wi-fi without kali in parallels — the blog article that I based
- Hacking: Wi-Fi Penetration on MacOS — another good article on Medium
- Cracking WPA/WPA2 with hashcat — brief manual of hashcat using
- New attack on WPA/WPA2 using PMKID — a new technique to crack WPA PSK without capturing a full EAPOL 4-way handshake
Updated: July 17, 2020
You May Also Enjoy
DELL. Configure Dell 10 gigabit switch with Ansible
Use Ansible playbooks to easy configure Dell Networking OS9 system. The post contains many practical examples of using dellos9 modules
DELL. Upgrade firmware on Dell S4048 switch (S-series, OS9)
Instructions for upgrading the last firmware of Dell Networking system.
DELL. Disabling SupportAssist on switch
SupportAssist is a daemon for sending technical reports to Dell servers. It enables by default. Here we disable this unwanted feature (and may be unsecured).
DELL. Setup SSH server on OS9 switch (S4048 10G switch)
Setup and configure ssh server on Dell Networking system with RSA and password authentication.
Источник
Добываем Wi-Fi соседа стандартными средствами MacOS
Я всегда был фанатом багов и уязвимостей «на поверхности», всегда завидовал чувакам, которые пишут эксплойты для самых защищённых ОС, а сам умел только скрипткиддить (термин из нулевых). Однако мой пост про уязвимости в системах контроля версий набрал более 1000 лайков на Хабре и остаётся топ1 постом за всю историю Хабра, несмотря на то, что был написан 9(!) лет назад.
И сегодня я хотел бы на пальцах показать и рассказать про такую штуку, как вардрайвинг. А точнее, как стандартными средствами MacOS можно добыть пароли от Wi-Fi соседей. Нелёгкая забросила меня на очередную квартиру. Как-то исторически сложилось, что я ленивый. Пару лет назад я уже писал, что моя лень, новая квартира и провод Beeline (бывшая Corbina) помогли мне найти багу у Билайна и иметь бесплатно интернет в их сети. «Сегодня» происходит «подобное», я на новой квартире, нет даже провода, но есть много сетей у соседей.
Заколебавшись расходовать мобильный трафик, я решил, что «соседям надо помогать», и под «соседями» я имел введу себя…
Когда-то давно я увлекался вардрайвингом, как раз именно до того момента, пока не обнаружил в старой квартире провод Билайна ) Там тоже было много сетей рядом и первое, что пришло в голову — мне нужен wi-fi. С тех пор прошло много лет. Обновляя свои данные про вардрайвинг, я нашёл в сети упоминание, что 90% работы спец.утилит «сегодня» можно сделать стандартными сервисами MacOS. Забегая вперёд, я хотел бы отметить, что не являюсь автором данного метода, я сам нашёл его в забугорном инете, просто, скажем, это вольный перевод и подробное, художественное описание способа добыть wi-fi пароли стандартными методами макоси, не более.
Принципы добычи паролей соседского Wi-Fi
Надо понимать, что имея Wi-Fi-приёмник, который есть сегодня в любом ноутбуке, ты можешь «снифать» весь беспроводной трафик около себя. Раньше, когда сети были открыты, достаточно было прийти в макдак и за вечер можно было получить 100-200 акков к одноклассникам. Открытая сеть + отсутсвие https делали своё дело.
Сейчас всё интереснее, все переходят на https (пользуясь случаем, хочу передать привет Lets Encypt. Любимый Lets Encypt, я в телевизоре и передаю вам привет, спасибо, что вы есть) и даже про WEP уже все забыли, все роутеры юзают WPA2. Но, как известно, меч был придуман раньше щита, и никакой WPA2 не помеха человеку, голодного до интернета и видящего около себя кучу Wi-Fi.
Продолжим. Имея Wi-Fi карту, т.е. любой современный ноутбук, мы можем снифать трафик возле себя. Но он бесполезен, ибо зашифрован. Единственное, что можно разобрать из него — метаданные, типа название сетей итп и «рукопожатия», handshake, т.е. авторизации пользователей в сети. Они происходят каждый раз, когда пользователь подключается к wi-fi-сети. Например, когда сосед приходит домой и его смартфон в кармане цепляется к домашнему wi-fi.
Если совсем грубо, рукопожатия представляют собой обычный хэш типа md5.
Это правда совсем грубо. Ключ там получается путем 4096 раундов SHA1. Если быть точным, то формула такая: Key = PBKDF2(HMAC−SHA1, passphrase, ssid, 4096, 256)
Кстати, можно заметить, что замешивается название точки, поэтому при уникальном названии предвычисления не помогают. И это аргумент за то, чтобы менять название точки на свое.
И да, я солгал в своём первом абзаце про «дешифрацию», это техническая ошибка и подмена понятий. Конечно, дешифровать хэш невозможно. Это как говорить «лицензия такси», зная, что деятельность такси в РФ не лицензируется. Но просто так удобней )
Так вот. Всё, что нам надо — это найти среди траффика радиосети вокруг себя рукопожатия и «дешифровать» их. И раньше была куча софта для всего это. Кто-то умел грамотно сканировать радиоканал, кто-то отлично его сниффал в дампы, кто-то находил хэши в дампах, кто-то умел их ломать. Сейчас всё стало проще, благодаря Тиму Куку. 90% работы за стороннее ПО делает стандартное приложение «Беспроводная диагностика». Многие его видели — когда проблемы с Wi-Fi, мак предлагает проверить сеть. Бесполезная утилита, которая даёт советы типа «перезагрузите роутер». Ну, т.е. мне так казалось )
Добываем пароли. Соседи вешайтесь 😉
Итак, погнали. Зажимаем Alt и кликаем по логотипу Wi-Fi в верхней панели. Вообще Alt и клик всегда открывает дополнительные опции в MacOS, но это тема отдельного топика.
Помимо прочей доп.инфы, которая порой очень полезная, мы можем запустить программу «Беспроводная диагностика». Думаю, все кто пользуются маком, помнят это окно.
Но нас интересует другое. Кликаем по пункту меню «Окно» и видим набор дополнительных утилит.
И тут прям есть всё, что надо, даже больше ) Конкретно нас интересуют 2 пункта. Сканирование и Анализатор. Первый покажет нам все сети вокруг с доп.инфой, типа на каком канале и на какой частоте работает сеть. Второй пункт позволит сниффать трафик на конкретном канале и частоте.
Нажимая на кнопку «Начать» в Анализаторе, Wi-Fi-карточка переключится в режим приёма и начнёт сканировать радиочастоту вокруг себя, дамп будет писаться в /var/tmp.
Файлы *.wcap это наши дампы, которые содержат бесполезный для нас траффик и нужные нам рукопожатия.
Надо понимать, что нам необходимо поймать именно рукопожатия. Т.е. нам надо поймать и сниффать траффик, когда сосед приходит домой вечером. Либо, если у вас есть ещё одно устройство на макоси, либо любой другой оси, вам помогут нюкеры. Программки, рассылающие поддельные команды деаунтефикации. Например, JamWiFi. Но это если прям совсем не терпится ) На моём опыте, достаточно просто запустить Анализатор в 6 вечера на часок.
«Стоп» скажите вы, «ты же обещал взлом сетей соседа стандартными методами?» ) Ха! И вы мне поверили?! На самом деле мы стандартными методами сделали 90% работы через GUI. У нас уже есть хэши, всё что нам надо — разбить их. Уверен, можно всё сделать и стандартными утилитами, но проще юзать hashcat. Собираем софт через brew или из сорцов. Первым делом нам надо конвертировать наш дамп, оставив в нём только наши хэши. Этим занимается бинарник cap2hccapx из пакета.
…
Мы видим, что успели перехватить 2 рукопожатия, попробуем «сломать их». Для этого нам нужен naive-hashcat:
Кошка пошла работать. В среднем у меня на маке я имею скорость в 2000 хешей в секунду, на скрине 7к, но это только старт. Судя по этому документу, на 1080gtx можно получить скорость в 400к хешей в секунду. Однако у меня всего 2 рукопожатия и не такой уж и большой словарь, поэтому пробежаться по нему не составило проблем. Смотрим файл home-wifi.txt, вуаля:
Вот и всё. К сожалению, эта сеть через несколько квартир от меня и на другом этаже, пинг 7 секунд ) Надо ловить соседа снизу или брать внешнюю wi-fi-карту с нормальной антенной. Но принцип, думаю, понятен.
Удачных сканирований вам, юные подованы вардрайверы. И большое спасибо разработчикам Kali Linux MacOS за такие подарки.
Источник
Как взломать пароль Mac без его изменения
MacBook с выключенным питанием может быть скомпрометирован менее чем за три минуты.
С помощью всего лишь нескольких команд хакер может извлечь хеш-пароль и взломать его без их ведома.
Цель этой статьи – получить файл .plist целевого компьютера, содержащий хешированный пароль.
Затем, используя скрипт Python для преобразования файла .plist в формат, который может интерпретировать Hashcat,а он брутфорсит пароль.
Самый простой способ для выполнения этой атаки требует физического доступа к целевому MacBook, режиму восстановления, флэш-накопителю USB, другому MacBook и Hashcat.
Также можно оставить USB-накопитель и MacBook злоумышленника, вместо этого создав временного пользователя на целевом MacBook, где могут быть выполнены команды.
После этого временный пользователь может быть удален.
Однако в этом руководстве мы покажем способ USB-накопителя.
Режим восстановления – один из нескольких режимов запуска, поддерживаемых устройствами Mac.
Он включает в себя ряд инструментов для переустановки macOS, сброса паролей учетных записей и настройки пароля прошивки.
Хотя эта функция была разработана, чтобы помочь пользователям разблокировать свою учетную запись и стереть внутренний жесткий диск, ее часто злоупотребляют хакеры, пытающиеся получить несанкционированный доступ к конфиденциальным файлам.
Начиная с Mojave 10.14, macOS больше не позволяет пользователям (даже root) изменять файлы .plist, содержащие хешированные пароли во время работы операционной системы.
Теперь эти данные можно получить только в режиме восстановления.
Флэш-накопитель USB необходим для перемещения файла .plist цели на MacBook злоумышленника.
Флэш-накопитель USB, используемый в этом учебном пособии, имеет формат FAT32, но также должны работать форматы NTFS и APFS.
В выделенном скрипте Python имеется несколько команд, специфичных для MacOS, которые упрощают преобразование файла .plist в формат, который может интерпретировать Hashcat.
Вот почему нужен другой MacBook (или хотя бы другой аккаунт на целевом MacBook).
Чтобы определить пароль Mac для цели, не меняя его, хэш должен быть пробручен и взломан.
MacOS отлично справляется с защитой пароля цели.
Невозможно просмотреть пароли пользователей в текстовом формате.
Решения для крекинга на основе процессора (например, JohnTheRipper) буквально потребуют десятилетия, чтобы взломать один хэш и, следовательно, не эффективны.
Hashcat с достойным графическим процессором настоятельно рекомендуется.
Шаг 1 Войдите режим восстановления
Чтобы войти в режим восстановления, убедитесь, что целевой MacBook полностью выключен.
Затем нажмите кнопку питания, удерживая Command + R на клавиатуре.
Примерно через 30 секунд появится логотип Apple.
Если появится экран ниже, режим восстановления был успешно активирован, и читатели могут перейти к следующему этапу этого руководства.
Если MacBook запрашивает пароль, это означает, что прошивка защищена и настроена для предотвращения атак режима восстановления.
К сожалению ( или к счатью 🙂 ), это означает, что целевой MacBook не уязвим для атаки, показанной в этой статье.
Шаг 2 Отключить SIP
Защита целостности системы (SIP) от Apple – это функция безопасности, предназначенная для ограничения изменения томов macOS.
Начиная с Mojave, каталог /var/db/dslocal/nodes/Default/ находится в рамках защиты SIP и будет возвращать сообщение Operation not permitted, если кто-либо попытается просмотреть его.
Он даже запрещает пользователю root изменять и получать доступ к избранным каталогам.
В одном тесте я обнаружил, что каталог Default / не может быть просмотрен или изменен даже в режиме восстановления.
Это было немного аномалией, так как другие тесты допускали доступ к стандарту / без первого отключения SIP.
Чтобы узнать, нужно ли отключать SIP, откройте терминал в режиме восстановления.
В строке меню в верхней части экрана выберите «Utilities», затем “Terminal”.
Затем используйте приведенную ниже команду ls -R.
Эта команда будет пытаться рекурсивно (-R) перечислить файлы в каталоге Default /.
Если вывод возвращает много файлов .plist, не отключайте SIP и переходите к следующему этапу этого урока.
Если вывод возвращает «Operation not permitted», отключите SIP, используя команду csrutil ниже.
После появления приглашения на перезагрузку снова выполните завершение работы и загрузку в режим восстановления.
Если SIP отключен, безопасно перейти к следующему этапу этого урока.
Шаг 3 Извлеките целевой Plist
Вставьте USB-накопитель в целевой MacBook.
Подождите несколько секунд, чтобы он мог автоматически примонтироваться.
Затем скопируйте требуемый файл .plist на USB-накопитель, используя следующую команду cp.
Целевой .plist будет использовать имя пользователя цели (например, tokyoneon.plist).
Обязательно измените имя имя жесткого диска в приведенной выше команде.
Вероятно, это будет «macOS», но может отличаться, если человек приобрел MacBook несколько лет назад и это Mojave или High Sierra.
В этом случае имя жесткого диска может отображаться как «Macintosh HD» или другие некоторые варианты.
Кроме того, измените имя на USB-накопитель, вставленный в MacBook.
Необходимый файл был извлечен, целевой MacBook можно закрыть, а в оставшейся части учебника требуется отдельный MacBook, принадлежащий злоумышленнику.
Если SIP был отключен на предыдущем шаге, повторно включите его перед выключением с помощью следующей команды.
Шаг 4 Скопируйте Plist на машину атакующего
Используя MacBook злоумышленника, вставьте USB-накопитель, содержащий целевой объект plist и скопируйте его (cp) в каталог / tmp /.
Каталог / tmp / жестко закодирован в скрипт Python на следующем шаге, чтобы сделать его общим для всех читателей.
Пока файл .plist цели находится в каталоге / tmp /, скрипт Python сможет преобразовать его в хэш.
Шаг 5 Загрузите и выполните скрипт Python Hashdump
Скрипт Python, используемый для преобразования извлеченного файла .plist в предпочтительный формат Hashcat, был взят из структуры Empire и может быть найден в GitHub.
Откройте терминал и загрузите скрипт hashdump со следующей командой curl. Аргумент -o сохранит скрипт с именем файла hashdump.py.
Затем дайте разрешение скрипту на выполнение командой chmod.
Наконец, выполните скрипт hashdump.py с привилегиями root.
Удалите текст, окружающий хэш (показано ниже), и сохраните его в файле с именем «hash.txt». Затем переместите hash.txt на машину с Hashcat.
Шаг 6 Взлом Хеша
Чтобы взломать хэш цели с помощью Hashcat, используйте команду ниже.
Атака по словарю определяется с помощью аргумента -a 0. Машинный режим хеширования включен, используя аргумент -m 7100 и требуется для всех хэшей macOS, извлеченных из версии 10.8 или новее.
Чтобы улучшить общую производительность Hashcat, установите для -w (или -workload-profile) значение 4, чтобы максимизировать скорость взлома.
Наконец, аргумент -potfile-path используется для сохранения хеш-взлома в указанном файле.
Также возможно выполнить гибридные атаки, когда комбинации цифр добавляются к концу каждого слова в списке слов. Например, «password12» и «password77».
Гибридная атака включена с аргументом -a 6.
На этот раз словосочетание «everyword”, содержащее 479 000 английских слов, используется в сочетании с? D? D, которое сообщает Hashcat добавлять всевозможные комбинации двух цифр к каждому паролю в списке слов.
Чтобы добавить три или четыре цифры, используйте «? D? D? D» и «? D? D? D? D» соответственно.
Пока Hashcat работает, ниже отображаются данные.
Если пароль угадан правильно, он появится в нижней части терминала, и Hashcat остановится.
Как защитить себя от атак режима восстановления
- Есть несколько вещей, которые могут защитить пользователей от таких атак (см. Ниже).
Включите защиту паролем прошивки. Чтобы предотвратить загрузку злоумышленника в режиме лайв USB, однопользовательского режима или режима восстановления, установите пароль прошивки.
Прошивка будет запрашивать только дополнительный пароль при загрузке, если кто-то попытается загрузить MacBook в однопользовательский, загрузочный менеджер, целевой диск или режимы восстановления.
Тем не менее, пароль прошивки не будет защищать жесткий диск, если диск физически удален из MacBook.
Для большей защиты включите шифрование жесткого диска.
- Включите шифрование FileVault.
FileVault можно включить, перейдя в «System Preferences», затем «Security & Privacy» и нажав «Turn On FileVaul (вам может потребоваться сначала разблокировать настройки). По завершении MacBook перезагрузится и потребует пароль для разблокировки компьютера при каждом запуске Mac. Ни одна учетная запись не будет разрешена для входа в систему автоматически, и для доступа к однопользовательскому режиму также потребуется пароль.
Примечание: Информация для исследования, обучения или проведения аудита. Применение в корыстных целях карается законодательством РФ.
Источник