更新時(shí)間:2023-01-30 來(lái)源:黑馬程序員 瀏覽量:
要防止跨站攻擊,以下需要做的是()。(選擇三項(xiàng))
A.永遠(yuǎn)不要使用include和require引入靠用戶(hù)輸入決定路徑的文件(如include"$username/script.txt";)
B.除非網(wǎng)站需要,否則關(guān)閉allow_url_fopen
C.避免使用如curl這類(lèi)用來(lái)打開(kāi)遠(yuǎn)程連接的擴(kuò)展庫(kù)。
D.使用類(lèi)似strip_tags()一類(lèi)的函數(shù)過(guò)濾一個(gè)用戶(hù)輸入給另一個(gè)用戶(hù)看的內(nèi)容
E.以上都對(duì)
答案:A、B、D。
如果用戶(hù)通過(guò)篡改URL來(lái)修改$username變量,并且allow_url_fopen是打開(kāi)的,那么PHP將會(huì)下載某臺(tái)非信任的遠(yuǎn)程服務(wù)器上的script.txt文件,并把它當(dāng)作本地PHP腳本來(lái)執(zhí)行。所以不要使用include和require的方式引用文件,也盡量關(guān)閉allow_url_fopen。所以,選項(xiàng)A選項(xiàng)B正確。
對(duì)于選項(xiàng)C,如果需要在PHP中打開(kāi)遠(yuǎn)程連接受信任的擴(kuò)展庫(kù),則使用curl方法是可以的。所以,選項(xiàng)C錯(cuò)誤。
對(duì)于選項(xiàng)D,一個(gè)用戶(hù)輸入的內(nèi)容給另一個(gè)用戶(hù)看時(shí)是需要使用strip_tags()函數(shù)過(guò)濾HTML標(biāo)簽的,有效防止造成跨站攻擊或者瀏覽器bug。所以,選項(xiàng)D正確。
所以,本題的答案為A、B、D。
以下是黑馬程序員公開(kāi)的幾套軟件測(cè)試教程,可以下載跟著學(xué)學(xué)習(xí),如果想轉(zhuǎn)到軟件測(cè)試行業(yè),找到軟件測(cè)試工作,推薦報(bào)班學(xué)習(xí)黑馬軟件測(cè)試課程。