취약점1 여러분의 getter는 안녕하신가요? 저는 공공 클라우드 환경에서의 웹서비스를 개발 및 운영하고 있습니다. 그러다 보니 보안인증(CSAP) 유지를 위해 KISA에게 매년 인프라와 소스코드를 검사받습니다. (어릴 적 숙제 검사 느낌) 그중 소스 취약점에 대한 이야기인데요, 보안인증 중 처음 맡아본 소스 취약점 항목에서 생각지도 못했던 getter에서 문제가 발생했습니다. 바로 우리가 잘 알고 있는 객체지향 프로그래밍(OOP)의 특징 중 하나인 캡슐화에 대한 내용입니다. 취약점의 이름은 [Public 메서드부터 반환된 Private 배열]. 즉, Private으로 선언된 변수에 대해 Public으로 선언된 getter를 통해 배열에 대한 참조를 변경할 수 있다는 취약점입니다. 왜 우리는 캡슐화를 잘 지켰다고 생각했을까? private으로 선언된.. 2023. 7. 2. 이전 1 다음