
원격 프로세스에서 스레드를 생성하지 않고 TLS 콜백을 활용하여 페이로드를 실행
이 방법은 TLS 콜백을 이용하여 원격 프로세스에서 스레드를 생성하지 않고 페이로드를 실행합니다. 이 방법은 Threadless Injection에서 영감을 받았으며, RemoteTLSCallbackInjection은 주입된 페이로드를 트리거하기 위해 API 호출을 사용하지 않습니다.
PoC는 다음 단계를 따릅니다:
CreateProcessViaWinAPIsW 함수를 사용하여 일시 중단된 프로세스(예: RuntimeBroker.exe)를 생성합니다.g_FixedShellcode와 메인 페이로드)를 모두 주입합니다.그러면 g_FixedShellcode 셸코드는 메인 페이로드를 호출하기 전에 원본 TLS 콜백의 주소를 복원하여 메인 페이로드가 한 번만 실행되도록 합니다. TLS 콜백은 프로세스 수명 동안 여러 번 실행될 수 있으므로, 원본 코드 경로를 원래 TLS 콜백 함수로 복원하여 페이로드가 트리거되는 횟수를 제어하는 것이 중요합니다.
다음 이미지는 구현된 RemoteTLSCallbackInjection.exe가 메인 페이로드로 cmd.exe를 실행하는 모습을 보여줍니다.
