您好,登錄后才能下訂單哦!
相對于Java,C++,C#,Python等語言來說, PHP 在 商城方面有更大的優勢,有開發效率高,框架選擇多,可選擇的開源產品多,可以大大減少開發成本和加快產品迭代,比如基于Thinkphp框架開發出的開源商城DSMall,DSHOP,DSKMS等等,基于此類產品開發可以大大加快開發速度,讓項目迅速上線,同時Thinkphp框架可直接升級。
一般情況下我們在自己開發的過程中,需要注意PHP安全方面的知識,以下就說一下常見安全問題。
1.SQL 注入
SQL 注入是常見網站最大的威脅之一,如果數據庫受到SQL 注入的***,那么可以獲取你全部的數據庫。
當前主流的解決方法有兩種。轉義用戶輸入的數據或者使用封裝好的語句。一般用一個封裝好的函數,用來對用戶提交的數據進行過濾。
2.XSS
XSS 又叫 CSS (Cross Site Script) ,跨站腳本***。它指的是惡意***者往 Web 頁面里插入惡意 html 代碼,當用戶瀏覽該頁之時,嵌入其中 Web 里面的 html 代碼會被執行,從而達到惡意***用戶的特殊目的。
正確的做法是堅決不要相信用戶的任何輸入,并過濾掉輸入中的所有特殊字符。這樣就能消滅絕大部分的 XSS ***
3.XSRF/CSRF 跨站請求偽造
它是***者通過一些技術手段欺騙用戶去訪問曾經認證過的網站并運行一些操作。
最常用的防御方法是生成一個 CSRF 令牌加密安全字符串,一般稱其為 Token,每次你在網頁構造表單時,將 Token 令牌放在表單中的隱藏字段, Session 里的 Token 令牌比對,校驗成功才給予通過。
如果在這些TP框架中的開源商城系統中進行二次開發,您這邊需要注意的應該有以下幾點。
1.設置public目錄為唯一對外訪問目錄,不要把資源文件放入應用目錄;
2.開啟表單令牌驗證避免數據的重復提交,能起到CSRF防御作用;
3.使用框架提供的請求變量獲取方法(Request類param方法及input助手函數)而不是原生系統變量獲取用戶輸入數據;
4.對不同的應用需求設置default_filter過濾規則(默認沒有任何過濾規則),常見的安全過濾函數包括stripslashes、htmlentities、htmlspecialchars和strip_tags等,請根據業務場景選擇最合適的過濾方法;
5.使用驗證類或者驗證方法對業務數據設置必要的驗證規則;
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。