LOS(The Lord of the SQLI) 18 - NIGHTMARE
2021. 2. 19. 02:05ㆍ정보보안/웹 해킹
18번 문제인 NIGHTMARE 이다.
이 문제는 pw 파라미터에 대해서만 입력을 받으며
if($result['id']) 가 참일경우 문제가 해결되는 것으로 보아
where절이 참이면 된다.
strlen 함수를 통해 입력되는 파라미터의 길이를 5자리까지로 제한하고 있고,
preg_match를 통한 필터링식이 존재한다.
이 문제에서 가장 고민을 많이했던 부분은
필터링 때문에 주석문자 #과 --를 쓸 수 없다는 부분이었는데
이 부분은 ;%00 으로 해결하였다 .
(출처 : websec.ca/kb/sql_injection)
주석부분은 해결했지만 이 문제를 풀기위해서는 pw 파라미터 부분을 참으로 만들어 주어야 하는데,
pw=1=1를 만들어 줄 경우, 1=1는 참이기 때문에 pw=참이 된다.
문자열을 숫자랑 비교하게 되는 경우 0이 반환 되므로
pw=0=0주석을 만들어 줄 경우 where절이 참이 된다.
즉, ?pw=')=0;%00
'정보보안 > 웹 해킹' 카테고리의 다른 글
LOS(The Lord of the SQLI) 19 - XAVIS (0) | 2021.02.19 |
---|---|
정규표현식 해석 사이트 (0) | 2021.02.19 |
LOS(The Lord of the SQLI) 17 - Zombie Assassin (0) | 2021.02.18 |
LOS(The Lord of the SQLI) 16 - SUCCUBUS (0) | 2021.01.17 |
LOS(The Lord of the SQLI) 14 - GIANT (0) | 2021.01.17 |