保障代码安全:从数据加密到代码加固
1. 数据加密策略
在处理敏感数据时,采用将加密密钥与管理员分离的方法是明智之举。这样一来,管理员无法直接访问数据,攻击者也无法获取单一的主密钥,而必须逐个攻破每个账户。
需要注意的是,不要直接使用用户密码进行加密而跳过中间密钥。因为这意味着要将用户密码以明文形式保存到会话中,一旦会话被攻破,加密数据和密码都将暴露。使用中间密钥至少能保证密码的安全。
不过,加密并非适用于所有数据交换。加密是一个资源密集型过程,对非敏感数据进行加密是资源的浪费,可能会根据数据量产生高昂的成本。因此,应谨慎使用加密,仅在必要时进行。
2. 保障现有代码库安全
在实际开发中,我们常常需要处理现有的代码库或使用第三方代码。为了确保应用程序的安全性,我们需要对现有代码进行分析和加固。
2.1 进行风险评估
在着手保障代码安全之前,先进行风险评估是很有必要的。风险评估可以帮助我们确定哪些安全措施是必要的,哪些是可以省略的。虽然从安全角度来看,实施最高级别的防御总是最好的,但在现实中,这存在明显的财务权衡。
风险评估的大致流程如下:
1. 识别资产 :确定与应用程序相关的所有资产,如服务器、数据等。
2. 创建架构概述 :分析应用程序,列出所有可能的风险,包括但不限于丢失客户信息、网站被篡改、网站停机等。
3. 分解应用程序 :估计每种情况的损失以及恢复成本。
4. 识别威胁 :
超级会员免费看
订阅专栏 解锁全文
766

被折叠的 条评论
为什么被折叠?



