이번에는 union select를 사용해서 id는 first, pw는 second를 추출하면 클리어될것 같다.
우선 바로 union select를 해보았을때 역시나 방화벽에 의해 막힌다.
그렇기 때문에 개행문자(%0a)를 이용해서 union과 select를 끊어주면서 쿼리가 작동되게 하면 될것 같다.
우선은 id쪽에 '로 막고 %23으로 주석처리하여 뒷 구문을 무효화했다.
그 뒤 &pw 값 뒤에 '#%0a%0dunion%23%0a%0ddistinct select로 넣어주니 방화벽 필터링에 걸리지 않았다.
혹시몰라 %0a%0d 두개의 개행문자를 사용하였는데 %0a 만 써도 잘 작동된다.
그런데 select "first","second"를 하는 과정에서 블록되었다. 아무래도 first와 second 문자열을 받는 과정에서 필터링이 된것 같다. 그래서 first와 second를 hex값으로 넣어주었다. first는 0x6669727374 second는 0x7365636f6e64
전체코드는
?id=%27%23&pw=%0aunion%23%0adistinct%20select%200x6669727374,0x7365636f6e64%20%27%27%23
이렇게 쿼리를 넣어서 클리어
'3. 웹 애플리케이션 취약점 진단 > Lord of Sql Injection' 카테고리의 다른 글
lord of sql injection 38번 - manticore (0) | 2023.12.22 |
---|---|
lord of sql injection 37번 - chupacabra (0) | 2023.12.22 |
lord of sql injection 35번 - godzilla (0) | 2023.12.22 |
lord of sql injection 34번 - death (0) | 2023.12.22 |
lord of sql injection 33번 - cthulhu (0) | 2023.12.22 |