HTML

Az élet kódjai

Csináld maga. Senki nem csinálja meg helyetted.

Friss topikok

  • sdani: Sajnos nekem is hasonló érzéseim vannak az R kiszorulásával kapcsolatban. Remélem jobban fogja tar... (2024.04.29. 10:48) R meetup
  • sdani: Nagyon jók ezek a bejegyzések! Feszültséggel teli, fordulatos, mint egy jobb krimi. :D Abba ne hag... (2024.04.29. 10:35) Wgel CTF
  • sdani: @Travis.CG: Egy kis szerencse sosem árt. :D (2024.03.01. 13:19) A bioinformatika helyzete 2024-ben
  • Travis.CG: Szóval az akadémiai szféra mazochistává tett, amit a Pinephone-al élek ki? Hmm, érdekes összefüggé... (2023.10.05. 18:23) Új barátom az Informatikai titkárságról
  • Travis.CG: Túl nagy a hype körülötte, ezért túlzó elvárások vannak vele szembe. Ha a korábbi chatbotokhoz kép... (2023.02.28. 06:28) chatGPT, a bioinformatikus

Paranoia indul

2021.08.14. 21:45 Travis.CG

Amolyan kibicként szoktam olvasgatni a számítógépes biztonsági szakértők eszmefuttatásait. Ott többször előkerült, hogy érdemes-e bevételként IPhone bugokra vadászni, mert milyen nagy pénzjutalom jár értük. A profik ott le szokták hűteni a kedélyeket, hogy nem olyan könnyű bugokat találni, ráadásul több ember is kell hozzá, akik a telefon egy-egy komponensét behatóbban ismerik. A hibák megtalálása időigényes folyamat, és ha találnak is valamit, a pénzjutalom nem fedezi az emberek bérét, cég működését, stb.

Aztán volt az a hír, amikor egy bűnöző telefonját fel akarták törni az FBI munkatársai, de még az Apple is azt állította, hogy képtelenség. Persze végül feltörték a bűnüldözők, de ott a készülék fizikailag a birtokukban volt.

Ezekből nekem az jött le, hogy bár vannak sebezhetőségek a telefonokban, azért összességében nagyon biztonságosak. A legnagyobb rizikót a felhasználó jelenti a béna jelszavaival és a linkekre történő ész nélküli kattintgatással.

Aztán jött a Pegasus, és megmutatta, hogy gyakorlatilag semmi nem kell ahhoz, hogy a telefonokba behatoljanak. Hiszen minek tegyék nyilvánossá az általuk ismert sebezhetőséget pár millióért, ha egy erre épülő céget is alapíthatnak? Szóval engem meglepett, hogy ilyen szintű kémprogram létezik.

Ezek szerint az ellen nem tehetünk semmit, hogy a telefonunkra feljusson. Azt megtudhatjuk, hogy Androidos mobiltelefonunk kompromittálódott-e? Mit tegyünk? Először is, kérjünk profi segítséget. Aki pedig olyan, mint én, hogy szeret Q-t játszani a pizsamában, az megpróbálkozhat a következőkkel is:

Mivel a telefonnak el kell küldenie az összegyűjtött adatokat az operátornak, ezért megpróbálkozhatunk elfogni ezt a kapcsolatfelvételt. Ha például a Pegasust nézzük, akkor az elsődlegesen wifi-n keresztül küldi el az adatokat. (SMS-t is tud használni, de mivel az pénzbe kerül a célpontnak, ezért nem ez a preferált mód) Már csak az a kérdés, hogyan tudjuk megnézni telefonunk hova küldözget adatokat?

Először is szükség lesz egy számítógépre, amit wifi hotspottá alakítunk. Ha kábeles internetre kötjük a gépet, akkor a wifi beállításoknál megoszthatjuk a netet. Telefonunk pedig erre kapcsolódjon. Vagyis a telefon teljes internetes forgalma a számítógépen keresztül fog menni.

Most pedig nézzük át ezt a forgalmat! Telepítsük a WireSharkot, ami képes elfogni a számítógép hálózati csatolóján keresztül áthaladó adatforgalmat. Egy mezei usernél magasabb jogosultások kellenek ehhez, ezt érdemes észben tartani.

A program elindítása után kiválaszthatjuk, melyik hálózati csatolót figyelje a program. Válasszuk ki a wifi-t. Láthatjuk, a képernyő hirtelen tele lesz üzenetekkel. Amennyiben úgy gondoljuk, elég adatunk, állítsuk le a csomagok elfogását, és mentsük le azokat a File -> Export Packet Dissections -> As CSV. Ez már egy egyszerű táblázatos adat lesz, amivel már megkezdhetjük az igazi munkát.

wireshark.jpg

