본문 바로가기
Security

Hidden Process – CreateDesktop

by 올엠 2020. 12. 2.
728x90

예전에 찾았던 자료인데, 단순하면서도 재미있는 코드라서 다시 정리해봤다.

아래 링크를 보면 윈도우의 세션 관리 기능을 이용해서 프로세스를 다른 데스크톱에서 실행하여 사용자에게 숨길 수 있는 코드를 예제로 제공한다.

https://github.com/MalwareTech/CreateDesktop/blob/master/Main.cpp

 

위 코드와 관련하여, 함께 봐야 할 내용이 윈도우에서 어떻게 세션을 관리하는지에 대한 내용을 이해할 필요가 있다.

https://blogs.msdn.microsoft.com/coreinternals/2009/08/19/session-window-station-desktop/

 

 

요약해 보면, 윈도우는 사용자가 로그인하거나 서비스가 실행되는 세션 관리를 위해 Windowstation과 Desktop이 있는데 WindowStation 내에는 여러개의 Desktop이 존재하고, 각 Desktop은 같은 Desktop에 속한 Desktop들이 함께 사용하는 클립보드와 Atom Table(부가 환경 정보?)을 관리한다.

그리고 Default Desktop은 화면에 표시하는 역활을 하는데 위 예제는 기본 Desktop인 Default를 사용하지 않고 새로운 데스크톱을 만듬으로써 사용자 화면에 보이지 않도록 하는 내용이다.

 

예전에 썻던 책 구조를 알아야 개발이 보인다의 3장 4. Desktop 변경하기에 보다 자세히 정리했었는데  기본은 위 내용이라 할 수 있다.

http://www.yes24.com/Product/Goods/57562020

 

구조를 알아야 개발이 보인다-윈도우편

C++로 풀어보는 윈도우 구조C/C++, 특히 C++은 윈도우 내부 동작에 관여하는 프로그램을 개발하도록 설계된 언어입니다. 만약 C/C++을 공부할 때 언어를 먼저 배우고, 개발 중의 오류를 해결하는 과

www.yes24.com

 

300x250
300x250

댓글0