문제의 소스코드는 다음과 같다.
소스코드를 보면 권한 상승후 system함수를 실행하고 있다는 것을 알 수 있다.
또한 line 5를 잘 보면 shellshock 취약점이 존재한다는 것을 알 수 있다.
shellshock는 환경변수를 통한 코드 인젝션이 가능한 취약점이다.
bash의 환경 변수에 함수정의를 이용해서 원하는 코드를 추가할 수 있고 , 다음 bash가 사용될 때 추가된 코드가 실행되는 취약점이다.
즉 함수정의 뒤에 임의의 명령을 추가하면 bash 는 환경변수를 import할때 끝에 추가된 명령까지 같이 실행하게 된다.
이를 이용하여 test라는 환경변수에 함수정의를 이용하여 /bin/cat flag 라는 명령을 추가한 후 shellshock 프로그램을 실행해보자.
공격이 제대로 실행되었다.
'pwnable > pwnable.kr' 카테고리의 다른 글
pwnable.kr -bof (0) | 2016.07.29 |
---|---|
pwnable.kr -flag (0) | 2016.07.15 |
pwnable.kr -mistake (0) | 2016.07.15 |
toddler -collision (0) | 2016.07.15 |
toddler -fd (0) | 2016.07.13 |