새로운 오픈소스 도구인 '스큐런(Skewrun)'이 액티브 디렉토리(Active Directory, AD) 환경에서 흔히 발생하는 커버로스(Kerberos) 인증 오류, 특히 'KRB_AP_ERR_SKEW'(시간 불일치) 문제를 해결하는 혁신적인 방법을 제시했습니다. 이 도구는 시스템 시간을 변경하기 위해 루트(root) 권한을 요구하지 않으면서, 도메인 컨트롤러(Domain Controller, DC)의 정확한 시간을 파악해 특정 프로세스에만 적용하는 방식으로 작동합니다. 이는 공격 머신의 시계가 대상 윈도우 도메인과 크게 동기화되지 않았을 때도 임팩켓(Impacket)이나 넷엑섹(NetExec) 같은 도구를 문제없이 실행할 수 있게 해줍니다.
스큐런은 CLDAP, SMB, NTP, 커버로스, NTLM 등 다양한 네트워크 프로토콜을 통해 DC의 시간을 동적으로 확인합니다. 이후 'libfaketime' 라이브러리를 활용해 실행될 바이너리가 DC의 정확한 시간을 사용하도록 속이는 원리입니다. 특히 v0.9.0부터는 라이브러리 우선(library-first) 아키텍처로 설계되어, 'ad-time'이라는 순수 러스트(Rust) 라이브러리를 통해 AD 프로토콜에서 은밀하게 시간을 추출할 수 있으며, 이는 다른 러스트 기반 도구에도 쉽게 통합될 수 있습니다. 또한, 이 도구는 포렌식 흔적을 최소화하기 위한 다양한 기법을 적용합니다. 예를 들어, 아웃바운드 소켓의 TTL(Time-To-Live) 값을 윈도우 클라이언트와 동일하게 설정하고, 연결 로그에서 일정한 타이밍 서명을 남기지 않도록 로그-노멀(log-normal) 지터(jitter)를 사용합니다.
이러한 기능은 특히 레드팀(Red Team)이나 침투 테스트(Penetration Testing) 전문가들에게 매우 유용합니다. 공격 머신의 시스템 시간을 변경하지 않고도 커버로스 기반 인증이 필요한 도구를 실행할 수 있게 되어, 운영 환경에 미치는 영향을 최소화하면서도 효율적인 테스트를 수행할 수 있습니다. 또한, 포렌식 탐지를 회피하려는 노력은 실제 공격 상황을 모의하는 데 있어 현실성을 높여줍니다. 이는 보안 전문가들이 보다 정교하고 은밀한 방식으로 시스템의 취약점을 평가하고 개선하는 데 기여할 수 있음을 의미합니다.