본문 바로가기
Hacking/WebHacking.kr

Webhacking.kr : old-59 (200 pt)

by newbie22 2021. 1. 25.

 

 

문제에 접속하면 다음과 같은 화면이 나타납니다.

 

< 문제 화면 >

-> 가입과 로그인이 구현되어 있습니다.

 

바로 코드를 확인해보았습니다.

< code >

-> 로그인했을 때 lv이 admin이면 문제는 해결됩니다.

-> 이때 로그인에서 lid과 lphone는 addslashes로 싱글 쿼터(')와 더블 쿼터(")를 필터링됩니다. 따라서 로그인 부분에서는 취약점이 보이지 않습니다.

-> 가입 부분을 보면 필터링이 많이 되어 있습니다. 우선 id과 phone는 공통적으로 싱글 쿼터('), 더블 쿼터("), admin 문자열을 필터링합니다.

-> phone은 추가로 길이 20제한, 0x, #, hex 함수, char 함수, ascii 함수, ord 함수, select를 필터링합니다.

 

이때 insert 쿼리문을 자세히 보면 phone 같은 경우 싱글 쿼터로 둘러싸 있지 않습니다. 따라서 phone으로 통하여 lv을 guest가 아닌 admin으로 수정할 수 있습니다. 

 

id : nimda

phone : 1, reverse(id))-- -  

로 값을 주고 가입 후에 로그인하면 됩니다.

 

 

끝~~

'Hacking > WebHacking.kr' 카테고리의 다른 글

Webhacking.kr : old-19 (150 pt)  (0) 2021.01.25
Webhacking.kr : old-61 (200 pt)  (0) 2021.01.25
Webhacking.kr : old-42 (200 pt)  (0) 2021.01.24
Webhacking.kr : old-36 (200 pt)  (0) 2021.01.24
Webhacking.kr : old-33 (pt 200)  (0) 2021.01.24