1319浏覽量

Web服務端常見安全概述

來源: 時間:2020-02-20

1.SQL注入攻擊
名詞解釋:

SQL注入攻擊(SQL Injection),簡稱注入攻擊、SQL注入,被廣泛用于非法獲取網站控制權,是發生(shēng)在應用程序的數據庫層上的安全漏洞。由于在設計程序時,忽略了對輸入字符串中(zhōng)夾帶的SQL指令的檢查,被數據庫誤認爲是正常的SQL指令而運行,從而使數據庫受到攻擊,可能導緻數據被竊取、更改、删除,甚至執行系統命令等,以及進一(yī)步導緻網站被嵌入惡意代碼、被植入後門程序等危害。

常見發生(shēng)位置:

1) URL參數提交,主要爲GET請求參數;

2) 表單提交,主要是POST請求,也包括GET請求;

3) Cookie參數提交;

4) HTTP請求頭部的一(yī)些可修改的值,比如Referer、User_Agent等;

5) 一(yī)些邊緣的輸入點,比如.mp3、圖片文件的一(yī)些文件信息等。

防禦措施:

1) 使用預編譯語句。一(yī)般來說,防禦SQL注入的最佳方式,就是使用預編譯語句,綁定變量,但對現有代碼的改動量較大(dà);

2) 使用存儲過程。使用安全的存儲過程可在一(yī)定程度上對抗SQL注入,但要注意此種方法并不是100%安全;

3) 嚴格檢查用戶數據。對用戶傳入的數據類型及内容進行嚴格的檢查。對數據類型檢查,如利用ID查詢時判斷是否爲整型,輸入郵箱時判斷郵箱格式,輸入時間、日期等必須嚴格按照時間、時期格式等;對數據内容進行檢查,如嚴格檢測用戶提交數據中(zhōng)是否包含敏感字符或字符串,是否匹配某種注入規則,嚴格轉義特殊字符等。注意此種方法雖然便于實施,但容易産生(shēng)誤報和漏報,且容易被繞過;

4) 其他。使用安全的編碼函數、統一(yī)各數據層編碼格式(如統一(yī)使用UTF-8等)、嚴格限制數據庫用戶權限、定期進行代碼黑盒白(bái)盒掃描、避免将錯誤信息顯示到頁面等。



2.文件上傳

名詞解釋:

文件上傳漏洞是指由于程序代碼未對用戶提交的文件進行嚴格的分(fēn)析和檢查,導緻攻擊者可以上傳可執行的代碼文件,從而獲取Web應用的控制權限(Getshell)。

常見發生(shēng)位置:

1) 所有使用到上傳功能的位置;

2) 用戶可自定義的頭像、背景圖片等;

3) 富文本編輯器中(zhōng)的文件上傳功能。

防禦措施:

1) 上傳目錄設置爲不可執行;

2) 嚴格判斷文件類型,使用白(bái)名單而不是黑名單(注意大(dà)小(xiǎo)寫問題)。需要注意的是一(yī)些與Web Server相關的漏洞所造成的問題,如Apache、IIS、Nginx等的文件解析漏洞;

3) 使用随機數改寫上傳後的文件名和文件路徑;

4) 單獨設置文件服務器及域名。


3.權限漏洞

名詞解釋:

訪問控制是指用戶對系統所有訪問的權限控制,通常包括水平權限和垂直權限。訪問控制問題是所有業務系統都可能産生(shēng)的邏輯類漏洞,很難通過日常的安全工(gōng)具掃描或防護,通常會造成大(dà)量用戶數據洩露事件。

水平越權:同一(yī)權限(角色)級别的用戶之間所産生(shēng)的問題,如A用戶可以未授權訪問B用戶的數據等;

垂直越權:不同權限(角色)級别的用戶之間所産生(shēng)的問題,如普通用戶可未授權進行管理操作,未登錄用戶可以訪問需授權應用等。

常見發生(shēng)位置:

1) 所有涉及到與用戶相關數據的位置,如用戶資(zī)料、地址、訂單等;

2) 所有涉及到登錄及權限控制的位置,如後台登錄、當前用戶權限校驗等。

防禦措施:

1) 對于所有涉及到用戶數據的操作,嚴格判斷當前用戶的身份;

2) 對于所有需要權限控制的位置,嚴格校驗用戶權限級别。



4.暴力破解

名詞解釋:

