6.3 訪問控制
6.3.1 身份鑒別
6.3.1.1 身份鑒別過程中暴露多余信息
審計指標:應避免在處理身份鑒別的過程中暴露多余信息。
審計人員應檢查賬號在注冊或認證過程中,是否存在暴露多余信息的情況。攻擊者可能會利用獲取到的多余信息,進行認證暴力破解。
6.3.1.2 身份鑒別被繞過
審計指標:應避免身份鑒別被繞過。
審計人員應檢查代碼中身份鑒別機制是否存在被繞過的路徑或通道,鑒別算法的關鍵步驟是否被省略或跳過。
6.3.1.3 身份鑒別嘗試頻率限制
審計指標:應對身份鑒別連續多次登錄失敗頻率進行限制。
審計人員應檢查代碼中是否實現對身份鑒別多次登錄失敗的頻率進行限制。如結果為否定,則系統存在身份認證被暴力破解的安全風險。
6.3.1.4 多因素認證
審計指標:宜使用多因素認證機制。
審計人員宜檢查是否采用多因素認證,如果結果為否定,則提示存在安全風險。
6.3.2 口令安全
6.3.2.1 登錄口令
審計指標:應確保登錄過程中口令不可明文顯示。
審計人員應檢查代碼中是否實現在登錄過程中口令是否明文顯示。
6.3.2.2 明文存儲口令
審計指標:應避免明文存儲口令。
審計人員應檢查代碼中是否存在明文存儲口令的情況。
6.3.2.3 明文傳遞口令
審計指標:應避免明文傳遞口令。
審計人員應檢查代碼中是否存在明文傳遞口令的情況。
6.3.3 權限管理
6.3.3.1 權限訪問控制
審計指標:應確保權限管理安全以及其他訪問控制措施的安全。
審計人員應檢查代碼中的權限與訪問控制功能相關部分,包括但不限于:
a)應檢查是否缺失認證機制,如果結果為肯定,則提示存在安全風險;
b)應檢查是否缺失授權機制,如果結果為肯定,則提示存在安全風險;
c)應檢查是否違背最小特權原則,以高于功能所需的特權級別在執行一些操作,如果結果為肯定,則提示存在安全風險;
d)應檢查放棄特權后,是否檢查其放棄是否成功,如果結果為否定,則提示存在安全風險;
e)應檢查是否創建具有正確訪問權限的文件,如果結果為否定,則提示存在安全風險;
f)應檢查是否避免關鍵資源的不正確權限授予,如果結果為否定,則提示存在安全風險;
g)應檢查是否存在攻擊者使用欺騙或捕獲重放攻擊等手段繞過身份認證的情況,如果結果為肯定,則提示存在安全風險;
h)應檢查是否避免不恰當地信任反向DNS, 如果結果為否定, 則提示存在安全風險。代碼的不規范/規范用法示例參見B.2.15;
i)對于客戶端/服務器架構的產品,應檢查是否存在僅在客戶端而非服務器端執行認證,如果結果為肯定,則提示存在安全風險;
j)應檢查是否避免過于嚴格的賬戶鎖定機制(賬戶鎖定保護機制過于嚴格且容易被觸發,就允許攻擊者通過鎖定合法用戶的賬戶來拒絕服務合法的系統用戶),如果結果為否定,則提示存在安全風險;
k)應檢查是否未對信道兩端的操作者進行充分的身份認證,或未充分保證信道的完整性,從而允許中間人攻擊發生,如果結果為肯定,則提示存在安全風險;
i)應檢查是否避免通信通道源的驗證不當,確保請求來自預期源,如果結果為否定,則提示存在安全風險;
m)應檢查通信信道是否正確指定目的地來預防如下風險:攻擊者在目的地偽裝成受信任的服務器來竊取數據或引起拒絕服務。如果結果為否定,則提示存在安全風險。
6.3.3.2 未加限制的外部可訪問鎖
審計指標:宜對外部可訪問鎖加以限制,不允許被預期范圍之外的實體影響。
審計人員宜檢查代碼中的鎖是否可被預期范圍之外的實體控制或影響,如結果為肯定,則系統存在易受到拒絕服務攻擊的安全風險。
GB/T 39412-2020 信息安全技術 代碼安全審計規范
推薦文章: