[드림핵 문제풀이]rtld


[드림핵 문제풀이]rtld

rtld overwritingmain 함수가 종료되고 _dl_fini함수가 실행되는데 이 함수는 또 다른 _rtld_lock_lock_recursive라는함수를 호출한다.이 _rtld_lock_lock_recursive함수는 쓰기 권한이 있어서 Overwriting을 할 수 있다면 함수의 흐름을 제어할 수 있다.※문제 소스※※페이로드※1. Libc주소 릭2. _rtld_lock_lock_recursive주소 구하기3. _rtld_lock_lock_recursive를 원샷가젯으로 덮어버림※힘들었던 점※1. rtld라는 구조체가 너무 길어 겁먹고 풀지 못 했다.2. 주석을 보면 PIE보호 기법을 생각하지 못하고 삽질을 해댄것을 볼 수 있다. --> PIE가 적용되면 코드로 점프하지 못한다.3. vmmap ld를 사용하지 못 했다.4. vmmap할..........



원문링크 : [드림핵 문제풀이]rtld