亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php打開遠程文件的方法

發布時間:2021-07-24 13:58:08 來源:億速云 閱讀:195 作者:chen 欄目:開發技術

本篇內容介紹了“php打開遠程文件的方法”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

PHP有一個配置選項叫allow_url_fopen,該選項默認是有效的。它允許你指向許多類型的資源,并像本地文件一樣處理。例如,通過讀取URL你可以取得某一個頁面的內容(HTML),看下面的代碼

復制代碼 代碼如下:


<?php
$contents = file_get_contents('https://www.jb51.net/');
?>


當被污染數據用于include和require的文件指向時,會產生嚴重漏洞。實際上,我認為這種漏洞是PHP應用中最危險的漏洞之一,這是因為它允許攻擊者執行任意代碼。盡管嚴重性在級別上要差一點,但在一個標準文件系統函數中使用了被污染數據的話,會有類似的漏洞產生:

復制代碼 代碼如下:


<?php
$contents = file_get_contents($_GET['filename']);
?>


該例使用戶能操縱file_get_contents( )的行為,以使它獲取遠程資源的內容。考慮一下類似下面的請求:
http://example.org/file.php?file ... mple.org%2Fxss.html
這就導致了$content的值被污染的情形,由于這個值是通過間接方式得到的,因此很可能會忽視這個事實。這也是深度防范原則會視文件系統為遠程的數據源,同時會視$content的值為輸入,這樣你的過濾機制會潛在的起到扭轉乾坤的作用。
由于$content值是被污染的,它可能導致多種安全漏洞,包括跨站腳本漏洞和SQL注入漏洞。例如,下面是跨站腳本漏洞的示例:

復制代碼 代碼如下:


<?php
$contents = file_get_contents($_GET['filename']);
echo $contents;
?>


解決方案是永遠不要用被污染的數據去指向一個文件名。要堅持過濾輸入,同時確信在數據指向一個文件名之前被過濾即可:

復制代碼 代碼如下:


<?php
$clean = array();
/* Filter Input ($_GET['filename']) */
$contents = file_get_contents($clean['filename']);
?>


盡管無法保證$content中的數據完全沒有問題,但這還是給出了一個合理的保證,即你讀取的文件正是你想要讀取的文件,而不是由攻擊者指定的。為加強這個流程的安全性,你同樣需要把$content看成是輸入,并在使用前對它進行過濾。

復制代碼 代碼如下:


<?php
$clean = array();
$html = array();
/* Filter Input ($_GET['filename']) */
$contents = file_get_contents($clean['filename']);
/* Filter Input ($contents) */
$html['contents'] = htmlentities($clean['contents'], ENT_QUOTES, 'UTF-8');
echo $html['contents'];
?>


上面的流程提供了防范多種攻擊的強有力的方法,同時在實際編程中推薦使用。

“php打開遠程文件的方法”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

祁连县| 日土县| 古交市| 奈曼旗| 泰顺县| 环江| 潮安县| 岳阳县| 邮箱| 恩平市| 山阳县| 黄浦区| 河源市| 福贡县| 东乌珠穆沁旗| 年辖:市辖区| 云梦县| 定安县| 西乡县| 巨鹿县| 景东| 凌海市| 阿城市| 秦皇岛市| 怀来县| 中宁县| 临夏市| 那坡县| 寻乌县| 乌拉特中旗| 文化| 万年县| 彰武县| 都匀市| 依兰县| 江津市| 青冈县| 威信县| 庄河市| 吴江市| 蕲春县|