首頁  >  問答  >  主體

mysql - 这个sql注入该怎么解释呢?

http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php

这是个防止sql注入的一个问题。这个问题有点看不懂,

$unsafe_variable = $_POST['user_input']; 

mysql_query("INSERT INTO `table` (`column`) VALUES ('$unsafe_variable')");
INSERT INTO `table` (`column`) VALUES('value'); DROP TABLE table;--')

这个是怎么做到sql注入的,一条查询语句可以执行insert to 语句和drop table 语句??

怪我咯怪我咯2721 天前449

全部回覆(2)我來回復

  • 迷茫

    迷茫2017-04-17 13:43:30

    傳入的參數是value'); DROP TABLE table;--,這麼說能懂嗎?

    回覆
    0
  • 高洛峰

    高洛峰2017-04-17 13:43:30

    mysql_query不能執行多條語句,不過可以updatexml和extracevalue利用他來取得其他資料資訊。

    INSERT INTO users (id, username, password) VALUES (2,'Olivia' or updatexml(1,concat(0x7e,(version())),0) or'', 'Nervo');
    
    INSERT INTO users (id, username, password) VALUES (2,'Olivia' or extractvalue(1,concat(0x7e,database())) or'', 'Nervo');
    

    參考: 利用insert,update和delete注入取得資料

    回覆
    0
  • 取消回覆