Web/BUUCTF
[BUUCTF] - [强网杯 2019]随便注1
ar9ang3
2020. 2. 12. 00:23
하.. 중국어라 번역이 잘 안돼서 좀 짜증나긴 하지만 그래도 괜찮다.
보이는가? 이 개발 번역이
허..
오 sqli..
오 필터링..
주요 문법들이 다 안된다.
만고의 sqli 삽질 끝에 뭔지 몰겠어서 찾아보니 아니 이럴수가..
앗... multi query라니..
존재만 알고 CTF나 문제로 한번도 나온적이 없어서 생각의 틀에 갇혀있었던 것 같다.
multi query에서 할 수 있는 공격은 찾아보니
preg_match로 필터링 하는것 중에 rename이 필터링 안되어 있어서
1. 현재 조회되고있는 테이블 명을 rename으로 tmp로 변경
2. flag가 담겨있는 테이블을 현재 조회되고있는 테이블명으로 변경
3. '||1# attack
이런 방법이 있었다.
근데 이보다 더 쉬운 방법이 있는데, mysql 자체에서 제공하는 prepared statement 기능을 이용하는 것이다.