정상 프로세스를 이용하는 방법은 오래되었고 최근에도 이용 중이다. 


cacls.exe 정상 프로세스를 호출. 여기서 CreationFlags는 CREATE_SUSPENDED, 실행되지 않고 중지된 상태로 호출.



그리고 중간 과정 생략하고... WriteProcessMemory 함수를 사용하여 cacls.exe 프로세스 핸들의 메모리에 UPX으로 Pack된 Binary를 삽입한다.




추후 한차례의 VirtualProtect -> WriteProcessMemory을 한 뒤 SetThreadContext -> ResumeThread를 통해 잠자고 있던 악성 프로세스를 깨워서 실행시킨다.



암튼 이러하다. 오래되었고, 그만큼 혼동하기 쉽다. 

Posted by Ec0nomist