[하루한줄] CVE-2020-17049: Kerberos Bronze Bit Attack
URL
CVE-2020-17049: Kerberos Bronze Bit Attack – Practical Exploitation
Target
standard Windows versions since 2000
Explain
Kerberos는 Windows Active Directory 도메인 내에서 사용자, 서버 및 기타 리소스를 서로 인증하는 데 사용되는 프로토콜입니다.
Kerberos의 기존 공격 방법인 Golden Ticket 및 Silver Ticket 공격의 변형인 Bronze Bit 공격이 공개되었습니다.
Golden/Silver Ticket 공격
내부 네트워크에 침입한 이후 동일한 네트워크의 Kerberos 인증시스템을 사용하는 다른 시스템의 자격 증명을 위조하는 공격기법
Bronze Bit는 Microsoft가 Kerberos 프로토콜에 추가 한 S4U2self
및 S4U2proxy
프로토콜을 악용하며 Kerberos 프로세스가 변조된 서비스 티켓을 감지할 수 없어 발생합니다. 공격을 위해서는 다음 조건이 만족되어야 합니다.
- 해커는 내부 네트워크의 시스템 하나(Service1)를 장악해 Active Directory 내에 접근 권한이 있어야 합니다.
- 침입한 시스템인 Service1에 대한 암호 해시가 필요합니다.
- Service1에는 다른 시스템(Service2)에 대한 제한된 신뢰 관계가 있습니다.
위 조건이 만족되면 해커는 다음과 같은 공격이 가능합니다.
- 사용자를 식별하고 티켓을 반환하는
S4U2self
에서 User2의 Service1 서비스 티켓을 가져옵니다. 이때force-forwardable
옵션을 사용하면 반환하는 서비스 티켓이 전달 가능한 티켓으로 변환됩니다. - Service1의 해시로 티켓을 복호화하고 플래그 값의 두 번째 비트를 0→1 로 변경한 뒤 다시 암호화합니다.
- 조작된 티켓은
S4U2proxy
에서 전송되고 Service2에 대한 서비스 티켓이 User2로 반환되어User2.ccache
의 디스크에 기록됩니다. - 해커는 Service1 유저(User1) 권한으로 Service2 유저(User2)의 Kerberos 서비스 티켓을 얻을 수 있어 User2 권한으로 Service2에 액세스가 가능합니다.
이는 Golden/Silver Ticket과 유사한 공격 방법이지만 단일 비트 플립을 이용했기 때문에 Bronze Bit로 명명되었습니다.
Reference
https://blog.netspi.com/cve-2020-17049-kerberos-bronze-bit-theory/
본 글은 CC BY-SA 4.0 라이선스로 배포됩니다. 공유 또는 변경 시 반드시 출처를 남겨주시기 바랍니다.