xor
-
two targets Write-upSystem/Pwnable.xyz 2020. 1. 20. 01:19
이번 문제는 풀이법이 2개가 있다. 하나는 암호화 루틴을 분석하는 것, 다른 하나는 GOT Overwrite로 원샷함수를 실행하는 것이다. 이번 풀이법에서는 두 가지 모두 다뤄보도록 하겠다. Binary 가장 기본적인 보호기법으로 설정되어 있다. Partial RELRO이기 때문에 .got섹션에 쓰기권한이 부여되어 있다. Solve_1 ( 역연산 ) 바이너리를 실행하면 총 4개의 메뉴는 제공한다. 그 중 'Get shell'이라는 4번 메뉴가 가장 눈에 띈다. IDA로 확인해보면 위와 같이 구성되어 있다. 우선 auth( )라는 함수가 실행되고, auth( )의 반환값이 1(true)이면 win( )함수가 실행되면서 Flag를 얻을 수 있다. auth( )는 우리가 입력한 값에 대해서 특정 연산을 진행하..