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:, ,

Offline zmena SID History

24. mája 2015 | Michael Grafnetter | 2 komentáre na Offline zmena SID History

Jedným z možných útokov na bezpečnosť Active Directory je podvrhnutie SID History. V Microsofte sú si toho plne vedomí a preto sú v Active Directory implementované 2 mechanizmy, ktoré zabraňujú efektívnemu zneužitiu SID History:

  • Hodnoty atribútu sIDHistory prichádzajúce z externých trustov sú vo východzom stave ignorované vďaka funkcii SID Filtering.
  • Atribút sIDHistory sa nedá len tak zmeniť na ľubovoľnú hodnotu ani pomocou konzoly Active Directory Users and Computers, ani cez PowerShell či nejaké API. Jediný podporovaný spôsob je použitie nástroja ADMT, ktorý vie prekopírovať existujúci SID z dôverovanej domény do SID History v dôverujúcej  doméne.

Ako však zapísať do SID History akúkoľvek hodnotu a obísť tak druhý z uvedených mechanizmov?

(viac…)

Značky:, , ,

Ako resetovať heslo účtu krbtgt

30. marca 2015 | Michael Grafnetter | Žiadne komentáre na Ako resetovať heslo účtu krbtgt

V prípade kompromitácie niektorého z doménových radičov hrozí, že sa útočník dostal k heslu krbtgt účtu, vďaka čomu môže začat vystavovať ľubovoľné Kerberos tikety a získať tak práva ktoréhokoľvek používateľa či služby. To je katastrofický scenár, pretože si nikdy nemôžete byť istí, čo všetko tam útočník stihol napáchať a kde všade si ponechal zadné vrátka. V takejto situácii je najbezpečnejšie obnoviť celý AD forest zo zálohy, alebo ho rovno preinštalovať.

Pokiaľ sa rozhodnete pre obnovu forestu, nezabudnite 2-krát po sebe resetovať heslo účtu krbtgt. Táto operácia môže mať tiež nepríjemné následky, lebo si prestanú dôverovať doménové kontroléry a nebude medzi nimi fungovať replikácia. Ak to nastane, je nutné dočasne zakázať službu Kerberos na všetkých serveroch, ktoré zatiaľ nemajú doreplikovanú novú verziu hesla a následne ich reštartovať. Po reštarte si natiahnu Kerberos tikety od serveru s novým heslom a mali by sa s ním úspešne zreplikovať. Potom je na nich možné službu Kerberos znovu spustiť.

Je vidno, že v závislosti od veľkosti prostredia sa jedná o komplikovaný proces náchylný na chyby a výpadky. Páni z Microsoft Consulting Services našťastie zverejnili skript, ktorý tento postup značne zjednodušuje. Stačí spustiť nasledujúcu sekvenciu príkazov a nechať sa previesť Wizardom:

Skript pred zmenou najprv overí dostupnosť všetkých doménových kontrolérov a po resete vynúti replikáciu nového hesla na všetky DC.

Značky:, ,

Správa hesiel lokálnych administrátorov

28. marca 2015 | Michael Grafnetter | Žiadne komentáre na Správa hesiel lokálnych administrátorov

Chceli by ste mať na každom doménovom PC lokálny účet Administrator s unikátnym, náhodným a pravidelne meneným heslom, bez nutnosti to riešiť manuálne? Potom Vám môžem doporučiť veľmi zaujímavý open-source nástroj Local admin password management solution, ktorého autorom je Jiří Formáček z Microsoftu.

AdmPwd GUI

Značky:, ,