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

늘모자란, 개발



이 문제는 불러오는 녀석의 취약점인데 많은 사이트들이 취하고 있는 다운로드 방법이라 할 수 있다.
일단 요 문제는 생긴게 아니라 URL을 봐야한다.

http://webhacking.kr/challenge/bonus/bonus-5/?file=hello


파일이 어디 저장되어있는지 감추고 싶을때, 요컨데 이런식으로 사용하는 것이다

(절대경로) (입력받은 파일의 이름) (절대확장자(fixed))
고로 이 경우엔 무조건 hello.txt라는 파일을 읽도록 디자인 되어 있음이 틀림없다. 고로 .txt 부분부터 무력화 하면 될것이다
보통은 이런 경우 공격을 위해 null을 사용한다.

이름.php\0.txt 꼴이 되게 하는건데 이런경우 txt까지 읽지 않고 앞의 확장자까지만 읽게 된다.
고로 요렇게 만들어줘서 리퀘스트를 해준다. null은 urlencode hardware 에서 검색해서 넣으면된다.

그럼 비밀번호가 나온다. Auth 해주고 점수를 챙기자. 절대 경로로 사용하는 요 방법은 상위 directory traversal 과 같은 공격으로 이어지기도 하니까, 필터링을 잘해야한다. 애초에 쓸데없는 null이나, ../ 이런건 필터링 해버려야한다
2016/03/31 15:29 2016/03/31 15:29