
또 하나의 슬립 암호화 도구입니다. 이것도 기본 GitHub 저장소 이름을 사용했습니다.
또 하나의 sleep encryption 기능입니다. 또한 기본 GitHub 리포지토리 이름을 사용했습니다.
TpAllocWork + TpPostWork + TpWaitForWork + TpReleaseWork를 사용하여 콜백을 생성 + 실행 + 정리합니다.
콜백은 일련의 rop 가젯을 대기열에 추가하는 다소 조잡한 어셈블리입니다. 이 가젯은 (하드코딩된 값이거나 TpAllocWork 매개변수로 전달된 구조체 내부의 오프셋에 기반한) 인자를 올바른 레지스터로 팝한 다음, 다음 가젯/함수로 리턴합니다. 일부 함수 호출 사이에는 스택 포인터를 40바이트 이동시키는 가젯과 쓰레기 값 5개를 푸시하여 패딩을 생성하는데, 이는 제가 겪은 이상한 스택 문제를 해결하기 위한 꼼수입니다. 이것이 아마도 호출 스택이 지저분해 보이는 이유이기도 하지만, 다른 방법으로 해결할 방법을 모르겠습니다.
이걸 확장해서 실제로 유용하게 만들려고 한다면, (적어도 제 쪽에서는) 이상한 스택 꼬임이 많이 발생할 것입니다. 또한, 제가 찾은 rop 가젯이 모든 Windows 버전에 존재한다고 보장할 수 없습니다 (저는 Server 2016에서 개발 중이었습니다).