中文字幕视频在线看,亚洲精品无码久久久久av老牛,亚洲精品无码av片,亚洲av影院一区二区三区,亚洲国产精品成人久久久

如何在線執(zhí)行PHP代碼?安全嗎?

代碼執(zhí)行漏洞(Code Execution),最早稱為命令注入攻擊( Command Injection ),是指由于Web應(yīng)用程序?qū)τ脩籼峤坏臄?shù)據(jù)過(guò)濾不嚴(yán)格,導(dǎo)致黑客可以通過(guò)構(gòu)造特殊命令字符串的方式,將數(shù)據(jù)提交至Web應(yīng)用程序中,并利用該方式執(zhí)行外部程序或系統(tǒng)命令實(shí)施攻擊非法獲取數(shù)據(jù)或網(wǎng)絡(luò)資源等。

PHP代碼執(zhí)行

1)PHP代碼執(zhí)行漏洞是PHP應(yīng)用程序中常見(jiàn)的腳本漏洞之一,國(guó)內(nèi)著名的Web應(yīng)用程序Discuz!、DedeCMS等都曾經(jīng)存在過(guò)該類型漏洞。

命令執(zhí)行漏洞是直接操作系統(tǒng)的命令。代碼執(zhí)行漏洞是通過(guò)代碼執(zhí)行來(lái)執(zhí)行計(jì)算機(jī)語(yǔ)言代碼,比如eval(system(‘set’);)

命令執(zhí)行漏洞和代碼執(zhí)行漏洞兩者確實(shí)很像,沒(méi)有太大的區(qū)別,提交漏洞時(shí)可能沒(méi)有分的那么詳細(xì)很多人

把命令執(zhí)行漏洞也叫做代碼執(zhí)行漏洞,不過(guò)我們?cè)趯W(xué)習(xí)時(shí)還是要學(xué)會(huì)區(qū)分不同的概念。

2)代碼執(zhí)行概念

代碼執(zhí)行漏洞(Code Execution)最初稱為命令注入攻擊,它的英文

名稱為Command Injection,它是由挪威的一名程序員在1997年意外發(fā)現(xiàn)的,他通過(guò)構(gòu)造命令字符串的方式從一個(gè)網(wǎng)站刪除網(wǎng)頁(yè),就像從硬盤中刪除一個(gè)文件一樣簡(jiǎn)單。

狹義的代碼執(zhí)行通常指將可執(zhí)行代碼注入到當(dāng)前頁(yè)面中,如PHP的eval函數(shù),可以將字符串代表的代碼作為PHP代碼執(zhí)行,當(dāng)前用戶能夠控制這段字符串時(shí),將產(chǎn)生代碼執(zhí)行漏洞。廣義上的代碼注入,可以覆蓋大半安全漏洞的分類。

3)命令執(zhí)行和代碼執(zhí)行

相同點(diǎn):

(1)、都是用了相關(guān)函數(shù)、卻存在可以控制的變量;

(2)、都可以通過(guò)代碼審計(jì)發(fā)現(xiàn)漏洞;

(3)、都可以拼接惡意命令對(duì)服務(wù)器造成攻擊等等。

不同點(diǎn):

命令執(zhí)行漏洞是直接操作系統(tǒng)的命令,如PHP中的system) , exec() , shell_exec()等,當(dāng)用戶能控制這些函數(shù)中的參數(shù)時(shí),就可以將惡意系統(tǒng)命令拼接到正常命令中,從而造成命令執(zhí)行攻擊,這就是命令執(zhí)行漏洞;

代碼執(zhí)行漏洞是通過(guò)代碼執(zhí)行來(lái)執(zhí)行計(jì)算機(jī)語(yǔ)言代碼,比如eval(system(‘set’);)。

4)代碼執(zhí)行原理

PHP中的代碼執(zhí)行情況非常靈活,究其原因仍然離不開(kāi)兩個(gè)關(guān)鍵條件︰第一是用戶能夠控制的函數(shù)輸入;第二是存在可以執(zhí)行代碼的危險(xiǎn)函數(shù)。

所以,代碼執(zhí)行的原理其實(shí)就是當(dāng)應(yīng)用在調(diào)用一些能將字符串轉(zhuǎn)化成代碼的函數(shù)時(shí),沒(méi)有考慮到用戶是否能控制這個(gè)字符串,然后將字符串代表的代碼作為PHP代碼執(zhí)行,造成代碼執(zhí)行漏洞。

