
Rendszeresen írunk arról, hogy a hackerek gyakran támaszkodnak a , hogy elkerüljék a felfedezést. Szó szerint , a Windows szabványos eszközeinek használatával, így megkerülve a víruskeresőket és más rosszindulatú tevékenységeket észlelő segédprogramokat. Mi, mint védelmezők, most kénytelenek vagyunk szembenézni a becsapós hackelési technikák szomorú következményeivel: egy jól elhelyezett alkalmazott ugyanazt a megközelítést használhatja az adatok (céges szellemi tulajdon, hitelkártya számok) titkosított ellopására. És ha nem siet, hanem lassan és észrevétlenül dolgozik, rendkívül nehéz lesz — de mégis lehetséges, ha a megfelelő megközelítést és a megfelelő , — az ilyen tevékenységet azonosítani.
Másrészről, nem szeretném démonizálni az alkalmazottakat, hiszen senki sem akar „1984” Orwell világához hasonló üzleti környezetben dolgozni. Szerencsére léteznek olyan gyakorlati lépések és trükkök, amelyek jelentősen megnehezíthetik az informátorok életét. Megvizsgáljuk a rejtett támadási módszereket, amelyeket hackerek alkalmaznak olyan alkalmazottakkal, akiknek van némi technikai háttérük. Később tárgyalni fogunk ezek kockázatainak csökkentési lehetőségeiről – a technikai és szervezeti lépések megfogalmazása.
Mi a probléma a PsExec-szel?
Edward Snowden, joggal vagy jogtalanul, a belső adatlopások szinonimájává vált. Ne felejtsen el ránézni más informátorokkal kapcsolatban, akik szintén megérdemlik a hírnevet. Fontos megemlíteni egy lényeges pontot Snowden módszereivel kapcsolatban: ahogy tudjuk, ő nem telepített semmilyen külső rosszindulatú szoftvert!
Ellenkezőleg, Snowden némi társadalmi manipulációt alkalmazott és kihasználta rendszergazdai pozícióját a jelszavak gyűjtésére és a felhasználói adatok létrehozására. Semmi bonyolult — semmilyen , támadással vagy .
A szervezetek alkalmazottai nem mindig vannak Snowden egyedi helyzetében, de a „túlélek a legszükségesebb dolgokból” koncepciójából számos tanulságot le lehet vonni — ne végezzenek olyan rosszindulatú tevékenységeket, amelyek felfedezhetőek, és különösen óvatosan használják a hitelesítő adatokat. Ezt a gondolatot jegyezzék meg.
és az unokatestvére lenyűgözte az informatikai biztonsággal foglalkozó pentestereket, hackereket és bloggerek sokaságát. A mimikatz-szal kombinálva a psexec lehetővé teszi a támadók számára, hogy a hálózaton belül mozogjanak anélkül, hogy tudniuk kellene a jelszót nyílt formában.
A Mimikatz az NTLM-hash-t az LSASS folyamattól rögzíti, majd átadja a tokent vagy a hitelesítő adatokat – úgynevezett „pass the hash” támadás – a psexec-en keresztül, lehetővé téve a támadó számára, hogy bejelentkezzen egy másik szerverre egy másik felhasználó nevében. És ahogy egyre újabb szerverekre lép, a támadó további hitelesítő adatokat gyűjt, bővítve a lehetőségeit elérhető tartalom keresésében.
Amikor először kezdtem dolgozni a psexec-szel, egyszerűen varázslatosnak tűnt – köszönet , a psexec zseniális fejlesztőjének – de tudom a zajos összetevőiről is. Egyáltalán nem diszkrét!
Az első érdekes tény a psexec-ről, hogy egy rendkívül bonyolult SMB hálózati fájlprotokollt használ a Microsoft-tól. Az SMB-n keresztül a psexec kis binary fájlokat küld a céleszközre, elhelyezve azokat a C:Windows mappában.
Ezután a psexec egy Windows-szolgáltatást hoz létre a másolt bináris fájllal, és „meglehetősen „meglepő” névvel indítja el, PSEXECSVC. Ezt valójában látni lehet, ahogyan én is tettem, figyelve a távoli gépet (lásd alább).

