Author Topic: Pwnagotchi  (Read 2807 times)

Offline GigaWatt

  • Администратор
  • Топ Експерт
  • *****
  • Posts: 12894
  • Gender: Male
  • Не фалширам
Pwnagotchi
« Opened on 25.08.2020, Tuesday, 16:06:40 »
Code: [Select]
https://pwnagotchi.ai/






Интересно мало направииче што собира handshakes од Wi-Fi мрежи. Принцип на работа: многу сличен на Aircrack-NG, со тоа што е многу мало и преносливо, така да, може во џеб да си го чувате :P :D.

Е сега, малку околу него и Wi-Fi cracking 8).

Уредите кои се врзуваат за определена Wi-Fi мрежа, прво мора да го разменат password-от за таа мрежа со AP-то (access point-от, т.е. Wi-Fi мрежата). Овој првичен пакет на податоци се нарекува handshake (здравоооо :), јас сум тој и тој и сакам да се врзам за тебе :P :D). Се разбира, оваа размена е енкриптирана. WEP енкрипцијата е веќе минато (legacy) и ретко кои Wi-Fi уреди ја користат бидејќи лесно се пробива. За разлика од неа, WAP и WAP2 се прилично тешки за пробивање. Практично и нема разлика во тежината на пробивање на лозинките кај WAP и WAP2.

Е сега, што значи ова. Ова значи дека и password-от при оваа првична размена е енкриптиран токму со самиот password за мрежата, како и некои други параметри (SSID - името на AP-то, MAC - физичката адреса на AP-то, итн.). Алгоритмот за енкрипција е во основа некој вид на SHA. Значи имаме public key и private key. Се разбира, private key се генерира врз база на претходно споменатите параметри (password, SSID, MAC, итн.). Форматот на првично разменетиот пакет, т.е. handshake-от е јавно достапен (т.е. му се знае структурата) и точно се знае во кој дел од пакетот се разменува и лозинката (password-от) за Wi-Fi мрежата. Проблемот е што овој пакет е енкриптиран :-\, така да, директно да дознаеме кој е password-от од овој пакет, не можеме.

Што ни останува како опција. Па... практично единствен начин (без дополнителни информации) е да пробаме brute forcing да направиме на алгоритмот (пакетот), при што, софтверот кој пробува да ја извади информацијата што овој пакет ја содржи во себе, практично треба да ја проба секоја можна комбинација за зададен број на карактери (на пример, 10), при што игра улога и тоа дали ќе се користат специјални карактери, симболи, карактери од други јазици (како на пример кирилични карактери), итн. Практично, ова е невозможна мисија, освен ако немаме дополнителни информации на располагање, со што би му ја олесниле работата на софтверот. На пример, знаеме дека password-от содржи само класични ANSI бројки и букви и дека не е подолг од, на пример 8 карактери. Со ова се намалува времето потребно за brute forcing, но сепак е прилично долго... можно е да трае денови (практично зависи од јачината на комјутерот и што има како хардвер истиот во него)... а ова не е секогаш практично (на пример, ни треба интернет пристап денес, не по 5 дена :P).

Е сега, можеби некој ќе праша, а како да го добиеме овој првично разменет пакет кога некој уред се врзува за Wi-Fi мрежата... треба, на пример, да чекаме некој да се врати од работа и да проба да се врзе преку, на пример, телефонот за неговата Wi-Fi мрежа. Да, може и ова да го пробаме, но... ова бара многу време, а и не секогаш знаеме кога некој клиент ќе проба да се врзе за Wi-Fi мрежата... едноставно има премногу променливи во ова сценарио. За среќа, има и друг пристап. Можеме да направиме deauth (деавтентизација) на определен уред (или уреди) веќе врзани за Wi-Fi мрежата, при што, по default, истите ќе пробаат пак да се врзат за неа... и ова е моментот :). Тогаш се разменува тој „магичен пакет“ кој го содржи password-от ;). Има неколку начини на кои можеме да деавтентзираме определен уред од мрежата. Најпрост е со генерирање на шум (noise) во каналот на кој уредот е врзан за мрежата (може и на сите канали... не прави разлика :P :D). Ова уредот го перцепира како лошо ниво на сигнал и при неколку пропаднати пакети пратени кон мрежата, истиот се исклучува од неа и пробува повторно да се врзе за истата. Можно е и AP-то да го деавтентизира уредот поради тоа што веќе нема да го „гледа“ во својот „видокруг“... зависи од хардверското и софтверското решение и на AP-то, и на уредот (уредите) кои се врзани за AP-то. Без разлика, поентата е да го „натераме“ уредот да „падне“ од Wi-Fi мрежата и да проба пак да се врзе за неа ;).

Една од работите што ги прави pwnagotchi е токму ова. Деавтентизира клиенти и собира handshakes. Базиран е на single board комјутер (Raspberry Pi Zero W, но најверојатно може и на друг хардвер да работи бидејќи целиот проект е Open Source) и може да комуницира и со други pwnagotchi уредчиња кои му се во близина и да размени handshakes со нив :D (што е мое е твое, што е твое е мое :D), но прво ве прашува дали сакате да стане „другарче“ со тој друг pwnagotchi... so cute :-* :D. Исто така, ако добие пристап до интернет, се врзува за серверот поставен од оние кои го развиваат и ги upload-ира своите handshakes, со што расте базата на handshakes, а со тоа и се подобруваат алгоритмите за пробивање на овие handshakes ;) (се ова е опционално, се разбира ;)). Има опција и да „донираш“ hashing power, т.е. твојот компјутер биде користен за brute forcing на handshakes, со што им помагаш на сопствениците pwnagotchi низ целиот свет да најдат password за некоја од мрежите кои биле „издушкани“ од pwnagotchi.

