同桌上课用手指进去了好爽_欧美丰满熟妇xxⅹⅹ性大i_成人av天天日天天拍拍_猛男gay帅男gay男男同志_欧美va天堂在线观看_人妻无码av中文系列三里桃花_亚欧免费无码在线观看_久久久精品国产亚洲av水_日韩在线免费看污污污_2021无码专区人妻系列日韩

首頁 優(yōu)化推廣 mysql防注入的sql語句寫法

mysql防注入的sql語句寫法

來源: | 時間:2011/4/15 15:56:18 |

經(jīng)常聽說sql注入式攻擊,其實不是mysql獨有的,所有的數(shù)據(jù)庫都存在注入式攻擊,包括mssql,oracle,db2等。

究竟是什么sql注入式攻擊呢?

其實,它就是攻擊者通過構(gòu)建特殊的sql語句,進行數(shù)據(jù)庫攻擊,實際就是獲取一些信息,或是修改一些數(shù)據(jù),以達到攻擊者目的。

防止攻擊除了我們上次說的php安全之數(shù)據(jù)過濾之外,當然就是我們sql語句的寫法了。

比如一個登錄語句:

select * from user where username= $admin and pwd= $admin

通常我們都是這么寫的是吧!

若是登錄者提交過來的數(shù)據(jù)使我們的sql語句變成了以下形式:

select * from user where username= aa #and pwd= $admin ;
select * from user where username= aa /*and pwd= $admin ;

如果用戶名對了,那是不是也能實現(xiàn)登錄呢?

又如:select * from user where username= aa or 0=0 /*and pwd= $admin ;
就算用戶名不對,也可以登錄了。

但如果我們將我們的語句改成:
select * from user where username= $admin ;

然后從數(shù)據(jù)庫讀出的密碼同,用戶提交過來的密碼比對,是否更加安全一點點呢?

再加上我們的過濾函數(shù)safestr()

function safestr()

{

$re = "/(| %27|;|(%3d)|(|(%28)|)|(%29)|(/*)|(%2f%2a)|(%2a%2f)|+|(%2b)|(<|(%3e)|(%3e)|(--))|[|%5d)/";

if( preg_match( $re ,$username)

{

echo 請不要非法sql注入 ;

exit;

}

else

{

return turn;

}

這也安全也都只是相對安全些,如果相對安全些,那么我們定的程序就更容易攻破一些對吧!
 

服務熱線

153 8323 9821

功能和特性

價格和優(yōu)惠

網(wǎng)站和維護

推廣和優(yōu)化

微信服務號