ENGLISH
A.8.30

외주 개발

기술적 통제확인사항 6증적 7사례 7

통제 목적

시스템 개발의 전부 또는 일부를 외부 인력/업체에 위탁하는 경우에도 조직의 보안 요구사항을 개발 전 과정에 적용하고, 그 이행을 지속적으로 지도하고 감독하며 검증하도록 보장하기 위한 통제입니다. 외주 개발에서는 소스코드/데이터/인프라에 대한 통제권이 외부로 넘어가고 보안 활동이 조직의 직접 관리 범위를 벗어나기 쉽습니다. 따라서 계약 단계부터 요구사항을 명확히 하고 인수 시점까지 검증 절차를 두어 취약점 유입, 악성 기능 삽입, 지식재산권 및 데이터 유출 위험을 낮추도록 요구합니다. 자체 개발과 동일한 수준의 보안성을 외주 산출물에서도 확보하는 것이 목표입니다.

주요 확인사항

  1. 외주 개발 계약/제안요청서(RFP)에 보안 요구사항(보안 코딩, 시험, 산출물, 지식재산권, 데이터 처리, 감사권 등)이 명시되어 있는가?
  2. 외주업체의 보안 개발 역량 및 보안 관리 수준을 계약 전에 평가하고 선정 기준에 반영하는가?
  3. 외주 개발 과정에서 조직의 보안 요구사항 이행 여부를 점검하고 감독할 수 있는 절차와 산출물 제출 요건이 마련되어 있는가?
  4. 산출물 인수 전에 보안성 검증(보안 시험, 취약점 진단, 소스코드 검토, 악성코드/백도어 점검)을 수행하고 그 결과를 검수 승인에 반영하는가?
  5. 제공되거나 생성되는 소스, 데이터, 접근권한, 환경에 대한 통제와 종료 시 자산/데이터 반환 또는 파기 및 접근 회수 절차를 정하는가?
  6. 소스코드 소유권/에스크로, 라이선스, 재하도급(2차 위탁) 제한 및 유지보수/하자담보 책임이 계약에 규정되어 있는가?

이행 지침

  • 외주 개발 계약과 RFP에 보안 요구사항, 준수해야 할 보안 개발 표준/보안 코딩 규칙, 산출물 목록, 검수 기준, 감사권(right to audit), 위반 시 제재를 구체적으로 포함합니다.
  • 업체 선정 시 보안 개발 역량, 인력 보안, 과거 이력, 재하도급 관리 능력을 평가하고, 계약에 재하도급 시 사전 승인 및 동일 수준의 보안 의무 승계를 명시합니다.
  • 개발에 제공하는 운영 데이터는 최소화하고 가명/익명화 또는 시험용 데이터로 대체하며, 소스코드/개발 환경/문서에 대한 접근은 최소 권한으로 허용하고 접근기록을 남깁니다.
  • 진행 단계별 보안 점검(설계 검토, 중간 산출물 점검, 보안 시험 결과 공유)과 정기 보고로 요구사항 이행을 지도하고 감독합니다.
  • 인수 전에 산출물과 위험에 맞는 코드/구성요소 분석 및 보안 시험으로 취약점, 악성 기능, 하드코딩된 비밀정보를 확인합니다. 차단 기준에 해당하는 결함은 조치한 뒤 재시험하고, 허용되는 예외는 책임자의 위험 수용, 보완통제, 조치 기한을 기록하여 승인합니다.
  • 지식재산권 귀속, 소스코드 에스크로, 라이선스 준수, 유지보수 및 하자담보 책임, 보안 사고 발생 시 통지/공동대응 의무를 계약에 규정합니다.
  • 계약 종료 시 제공/생성 자산과 데이터의 반환 또는 삭제를 확인하고 증빙을 확보하며 접근권한은 정해진 종료 시점에 회수합니다. 법적으로 필요한 보존 자료는 근거와 범위, 사용 제한 및 최종 삭제 시점을 별도로 관리합니다.

증적자료

  • 외주 개발 계약서/RFP 및 보안 요구사항 명세(보안 코딩, 검수 기준, 감사권, 재하도급 조항 포함)
  • 외주업체 보안 역량 평가 및 선정 심사 기록
  • 개발 단계별 보안 점검/감독 기록 및 진행 보고서
  • 인수 시 보안 시험/취약점 진단/소스코드 검토/악성코드 점검 보고서 및 결함 조치 내역
  • 검수 승인 기록 및 산출물 목록
  • 소스코드 에스크로 계약, 라이선스/지식재산권 관련 문서
  • 계약 종료 시 자산/데이터 반환 또는 파기 확인과 접근권한 회수 기록

부적합 사례

  • 외주 개발 계약에 보안 요구사항 및 검수 기준이 없어 자체 개발보다 보안 수준이 낮은 산출물이 인수된 경우
  • 인수 전 보안 시험/취약점 진단을 수행하지 않아 취약점 또는 하드코딩된 인증정보가 포함된 산출물이 그대로 운영에 반영된 경우
  • 외주 개발에 운영 데이터를 제공하면서 필요성과 적법한 근거, 승인, 최소화 및 보호조치를 확인하지 않아 개인정보/기밀정보가 노출된 경우
  • 계약에 재하도급 제한이 없어 조직이 인지하지 못한 2차 업체가 소스코드를 처리한 경우
  • 계약 종료 후에도 외주업체에 부여한 소스코드/개발 환경 접근권한이 회수되지 않고 잔존한 경우
  • 소스코드 소유권/에스크로 및 유지보수 책임이 계약에 규정되지 않아 업체 이탈 시 유지보수가 불가능해진 경우
  • 개발 과정에 대한 감사권/점검 권한이 없어 요구사항 이행 여부를 확인할 수 없는 경우

출처 근거

출처/한계: 통제 번호/명칭/테마 분류는 ISO/IEC 27001:2022 Annex A의 공개된 목록에 근거합니다. 통제 목적/주요 확인사항/이행 지침/증적자료/부적합 사례 등 설명 본문과 속성 분류는 본 자료집이 실무 참고용으로 새로 작성한 원저작이며, ISO/IEC 27001:2022 및 27002:2022 표준 원문의 규범 텍스트가 아닙니다. 인증 대응 시 정본은 라이선스된 표준 원문으로 확인하십시오.
이 항목
항목 정보
구분A.8
주요 확인사항6
증적자료7
사례7