mysql - SQL注入:避开过滤
迷茫
迷茫 2017-04-17 11:33:54
0
2
322

在一本书中,看到关于如何避开过滤,有这么一段话:
如:SELECT被列入黑名单,则attacker想避开过滤的话,可以使用以下输入:
1.SeLect 2.SELSELECTECT 3.%53%45%4c%45%43%54 4.%2553%2545%254c%2545%2543%2554


其中方法1和2容易理解
方法1:利用对大小写敏感来避开过滤
方法2:利用程序replace SELECT的特点
其中,方法3和方法4该如何理解呢?
方法3的话,
payload:?id=1' union %53%45%4c%45%43%54 1,2,3 --+,则在服务端收到的$_GET['id']的值为'1' union SELECT 1,2,3 -- ',此处,并没办法避开SELECT关键字啊?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回覆(2)
刘奇

方法3,4不過是編碼,避免就是使用PDO

小葫芦

(3)是對select所有字元編碼一次 (4)是對(3)的百分號再編一次

表單傳過去的時候,伺服器會自動解碼一次,所以服務端取得select很正常,也就是說(3)的辦法繞不過過濾。 (4)的話似sql引擎不會自動解碼,你可以在自己的workbench上面試一試,應該提示sql語句錯誤。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!