[Windows] Shared Memory

Posted by push0ebp
2015. 7. 23. 22:58 ETC

CTF문제 풀다 알게된 지식.

말그대로 공유 메모리이다.

OS : Windows 7 32bit


DWORD d_sharedM = 0x7ffe0800; // A User Address 유저 레벨 주소

DWORD d_sharedK = 0xffdf0800; // A Kernel Address 커널 레벨 주소



커널 메모리에 접근할수 있도록 커널 드라이버를 로드시켜서 0xFFD0800주소에 라이팅을 해보았다.





분명 0x7FFFFFFF 커널을 넘지않고 유저레벨 주소가 확실한데 메모리가 같다.

신기하게 Physical Address도 같다.




여기도 같다.





여기 까지.


Size : 0x1000

0xFFDF0000 ~ 0xFFDF1000

0x7FFE0000 ~ 0x7FFE1000

가 Shared Memory이다.


+다른 프로세스(모든 프로세스)도 값이 같다.