A psexec névjegykártyája: a „PSEXECSVC” szolgáltatás. Ez egy bináris fájlt indít el, amelyet SMB-n keresztül helyeztek el a C:Windows mappába.
Mint végső lépés, a másolt bináris fájl RPC-kapcsolatot létesít a célszerverrel és parancsokat fogad (alapértelmezés szerint – a Windows cmd-shell-en keresztül), azokat végrehajtja és az inputot és outputot a támadó otthoni gépére irányítja. Így a támadó egy alap parancssort lát – amely ugyanolyan, mintha közvetlenül csatlakozott volna. Sok összetevő és egy nagyon zajos folyamat! A psexec belső folyamatait leíró bonyolult mechanizmus magyarázza azt az üzenetet, amely zavarba ejtett az első tesztjeim során néhány évvel ezelőtt: „Starting PSEXECSVC …” és a parancssor megjelenése előtti késleltetés.
A psexec az Impacket-tól valójában megmutatja, hogy mi történik „a motorháztető alatt”.
A psexec az Impacket-től valójában megmutatja, hogy mi történik „a motorháztető alatt”.

A psexec az Impacket-től valójában megmutatja, hogy mi történik „a motorháztető alatt”.
Nem meglepő: a psexec hatalmas mennyiségű munkát végzett "a motorháztető alatt". Ha részletesebb magyarázatra van szüksége, nézze meg ezt csodálatos leírást.
Nyilvánvaló, hogy egy rendszergazdai eszközként, ami az eredeti célja volt, a psexec használata során nincs semmi hátborzongató a Windows összes mechanizmusának "zümmögésében". Azonban a támadó számára a psexec bonyodalmakat okozhat, és egy óvatos, ravasz belső embernek, mint Snowden, a psexec vagy hasonló eszköz túl nagy kockázatot jelenthet.
És itt jön a Smbexec
Az SMB egy ügyes és diszkrét módja a fájlok átvitelének a szerverek között, és a hackerek régóta közvetlenül beépültek az SMB-be. Gondolom, már mindenki tudja, hogy nem szabad az SMB 445-ös és 139-es portjait az interneten, ugye?
2013-ban a Defcon-on Eric Milman () bemutatta a , hogy a pentesterek kipróbálhassák az SMB diszkrét feltörését. Nem ismerem az egész történetet, de később az Impacket tovább fejlesztette a smbexecet. Valójában a teszteléshez kifejezetten az Impacket Python szkriptjeit töltöttem le. .
A psexec-től eltérően a smbexec kerüli a potenciálisan észlelhető bináris fájl célgéphez való átvitelét. Ehelyett az eszköz teljes mértékben "terítékről" él, a helyi Windows parancssor futtatásával.
Ez az, amit tesz: parancsot küld a támadó gépről SMB-n keresztül egy speciális bejövő fájlba, majd létrehoz és futtat egy bonyolult parancssort (mint egy Windows szolgáltatás), ami ismerős lesz a Linux felhasználóinak. Röviden: natív Windows shell cmd-t indít, átirányítja a kimenetet egy másik fájlba, majd ezt SMB-n keresztül visszaküldi a támadó gépére.
A legjobb módja ennek megértésére a parancssor tanulmányozása lesz, amelyet sikerült megszereznem az eseménynaplóból (lásd lent).

Nem ez a legnagyobb bemenet/kimenet átirányítási mód? Egyébként a szolgáltatás létrehozása 7045-ös eseményazonosítót kap.
A psexec-hez hasonlóan ez is létrehoz egy szolgáltatást, amely végzi a munkát, de a szolgáltatás ezután eltávolításra kerül – csak egyszer használatos a parancs végrehajtására, majd eltűnik! A kártevõ biztonsági szakember, aki a célgép monitora, nem fog tudni észlelni nyilvánvaló dolgokat. támadási indikátorok: nincs rosszindulatfájlként futó program, nincs állandó szolgáltatás telepítve, és nincs bizonyíték RPC használatára, mivel az SMB az egyetlen adatátviteli eszköz. Zseniális!
A támadó számára elérhető a "pseudo shell", amely késleltetésekkel működik a parancsok küldése és a válasz megérkezése között. De ez bőven elegendő ahhoz, hogy a támadó - akár belsős, akár külső hacker, aki már rendelkezik egy platformmal - érdekes tartalom után kutasson.