Е сега, што не може да прави... всушност, најважното :-\. Не може да прави brute forcing на passwords на Wi-Fi мрежи... ова е пред се ограничување на хардверот. Сепак, станува збор за прилично прост хардвер (од аспект на класичен компјутер), така да... да бидам искрен, и нема баш некоја поента да имаш вакво чудо, освен како играчка или за твој личен интерес (навлезен си во brute forcing на алгоритми или нешто слично).

Во секој случај, ако имате слободно време (јас моментално немам :P :D) интересно е да се разгледа како проект ;). Можете истите работи што ги прави pwnagotchi да ги правите и под Linux со Aircrack-NG (само не го земајте од default repository, не се update-аат често и верзиите кои стојат таму се доста стари, земете си го од GitHub ;)), но дел од работите таму не се автоматизирани. Се разбира, може да се автоматизираат со скрипти, тоа не е проблем ;).

Мислам дека вреди да се разгледа како проектче :). Интересно е за играње, ако не повеќе :D.
"This is really a generic concept about human thinking - when faced with large tasks we're naturally inclined to try to break them down into a bunch of smaller tasks that together make up the whole."

"Newton's third law: The only way humans have ever figured out of getting somewhere is to leave something behind."

Offline Atanas

  • Експерт
  • ****
  • Posts: 729
  • Gender: Male
Re: Pwnagotchi
« Reply #1 on 26.08.2020, Wednesday, 11:19:52 »
Ова е интересно, би можел да го пробам јас на моето Raspberry некогаш.

Во врска со deauth на уредите, додека одев во средно на интернет пронајдов некој софтвер кој можеше да се стави во ESP32 микроконтролер, бидејќи тоа има Wi-Fi модул,  и со него да правиш деавтентизација на уреди. Е, што е тука интересно...  ::) На часовите имаше ученици кои играа некои online игри на мобилните и меѓусебно си пуштаа интернет (hotspot), па кога ќе "рушев" еден уред, целиот тим заминуваше по вода. Исто така, тој софтвер нудеше и да спамаш голем број на Wi-Fi мрежи т.е Access points.

Тоа некои од можностите, но знам дека имаше и нешто друго. Еве линк каде може да се симне, се е убаво објаснето и има некои видеа, па може да видите за што точно станува збор и ќе имате подобра слика  :D

Во секој случај, да резимирам, примената му е најдобра на некои места каде има повеќе луѓе и да им ги "рушиш" уредите од страна и да гледаш сеир  (македонски синдром  ;D ) ;)

Code: [Select]
https://github.com/SpacehuhnTech/esp8266_deauther

Offline GigaWatt

  • Администратор
  • Топ Експерт
  • *****
  • Posts: 12894
  • Gender: Male
  • Не фалширам
Re: Pwnagotchi
« Reply #2 on 26.08.2020, Wednesday, 15:09:56 »
Исто така, тој софтвер нудеше и да спамаш голем број на Wi-Fi мрежи т.е Access points.

Зрачи шум на сите канали од еднаш, без да таргетира конкретен SSID ;).

Во секој случај, да резимирам, примената му е најдобра на некои места каде има повеќе луѓе и да им ги "рушиш" уредите од страна и да гледаш сеир  (македонски синдром  ;D ) ;)

Се вика harmless pranking :P :D... и не сме единствени, и западњациве се исти за оваа работа :P :D.

Не видов дали ова уредчево што ти го имаш спомнато, може да зачувува handshakes. Може?
"This is really a generic concept about human thinking - when faced with large tasks we're naturally inclined to try to break them down into a bunch of smaller tasks that together make up the whole."

"Newton's third law: The only way humans have ever figured out of getting somewhere is to leave something behind."

Offline dr-mr

  • Експерт
  • ****
  • Posts: 778
  • Gender: Male
Re: Pwnagotchi
« Reply #3 on 26.08.2020, Wednesday, 18:42:03 »
Еве уште нешто на таа тема, со ESP8266.
Code: [Select]
https://null-byte.wonderhowto.com/how-to/scan-fake-attack-wi-fi-networks-with-esp8266-based-wifi-deauther-0193837/
Дали и колку се тие уреди практични  и ефикасни за нешто повеќе од harmless pranking, тоа е нешто друго.
Сепак се ВРТИ !!!

Offline GigaWatt

  • Администратор
  • Топ Експерт
  • *****
  • Posts: 12894
  • Gender: Male
  • Не фалширам
Re: Pwnagotchi
« Reply #4 on 26.08.2020, Wednesday, 20:37:15 »
Дали и колку се тие уреди практични  и ефикасни за нешто повеќе од harmless pranking, тоа е нешто друго.

Добро, целта на pwnagotchi-то е да собере handshakes. Тоа што најпрактично е да направиш deauth за да изснифа handshake, тоа е само нуспојава. Pwnagotchi не генерира шум цело време на сите канали. Го прави тоа краткотрајно, само по потреба. Практично, ако некој уред како телефон на пример, е врзан за некоја Wi-Fi мрежа, може и да не забележи сопственикот дека уредот се исклучил и повторно приклучил на мрежата ;).
"This is really a generic concept about human thinking - when faced with large tasks we're naturally inclined to try to break them down into a bunch of smaller tasks that together make up the whole."

"Newton's third law: The only way humans have ever figured out of getting somewhere is to leave something behind."

Offline Atanas

  • Експерт
  • ****
  • Posts: 729
  • Gender: Male
Re: Pwnagotchi
« Reply #5 on 27.08.2020, Thursday, 12:18:49 »
Не видов дали ова уредчево што ти го имаш спомнато, може да зачувува handshakes. Може?

Мислам дека не може.