Monthly Archive: 七月 2020

java安全编码指南之:可见性和原子性

java安全编码指南之:可见性和原子性

简介 java类中会定义很多变量,有类变量也有实例变量,这些变量在访问的过程中,会遇到一些可见性和原子性的问题。这里我们来详细了解一下怎么避免这些问题。 不可变对象的可见性 不可变对象就是初始化之后不...

java安全编码指南之:输入校验

java安全编码指南之:输入校验

简介 为了保证java程序的安全,任何外部用户的输入我们都认为是可能有恶意攻击意图,我们需要对所有的用户输入都进行一定程度的校验。 本文将带领大家探讨一下用户输入校验的一些场景。一起来看看吧。 在字符...

java安全编码指南之:堆污染Heap pollution

java安全编码指南之:堆污染Heap pollution

简介 什么是堆污染呢?堆污染是指当参数化类型变量引用的对象不是该参数化类型的对象时而发生的。 我们知道在JDK5中,引入了泛型的概念,我们可以在创建集合类的时候,指定该集合类中应该存储的对象类型。 如...

java安全编码指南之:字符串和编码

java安全编码指南之:字符串和编码

简介 字符串是我们日常编码过程中使用到最多的java类型了。全球各个地区的语言不同,即使使用了Unicode也会因为编码格式的不同采用不同的编码方式,如UTF-8,UTF-16,UTF-32等。 我们...

java安全编码指南之:表达式规则

java安全编码指南之:表达式规则

简介 在java编写过程中,我们会使用到各种各样的表达式,在使用表达式的过程中,有哪些安全问题需要我们注意的呢?一起来看看吧。 注意表达式的返回值 我们在使用JDK库的时候,一定要注意认真的读一下JD...

java安全编码指南之:Mutability可变性

java安全编码指南之:Mutability可变性

简介 mutable(可变)和immutable(不可变)对象是我们在java程序编写的过程中经常会使用到的。 可变类型对象就是说,对象在创建之后,其内部的数据可能会被修改。所以它的安全性没有保证。 ...