전자정부표준프레임워크
public 메소드부터 반환된 private 배열 보안코드 예시
yeon.Biju
2018. 9. 11. 17:36
습관적으로 아래와 같이 사용하는데..
public List<BbsMgmtAaaaaaa> getBbsmgmtaaaaaaaList(){
return bbsmgmtaaaaaaaList;
}
public void setBbsmgmtaaaaaaaList(List<Bbsmgmtaaaaaaa> bbsmgmtaaaaaaaList){
this.bbsmgmtaaaaaaaList = bbsmgmtaaaaaaaList;
}
이렇게 쓰면 안된다고 한다.
시큐어코딩 이슈로 인해서 public 메소드부터 반환된 private 배열 라는 문제가 발견되었다.
자세한 내용은 추후에..
그래서 다음과 같이 고쳐서 쓸 수 있다.
public List<BbsMgmtAaaaaaa> getBbsmgmtaaaaaaaList(){
List<Bbsmgmtaaaaaaa> list = new ArrayList<>();
list.addAll(bbsmgmtaaaaaaaList);
return list;
//return bbsmgmtaaaaaaaList;
}
public void setBbsmgmtaaaaaaaList(List<Bbsmgmtaaaaaaa> bbsmgmtaaaaaaaList){
this.bbsmgmtaaaaaaaList = new ArrayList<>();
this.bbsmgmtaaaaaaaList.addAll(bbsmgmtaaaaaaaList);
//this.bbsmgmtaaaaaaaList = bbsmgmtaaaaaaaList;
}