webhacking/etc

webhacking.kr 42, 43, 44

qkqhxla1 2015. 3. 14. 13:54

42.


test.txt파일만 볼 수 있는데 소스를 보면 ?down=dGVzdC50eHQ=로 링크가 걸려 있다.

?down=뒤의 값은 딱 보면 base64같다. 이걸 디코딩해보면 test.txt가 나오는데, 

?down=base64(받을 파일) 대충 이런 원리라고 추측해볼수있다. 우리가 필요한건 test.zip이므로

이 문자열을 base64 인코딩하면 dGVzdC56aXA=가 나온다. ?down=dGVzdC56aXA=로 실행해보자.

http://webhacking.kr/challenge/web/web-20/?down=dGVzdC56aXA=

test.zip이 다운되고 zip파일이 하나 나오는데 암호가 걸려 있다. 브루트포싱 프로그램 하나 받아서 풀면

금방 풀린다.



43.


가장 기본적인 웹셸 업로드 방법인데, .asp나 .php확장자를 보내면 무조건 access denied가 나온다.

단순하게 사진파일을 올리는 것처럼 content-type 부분을 image/jpeg로 바꾼후 .php파일을 올리면 성공적으로 올라간다.



44.


어떤 단어를 입력하면 출력해주는 서비스이다. http://webhacking.kr/challenge/web/web-30/의 경로인데 a를 입력해보면 index.php에서 index/go.html 로 이동하면서 hello a가 출력된다. system함수 등을 이용한 리다이렉션이라고 볼 수 있는데 system에서 echo로 출력 후 그걸 리다이렉션으로 저 페이지로 보내주는것 같다. 다중 명령어를 실행하려면 &나 ;등이 있는데, 내가 입력한 문자열이 ''로 둘러쌓일것까지 예상해보자. 일단 ''가 리눅스에서 어떤 역할을 하는지 이것저것 해보면 그냥 별 역할 안한다.





그러 echo '내가입력한 문자열' > go.html 로 추측되므로, 



이렇게 만들어서 보내면 된다. 근데 왜 ';l's'는 안되는데 '&l's'는 되는지 모르겠다. 어떤 내부적인 차이인것 같다.

'webhacking > etc' 카테고리의 다른 글

php wrapper, LFI, chall.tasteless.se Double Agent, wechall RFI  (1) 2015.03.16
webhacking.kr 47, 48  (0) 2015.03.14
webhacking.kr 36, 38, 41  (0) 2015.03.13
adm1nkyj님의 워게임. prob4, 5  (0) 2015.03.03
adm1nkyj님의 워게임. prob1  (0) 2015.02.28