보안 인텔리전스 센터

Navigation
보안 개발 수명 주기
제품 보안 개선을 위한 6가지 실행
  • 보안 개발 수명 주기

    주니퍼 SDL(보안 개발 수명 주기)은 뛰어난 보안과 복원력을 가진 제품을 개발하기 위한 프로세스입니다. 주니퍼의 SDL 프로그램은 6가지 핵심 실행으로 구성됩니다.

실행 #1: 보안 코딩 교육

보안 코딩 교육은 보안 개발 수명 주기 구현의 첫 단계입니다. 주니퍼의 모든 소프트웨어 개발자는 더욱 복원력 있는 소프트웨어를 만드는 데 기초가 되는 이 교육을 받아야 합니다. 교육은 여러 가지 코딩 언어로 제공되며, 개발자는 알맞은 과정을 이수하면 됩니다.

보안 코딩 교육에서는 보안 코딩, 보안 설계, 보안 테스트 및 개인정보와 관련된 기초적인 개념을 다룹니다.

주니퍼에서는 소프트웨어 개발과 관련된 모든 이가 소프트웨어 제품의 보안에 책임이 있다고 생각합니다. 즉, 관리자, 프로그램 관리자, 테스트 담당자 및 IT 담당자 모두가 보안에 대한 책임을 함께 진다는 것입니다. 이 점을 염두에 둔 보안 개발 수명 주기 교육은 모든 직원에게 하루 24시간 연중무휴로 제공되며, 보안 코딩 기초를 다루는 다양한 추가 교육을 제공합니다.

실행 #2: 설계 시 보안 고려 사항

SDL 실행 2에서는 주니퍼 엔지니어와 제품 관리자가 제품 개발의 계획 단계에서 착수해야 하는 보안 관련 단계를 정의합니다. 계획 단계 중에서는 엔지니어와 제품 관리자가 기능 사양 및 제품 요구 사항 문서와 같은 주니퍼 계획 문서에 보안 위험을 공식적으로 언급해야 합니다.

실행 #3: 위협 모델링

위협 모델링에서는 제품에 대한 잠재적 위협을 평가하며, 이 위협이 야기하는 위험을 확인하고 여러 가지 적절한 완화 방법의 경계를 설정합니다.

위협 모델은 개발자가 제품 공격 영역, 즉 보안이 훼손되는 노출의 폭과 깊이를 정의하는 데 도움이 됩니다. 예를 들어 무차별 대입 공격으로 악용될 수 있는 알기 쉬운 암호와 공격자가 TCP 재설정 공격을 탑재할 수 있는 예측 가능한 TCP/IP 임시 포트의 사용 등이 있습니다.

위협 모델링은 문제를 식별하고 열거하여 더 심층적인 보안 평가를 위한 프레임워크를 만듭니다.

실행 #4: 침투 테스트

제품의 보안 태세가 정의되고 나면, 주니퍼의 SDL이 침투 테스트를 통해 보안 위험의 평가와 유효성 검증을 요구합니다. 침투 테스트는 애플리케이션, 시스템 또는 네트워크의 보안 기능을 우회하는 방법을 식별하기 위해 선의의 해커가 실제 공격을 가장하는 보안 평가 방법론입니다. 악의적 해커들이 흔히 사용하는 도구와 기법으로 테스트 시스템을 실제로 공격합니다.

침투 테스트에서는 위협 모델을 사용하여 열거된 공격 영역과 위협을 바탕으로 침투 테스트 계획을 고안합니다.

실행 #5: 릴리스 보안 검토

릴리스 보안 검토는 SDL의 모든 부분에서 남은 보안 위험과 조사 결과의 식별 및 평가를 목표로 하여 릴리스 이전에 제품의 보안 태세를 검사하는 것입니다. 이 검토를 통해 단순한 소프트웨어 릴리스뿐 아니라, 소프트웨어를 만들고 앞으로 제품 수명 주기 내내 지원해야 할 인력, 시스템 및 프로세스의 보안 태세까지 전체적인 시각으로 검토해야 합니다.

실행 #6: 사고 대응 계획

알려진 취약점 없이 출시된 제품은 시간이 지남에 따라 위협에 노출될 수 있습니다. 사고 대응 계획에는 잠재적 제품 취약점에 대한 주니퍼의 대응 방식과 관련 위협 및 완화 방법을 고객에게 알려주는 방식이 요약 설명되어 있습니다.

이 실행은 모든 보안 문제에 완벽히 대응하는 업계 최고의 주니퍼 네트웍스 보안 사고 대응 팀(Juniper SIRT, Juniper Networks Security Incident Response Team) 프레임워크를 기반으로 합니다. 보안 사고에 적절히 대응하기 위해 기존 SIRT 도구, 모범 사례, 프로세스 및 관계를 기반으로 계획이 수립됩니다.

백서

주니퍼 네트웍스 보안 개발 주기