YII 防止自定義sql注入

2021-06-27 12:14:17 字數 872 閱讀 6159

1://防xss 跨棧注入獲取get/post傳值

2:跨站請求偽造(簡稱csrf)攻擊,即攻擊者在使用者瀏覽器在訪問惡意**的時候,讓使用者的瀏覽器向乙個受信任的**發起攻擊者指定的請求。 yii實現了乙個csrf防範機制,用來幫助防範基於post的攻擊。預設情況下,csrf防範是禁用的。如果你要啟用它,可以編輯應用配置 中的元件中的chttprequest部分。

return array(

'components'=>array(

'request'=>array(

'enablecsrfvalidation'=>true,

要顯示乙個表單,請使用chtml::form而不要自己寫html**。

yii實現了乙個cookie驗證機制,可以防止cookie被修改。啟用之後可以對cookie的值進行hmac檢查。

return array(

'components'=>array(

'request'=>array(

'enablecookievalidation'=>true,

直接使用ar物件賦值運算元據庫的yii會自動做防注入處理。

不使用ar物件賦值方式,使用直接sql的,也應該使用這種引數賦值的方式,可以防止注入攻擊:

$sql = "select * from table where userid=:userid and date between :date_start and :date_end"

$results = $db->createcommand($sql)->query(array(

':userid' => 115,':date_start'=>'2009-12-1',':date_end'=>'2009-12-31',

待續。。。。。。。。。

php防止sql注入的自定義函式

1.函式的構建 function inject check sql str function verify id id null 是否為空判斷 elseif inject check id 注射判斷 elseif is numeric id 數字判斷 id intval id 整型化 return ...

yii自定義元件

1.我們在backend檔案下新建components目錄作為自定義元件的檔案 2.然後再資料夾下新建sms.php檔案,檔案中的 為 namespace backend components use yii base component class sm tends component 3.配置檔...

防止SQL注入

1.什麼是sql注入 所謂sql注入,就是通過把sql命令插入到web表單遞交或輸入網域名稱或頁面請求的查詢字串,最終達到欺騙伺服器執行惡意的sql命令。通過遞交引數構造巧妙的sql語句,從而成功獲取想要的資料。2.sql注入的種類 從具體而言,sql注入可分為五大類,分別是 數字型注入 字元型注入...