Gyakorlatilag át kell nyálazni ezt az adatot, kiszűrni azt, ami legitim és megtalálni valamit, ami igyekszik elrejtőzni. Ráadásul fennáll a veszélye, hogy a program nem is működött abban az időben, amikor mi a WireSharkkal figyeltük a kommunikációt.

Viszont ez a rejtőzködési hajlamot az előnyünkre is formálhatjuk. Például ha egy napra elzárjuk a hálózattól a telefont, akkor amint netet kap, nagyobb valószínűséggel akar haza szólni. Ráadásul egy kémprogram ritkán kommunikál, tehát azokat a kapcsolatokat kell keresni, amik kevésszer fordulnak elő. A Pegasus dokumentációjából azt is tudjuk, hogy az adatokat anonimizált hálózaton keresztül küldi, ami a gyakorlatban azt jelenti, hogy valamilyen cloud szolgáltatón bérelt számítógépekre mennek. (A botrány kirobbanásakor épp Amazonról jöttek kérések a telefonok felé.)

Lássunk egy konkrét példát. Az én esetemben a telefon a 10.42.0.147 IP-t kapta. A lementett CSV fájl a testdissection.csv néven létezik. Azokra a kapcsolatokra vagyok kíváncsi, amelyek a telefonról indultak, és ritkák:

awk -F"," '{if($3 == "\"10.42.0.147\"")print $4}' testdissection.csv | sort | uniq -c | sort -nrk 1

wireshark2.jpg

Az érdekes IP címek a sor végén lesznek. Ezeket leellenőrizhetjük olyan weboldalakon is, mint amilyen a db-ip.com is. Ami nálam érdekes lehet, az három Amazonos (91.228.74.133, 52.84.109.x), és az Akamai-os (184.51.9.98). Ezek cloud szolgáltatók, akik sok legitim vállalkozásnak nyújtanak támogatást, ezért remek rejtekhelyek a kémprogramok szerver oldali komponenseinek is. A bérelt virtuális gépek pedig minden újraindulás esetén másik IP-t kapnak.

Ez abból is látszik, hogy ha csak rákeresek az 52.84.109 tartományra a fájlomban, akkor máris megvan a supersonicads.com, tehát ez egy reklámokkal foglalkozó cég. Ez nem is meglepő, mert a teszt idején a Dühös Madarakkal játszottam, hogy generáljak egy kis adatforgalmat.

Természetesen ez a módszer csak aktív megfigyelésnél működik. Ha a program bármilyen okból eltávolította magát, akkor nem fogunk találni semmit. Igazából akkor sem biztos, hogy találunk valamit, ha tényleg ott a program a telefonunkon. Az Akamai-os címre például nem tudok magyarázatot adni, pedig nagy valószínűséggel az is egy legitim kapcsolat.

Azért arról sem szabad megfeledkezni, hogy ezek a programok bármennyire is szofisztikáltak, azért emberek írják, követhetnek el hibákat, és ezeknek a hibáknak nyoma maradhat. Ezeket is megpróbálhatjuk megtalálni. Android esetén az SDK tartalmaz egy adb nevű programot, amivel átnézhetjük a telefon mélyebb rétegeit is.

Először is, engedélyezni kell a fejlesztői beállításokat, majd a fejlesztői beállításoknál engedélyezni kell az USB hibakeresést. Ezután a indíthatjuk az adb-t.

sudo adb start-server
adb -d shell

Kezdődhet is a móka, ugyanis egy linux terminált kapunk, csak épp a telefonon. Megnézhetjük a futó alkalmazásokat top-al, ps-el. A rendszer logokat innen nehéz elérni (meg készülékenként változik a helyük), de az adb-vel a telefon indulása óta gyűjtött logokat megnézhetjük:

adb logcat -d >mylogfiles.txt

A probléma ezekkel a keresgélésekkel, hogy nem igazán tudjuk, mit is kell keresni. Mik lehetnek a gyanús folyamatok? Mik lehetnek azok a weboldalak, amelyek tényleg a Pegasushoz köthetőek? Szerencsére az Amnesty International összegyűjtötte ezeket nekünk.

Tehát ha végig akarjuk nézni, hogy van-e gyanús folyamatunk, akkor azt a következő módon tehetjük meg:

./adb shell 'ps -A | grep -v google | grep -v android' >~/testprocess.txt
for i in `cat processes.txt`; do grep $i testprocess.txt ; done

Nos, az én telefonomon így találtam meg a gatekeeperd folyamatot. Először engem is kivert a víz, de aztán rákerestem erre a folyamatra, és úgy tűnik, hogy ez az Android rendszer része. Más lenne a helyzet persze, ha IPhone-on találnánk meg. Lehet még próbálkozni az mvt nevű programmal is, de nekem ezt nem sikerült működésre bírni.

Szólj hozzá!

Címkék: biztonság android

A bejegyzés trackback címe:

https://cybernetic.blog.hu/api/trackback/id/tr5616654662

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása