国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

詳解PHP中pathinfo()函數導致的安全問題

2019-11-19 18:07:02
字體:
來源:轉載
供稿:網友

定義和用法

pathinfo() 函數以數組或字符串的形式返回關于文件路徑的信息。

返回的數組元素如下:

  1. [dirname]:返回文件路徑中的目錄部分
  2. [basename]:返回文件路徑中文件名的部分
  3. [extension]:返回文件路徑中文件的類型的部分

語法

pathinfo(path,options)

參數

  1. path: 必需。規定要檢查的路徑。
  2. options 可選。規定要返回的數組元素。默認是 all。

可能的值:

  1. PATHINFO_DIRNAME - 只返回 dirname
  2. PATHINFO_BASENAME - 只返回 basename
  3. PATHINFO_EXTENSION - 只返回 extension

提示和注釋

注釋:如果不是請求所有的元素,則 pathinfo() 函數返回字符串。

php開啟pathinfo 路由模式:pathinfo 模式 需要 php.ini 開啟下面這個參數

cgi.fix_pathinfo=1

path_info模式:http://www.xxx.com/index.php/模塊/方法

實例 1

<?phpprint_r(pathinfo("/testweb/test.txt"));?>

上面的代碼將輸出:

Array([dirname] => /testweb[basename] => test.txt[extension] => txt)

實例 2

<?phpvar_dump(pathinfo("/testweb/test.txt",PATHINFO_DIRNAME));var_dump(pathinfo("/testweb/test.txt",PATHINFO_BASENAME));var_dump(pathinfo("/testweb/test.txt",PATHINFO_EXTENSION));?>

上面的代碼將輸出:

string(8)"/testweb"string(8)"test.txt"string(3)"txt"

應用

目錄不可控沒有執行權限

pathinfo, 一種偽靜態的用法,path_info 模式:http://www.xxx.com/index.php / 模塊 / 方法:

sb.txt 被當成了模塊,實際上請求的還是 6.php

一句話就執行了。

過 WAF 注入

本地安裝 apache 安全狗

已知在開啟 pathinfo 的情況下 (默認開啟) 可以這樣訪問

常用注入語句被攔截

pathinfo 模式不攔截

總結

以上就是這篇文章的全部內容了,本文也算是拋磚引玉,更多用途請自測!希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 江华| 闸北区| 保康县| 阿拉善右旗| 印江| 浠水县| 宣城市| 隆化县| 松滋市| 东源县| 普兰县| 靖宇县| 宜丰县| 张家港市| 浙江省| 花莲县| 鄂托克前旗| 治县。| 麦盖提县| 安宁市| 布尔津县| 修文县| 沙坪坝区| 客服| 德化县| 和平县| 金堂县| 韩城市| 盐源县| 苗栗市| 扎鲁特旗| 大悟县| 逊克县| 上蔡县| 布尔津县| 扎鲁特旗| 武功县| 额尔古纳市| 马龙县| 祁门县| 思南县|