본문 바로가기
[ ★ ]Study/War Game

[Toddler's Bottle] pwnable.kr cmd2 풀이

by nroses-taek 2017. 9. 15.
반응형

포인트가 9점입니다. 1과는 다르게 생각할게 많은가보군요.

1과는 다른 분위기으 코드입니다. 친절하게 argv[1] 값을 출력은 해주네요.
또한, 이제 있는 문자도 많이 줄어들었습니다.
 
생각과 풀이과정 ( 도움이 되실까 하여…)
제일 중요한 / 필터에 걸리기 때문에 16진수로 우회하고자 했습니다.
\x2f 를 섞어서…
구글에 스크립트로 16진수 전달하는 방법들을 찾다가

read 눈에 띄었습니다. 많은 옵션도 있지만 무엇보다
아무튼 USER INPUT이라는게 핵심이더라구요.
read x 하게되면 입력값이 x 저장이 됩니다. 그러면… 연속으로 echo $x 하게되면 같은 문자가 2 보이게  것입니다.

테스트 해봤습니다.

echo 를 빼고 명령어를 입력시켜보았습니다.

혹시몰라서 파일이랑 같이 실행했더니…. !!!!!
이거 성공적…
sh: 1: ls: not found 환경변수를 지웠기 때문에 나타나는거죠!! 에러지? 하고 생각하시면 안됩니다.
단순히 ls를 찾을 수 없다는 뜻입니다.


세상에…  고생많으셨습니다.
 
read 좋은거 하나 알아가지만, 안쓰니 또 잊어버리겠죠 ㅎㅎ…
 
 
이번에도 다른 분들의 풀이가 궁금해서 검색했더니
 
./cmd '$(echo "\57")bin$(echo "\57")cat flag'
 
출처: <http://koyo.kr/31>
 
슬래쉬 우회를 이렇게 하셨네요…!
\57 보아 8진수로 우회하셨네요
 
저도 16진수로 우회하려고 검색하다가 read로 어찌어찌 했는데….
고생한 합니다 @@...


반응형

댓글