Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
instrumentation_callbacks — Windows 10 21h1에서 TLS 변수를 사용하여 모든 시스템 호출이 포착되도록 하는 계측 콜백(instrumentation callback)을 시연하는 개념 증명. | Kitploit
도구/GitHubGitHub/deputation/instrumentation_callbacks
Dynamic Analysis (Sandboxing)Reverse EngineeringDebuggersBinary Analysis
GitHubdeputation/instrumentation_callbacks

instrumentation_callbacks

Windows 10 21h1에서 TLS 변수를 사용하여 모든 시스템 호출이 포착되도록 하는 계측 콜백(instrumentation callback)을 시연하는 개념 증명.

저장소 보기

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
160284년 전Kitploit 검토 완료

instrumentation_callbacks

Instrumentation 콜백은 Windows의 재미있는 문서화되지 않은 부분입니다. 이 저장소의 모든 코드는 MIT 라이선스에 따라 공개됩니다. 이 저장소는 Google 스타일 C++ 간격을 사용합니다.

문제, 버그를 발견하거나 특정 기능이 추가되어야 한다고 생각되면 PR을 환영합니다.

그것들은 무엇인가?

Instrumentation 콜백은 콜백을 설정한 프로세스에서 전달되는 모든 syscall(및 예외!)을 처리할 수 있게 해줍니다.

콜백의 문제점.

물론 모든 syscall이 포착되므로, 콜백이 실행되는 동안 그 안에서 더 이상 syscall을 발행해서는 안 됩니다. 그렇지 않으면 무한 재귀에 빠질 수 있습니다.

이것은 콜백 내에서 할 수 있는 작업을 크게 제한하거나 적어도 일종의 설계 문제를 제기합니다. 하지만 다음 단락에서 이 문제에 대한 상당히 우아한 해결책을 보게 될 것입니다.

완벽하지는 않습니다. 공격자가 의도적으로 변수를 설정하여 콜백을 비활성화할 수 있기 때문입니다. 하지만 분석 목적으로는 거의 완벽합니다.

가능한 해결책.

이 문제에 대한 한 가지 해결책은 콜백의 분석 기능을 켜고 끄는 플래그를 true/false로 설정하는 것입니다. 기본적으로 다른 syscall이 이미 처리 중인 경우 모든 syscall을 통과시키는 것입니다.

하지만 이렇게 하면 대부분의 syscall이 새어 나가게 됩니다.

이 저장소는 대신 TLS 종속 변수를 설정하여 콜백 내에서 syscall을 발행할 수 없는 문제를 해결합니다. 이를 통해 모든 스레드의 모든 syscall을 처리하면서도 스스로 syscall을 호출할 수 있습니다. 놓치는 syscall은 콜백 내에서 발행하는 syscall뿐이며, 이는 (소프트웨어를 분석하는 경우와 같은 대부분의 상황에서) 무시해도 됩니다.

가상의 용도.

Instrumentation 콜백은 많은 가능한 용도가 있습니다. 그 중 하나는 안티 치트 목적으로 사용될 수 있습니다. 프로세스에서 오는 syscall을 분석하여 시스템 DLL에 바이트 패치와 훅을 채울 필요 없이 불법적인 주소 공간에서 오는지 또는 악의적인 목적으로 사용되는지 판단할 수 있습니다.

또한 프로세스 내에서 코드 실행을 얻는 데 사용할 수 있습니다. 메모리를 할당하고 쓸 수 있다면 프로세스 정보를 설정하여 syscall을 실행하는 스레드를 하이재킹하여 사용자의 콜백을 호출하도록 할 수 있습니다.

물론, 저는 이 저장소나 다른 저장소의 코드를 치트/악성 소프트웨어 개발에 사용하는 것을 용납하지 않습니다.

이것으로 무엇을 하는지는 당신 자신의 책임입니다.

도구 다운로드