내용추가 : 아, 그리구요 아마 multipart/form-data로 보내야 했었던거 같습니다. \n이었나? @엿나 암튼 필터링 되었었을꺼에요.ㅎ 힌트로도 떴었더라죠 ~
2번 문제 서버에 접속하면 사이트가 하나 있습니다.
뭔가 의심이 갔던 것들을 말씀드리자면..
메뉴는 기억 안나는데요, pdf파일을 다운로드 하는 링크가 있던 페이지가 있었는데, download.php?no=숫자&filename=파일명 뭐 이런식으로 링크가 걸려있었습니다. 여기서 File Download 취약점을 생각해보았구요,
그리고 정답이었던 Contact Us 메뉴에 있는 관리자에게 이멜 전송하기 였습니다.
첨엔 Contact Us가 OCR + Blind SQL Injection일까, XSS일까 생각도 엄청 많이 했었는데요...ㅜㅜ (그래서 시간엄청죽였죠)
풀이법 포스팅이니만큼 풀이법을 말씀드리겠습니다.
정답은 Mail Header Injection입니다.
PHP에서 메일을 전송할 때 mail() 함수를 사용한다는 생각으로도 접근했었는데요,
mail() 함수의 사용법은 이러합니다.
mail(받는사람 , 제목 , 내용 [, 추가헤더 [, 추가인자]]);
여기서 victim의 php코드를 예상해보자면..
$header = "From: "."contact us에서 작성한 이멜주소\n";
mail("관리자@이멜.주소", "contact us에서 작성한 제목", "contact us에서 작성한 내용", $header);
간단히 이정도가 될거라 예상했구요...
mail header에 Cc, Bcc 라는 항목을 추가함을 통해 참조, 숨은참조 등으로 추가적인 수신자를 지정할 수 있다는 사실..을 이용해서, contact us에서 이메일 주소를 작성할 때...
아무 이메일\nCc: 실제이멜
혹은
아무 이메일\n Bcc: 실제이멜
이런식으로 작성하시게 된다면, 관리자에게 갈 이메일을 자신도 받아볼 수 있겠죠? ^^;
성공하시게되면 받아보실 이멜입니다. ^^
정답은 : **CRLF_F0rmD4t4_4774<k_
'Security > HDCon' 카테고리의 다른 글
| HDCon 2010 예선 4번 문제 풀이 (8) | 2010/05/16 |
|---|---|
| HDCon 2010 예선 3번 문제 풀이 (3) | 2010/05/16 |
| HDCon 2010 예선 2번 문제 풀이 (4) | 2010/05/16 |
| HDCon 2010 예선 1번 문제 풀이 (2) | 2010/05/16 |