Nová verzia modulu DSInternals

5. septembra 2015 | Michael Grafnetter | Žiadne komentáre na Nová verzia modulu DSInternals

Vydal som novú verziu PowerShell modulu DSInternals, v ktorej je opravených niekoľko chýb. Ako obvykle, nová verzia je k dispozícii v sekcii Na stiahnutie. Alebo, ak máte PowerShell 5, môžete si modul DSInternals jednoducho nainštalovať z PowerShell Galérie pomocou tohoto príkazu:

Značky:, , , ,

Vykrádanie hesiel zo zálohy Active Directory

15. augusta 2015 | Michael Grafnetter | Žiadne komentáre na Vykrádanie hesiel zo zálohy Active Directory

Nedávno som písal o príkaze Get-ADReplAccount, pomocou ktorého je možné vzdialene vytiahnuť heslá a iné citlivé informácie z doménového kontroléru. Tieto dáta sú na každom doménovom kontroléri uložené v súbore ndts.dit a odtiaľ sa dajú získať aj napriamo. Dokáže to napríklad nástroj NTDSXtact, ale ten je určený pre Linux, nemá moc jednoduché ovládanie a na väčších databázach je dosť pomalý. Preto som do svojho PowerShell modulu DSInternals pridal príkaz Get-ADDBAccount, ktorého použitie je hračka:

Výstup vyzerá úplne rovnako ako v prípade príkazu Get-ADReplAccount:

Získané hashe hesiel sa dajú pomerne jednoducho využiť k ovládnutiu celého Active Directory forestu. Preto si dajte dobrý pozor na to, kto všetko má fyzický prístup k pevným diskom doménových kontrolérov, ich zálohám a v neposledom rade k VHD/VHDX/VMDK obrazom.

Značky:, ,

Vykrádanie hesiel z Active Directory na diaľku

3. augusta 2015 | Michael Grafnetter | 2 komentáre na Vykrádanie hesiel z Active Directory na diaľku

Predstavujem Vám príkaz Get-ADReplAccount, najnovší prírastok do môjho PowerShell modulu DSInternals, ktorý umožňuje z doménových kontrolérov na diaľku získať plaintextové heslá, hashe hesiel a Kerberos kľúče všetkých používateľov. Toho dosahuje tým, že simuluje chovanie príkazu dcromo a cez protokol MS-DRSR si vytvorí repliku všetkých dát v Active Directory databáze. Podľa mojich informácií sa jedná o jediný verejne dostupný nástroj svojho druhu na svete. Ďalej má tieto vlastnosti:

  • Ku svojej činnosti nevyžaduje ani práva doménového správcu. Bohate si vystačí s oprávnením Replicating Directory Changes All, ktoré má napríklad DirSync, Cisco WAAS či zle nakonfigurovaný SharePoint.
  • Otvára dvere dokorán ďalším útokom, ako sú pass-the-hash, pass-the-ticket či PAC spoofing, pomocou ktorých je útočník schopný dostať pod kontrolu celý Active Directory forest. Takéto útoky zvláda napríklad nástroj mimikatz.
  • Nedá sa zablokovať pomocou firewallu, pretože by to obmedzilo základnú funkčnosť Active Directory.
  • V logoch na doménovom radiči zanecháva len minimálnu stopu, ktorú prehliadne väčšina bezpečnostných auditov.
  • Nezneužíva žiadnu bezpečnostnú zraniteľnosť, ktorá by sa dala jednoducho opraviť v rámci aktualizácie systému.
  • Jeho použitie nevyžaduje žiadne špeciálne vedomosti či prípravu. Útočníkovi stačí základná znalosť Active Directory.

Príklad použitia:

Ukážkový výstup:

Potenciál tohoto útoku je teda veľký a mal by si toho byť minimálne vedomý každý manažér bezpečnosti a správca Active Directory.

Ak chcete tento aj ďalšie druhy hackerských útokov na AD vidieť naživo a dozvedieť sa, ako sa proti nim brániť, nenechajte si ujsť moju prednášku Offline a online útoky na Active Directory databázu na tohtoročnom HackerFeste. Ja sám sa teším na prednášky Ondřeja ŠevečkaWilliama Ischanoeho. A pokiaľ si ma „odchytíte“ medzi prednáškami, rád sa s Vami porozprávam pri kávičke, nielen o bezpečnosti Active Directory.

