国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > Apache > 正文

Linux下PHP+Apache的26個必知的安全設(shè)置

2024-08-27 18:25:41
字體:
供稿:網(wǎng)友

PHP是一種開源服務(wù)器端腳本語言,應(yīng)用很廣泛。Apache web服務(wù)器提供了這種便利:通過HTTP或HTTPS協(xié)議,訪問文件和內(nèi)容。配置不當(dāng)?shù)姆?wù)器端腳本語言會帶來各種各樣的問題。所以,使用php時要小心。以下是Linux下PHP+Apache的26個PHP程序員必知的安全方面的設(shè)置

為PHP安全提示而提供的示例環(huán)境

文件根目錄(DocumentRoot):/var/www/html

默認(rèn)的Web服務(wù)器:Apache(可以使用Lighttpd或Nginx來取代Apache)

默認(rèn)的PHP配置文件:/etc/php.ini

默認(rèn)的PHP加載模塊配置目錄:/etc/php.d/

我們的示例php安全配置文件:/etc/php.d/security.ini(需要使用文本編輯器來創(chuàng)建該文件)

操作系統(tǒng):RHEL/CentOS/FedoraLinux(相關(guān)指令應(yīng)該與Debian/Ubuntu等其他任何Linux發(fā)行版或者OpenBSD/FreeBSD/HP-UX等其他類似Unix的操作系統(tǒng)兼容)。

默認(rèn)的php服務(wù)器TCP/UDP端口:無

為本文所列的大多數(shù)操作編寫代碼時,假定它們將由運(yùn)行bash外殼程序或其他任何現(xiàn)代外殼程序的根用戶來執(zhí)行:

$ php -v

示例輸出:

PHP 5.3.3 (cli) (built: Oct 24 2011 08:35:41)Copyright (c) 1997-2010 The PHP GroupZend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

出于演示的用途,我會使用以下操作系統(tǒng):

$cat/etc/redhat-release

示例輸出:

Red HatEnterprise Linux Server release 6.1 (Santiago)

第1個設(shè)置項(xiàng):了解你的對手

基于PHP的應(yīng)用程序面臨不同類型的攻擊。我注意到了幾種不同類型的攻擊:

XSS:跨站腳本是Web PHP應(yīng)用程序中的一種安全漏洞,攻擊者可以利用該漏洞來竊取用戶的信息。你可以配置Apache,編寫更安全的PHP腳本(驗(yàn)證所有的用戶輸入),以避免XSS攻擊。

SQL注入攻擊:這是PHP應(yīng)用程序的數(shù)據(jù)庫層中的安全漏洞。用戶輸入不正確地過濾時,應(yīng)用程序就能執(zhí)行任何SQL語句。你可以配置Apache,編寫安全代碼(驗(yàn)證和轉(zhuǎn)換所有的用戶輸入),以避免SQL注入攻擊。PHP中的一個常見做法是,在發(fā)送SQL查詢之前,使用名為mysql_real_escape_string()的函數(shù),轉(zhuǎn)換參數(shù)。

文件上傳:它讓訪客可以將文件放在(將文件上傳到)你的服務(wù)器上。這會帶來眾多安全問題,比如刪除你的文件、刪除數(shù)據(jù)庫、獲取用戶詳細(xì)資料,不一而足。你可以使用php來禁用文件上傳,或編寫安全代碼(比如驗(yàn)證用戶輸入,只允許PNG或GIF等圖像文件類型)。

添加本地和遠(yuǎn)程文件:攻擊者可以從遠(yuǎn)程服務(wù)器打開文件,執(zhí)行任何PHP代碼。這讓他們得以上傳文件、刪除文件和安裝后門??梢耘渲胮hp以禁用遠(yuǎn)程文件執(zhí)行功能。

eval() :將字符串作為PHP代碼來進(jìn)行評估。攻擊者常常利用該函數(shù)來隱藏其在服務(wù)器本身上面的代碼和工具。你可以配置PHP,禁用eval()。

sea-surf攻擊(跨站請求偽造,CSRF):這種攻擊迫使最終用戶針對目前已驗(yàn)證其身份的Web應(yīng)用程序執(zhí)行有害的操作。如果是平常的用戶,得逞的CSRF攻擊會危及最終用戶的數(shù)據(jù)和操作。但如果被盯上的最終用戶使用管理員帳戶,這會危及整個Web應(yīng)用程序。

第2個設(shè)置項(xiàng):查找內(nèi)置的PHP模塊

想查看一組編譯進(jìn)去的PHP模塊,請輸入以下命令:

# php -m

我建議你使用模塊數(shù)量減少的PHP,以增強(qiáng)性能和安全。比如說,你可以通過刪除(移除)配置文件或者更名(或移動)一個名為/etc/php.d/sqlite3.ini的文件來禁用sqlite3模塊,操作如下:

#rm/etc/php.d/sqlite3.ini

或者

#mv/etc/php.d/sqlite3.ini /etc/php.d/sqlite3.disable
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 涞水县| 门源| 广昌县| 浦县| 高要市| 三原县| 宽城| 当涂县| 河南省| 湖北省| 兰坪| 武山县| 平武县| 隆子县| 高碑店市| 嘉义市| 虞城县| 嘉黎县| 武清区| 沽源县| 苍南县| 长乐市| 德保县| 罗甸县| 枞阳县| 沙雅县| 金川县| 陕西省| 钦州市| 逊克县| 金塔县| 五台县| 封丘县| 米脂县| 巨鹿县| 渭源县| 徐州市| 乐平市| 阿巴嘎旗| 手游| 青川县|