▼ Challenge 25는 다음과 같습니다.
리눅스 환경이라는 것을 알수 있습니다.
▼ URL에 ?file=hello라고 입력 되어 있습니다.
"hello" 대신에 "index.php", "password.php" 라고 입력해도 아무 변화가 없습니다.
무엇을 입력해도 변화가 없습니다...
한참을 생각하다가 hello 다음에 확장자가 없는 것을 보니,
서버측 언어가 [ 파일명 + ".txt" ] 이런식으로 구성되었을 것이라고 추측을 하게 됩니다.
파일업로드/다운로드에서 확장자 우회를 막기 위한 방법이죠.
그렇다면 뒤에 ".txt"를 없애고, "password.php"가 입력되게 하면 될 것 같습니다.
구글에 확장자 우회라고 검색을 해보니,
▼ 리눅스에서는 "%00", "%zz"로 확장자를 후회할 수 있다고 합니다.
[리눅스] 파일명에 특수문자가 있는지 체크합니다. -> %00 , %zz, ;
|
이것을 사용해서 ?file=password.php%00 이라고 입력하면 Success!
'WarGame > webhacking.kr' 카테고리의 다른 글
[webhacking.kr] Challenge 31 :: 포트 포워딩 1 (0) | 2015.11.18 |
---|---|
[webhacking.kr] Challenge 27 :: SQL Injection (like) (0) | 2015.11.18 |
[webhacking.kr] Challenge 19 :: Base64, MD5 (0) | 2015.11.17 |
[webhacking.kr] Challenge 39 :: SQL (싱글쿼터) (0) | 2015.11.16 |
[webhacking.kr] Challenge 38 :: Log Injection (0) | 2015.11.16 |