늘모자란, 개발 :: [webhacking.kr] Challenge 6

늘모자란, 개발

요것만 풀면 한줄이다.
100점짜리니까 쉬운 문제겠지 하고 가볍게 접근해본다.

여전히 정말 뭐같이 생겼다. 그래도 HINT라고 적힌것도 있고, index.phps라고 누를만한것도 보인다.
소스는 더 기가막히게 생겼다 



base64 encode를 20번해서 몸이 비대해진 녀석인데, 그 와중에 str_replace를 해서 decode가 되지도 않게 해놨다.
 $val_id=str_replace("1","!",$val_id); 
$val_id=str_replace("2","@",$val_id); 
$val_id=str_replace("3","$",$val_id); 
$val_id=str_replace("4","^",$val_id); 
$val_id=str_replace("5","&",$val_id); 
$val_id=str_replace("6","*",$val_id); 
$val_id=str_replace("7","(",$val_id); 
$val_id=str_replace("8",")",$val_id); 


그런데 이녀석을 우리가 decode해야만할까? 그렇지가 않다.
이녀석은 php코드이고, php 최신버전의 기능을 사용하고 있지도 않다.
즉, 그냥 이 코드를 갖다가 우리맘대로 바꿔 출력한 후에 쿠키로 설정하면 되는것이다.
index.phps에서는 user와 password가 모두 admin이면 패스하도록 되어있다.


바꾸면 대강 위와 같은 값이 나온다. 
쿠키에 넣어주면 간단히 해결.


소스가 노출되면 그만한 각오를 해야된다는 교훈을 알려주는 문제라고도 할 수 있겠다.
2016/03/08 01:53 2016/03/08 01:53