2016-06-23 4 views
1

cmd.exe에 dll을 주입하여 입력 명령을 연결하여 파일에 저장하려고합니다. 나는 주사를하고 WH_KEYBOARD에 후크를 사용하여 원하는 정보를 얻었습니다.C++ cmd.exe 모니터링 명령에 DLL 삽입

어떻게하면 다른 방법으로 cmd.exe 프로세스의 입력을 후킹 할 수 있습니까?

답변

0

WinAPI 호출 cmd.exe을 살펴보고 명령 문자열을 인수로 취해서 찾아서 연결할 수 있습니다 (예 : Microsoft Detours. cmd.exe의 내부 기능을 연결할 수도 있지만 이식성은 떨어집니다.

내 Windows 시스템 (Windows 10 v1511 x86_64)을 x64dbg에로드하고 ReadConsoleW을 두 번 호출합니다. 첫 번째 :

Address=00007FF6331A29CC 
Disassembly=call qword ptr ds:[<&ReadConsoleW>] 
Destination=cmd.&ReadConsoleW 

은 콘솔을 통해 입력 된 모든 명령을 처리 한 후에 호출됩니다.

x64 fastcall convention 당 두 번째 인수 (버퍼)는 rdx입니다. 공식적으로 출력 매개 변수이지만 함수를 호출하기 전에 입력 된 명령의 CRLF 종료 복사본을 가리 킵니다.

전화를 걸거나 거기에서 추적하여 더 적합한 장소를 찾을 수 있습니다.