LOB 3번째는 cobolt를 잡고 goblin으로 레벨업 하는 문제입니다.

 

우선 goblin의 코드를 확인해 보도록 하겠습니다.

LOB 2번째와 마찬가지로 버퍼의 크기가 매우 작고, 바뀐 점이라면 매개변수를 통한 입력에서 표준입력으로 변경되었네요.

 

버퍼의 크기가 작기때문에 환경변수에 쉘을 등록하고, 그 주소값으로 ret를 덮어야 할것 같습니다.

 

우선 gdb를 통해 ret를 덮기 위해서 필요한 입력 수를 확인해 보도록 하겠습니다.

필요한 입력의 크기는 20byte임을 알 수 있네요.

 

이제 환경변수에 쉘코드를 입력하고 주소값을 확인하도록 하겠습니다.

0xbffffe31에 쉘코드가 올라가 있네요.

20byte입력을 하고 쉘코드 주소를 입력해 ret를 덮도록 하겠습니다.

됫네요. 정상적으로 goblin의 쉘을 획득 하였습니다.

 


goblin의 패스워드는 hackers proof이네요.

+ Recent posts