做web開發,相信搭建都知道一些安全基本知識,」千萬不能相信客戶端資料「。而php又是一種弱型別語言。很多人在開發過程中忽略了型別轉換,引數過濾直接量成不可估量的後果。
不使用過濾函式可能出現以下情況:
資料庫被(sql)注入。直接可以導致你的系統崩潰,系統資料丟失,使用者資訊丟失。**被掛馬,遇到檔案處理則可以將你的**檔案刪除。
另外值得一提的是很多人認為開啟php安全模式就萬事大吉了。其實不然,很多注入者往往繞過正面,進行側面進攻。
使用 0×7e,0×27等(ascii碼)字串來充當引號,而php又無法過濾。注入的一般方式都是在引數裡面加入很多mysql sql語法,去獲取敏感資料資訊。
exp:
and(
select
1from
(select count(*)
,concat(
(select
(select
(select concat(0x7e,0x27,phpcms_member.username,0x27,0x7e)
from phpcms_member limit0,
1))from information_schema.
tables
limit0,
1),floor(rand(0)
*2))x from information_schema.
tables
group
by x)a)
and1=1
mysql information_schema.tables 所有使用者都可見可查,能查出所有表結構資訊,資料庫資訊。
php開源系統很多,很多開源系統大家知道資料結構,已級敏感資訊表。(這裡當然也包括不法分子)
這裡指的敏感資訊:往往是一些使用者資訊,管理端資訊。現在md5的窮舉一直在進行著。很多的md5加密之後的密碼仍然能被解密成明文。
很多系統都做了相應的安全提公升。
下面介紹以下常見手段:
使用過濾函式,php filter 安全過濾函式.md5( md5(『使用者密碼』) . 『私鑰』 ) 得出加密結果。常用的php開源系統後台一定要修改目錄名。很多系統後台直接使用admin作為後台入口。不要將phpmyadmin等資料庫操作軟體安置在**可見目錄。
等等。。之所以這樣是由於現在大量存在掃瞄工具去掃瞄這樣的管理端。
下面是驚心的一張圖
mysql 注入
mysql 注入
出處:馬丁部落格[
PHP開發安全問題總結
簡介 當開發乙個網際網路服務的時候,必須時刻牢記安全觀念,並在開發的 中體現。php指令碼語言對安全問題並不關心,特別是對大多數沒有經驗的開發者來說。每當你講任何涉及到錢財事務等交易問題時,需要特別注意安全問題的考慮,例如開發乙個論壇或者是乙個購物車等。需要在伺服器端進行驗證,對每個php指令碼驗證...
PHP開發安全問題總結
php給了開發者極大的靈活性,但是這也為 問題帶來了潛在的隱患,近期需要總結一下以往的問題,在這裡借翻譯一篇文章同時加上自己開發的一些感觸總結一下。當開發乙個網際網路服務的時候,必須時刻牢記安全觀念,並在開發的 中體現。php指令碼語言對安全問題並不關心,特別是對大多數沒有經驗的開發者來說。每當你講...
PHP上傳檔案的安全問題
使用php中的pathinfo函式或者其他方法獲取檔案的型別,可以人工的設定檔案字尾名,從而繞過安全檢查,故不安全 使用下面的方法可以獲取檔案的型別,從而判斷檔案的上傳型別 finfo finfo open fileinfo mime type mimetype finfo file finfo f...