1. 程式人生 > 其它 >為什麼資料分析都選擇視覺化資料而不是文字資料

為什麼資料分析都選擇視覺化資料而不是文字資料

一、檔案包含介紹

程式開發人員通常會把可重複使用的函式寫到單個檔案中,在使用某個函式的時候,直接呼叫此檔案,無需再次編寫,這種呼叫檔案的過程通常稱為包含。為了程式碼靈活,開發通常把被包含的檔案設定為變數,來進行動態呼叫,但正是由於這種靈活性,從而導致客戶端可以呼叫任意檔案,造成檔案包含漏洞。在PHP Web Application中較多。

原因:

1.Web應用實現了動態包含。

2.動態包含的檔案路徑引數,客戶端可控。

危害:檔案包含漏洞是非常嚴重的漏洞,如果存在就等於網站的防禦措施全部失效。一般的大馬、小馬過不了安全狗,但是檔案包含漏洞可以過掉安全狗。

特點:

1.無視副檔名讀取檔案。如圖片.jpg,開啟不是圖片,二是二進位制碼。

2.無條件解析PHP程式碼。如圖片.jpg中插入一句話木馬info.php。

二、PHP中四個檔案包含函式

include() 檔案包含失敗時,會產生警告,指令碼會繼續執行。

include_once() 與include()功能相同,檔案只會被包含一次。

require() 檔案包含失敗時,會產生錯誤,直接結束指令碼執行。

require_once() 與require()功能相同,檔案只會被包含一次。

本質是將任意檔案包含在上述函式的引用變數中。

三 、分類

1.本地檔案包含:通過相對路徑的方式找到檔案,然後包含。讀取和開啟本地檔案。

2.遠端檔案包含:通過Http、Ftp、Php偽協議(php://),可以載入遠端檔案。

可以通過php.ini來進行配置:

allow_url_fopen=On/Off 本地檔案包含(LFI)的開關

allow_url_include=On/Off 遠端檔案包含(RFI)的開關

四、檔案包含的利用

1.讀取敏感檔案。

[?path=路徑] 絕對路徑、相對路徑..\..\..\..\..\

2.直接包含圖片木馬。

[?path=圖片]

3.包含木馬寫shell。

4.訪問本地檔案

[?path=file://路徑]

5.傳輸php檔案

[?path=php://filter/read=convert.base64-encode/resource=檔案]

然後把得到的所有字串base64解碼即可。(獲取網站原始碼)

6.執行php命令:

通過BP抓包