본문 바로가기

wargame/LOB10

[포너블] LOB 2 - gremlin LOB 2 - gremlin write up gate 문제를 해결하고 얻은 gremlin의 password로 로그인하면 다음 문제가 열린다. 이번에는 cobolt가 보인다. 한번 열어보자 gate 문제와 똑같은거 아닌가했지만 buffer 의 크기가 16으로 작아진 것을 확인할 수 있다. 처음에 buffer가 작아진게 무슨 의미일까? 오히려 bof 공격을 사용하기 더 수월해진것 아닌가 생각했다. 지난 문제와 같은 방법으로 공격을 시도한다고 시뮬레이션해보니, 쉘코드를 작성하는 부분에서 막혔다. 쉘코드가 24바이트인데 버퍼의 크기가 16바이트 밖에 안되기때문에 버퍼에 쉘코드를 작성할 수 가 없었다. 이전 문제를 풀때도 버퍼에 크기를 작성하는 것 외에 환경변수를 이용하는 방법이 있었는데, 아마 gremlin에서.. 2021. 9. 26.
[포너블] LOB 1 - gate LOB 1 - gate write up LOB 1번 gate 라업입니다. 현재 존재하는 파일들의 리스트와 권한을 확인해보았다. gremlin.c 파일이 보이고 gremlin 바이너리에 setuid 권한이 설정되어있는것을 확인할 수 있다. 즉 내가 쉘을 따내면 gremlin이 될 수 있는 것. gremlin.c 파일을 열어보자. [gate@localhost gate]$ vi gremlin.c 인자를 입력받아서, strcpy 함수를 통해 버퍼에 저장하고 버퍼를 출력하는 파일이다. 실제로 인자를 줘보면 내가 준 인자를 그대로 출력하는 모습이다. [gate@localhost gate]$ ./gremlin AAA AAA strcpy 함수는 입력값의 길이를 검사하지않는 취약점이 있기때문에 이 취약점을 이용해서 버퍼.. 2021. 9. 26.