重磅資料——linux shell語言編程規範安全篇之加解密原則!

規則1 禁止在shell腳本里面實現加解密算法

說明:shell作為解釋性語言,在產品發佈版本中以文本方式存在,功能實現邏輯能被直接看到,如果在shell腳本中實現加解密算法並使用,無任何保密性可言,所以禁止在shell腳本中實現加解密算法。


規則2 正確使用經過驗證的安全的標準加密算法

說明:禁止使用是私有算法或者弱加密算法(如DES、SHA1等)。應該使用經過驗證的、安全的、公開的加密算法。


規則3 禁止shell腳本中調用解密工具或者組件

說明:在產品發佈版本中,shell腳本容易被修改,如果在腳本中使用了密碼明文,會增加被利用的可能性,在產品功能實現中一般會涉及解密場景,如果在腳本中使用密文和解密組件獲取密碼明文並保存再變量中,會增大密碼被利用的可能性。

防護措施:對於解密場景,解密操作全部由轉門的加解密工具實現,shell腳本中不保存或使用密碼明文等操作,直接使用由解密組件返回類似”對或錯“的驗證結果,儘量減少被利用的可能性。

錯誤示例:該例子中shell調用獨立解密工具,在腳本中存在獲取密碼明文的過程,能被直接修改腳本獲取密碼明文。

重磅資料——linux shell語言編程規範安全篇之加解密原則!

modify

推薦做法:調用解密工具吧密文解密成明文作為參數直接使用。

重磅資料——linux shell語言編程規範安全篇之加解密原則!

modify


  • May you share freely, never taking more than you give.

  • 願你寬心與人分享,所取不多於你所施與。


分享到:


相關文章: