문제 화면입니다.
admin page로 접속하는 문제 입니다.
admin page로 접근하면 다음과 같이 로그인 창이 뜹니다.
취소를 누르면 다음과 같은 창을 띄워줍니다.
소스 코드는 다음과 같습니다.
플래그를 얻기 위해서 2가지 조건이 필요함을 알 수 있습니다.
1. admin으로 로그인
2. 172.17.0.0 대역의 IP
1번은 SQLI로 통과할 수 있으며
2번은 문제에서 제공하는 프록시 페이지를 이용하여 해결할 수 있습니다.
먼저 SQLI를 수행하여 admin으로 로그인합니다.
(비밀번호는 아무거나 입력)
admin으로 로그인하였습니다.
로그인할 때 Authorization 헤더에 입력 값이 들어감을 확인할 수 있습니다.
이제 프록시를 활용해 admin page에 접근하자
다음과 같이 Unauthorized 에러가 발생합니다.
자세히보니 Request Header가 좀 허전합니다.
인증을 위해 위 로그인에 사용되었던 헤더를 넣어줘야 합니다.
requets header에 \r\n 문자를 삽입해 header injection을 수행합니다.
(퍼센트 인코딩하면 %0d%0a)
Cookie와 Authorization의 값을 채워서 요청하면
플래그가 나옵니다!
'write-up(web) > webhacking.kr' 카테고리의 다른 글
[Webhacking.kr] RegexMaster write-up (0) | 2023.09.21 |
---|---|
[Webhacking.kr] sliping beauty write-up (0) | 2023.09.08 |
[Webhacking.kr] baby toctou write-up (0) | 2023.04.05 |
[Webhacking.kr] Challenge old-60 write-up (0) | 2023.04.05 |
[Webhacking.kr] Challenge old-13 write-up (0) | 2023.03.26 |