哈尔滨模板建站软件,wordpress仪表盘密码,wordpress微信快捷支付,微网站页面菜单栏本系列文章主要围绕《GB/T 38674—2020 信息安全技术 应用软件安全编程指南》进行讲解#xff0c;该标准是2020年4月28日#xff0c;由国家市场监督管理总局、国家标准化管理委员会发布#xff0c;2020年11月01日开始实施。我们对该标准中一些常见的漏洞进行了梳理#xff…本系列文章主要围绕《GB/T 38674—2020 信息安全技术 应用软件安全编程指南》进行讲解该标准是2020年4月28日由国家市场监督管理总局、国家标准化管理委员会发布2020年11月01日开始实施。我们对该标准中一些常见的漏洞进行了梳理大家感兴趣的话可以自己去下载下来学习一下里面有一些最佳实践是比较好的。
本标准从程序安全和环境安全两个方面提出了提升应用安全性的编程最佳实践。其中程序安全部分描述软件在资源使用、代码实现、安全功能方面的安全性规范环境安全部分描述软件的安全管理配置规范。前面的文章为大家讲解了程序安全本文我们针对代码安全的并发程序安全部分进行解读。 【并发程序安全】 这一块是程序中经常出现的一些问题我们在功能测试、性能测试中经常会遇到的一些问题。 1.确保共享数据的线程安全 1确保所有的全局变量、线程间的共享可变数据是线程安全的。 2对所有需确保线程安全的数据通过同步方法或代码块进行保护。 2.确保共享变量、数据的可见性 1对共享变量、数据的读或写操作均使用同步访问。 2所有执行读或写操作的线程都应在同一个锁上同步以确保所有线程都能看到共享变量或数据的最新值。
比如一些订单的操作在读和写的时候要上同一个锁保证是一致的。一方读的时候对方正在写导致读的是之前的信息这样这个订单就容易产生一些交易上的问题。 3.需确保能够终止处于阻塞状态的任务和线程。 有些任务和线程处在阻塞状态我们可以及时阻止我们要能够预见到什么程度下会出现阻塞在程序上做一个防护使其能够及时终止。 4.仅在循环体中执行线程的挂起操作并在每次挂起线程之前检查线程继续执行要满足的条件。 5.不要在条件变量同步等待操作中使用多余一个互斥条件。 这部分并发程序安全在标准中也给出了最佳实践大家也可以去看一看。给大家举一个例子有一个类SimpleDateFormat时间格式化这个类就是线程不安全的现在已经不建议使用了在我们代码审计的过程中这个类出现的频率还很高很多单位和项目都还在用这个类。这个类是线程不安全的如果你非要用的话就必须是局部变量的使用这样性能会比较差。
在java8中有一个替代它的的类DateTimeFormatter这个是线程安全的可以替代SimpleDateFormat。我们在做项目的时候一定要用最新的、安全的一些类、方法和框架。
后面的文章会继续对《GB/T 38674—2020 信息安全技术 应用软件安全编程指南》的其他部分进行解读欢迎继续关注。
本系列文章根据《优品软件培育计划》公益直播内容整理可以私信我获取直播回放链接。