暴力破解是指攻擊者通過遍曆或字典的方式,向目标發起大(dà)量請求,通過判斷返回數據包的特征來找出正确的驗證信息,從而繞過驗證機制。随着互聯網衆多網站的數據庫被洩露,攻擊者選擇的樣本可以更具針對性,暴力破解的成功率也在不斷上升。

常見發生(shēng)位置:
1) 用戶登錄處的賬号密碼暴力破解;

2) 人機驗證機制容易繞過,如使用較易識别的驗證碼;

3) 找回密碼或二次身份驗證等可能用到的手機短信驗證碼;

防禦措施:

1) 強制使用強密碼,并定期修改;

2) 限制密碼錯誤嘗試次數;

3) 使用強人機驗證機制;

4) 限制一(yī)定時間内的高頻(pín)訪問次數。



5.拒絕服務攻擊

名詞解釋:

拒絕服務攻擊(DoS,Denial of Service)是利用合理的請求造成資(zī)源過載,從而導緻服務不可用的一(yī)種攻擊方式。分(fēn)爲針對Web應用層的攻擊、客戶端/APP的攻擊。

常見發生(shēng)位置:

1) Web層常見于會大(dà)量消耗資(zī)源的位置,如查找功能等;

2) 客戶端/APP常見于異常輸入數據造成的程度崩潰。

防禦措施

針對Web層DoS:

1) 限制每個客戶端的請求頻(pín)率;

2) 使用驗證碼過濾自動攻擊者;

3) 做好應用代碼的性能優化,網絡架構優化等;

針對客戶端/APP拒絕服務攻擊:

1) 删除不必要的組件;

2) 對用戶輸入數據進行過濾和檢查。


6.敏感信息洩露

名詞解釋:

敏感信息洩露是指包括用戶信息、企業員(yuán)工(gōng)信息、内部資(zī)料等不應當被外(wài)部訪問到的數據通過網站、接口、外(wài)部存儲等途徑被未授權洩露到外(wài)部的漏洞。信息洩露漏洞會導緻大(dà)量用戶或企業信息被惡意利用,進行詐騙、賬戶竊取等,給用戶和企業帶來嚴重的不良影響。并且信息一(yī)旦信息被洩露,影響會很難消除。

常見發生(shēng)位置:

1) 獲取用戶、企業信息等數據的網站或客戶端接口;

2) 企業可訪問到的外(wài)部存儲,如網盤、郵箱等;

3) 其他一(yī)切可能洩露數據的途徑。

防禦措施:

1) 對數據接口進行嚴格的權限檢查和訪問限制;

2) 劃分(fēn)企業安全邊界,限制内部數據外(wài)流,如禁止訪問外(wài)部存儲應用等;

3) 提高員(yuán)工(gōng)數據安全意識。


7.業務邏輯漏洞

名詞解釋:

業務邏輯漏洞是指由于業務在設計時考慮不全所産生(shēng)的流程或邏輯上的漏洞,如用戶找回密碼缺陷,攻擊者可重置任意用戶密碼;如短信炸彈漏洞,攻擊者可無限制利用接口發送短信,惡意消耗企業短信資(zī)費(fèi),騷擾用戶等。由于業務邏輯漏洞跟業務問題貼合緊密,常規的安全設備無法有效檢測出,多數需要人工(gōng)根據業務場景及特點進行分(fēn)析檢測。

常見發生(shēng)位置:

所有涉及到用戶交互的位置。

防禦措施:

針對業務場景進行全面的檢測。


8.安全配置缺陷

包括:文件遍曆、源碼洩露、配置文件洩露等。

文件遍曆:可以浏覽服務器Web目錄下(xià)的文件列表,可能會洩露重要文件;

源碼洩露:可以查到的Web程序的源代碼;

配置文件洩露:Web服務器及程度代碼的配置文件洩露等。

防禦措施:

1) 檢查所有可能存在安全配置問題的點,在滿足業務需求的情況下(xià),最大(dà)化安全配置。



聯系我(wǒ)們

一(yī)次需求提交或許正是成就一(yī)個出色産品的開(kāi)始。
歡迎填寫表格或發送合作郵件至: qczsky@126.com

大(dà)理青橙科技

電(diàn)話(huà):13988578755 13988578755

郵箱:qczsky@126.com

地址:大(dà)理市下(xià)關龍都春天10層