5)代碼執(zhí)行實(shí)例:

舉一個(gè)例子︰

將GET請(qǐng)求的參數(shù)‘a(chǎn)rg’的值賦值給變量x;然后通過(guò)eval函數(shù)執(zhí)行括號(hào)里面的PHP代碼,代碼如圖所示

這段代碼其實(shí)很正常,它的作用是讓我們?nèi)?zhí)行一些需要用到的PHP代碼。但是,這段代碼并沒(méi)有設(shè)置好權(quán)限,也沒(méi)有對(duì)需要執(zhí)行的代碼進(jìn)行過(guò)濾,當(dāng)這段代碼被網(wǎng)絡(luò)黑客利用時(shí)便會(huì)執(zhí)行一些系統(tǒng)命令,造成很嚴(yán)重的后果。

如何在線執(zhí)行PHP代碼?安全嗎?

例如︰攻擊者想要查看該系統(tǒng)的PHP配置信息,就可以構(gòu)造payload來(lái)進(jìn)行代碼注入:/arg?arg=phpinfo

這樣我們能便得到了這個(gè)網(wǎng)站的PHP所有的配置信息。當(dāng)然,我們還可以結(jié)合system函數(shù)來(lái)查看操作系統(tǒng)的當(dāng)前用戶以及其他命令等。

我們構(gòu)造一個(gè)payload來(lái)查看當(dāng)前的用戶:/arg?=system(whoami);

如何在線執(zhí)行PHP代碼?安全嗎?

6)文件包含執(zhí)行代碼

我們?cè)谇皫渍轮v文件包含漏洞的時(shí)候也提到過(guò),文件包含漏洞也可以進(jìn)行代碼執(zhí)行。

比如∶已知一個(gè)網(wǎng)站存在著文件包含漏洞,我們想要通過(guò)這個(gè)漏洞創(chuàng)建一個(gè)新的系統(tǒng)賬號(hào)AK,我們便可以結(jié)合代碼執(zhí)行對(duì)它進(jìn)行創(chuàng)建。

如何在線執(zhí)行PHP代碼?安全嗎?

接著,我們?cè)偻ㄟ^(guò)PHP封裝協(xié)議php://input偽協(xié)議進(jìn)行命令執(zhí)行。比如,現(xiàn)在我們想要目標(biāo)操作系統(tǒng)的賬戶和信息,我們可以構(gòu)造如下payload :

php echo “

";system('net user');echo" 

“?>

執(zhí)行結(jié)果如圖所示:

如何在線執(zhí)行PHP代碼?安全嗎?

如此,我們便可以知道文件包含漏洞是可以造成代碼執(zhí)行的。還有一些比較特殊的情況,比如用戶上傳PHP代碼,或者是應(yīng)用寫入到服務(wù)器的文件內(nèi)容和文件類型可以由用戶控制,都可以導(dǎo)致代碼執(zhí)行。

7)代碼執(zhí)行有哪些危害?

代碼執(zhí)行漏洞對(duì)我們的危害:

(1)、,暴露服務(wù)器信息﹔

(2)、木馬植入;

(3)、敏感文件暴露;

(4)、還可能升級(jí)為“命令執(zhí)行”

由此,我們可以看到代碼執(zhí)行漏洞的危害還是非常大的,用戶既然可以利用PHP中的代碼來(lái)執(zhí)行系統(tǒng)的命令,那么我們的服務(wù)器豈還能安全?我們網(wǎng)站的源代碼等敏感的信息文件將會(huì)被一覽無(wú)余;我們的網(wǎng)頁(yè)也可能被篡改;重要的機(jī)密數(shù)據(jù)被竊取﹔核心業(yè)務(wù)數(shù)據(jù)被篡改;數(shù)據(jù)庫(kù)所在服務(wù)器被攻擊變?yōu)榭苤鳈C(jī),甚至企業(yè)網(wǎng)被入侵。

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至2705686032@qq.com 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。原文轉(zhuǎn)載: 原文出處:

(0)
云計(jì)算的頭像云計(jì)算
上一篇 2025 年 1 月 15 日 09:00
下一篇 2025 年 1 月 15 日 09:04

相關(guān)推薦

發(fā)表回復(fù)

登錄后才能評(píng)論

聯(lián)系我們

400-900-3935

在線咨詢: QQ交談

郵件:cong@zun.com

工作時(shí)間:365天無(wú)休服務(wù) 24小時(shí)在線

添加微信