程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> linux防止php 偽造本地文件解決方法

linux防止php 偽造本地文件解決方法

編輯:關於PHP編程

我們舉例只講linux的系統,但是防止方法在任何系統都是有效的,下面我們先來看看等操作


你可以這樣使用

 代碼如下 復制代碼

http://www.xxx.com/index.php?page=../etc/passwd
http://www.xxx.com/index.php?page=../../../etc/passwd
http://www.xxx.com/index.php?page=..../../etc/passwd

獲取更多數據:
etc/profile
etc/services
/etc/passwd
/etc/shadow
/etc/group
/etc/security/group
/etc/security/passwd
/etc/security/user
/etc/security/environ
/etc/security/limits
/usr/lib/security/mkuser.default


像上面代碼,如果你是

?page=$_GET的話這樣就完了,分析原因,因為我們分頁只有數字,那麼我們這樣操作

 代碼如下 復制代碼

?page=intval($_GET);

這樣就無法把字符提交了,我們利用了intval函數進行了過濾,那麼對於提交字符怎麼處理呢。

在處理字符時我們利用php自帶函數的函數 addslashes和htmlspecialchars進行過濾,

 代碼如下 復制代碼

$body = htmlspecialchars(isset($_GET[$str])?$_GET[$str]:'');

這樣就基本過濾了各種安全注入,當然如果你服務器有漏洞在php上是解決不了的。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved