SEHOP는 SEH Chain의 Validation을 런타임에 검사하는 미티게이션으로, SafeSEH와는 달리 컴파일 시 별다른 옵션을 주지 않았더라도 OS단에서 검사하여 공격을 차단하고 응용 프로그램을 보호한다. Windows 7이나 Windows Vista의 경우 SEHOP를 지원하지만 일부 프로그램이 호환되지 않는 문제가 있어 자동으로 적용되지는 않고, 레지스트리를 편집하여 사용할 수 있도록 설정해 주어야 한다.
[regedit으로 레지스트리 수정]
1. 윈도우키 + R 또는 시작->실행을 열어 regedit 실행.
2. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel 로 이동.
3. DisableExceptionChainValidation 항목이 없을 경우 DWORD 값으로 새로 만들고 0으로 설정한다. 거꾸로 끄고 싶을 경우에는 1로 설정해주면 된다.
4. 재부팅. ( 바로 적용이 되는지는 모르겠지만 직접 해봤을 때는 재부팅해야 적용됐다. )
이 레지스트리 설정을 변경할 경우 일부 응용 프로그램이 비정상적으로 동작할 수 있으므로 조심해야 한다.
'Knowledge' 카테고리의 다른 글
Kali Linux 설치하기 (0) | 2018.02.20 |
---|---|
Windows에서 python-magic 사용하기 (0) | 2017.10.27 |
리눅스 커널 공부 정리 0x04 - 가상 파일 시스템 (0) | 2017.06.28 |
리눅스 커널 공부 정리 0x03 (0) | 2017.06.27 |
리눅스 커널 공부 정리 0x02 (1) | 2017.06.21 |