-
리버싱 핵심 원리 (인라인 패치)Rev 2023. 7. 29. 18:53
프로그램 내에 문자열 영역에 대한 checksum 값을 계산하여 문자열의 변경 여부를 검증하기 때문에 쉽게 수정하기 어렵도록 되어있다.
이런식의 프로그램의 경우 일반적인 파일 패치로는 해결할 수 없고 인라인 패치 방법을 사용해야 쉽게 해결 가능하다.
인라인 패치의 패치코드 위치
1. 파일의 빈 영역에 설치
2. 마지막 섹션을 확장한 후 설치
3. 새로운 섹션을 추가한 후 설치
보통 패치 코드의 크기가 작은경우 1번을 사용하고, 나머지 경우 2 또는 3을 사용
'Rev' 카테고리의 다른 글
모르는 어셈블리어 정리 (repne scasb) (0) 2023.07.19 모르는 어셈블리어 정리 (cdq) (0) 2023.07.09 c언어 -> 어셈블리어 변환 연습 (0) 2023.07.09