PHP 入門 9 安全

2021-10-04 16:34:35 字數 838 閱讀 8678

sql 注入

轉義輸出檔名

會話固定

檔案上傳

php **

關於過濾的最佳實踐:

對於任何使用者輸入的資訊,都要進行轉義/過濾。

sql 注入是將惡意的 sql 查詢或新增語句插入到應用的輸出引數中,在由資料庫伺服器解析執行,從而達到攻擊目的。sql 注入很像 xss 。

realpath()basename()來檢查檔名。

這裡舉乙個例子:檢查當前傳入的引數檔名,是否為規範的檔名(也就是沒有 ./ …/ 的檔名)

$filename

=$_post

['filename'];

$vetted

=basename

(realpath

($filename))

;if($filename

!==$vetted

) is not good filename");

}

攻擊者可以很簡單的拿到目標使用者的會話標識,進而目標使用者使用攻擊者的會話標識登入站點,攻擊者劫持會話成功.

在檔案上傳時,不要相信瀏覽器提供的檔名。正確的方法時:使用者互動中用瀏覽器提供的名字,但是要自己生成唯一的名字用來呼叫檔案。

我們知道eval()函式,可以讓指令碼執行任意php**。帶/e選項的preg_replace()函式與eval()函式效果一樣。

以上函式不要使用使用者提供的資料,因為這樣很容易遭到攻擊。

Oracle入門必會(9)

162.如何知道表在表空間中的儲存情況?select segment name,sum bytes count ext quan from dba extents where tablespace name tablespace name and segment type table group b...

ios入門9 函式

1.函式定義,多個形參用逗號隔開 c 一致 函式預設返回的是let型 func funcname 形參 returntype import cocoa 有參 func runnoob site string string 無參 func runnoob string 輸出為 www.baidu.co...

iOS安全入門

ios安全入門 ios安全版成立也有一段時間了,為讓更多的朋友和我們一起玩ios系統,為引導更多的人加入ios系統研究的隊伍中來,本人將在接下來的日子裡陸續地寫些文章到論壇上來。希望對朋友們進行ios研究能有所幫助。從學習ios經驗和所掌握知識的角度,本人計畫在一年內完成下面所列提綱的文章 完成後給...