반응형

gdb 2

[Root Me] ELF C++ - 0 protection - 리버싱 / IDA / GDB

C++ 리버싱 문제 C++ 리버싱은 처음 해본거 같은데 생각보다 어려워서 놀랐다. C 랑 큰 차이 없지 않을까 생각하고 시작했다가 큰코다쳤다.. 문제의 목표는 올바른 password를 찾는것이다. 문제파일로 주어지는 것은 ch25.bin 파일이다. 먼저 프로그램을 실행시켜 보았다. 터미널에서 ./ch25.bin 이라고 입력하면 실행이 되는데 그냥 실행시켰더니 usage : ./ch25.bin password 라면서 사용법이 출력된다. ./ch25.bin hello 라고 password를 인자로 넣어서 실행시켜 주니 비밀번호가 틀렸다는 안내 문구가 출력된다. IDA 라는 디스어셈블러를 이용해서 ch25.bin 파일을 열어보았다. c로 만들어진 프로그램이라면 오른쪽에 깔끔하게 어셈블리어가 잘 보이는데 c++..

워게임/Root Me 2022.06.30

[DwagCTF] bof to the top - 포너블 / 버퍼오버플로우 / Pwntool / gdb

대회가 끝나고 나서 풀어본 버퍼오버플로우 문제 쪼금 생각해야하는 부분이 있어서 마냥 간단하지만은 않았다. bof 라는 이름의 바이너리 파일과 이 파일의 소스코드가 주어진다. 해당 파일은 ELF 파일로 리눅스에서 실행 가능한 프로그램이다. 리눅스의 EXE 파일이라고 생각하면 된다. 프로그램을 실행시켜보면 사용자의 입력을 두번 받는다. 맨 처음 이름을 물어보고, 어떤 노래를 부를건지 물어보는데 각각 hello, world 라도 입력해봤다. 입력했더니 프로그램은 아무런 출력도 없이 종료된다. #include "stdio.h" #include "string.h" #include "stdlib.h" // gcc -m32 -fno-stack-protector -no-pie bof.c -o bof void audit..

CTF/포너블 2022.04.17
반응형