
277
20
장
취약점 탐색
취약점 탐색
CHAPTER
20
안전한 아키텍처의 코드를 설계, 작성, 리뷰한 다음으로 할 일은 균열을 통해 취약점이 스며들
지 않았는지 확인하는 것이다.
최선의 아키텍처를 택한 애플리케이션은 대체로 취약점이 많이 생기지 않으며 취약점의 위험도
최소화된다. 소스 코드 리뷰 과정을 충분히 거친 애플리케이션은 과정을 생략한 애플리케이션
에 비해 취약점이 적지만 보안을 기본으로 하는 아키텍처를 택했을 때보다는 취약점이 더 많다.
하지만 안전한 아키텍처와 충분한 리뷰를 거친 애플리케이션에도 취약점이 생기곤 한다. 이러
한 취약점들은 리뷰에서 걸러지지 못한 것일 수도 있고 애플리케이션이 다른 환경에서 실행되
거나 환경이 업그레이드되어 의도치 않은 결과를 만들기도 한다.
따라서 개발 코드보다는 프로덕션 코드에 대한 취약점 탐색 과정이 더 필요하다.
20.1
보안 자동화
아키텍처와 리뷰 단계 이후 취약점을 탐색하는 첫 단계는 자동화 단계다.
취약점 탐색 자동화는 꼭 필요하지만 모든 취약점을 자동으로 찾을 수 있는 것은 아니다. 대체
로 저렴하고 효과적이며 오랫동안 이용할 수 있다는 것이 자동화의 장점이다.
자동화된 탐색 기법은 아키텍트와 코드 리뷰어가 놓칠 수 있는 일반적인 보안 결함을 코드에서