LJ

Lord of SQLinjection ( 18번 ) nightmare 본문

IT 보안/보안첼린지

Lord of SQLinjection ( 18번 ) nightmare

짱준재 2024. 6. 28. 15:18

  

 

 

 

18번 문제 nightmare 다.

 

 

 

pw 값이 6을 넘으면 안된다.

 

이 문제를 봤을 때 

 

 

일단 무엇을 필터링 하는지 본다.

prob, _ , (), #, -  

 

을 필터링 하고 있다.

 

그러므로 ')으로 파라미터를 닫아주고 주석처리를 해야하는데 -, 나 # 이 필터링 되어있기에 다른 방법을 찾아야한다.

 

mysql 주석은 --, #, /**/  이외에

 

mysql은  쿼리를 읽을 때 %00 을 만나면 멈춘다는 것을 알게 되었다.

 

 

주석은 마무리 되었고 pw 값을 항상 참으로 만들어 나오는 값을 보면 

 

' )=0;%00

 

 

답이 나오게 된다.

 

 

 

 

key point

 

MYSQL 에서는 ;%00로 주석 처리가 가능하다

Comments