欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解PHP中pathinfo()函數(shù)導(dǎo)致的安全問題

 更新時間:2017年01月05日 15:26:58   作者:Security  
這篇文章主要給大家介紹了PHP中pathinfo()函數(shù)導(dǎo)致的安全問題,文中給出了詳細(xì)的介紹與示例代碼,相信對大家的理解和學(xué)習(xí)具有一定的參考借鑒價值,需要的朋友可以參考下,下面來一起看看吧。

定義和用法

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

返回的數(shù)組元素如下:

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

語法

pathinfo(path,options)

參數(shù)

  1. path: 必需。規(guī)定要檢查的路徑。
  2. options 可選。規(guī)定要返回的數(shù)組元素。默認(rèn)是 all。

可能的值:

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

提示和注釋

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

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

cgi.fix_pathinfo=1

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

實例 1

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

上面的代碼將輸出:

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

實例 2

<?php
var_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"

應(yīng)用

目錄不可控沒有執(zhí)行權(quán)限

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

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

一句話就執(zhí)行了。

過 WAF 注入

本地安裝 apache 安全狗

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

常用注入語句被攔截

pathinfo 模式不攔截

總結(jié)

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

相關(guān)文章

  • JS如何設(shè)置滾動屬性默認(rèn)自動滾動到底部(overflow:scroll;)

    JS如何設(shè)置滾動屬性默認(rèn)自動滾動到底部(overflow:scroll;)

    這篇文章主要給大家介紹了關(guān)于JS如何設(shè)置滾動屬性默認(rèn)自動滾動到底部(overflow:scroll;)的相關(guān)資料,通過本文介紹的的JavaScript代碼示例,你可以實現(xiàn)滾動條默認(rèn)在最底部的效果,需要的朋友可以參考下
    2023-10-10
  • Openlayers實現(xiàn)擴散的動態(tài)點(水紋效果)

    Openlayers實現(xiàn)擴散的動態(tài)點(水紋效果)

    這篇文章主要為大家詳細(xì)介紹了Openlayers實現(xiàn)擴散的動態(tài)點,水紋效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • 使用JS判斷移動端手機橫豎屏狀態(tài)

    使用JS判斷移動端手機橫豎屏狀態(tài)

    本文通過js和cas代碼分別給大家介紹了移動端判斷手機橫豎屏狀態(tài)的相關(guān)知識,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧
    2018-07-07
  • javascript中HTMLDOM操作詳解

    javascript中HTMLDOM操作詳解

    這篇文章主要介紹了javascript中HTMLDOM操作詳解,需要的朋友可以參考下
    2014-12-12
  • 通過一篇文章由淺入深的理解JSONP并拓展

    通過一篇文章由淺入深的理解JSONP并拓展

    這篇文章主要給大家介紹了關(guān)于理解JSONP并拓展的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2022-01-01
  • js父窗口關(guān)閉時子窗口隨之關(guān)閉完美解決方案

    js父窗口關(guān)閉時子窗口隨之關(guān)閉完美解決方案

    admin注銷的時候,或者main.html關(guān)閉的時候,如何讓打開的所有新窗口一起關(guān)閉,下面有個不錯的解決方案,大家可以參考下
    2014-04-04
  • JavaScript開發(fā)者必備的10個Sublime Text插件

    JavaScript開發(fā)者必備的10個Sublime Text插件

    Sublime Text幾乎是任何開發(fā)者在其工具箱的必備應(yīng)用程序,這篇文章主要介紹了JavaScript開發(fā)者必備的10個Sublime Text插件,感興趣的小伙伴們可以參考一下
    2016-02-02
  • TypeScript中的never類型你了解嗎

    TypeScript中的never類型你了解嗎

    TypeScript 中的 never 類型,表示:永遠(yuǎn)不會發(fā)生的值的類型,換句話說,就是不可能存在的類型,即沒有值的類型,那么你了解TypeScript中的never類型嗎,感興趣的朋友跟著小編一起來看看吧
    2023-10-10
  • BootStrap Fileinput的使用教程

    BootStrap Fileinput的使用教程

    bootstrap-fileinput是基于bootstrap的上傳控件。此控件在網(wǎng)上可以找到很多例子,接下來通過本文給大家分享bootstrap fileinput的使用教程,非常不錯,感興趣的朋友一起看看吧
    2016-12-12
  • JS 日期與時間戮相互轉(zhuǎn)化的簡單實例

    JS 日期與時間戮相互轉(zhuǎn)化的簡單實例

    下面小編就為大家?guī)硪黄狫S 日期與時間戮相互轉(zhuǎn)化的簡單實例。小編覺得挺不錯的, 現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06

最新評論