Az adat visszaküldésére a célgépről a támadó gépre . Igen, ez ugyanaz a Samba , de csak az Impacket által Python-szkriptre átdolgozott változata. Valójában az smbclient lehetővé teszi, hogy diszkréten FTP-t szervezzünk SMB-n keresztül.
Lépjünk egy lépést hátra, és gondolkozzunk el arról, hogy ez mit jelenthet a munkavállaló számára. A kitalált forgatókönyvemben mondjuk, hogy egy blogger, pénzügyi elemző vagy jól fizetett biztonsági tanácsadó használja a személyes laptopját a munkához. Egy bizonyos mágikus folyamat következtében megsértődik a céggel, és "mindent elenged". A laptop operációs rendszerétől függően vagy az Impact Python verzióját, vagy a Windows smbexec vagy smbclient exe fájlját használja.
Mint Snowden, ő is ellopja egy másik felhasználó jelszavát vagy azzal, hogy a válláról lesi le azt, vagy szerencséje van, és rábukkan egy szövegfájlra, amely tartalmazza a jelszót. Ezekkel az adatokkal új szintű jogosultságokkal kezd el barangolni a rendszeren.
DCC feltörés: nincs szükség "ostoba" Mimikatz-ra
Az előző bejegyzéseimben a pentestinggel kapcsolatban nagyon gyakran használtam a mimikatz-t. Ez egy nagyszerű eszköz az autentikációs adatok - NTLM hash-ek és akár a nyílt jelszavak - összegyűjtésére, amelyek a laptopokon rejtőznek, és arra várnak, hogy felhasználják őket.
Az idők változtak. A monitorozó eszközök jobbak lettek a mimikatz észlelésében és blokkolásában. Az információbiztonsági rendszergazdák is több lehetőség birtokába jutottak a pass the hash típusú támadások kockázatának csökkentésére.
Szóval mit tehet egy okos alkalmazott, hogy többlet hitelesítő adatokat gyűjtsön anélkül, hogy a mimikatz-ra támaszkodna?
Az Impacket csomagban található egy eszköz, amelyet neveznek , amely kinyeri a hitelesítő adatokat a Domain Credential Cache-ből, vagy röviden DCC. Amennyire értem, ha egy tartományi felhasználó bejelentkezik a szerverre, de a domain vezérlő nem elérhető, a DCC lehetővé teszi a szerver számára, hogy hitelesítse a felhasználót. Így vagy úgy, a secretsdump lehetővé teszi, hogy minden, elérhető hash-t megkapjunk.
A DCC-hash-ek nem NTML-hash-ek és az ő nem használhatók PtH-támadáshoz.
Nos, megpróbálhatod feltörni őket, hogy megszerezd az eredeti jelszót. Azonban a Microsoft okosabb lett a DCC kezelésében, és a DCC-hash-ek feltörése rendkívül nehézzé vált. Igen, van , „a világ leggyorsabb jelszófeltörője”, de GPU-ra van szükség a hatékony működéshez.
Ehelyett próbáljunk meg Snowden módjára gondolkodni. Az alkalmazott személyesen szociális mérnöki munkát végezhet, és esetleg információt szerezhet arról a személyről, akinek a jelszavát fel akarja törni. Például megtudhatja, hogy valaha feltörték-e ennek a személynek az online fiókját, és megvizsgálhatja a jelszavát nyíltan, hogy keresgéljen valamilyen nyomot.
És ez az a forgatókönyv, amelyet követni döntöttem. Tegyük fel, hogy az insider tudta, hogy a főnöke, Cruella, többször is feltörték különböző webes forrásokon. Miután elemezte ezek közül néhány jelszót, rájön, hogy Cruella hajlamos a „Yankees” baseballcsapat nevét és a mögöttes aktuális évet használni – „Yankees2015”.
Ha most próbálod reprodukálni ezt otthon, letölthetsz egy kicsi "C" , amely megvalósítja a DCC hash-elési algoritmust, és lefordíthatod. , tudomásul véve, hogy támogatja a DCC-t, így azt is használhatod. Tegyük fel, hogy az insider nem akar bajlódni a John the Ripper tanulmányozásával, és szeretné futtatni a „gcc”-t elavult C-kódra.
Belső szerepet alakítva többféle kombinációt futtattam, és végül rájöttem, hogy Cruella jelszava „Yankees2019” (lásd lent). Küldetés teljesítve!

Egy kis szociális mérnökség, egy kis tippelés és egy csipet Maltego – és már úton vagy a DCC hash feltörése felé.
Javaslom, hogy itt fejezzük be. Még visszatérünk erre a kérdésre más publikációkban, és további lassú és rejtett támadási módszereket vizsgálunk, továbbra is az Impacket csodálatos eszközkészletére támaszkodva.
Forrás: habr.com
