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