应用软件安全编程--26不要硬编码敏感信息

硬编码如密码、服务器 IP 地址、加密密匙这样的敏感信息,会将信息暴露给攻击者。任何一个可以访问类文件的人都可以对其进行反编译,然后得到敏感信息。因此,程序不能对敏感信息进行硬编码。对敏感信息进行硬编码会使代码管理变得更复杂。例如,在一个已部署的程序中,改变其硬编码密码需 要发布补丁。对敏感数据进行硬编码会向攻击者泄露信息。

对于不要硬编码敏感信息的情况,示例1给出了不规范用法(Java 语 言 )示例 。 示例2给出了规范用法(Java 语言)示例。

示例1:

class   IPaddress{

String   ipAddress   =   new   String("172.16.254. 1");

public  static  void  main(String[]  args)(

 

代码在一个 String常量中对服务器 IP 地址进行了硬编码。使用java 反编译工具(例如:javap  -c IPaddress) 进行反汇编,从而可以得到硬编码的服务器 IP 地址。

示例2:

class  IPaddress{

public static void main(String[] args) throws IOException {

char[]  ipAddress  =  new  char[100];

BufferedReaderbr = new BufferedReader(new InputStreamReader(new

FileInputStream("serveripaddress.txt")));

// Reads the server IP address into the char array,

// returns the number of bytes read

int   n   =br.read(ipAddress);

//     Validate     server     IP     address

// Manually clear out the server IP address

// immediately after use

for(inti=n- 1;i>=0;i-){

ipAddress[i]=0;

 

br.close();

 

 

代码通过一个安全目录下的外部文件得到服务器 IP 地址。通过使用后立即清除内存中的服务器 IP,可以防止进一步泄露。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 应用软件安全编程指南(Application Software Security Programming Guide)是一本具备信息安全技术方面知识的指南书籍。该指南是为了帮助开发人员在应用程序开发过程更好地保护软件安全而编写的。 该指南提供了一系列编程原则和建议,旨在帮助开发人员减少和防止应用程序安全漏洞和风险。它介绍了常见的安全漏洞和攻击类型,以及如何在代码编写过程避免这些漏洞和攻击。 在《应用软件安全编程指南》开发人员可以学习到如何正确使用各种安全机制和编程技术,如输入验证、身份验证、授权、加密、错误处理等。指南还介绍了一些常见的开发语言和框架对安全的支持和限制,以帮助开发人员做出明智的选择。 此外,该指南还强调了在软件开发早期引入安全概念的重要性,以及测试和审查的关键作用。它提供了一些测试和审查方法,以确保软件在发布之前经过充分的安全检查。 总之,应用软件安全编程指南是帮助开发人员提高软件安全性的重要参考资料。它可以帮助开发人员了解常见的安全漏洞和攻击类型,并提供了相应的防范措施和编程技巧。通过遵循该指南的建议,开发人员可以开发出更加安全可靠的应用程序,从而保护用户的信息安全。 ### 回答2: 《应用软件安全编程指南.pdf》是一本关于应用软件安全技术的文件,它提供了一系列在软件开发过程保障信息安全的指导原则和最佳实践。 该指南的主要目的是帮助软件开发人员遵循信息安全的标准和准则,从而提供更安全可靠的应用程序。它详细介绍了一些常见的安全漏洞和攻击方式,并提供了相应的解决方案和预防措施。 首先,该指南强调了代码编写和验证过程安全性要求。它推荐采用安全编程风格和技术,如输入验证、输出编码、防止缓冲区溢出等,以防止安全漏洞的出现。 其次,该指南提供了一些关于安全性测试和评估的方法和工具。它建议开发人员在开发过程进行安全性测试,并使用一些常见的安全性评估工具来检查和评估应用程序的安全性。 此外,该指南还介绍了一些关于数据安全和身份验证的技术。它提供了一些加密和解密技术的实现方法,以确保数据在传输和存储过程安全性。同时,指南还介绍了一些身份验证和访问控制的方法,以限制恶意用户对系统的访问和操作。 总之,《应用软件安全编程指南.pdf》提供了丰富的信息安全技术和最佳实践,可以帮助软件开发人员提高应用程序的安全性和可靠性。通过遵循该指南的建议和原则,软件开发人员能够更好地保护用户的信息安全,防止安全漏洞和攻击的出现。 ### 回答3: 应用软件安全编程指南(Application Software Security Programming Guide)是一份针对应用软件开发人员的指南,旨在帮助他们编写更安全的应用程序。该指南主要关注信息安全技术的应用,帮助开发人员了解和防范常见的安全威胁和漏洞。 该指南提供了一系列的最佳实践和准则,以帮助开发人员在设计和实现应用程序时遵循安全原则。其包括以下几个重要方面: 1. 输入验证:指南强调了输入验证的重要性。它教导开发人员如何对用户输入数据进行正确的验证和过滤,以防止恶意用户通过输入特殊字符或脚本来进行攻击。 2. 访问控制:该指南提供了一些控制和限制用户对系统资源和功能的访问的方法。这包括使用身份验证和授权机制来确保只有合法用户能够访问敏感数据和功能。 3. 安全传输:该指南介绍了如何保护数据在传输过程安全性。它建议开发人员使用加密协议(如HTTPS)来保护敏感数据的传输,并避免使用明文传输敏感信息。 4. 错误处理和日志记录:该指南强调了正确处理错误的重要性,并提供了一些处理错误和记录日志的最佳实践。这有助于开发人员及时发现和修复潜在的安全漏洞。 总之,应用软件安全编程指南是一份非常实用的指南,可以帮助开发人员编写更安全的应用程序。通过遵循其提到的最佳实践和准则,开发人员可以最大限度地提高应用程序的安全性,减少潜在的安全风险。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奔跑的老人吴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值