成人视屏在线观看-国产99精品-国产精品1区2区-欧美一级在线观看-国产一区二区日韩-色九九九

您的位置:首頁技術(shù)文章
文章詳情頁

pdo - mysql 簡單注入疑問

瀏覽:81日期:2022-06-19 08:39:34

問題描述

pdo - mysql 簡單注入疑問mysql數(shù)據(jù)庫表user結(jié)構(gòu)如圖,php版本5.4.31

$uid='1’; select * FROM user;';

直接用:

$result=mysql_query('select * from user where uid=’$uid’ ');

mysql_error()顯示

`You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ’select * FROM user;’’ at line 1`

和用pdo查詢:

$sql='select * from user where uid=’$uid’ ';$res=$pdo->query($sql);

顯示$res是空

請問大神我構(gòu)造的mysql注入語句是不是有錯...我主要目的是想測試不同的mysql注入語句,pdo_mysql的防護性

問題解答

回答1:

$uid='1’; select * FROM user;';這種聲明其實和你的測試沒關(guān)系,反而造成困擾,你可以直接測試mysql_query('select * from user where uid=1; select * from user')。我沒深入研究過這個東西,但是你的兩種測試是等價的,都會被注入。

最簡單的注入問題例子是 $username = 'It’s test',然后被執(zhí)行的時候變成 'select * from user where username=’It’s test',引發(fā)語法錯誤。而PDO等通過預(yù)處理防止此類問題,如 $pdo->query('select * from user where username=?', array('It’s test'));此時會適當(dāng)轉(zhuǎn)意起到防注入作用,但是像你的例子中直接$pdo->query($sql)這種用法,防護機制此時根本不會產(chǎn)生任何效果的。

大意如此,自己理解吧。

最近工作很忙,大部分邀請都只好忽略了,偶爾回答幾個也沒時間說太多,只能說抱歉了。

回答2:

mysql_query時,拼接的SQL語句是,是不合法的

select * from user where uid=’1’; select * FROM user;’

想辦法把單獨的’閉合,改成下面的代碼就可以了:

$uid='1’; select * FROM user where uid=’';

PDO會自動轉(zhuǎn)義,查詢的以下語句,所以為空。

select * from user where uid=’1’; select * FROM user;’回答3:

自己發(fā)現(xiàn)問題了:

直接使用$uid= '888’ or ’2=2';

整個user表的內(nèi)容都爆出來了

相關(guān)文章:
主站蜘蛛池模板: 小明台湾成人永久免费看看 | 自拍偷在线精品自拍偷无码专区 | 成人精品一级毛片 | 久久黄色影院 | 精品视频在线观看一区二区三区 | 午夜大片免费男女爽爽影院久久 | 国产午夜免费视频片夜色 | 交videos人妖 | 中文字幕 亚洲 一区二区三区 | 欧美在线a | 色在线看 | 日韩欧美一级毛片在线 | 国产成人aaa在线视频免费观看 | 国产视频二区在线观看 | 亚洲深夜视频 | 日本一级~片免费永久 | 欧美一级香蕉毛片 | 国产三级在线视频播放线 | 国产日产久久高清欧美一区 | 欧美成成人免费 | 蜜桃88av| 国产一区二区三区在线观看影院 | 亚洲aa| 欧美日本在线一区二区三区 | 99视频在线 | 亚洲日产综合欧美一区二区 | 国产主播第一页 | 曰本黄大片 | 欧美一级久久久久久久久大 | 美女视频黄免费 | 日本不卡一二三区 | 日本三本道 | 亚洲精品国产一区二区三区在 | 欧美在线观看免费一区视频 | 国产精品永久免费视频观看 | 亚洲精品综合 | 97se亚洲综合在线韩国专区福利 | 亚洲伊人色一综合网 | yy毛片 | 国产高清一级毛片在线不卡 | 欧美全免费aaaaaa特黄在线 |