每當你講不論什麼涉及到錢財事務等交易問題時,需要特別注意安全問題的考慮,好比開發一個論壇或者是一個購物車等。javascript
需要在server端進行驗證,對每個php腳本驗證傳遞到的數據,防止XSS攻擊和SQL注入
不相信用戶
要若是你的站點接收的每一條數據都是存在惡意代碼的。存在隱藏的威脅,要對每一條數據都進行清理
關閉全局變量
在php.ini文件裏進行下面配置:
php
register_globals = Off
<input name="username" type="text" size="15" maxlength="64">
<?php // Define $authorized = true only if user is authenticated if (authenticated_user()) { $authorized = true; } ?html
>java
推薦的安全配置選項
error_reporting設置爲Off:不要暴露錯誤信息給用戶,開發的時候可以設置爲ON
safe_mode設置爲Off
register_globals設置爲Off
將下面函數禁用:system、exec、passthru、shell_exec、proc_open、popen
open_basedir設置爲 /tmp ,這樣可以讓session信息有存儲權限,同一時候設置單獨的站點根文件夾
expose_php設置爲Off
allow_url_fopen設置爲Off
allow_url_include設置爲Off
web
PHP安全編程系列收藏夾收藏了有關PHP安全編程方面的知識,對PHP安全編程提供學習參考 shell
1discuz的php防止sql注入函數
數據庫
2php防止xss攻擊的方法
編程
3PHP安全編程:對輸出要進行轉義
跨域
19PHP安全編程:cookie暴露致使session被劫持
44php防止sql注入演示樣例分析和幾種常見攻擊正則表達式
52PHP安全之以Apache模式安裝時可能遇到的攻擊及解決的方法