Unbuntu
-
[reversing.kr] Easy ELF 풀이Wargame/reversing.kr 2021. 1. 5. 13:29
본래는 dreamhack.io의 hash-browns 문제를 풀려고 했는데 리눅스 환경에서의 리버싱은 익숙하지 않다. 문득 reversing.kr의 100점짜리 문제인 Easy ELF가 떠올랐고, 풀기 위해 다양한 방법을 시도해보았다. - gdb로 접근 많은 사람들이 리눅스 환경에서 gdb를 이용하여 디버깅을 한다고 하였다. 보통 file (filename) 명령어로 symbol 테이블 정보를 받아오고 disas main과 같은 명령어를 통해 바로 main 함수 쪽 어셈블리 코드를 확인하는데 symbol table이 없다는 문구가 나왔다. 알고 보니 gcc compile 옵션에 -s를 추가하면 symbol table이 제거되는 효과가 있다고 한다. readelf 명령어를 통해 EP를 찾은 후 해당 주소를..