DCSync to jeden z exploitów, który może być użyty w zaplanowanym atakuKILLCHAIN. Pozwala obejść restrykcje dostępu do kontrolera domeny i wyciągnąć z niego dane, nie posiadając najwyższych uprawnień. Wszystko sprowadza się do wykorzystania luki w mechanizmie replikacji Active Directory. Atak przeprowadzony może być z dowolnego hosta w środowisku. Jest o tyle niebezpieczny i trudny do wykrycia, gdyż korzysta z natywnych funkcji Microsoft i nie wymaga wykonywania żadnego kodu na kontrolerze domeny. O tym jak hakerzy przeprowadzają ten atak i jakie są tego konsekwencje opisaliśmy poniżej.

Narzędzie Mimikatz oferuje wiele sposobów wyodrębniania i manipulowania poświadczeniami, ale DCSync jest prawdopodobnie jednym z najbardziej użytecznych i przerażających sposobów. Atak ten polega na symulowaniu zachowania kontrolera domeny i proszeniu inne kontrolery domeny o replikację informacji przy użyciu Directory Replication Service Remote Protocol (MS-DRSR). Zasadniczo, pozwala to na podszywanie się pod DC i proszenie o hasła kont z pamięci kontrolera. Co najważniejsze, można to zrobić bez uruchamiania żadnego kodu na DC, w przeciwieństwie do innych metod jakimi Mimikatz wyciąga dane bezpośrednio z serwera Active Directory. Komenda DCSync może być użyta na przykład do uzyskania wartości hash NTLM kont, w tym konta KRBTGT, co umożliwia atakującym utworzenie Golden Ticketu. Ważną kwestią tego ataku jest to, że korzysta on z natywnej i niezbędnej funkcji Active Directory, której nie można wyłączyć – chodzi o replikację.

Samo wykonanie DCSync jest dosyć proste. Jedynym wymaganiem, o które trzeba się martwić jest posiadanie konta z uprawnieniami do replikacji zmian w domenie. Prawa te, kontrolowane są przez oddelegowane w domenie odpowiednich uprawnień. Posiadanie uprawnień “Replicating Directory Changes” oraz “Replicating Directory Changes All” pozwala wykonać atak. Domyślnie, uprawnienia te są ograniczone do grup Domain Admins, Enterprise Admins, Administrators i do Domain Controllers. Jednak dla sprawnego hakera, po przeprowadzeniu dobrego rozpoznania w domenie, nie jest problemem znaleźć lukę w uprawnieniach i dojść do nich w inny sposób.

Konto \hacker posiadające dwa uprawnienia niezbędne do wykonania ataku DCSync

Jeśli chcemy szybko wykryć wszystkich użytkowników w domenie, którzy mogą wykonać atak DCSync, po za kontami uprzywilejowanymi, należy uruchomić poniższy skrypt:


Wynikiem wykonania skryptu będą konta, które nie powinny posiadać uprawnień do replikacji, a mimo to je posiadają.

Jeśli atakujący posiada następujące prawa to samo wykonanie polega na uruchomieniu Mimikatz’a i wykonaniu jednego, prostego polecenia, w którym należy wskazać nazwę domeny oraz nazwę konta użytkownika, którego dane chcemy pozyskać. Jako odpowiedź otrzymamy wszelkie informacje i poświadczenia wybranego konta. Przedstawiono to na screenie poniżej:

Wynik wykonania DCSync – uzyskane informacje o koncie \krbtgt

Jak się chronić?


Najlepszą ochroną przed tym chwytliwym atakiem jest kontrolowanie uprawnień opisanych wcześniej i sprawdzanie czy tylko niezbędne konta będą miały możliwość replikowania informacji z Twojej domeny. Zawsze niektórzy użytkownicy będą mieli takie prawa, dlatego powinni być szczególnie chronieni. Prewencję dobrze zacząć od uruchomienia powyższego skryptu, aby mieć pewność, że nie ma żadnych niewłaściwych użytkowników w domenie z uprawnieniami do tego ataku.

Przeprowadzenie ataku DCSync zaprezentowaliśmy na filmie poniżej.