本文目錄一覽:
- 1、如何實現php的安全最大化?怎樣避免sql注入漏洞和xss跨站腳本攻擊漏洞
- 2、在電商網站開發中有哪些常見漏洞
- 3、計算機掃描出php漏洞如何處理
- 4、關於PHP版本的3個問題。
- 5、伺服器裝什麼軟體 phpcms注入漏洞
- 6、phpstudy有哪些漏洞
如何實現php的安全最大化?怎樣避免sql注入漏洞和xss跨站腳本攻擊漏洞
使用php安全模式
伺服器要做好管理,賬號許可權是否合理。
假定所有用戶的輸入都是「惡意」的,防止XSS攻擊,譬如:對用戶的輸入輸出做好必要的過濾
防止CSRF,表單設置隱藏域,post一個隨機字元串到後台,可以有效防止跨站請求偽造。
文件上傳,檢查是否做好效驗,要注意上傳文件存儲目錄許可權。
防禦SQL注入。
避免SQL注入漏洞
1.使用預編譯語句
2.使用安全的存儲過程
3.檢查輸入數據的數據類型
4.從資料庫自身的角度考慮,應該使用最小許可權原則,不可使用root或dbowner的身份連接資料庫。若多個應用使用同一個資料庫,也應該為資料庫分配不同的賬戶。web應用使用的資料庫賬戶,不應該有創建自定義函數,操作本地文件的許可權。
避免XSS跨站腳本攻擊
1.假定所有用戶輸入都是「邪惡」的
2.考慮周全的正則表達式
3.為cookie設置HttpOnly,防止cookie劫持
4.外部js不一定可靠
5.出去不必要的HTML注釋
6. 針對非法的HTML代碼包括單雙引號等,使用htmlspecialchars()函數。
在電商網站開發中有哪些常見漏洞
一、常見PHP網站安全漏洞
對於PHP的漏洞,目前常見的漏洞有五種。分別是Session文件漏洞、SQL注入漏洞、腳本命令執行漏洞、全局變數漏洞和文件漏洞。這裡分別對這些漏洞進行簡要的介紹。
1、session文件漏洞
Session攻擊是黑客最常用到的攻擊手段之一。當一個用戶訪問某一個網站時,為了免客戶每進人一個頁面都要輸人賬號和密碼,PHP設置了Session和Cookie用於方便用戶的使用和訪向。
2、SQL注入漏洞
在進行網站開發的時候,程序員由於對用戶輸人數據缺乏全面判斷或者過濾不嚴導致伺服器執行一些惡意信息,比如用戶信息查詢等。黑客可以根據惡意程序返回的結果獲取相應的信息。這就是月行胃的SQL注入漏洞。
3、腳本執行漏洞
腳本執行漏洞常見的原因是由於程序員在開發網站時對用戶提交的URL參數過濾較少引起的,用戶提交的URL可能包含惡意代碼導致跨站腳本攻擊。腳本執行漏洞在以前的PHP網站中經常存在,但是隨著PHP版本的升級,這些間題已經減少或者不存在了。
4、全局變數漏洞
PHP中的變數在使用的時候不像其他開發語言那樣需要事先聲明,PHP中的變數可以不經聲明就直接使用,使用的時候系統自動創建,而且也不需要對變 量類型進行說明,系統會自動根據上下文環境自動確定變數類型。這種方式可以大大減少程序員編程中出錯的概率,使用起來非常的方便。
5、文件漏洞
文件漏洞通常是由於網站開發者在進行網站設計時對外部提供的數據缺乏充分的過濾導致黑客利用其中的漏洞在Web進程上執行相應的命令。
二、PHP常見漏洞的防範措施
1、對於Session漏洞的防範
從前面的分析可以知道,Session攻擊最常見的就是會話劫持,也就是黑客通過各種攻擊手段獲取用戶的Session ID,然後利用被攻擊用戶的身份來登錄相應網站。為此,這裡可以用以下幾種方法進行防範:一是定期更換Session ID,更換Session ID可以用PHP自帶函數來實現;二是更換Session名稱,通常情況下Session的默認名稱是PHPSESSID,這個變數一般是在cookie中保存的,如果更改了它的名稱,就可以阻檔黑客的部分攻擊;三是對透明化的Session ID進行關閉處理,所謂透明化也就是指在http請求沒有使用cookies來制定Session id時,Sessioin id使用鏈接來傳遞.關閉透明化Session ID可以通過操作PHP.ini文件來實現;四是通過URL傳遞隱藏參數,這樣可以確保即使黑客獲取了session數據,但是由於相關參數是隱藏的,它也很難獲得Session ID變數值。
2、對SQL注入漏洞的防範
黑客進行SQL注入手段很多,而且靈活多變,但是SQL注人的共同點就是利用輸入過濾漏洞。因此,要想從根本上防止SQL注入,根本解決措施就是加強對請求命令尤其是查詢請求命令的過濾。具體來說,包括以下幾點:一是把過濾性語句進行參數化處理,也就是通過參數化語句實現用戶信息的輸入而不是直接把用戶輸入嵌入到語句中。二是在網站開發的時候儘可能少用解釋性程序,黑客經常通過這種手段來執行非法命令;三是在網站開發時儘可能避免網站出現bug,否則黑客可能利用這些信息來攻擊網站;僅僅通過防禦SQL注入還是不夠的,另外還要經常使用專業的漏洞掃描工具對網站進行漏洞掃描。
3、對腳本執行漏洞的防範
黑客利用腳本執行漏洞進行攻擊的手段是多種多樣的,而且是靈活多變的,對此,必須要採用多種防範方法綜合的手段,才能有效防止黑客對腳本執行漏洞進行攻擊。這裡常用的方法方法有以下四種。一是對可執行文件的路徑進行預先設定。
4、對全局變數漏洞防範
對於PHP全局變數的漏洞問題,以前的PHP版本存在這樣的問題,但是隨著PHP版本升級到5.5以後,可以通過對php.ini的設置來實現,設置ruquest_order為GPC。另外在php.ini配置文件中,可以通過對Magic_quotes_runtime進行布爾值設置是否對外部引人的數據中的溢出字元加反斜線。為了確保網站程序在伺服器的任何設置狀態下都能運行。
5、對文件漏洞的防範
對於PHP文件漏桐可以通過對伺服器進行設置和配置來達到防範目的。這裡具體的操作如下:一是把PHP代碼中的錯誤提示關閉,這樣可以避免黑客通過錯誤提示獲取資料庫信息和網頁文件物理路徑;二是對open_basedir盡心設置,也就是對目錄外的文件操作進行禁止處理;這樣可以對本地文件或者遠程文件起到保護作用,防止它們被攻擊,這裡還要注意防範Session文件和上載文件的攻擊;三是把safe-made設置為開啟狀態,從而對將要執行的命令進行規範,通過禁止文件上傳,可以有效的提高PHP網站的安全係數。
計算機掃描出php漏洞如何處理
系統漏洞是指應用軟體或操作系統軟體在邏輯設計上的缺陷或在編寫時產生的錯誤,這個缺陷或錯誤可以被不法者或者電腦黑客利用,通過植入木馬、病毒等方式來攻擊或控制整個電腦,從而竊取您電腦中的重要資料和信息,甚至破壞您的系統。
漏洞原理windows系統漏洞問題是與時間緊密相關的。一個windows系統從發布的那一天起,隨著用戶的深入使用,系統中存在的漏洞會被不斷暴露出來,這些早先被發現的漏洞也會不斷被系統供應商:微軟公司發布的補丁軟體修補,或在以後發布的新版系統中得以糾正。而在新版系統糾正了舊版本中具有漏洞的同時,也會引入一些新的漏洞和錯誤。
因而隨著時間的推移,舊的系統漏洞會不斷消失,新的系統漏洞會不斷出現。系統漏洞問題也會長期存在。
安全公告
2014年2月12日凌晨,微軟發布7個漏洞補丁,包括4個「嚴重」級別的補丁和3個「重要」級別的漏洞。分別修復了Internet Explorer、.Net、Windows中存在的多個漏洞和一個Windows8專屬漏洞。
2014年1月16日,發布1月安全公告,其中4個漏洞補丁級別均為「重要」,它們分別修復了MS Office Word、Windows 7內核和舊版本Windows 內核驅動中存在的多個遠程代碼執行和提權漏洞。同時推送的還有Adobe Flash Player 12的版本更新安裝包及Adobe Reader安全更新。
微軟一般在每月第二周的周二發布安全公告,被稱為「補丁星期二」。
漏洞級別
漏洞按嚴重程度分為「緊急」、「重要」、「警告」、「注意」四種。一般的說,在微軟的網站上定義為重要的都應該及時更新。
漏洞修復
系統自動更新Update,或用電腦管家等安全軟體自動修復。
希望我能幫助你解疑釋惑。
關於PHP版本的3個問題。
我只知道第一個問題,呵呵
如果你是做網站開發,兩者是沒有區別的,因為APACHE下PHP是以單獨的進程出現的
Thread Safe 和 Non Thread Safe的區別是前者多了線程安全的檢測,於是增加了性能的損耗,功能上是沒有任何區別的。
鑒於網站開發下沒有線程,推薦選擇Non Thread Safe
另外,官網上有關於IIS,Apache用哪個版本的說明
If you are using PHP with Apache 1 or Apache2 from apache.org you need to use the VC6 versions of PHP
如果是Apache1或者2,用VC6版本
If you are using PHP with IIS you should use the VC9 versions of PHP
如果是IIS,用VC9版本
VC6 Versions are compiled with the legacy Visual Studio 6 compiler
VC6是用老的VS6編譯器編譯的
VC9 Versions are compiled with the Visual Studio 2008 compiler and have improvements in performance and stability. The VC9 versions require you to have the Microsoft 2008 C++ Runtime (x86) or the Microsoft 2008 C++ Runtime (x64) installed
VC9是用VS2008編譯的,而且在性能和穩定上有改進。VC9版本要求有MS2008C++運行時支持
Do NOT use VC9 version with apache.org binaries
伺服器裝什麼軟體 phpcms注入漏洞
本文利用了PHPCMS V9的兩個漏洞,一個是讀取任意文件漏洞,另一個是模版運行php腳本漏洞。使用到的工具:Navicat for Mysql/IE瀏覽器(建議使用代理)/湛藍v9代碼包(包含文中使用到的所有文件、代碼和木馬)
1、放置data.txt以備在目標站點讀取並在目標站點生成PHP木馬腳本使用。
例如將data.txt放置在yun.baidu.com/j0192/data.txt
2、通過v9漏洞獲取配置信息(請參閱:phpcms V9最新讀取站點任意文件漏洞)。
/index.php?m=searchc=indexa=public_get_suggest_keywordurl=asdfq=../../phpsso_server/caches/configs/database.php
3、通過v9系統漏洞獲取到的資料庫信息遠程登陸目標站點資料庫,在v9_admin和v9_sso_admin表中添加賬號
username欄位:admn
password欄位:10203d4623c1957d041818196ff9822a
encrypt 欄位:bGV22e
issuper 欄位: 1
4、通過資料庫添加管理員賬號後使用以下用戶名密碼在後台登陸,然後修改當前用戶密碼。
用戶名:admn
密碼:123456
5、ctrl+a複製write.php全部內容粘貼進v9默認模版下的footer.html保存,然後點擊footer.html的可視化運行該模版中的腳本,到此時就完成在目標站點生成木馬腳本。
6、打開ifeng.com/caches/caches_template/default/wap/data.class.php
用戶名:admin
密碼:admin
7、隱藏新增加的管理員。
通過木馬腳本上傳替換/phpcms/modules/admin/admin_manage.php(默認匹配%admn%),然後登陸目標站點後台查看管理員列表是否還有用戶名為admn的超級管理員,如果沒有則表明我們完成了新加管理員的隱藏。
8、隱藏新增加的關聯鏈接
通過木馬腳本上傳替換/phpcms/modules/admin/keylink.php((默認匹配%skyhome%))
9、將目標網站的漏洞修復,以防其他黑客入侵。
通過木馬腳本上傳替換/phpcms/modules/search/index.php
防黑參考:
1、關閉資料庫遠程訪問。
2、靜態文件及附件等文件目錄禁止執行許可權。
3、腳本文件目錄禁止寫許可權。
4、系統後台等重要目錄限制IP訪問。
5、及時關注開源系統官方補丁升級和烏雲、sebug等漏洞發布平台,修復系統漏洞。
phpstudy有哪些漏洞
phpstudy軟體是國內的一款免費的PHP調試環境的程序集成包,通過集成Apache、PHP、MySQL、phpMyAdmin、ZendOptimizer多款軟體一次性安裝,無需配置即可直接安裝使用,具有PHP環境調試和PHP開發功能,在國內有著近百萬PHP語言學習者、開發者用戶。但是存在後門漏洞,可直接getshell。
漏洞存在版本:phpStudy2016php\php-5.2.17\ext\php_xmlrpc.dllphp\php-5.4.45\ext\php_xmlrpc.dllphpStudy2018PHPTutorial\php\php-5.2.17\ext\php_xmlrpc.dllPHPTutorial\php\php-5.4.45\ext\php_xmlrpc.dll
準備工作:伺服器:192.168.29.135(Windows server 2008 SP2)phpStudy2016(php-5.4.45+Apache)
漏洞成因
查看文件C:\phpStudy\php\php-5.4.45\ext\php_xmlrpc.dll(這是我的安裝路徑,根據實際的安裝情況查看安裝路徑),Ctrl+F查找關鍵字「@evel」,找到了「@eval(%s(‘%s’));」,這也是漏洞的成因。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/270600.html