Značky:, , ,

Zoznam príkazov PowerShell modulu DSInternals

13. júla 2015 | Michael Grafnetter | Žiadne komentáre na Zoznam príkazov PowerShell modulu DSInternals

Tu je zoznam príkazov, ktoré nájdete v najnovšej verzii PowerShell modulu DSInternals, 2.16. K väčšine z nich som žiaľ ešte nestihol spísať dokumentáciu.

Offline práca s Active Directory databázou

  • Add-ADDBSidHistory – Pridá SID History k vybranému účtu v súbore ntds.dit.
  • Set-ADDBPrimaryGroup – Zmení primárne členstvo v skupine vybranému účtu v súbore ntds.dit.
  • Get-ADDBDomainController – Zobrazí informácie o súbore ntds.dit.
  • Set-ADDBDomainController – Zmení hodnoty USN a Epoch v súbore ntds.dit.
  • Get-ADDBSchemaAttribute – Zobrazí zoznam LDAP atribútov zo súboru ntds.dit.
  • Get-ADDBAccount – Dešifruje heslá, hashe a kerberos kľúče uložené v súbore ntds.dit.
  • Get-ADDBBackupKey
  • Get-BootKey – Extrahuje Boot Key (AKA Syskey) z registrového súboru.
  • Set-ADDBBootKey
  • Remove-ADDBObject – Fyzicky zmaže objekt z databázy, pričom poškodí jej integritu, lebo nezanechá tombstone a nezneplatní linky.

Online práca s Active Directory databázou

  • Get-ADReplAccount – Cez protokol MS-DRSR získa heslá, hashe a kerberos kľúče používateľov uložené v Active Directory.
  • Set-SamAccountPasswordHash – Nastaví hashe hesla vybranému Active Directory či lokálnemu účtu cez protokol MS-SAMR.
  • Get-ADReplBackupKey

Počítanie hashov

Dešifrovanie hesiel

  • ConvertFrom-GPPrefPassword – Dešifruje heslo uložené v Group Policy Preferences.
  • ConvertTo-GPPrefPassword – Zašifruje heslo pre uloženie do Group Policy Preferences.
  • ConvertFrom-UnattendXmlPassword – Dekóduje heslo uložené v súbore unattend.xml.
  • ConvertTo-UnicodePassword – Zakóduje heslo pre uloženie do súboru unattend.xml alebo LDIF.

Pomocné príkazy

  • Test-PasswordQuality
  • Save-DPAPIBlob
  • ConvertTo-Hex – Prevedie binárne dáta na hexadecimálny reťazec.

Značky:, , , , ,

Moje slajdy z TechEd 2015

31. mája 2015 | Michael Grafnetter | Žiadne komentáre na Moje slajdy z TechEd 2015

Ešte raz ďakujem všetkým účastníkom mojich prednášok na konferencii TechEd 2015, plné kinosály ma príjemne prekvapili. Tu sú slajdy, ktoré som premietal:

A tu sú príklady, na ktorých som ukazoval novinky v PowerShell 5:

(viac…)

Značky:, , ,

Offline zmena členstva v skupinách

31. mája 2015 | Michael Grafnetter | Žiadne komentáre na Offline zmena členstva v skupinách

Spôsobov, ako sa dá hacknúť doménový kontrolér, ak útočník získa fyzický prístup k jeho systémovému disku, existuje veľa. Za zmienku stojí napríklad podvrhnutie SID History, o ktorom som nedávno písal, alebo notoricky známe nahradenie nástroja Klávesnica na obrazovke príkazovým riadkom.

Zo všetkých druhov útokov sa mi najviac páči offline úprava Active Directory databázy. Možnosť takéhoto zásahu do DC je známa už dávno, veď aj kvôli tomu vznikla funkcia Read-Only Domain Controller. Na druhú stranu, keďže je štruktúra Active Directory databázy veľmi komplikovaná a takmer nulovo zdokumentovaná, neexistujú skoro žiadne verejne dostupné nástroje pomocou ktorých by sa dal takýto útok realizovať. Tie, ktoré poznám, sa výhradne sústredia na už spomínanú úpravu SID History. Preto som sa rozhodol vytvoriť powershellovský príkaz Set-ADDBPrimaryGroup, ktorý slúži na offline zmenu členstva v skupinách.

(viac…)

Značky:, ,