Notice
Recent Posts
Recent Comments
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

Chimy's Program

정보처리기사 실기 - 소프트웨어 개발 보안 구축 : SW개발보안 요구사항 명세/설계 본문

BASE

정보처리기사 실기 - 소프트웨어 개발 보안 구축 : SW개발보안 요구사항 명세/설계

chimy 2020. 9. 5. 01:39

정보처리기사 실기 - 소프트웨어 개발 보안 구축 : SW개발보안 요구사항 명세/설계

 

SW개발보안

 

  • 해킹  사이버공격의 원인인 보안 취약점을 SW개발 단계에서 미리 제거하고 SW개발에 따른 생명주기별 단계적으로 수행하고 개발 과정에서 보안 업무을 수행하며 안전한 보안요소를 만족하는 소프트웨어를 개발/운영하기 위한 목적으로 수행하는 개발 방법

 

SW개발보안의 3요소

 

  • 기밀성(confidentiality)
  • 무결성(integrity)
  • 가용성(availability)

 

(1) 소프트웨어 자산(Asset) 관련된 상세 

 

  • ⁠자산 조직의 데이터 또는 조직의 소유자가 가치를 부여한 대상
  • 서버의 하드웨어소프트웨어와 기업의 중요 데이터

 

⁠(2) 위협원(Threat agents) 

 

  • ⁠조직 자산의 파괴와 손해가 발생하는 행동을   있는 외부의 주체
  • 해커내부 인가받지 않은 임직원단체자연재해

 

⁠(3) 위협(Threat) 

 

  • ⁠조직의 자산에 대한 위협이 되는 위협원의 공격 행동
  • 해킹삭제자산의 불법적인 변조파손

 

⁠(4) 취약점(Vulnerability) 

 

  • ⁠위협이 발생하기 위한 사전 조건에 따른 상황
  • 평문을 전송입력값을 검증하지 않음비밀번호를 공유하는 행위

 

⁠(5) 위험(Risk) 

 

  • ⁠위협원이 취약점을 사용하여 위협 행동하여 자신에 나쁜 영향의 결과를 가져올 확률 영향도

 

 

소프트웨어 개발보안의 요구공학 프로세스

 

  • 보안요구 공학 : 보안요구사항 개발과 보안요구사항 관리로 분류
  • 요구사항 개발 : 도출(Elicitation) ↔ 분석(Analysis) → 명세(Specification) ↔ 확인(Vaildation)
  • 요구사항 관리 : 요구사항 변경관리, 추적관리

 

소프트웨어 개발보안의 요구사항 개발 

 

(1) 소프트웨어 개발보안의 요구사항 도출 

 

  • 조직의 이해관계자의 상호의견을 조율하고 협의를 통해 요구사항을 수집하고 수집된 요구사항을 정제하고 내용별로 분류
  • 참조되는 산출물 : 제안서나 계약서과업지시서회의록사업 수행 계획서

 

(2) 소프트웨어 개발보안의 요구사항 분석 

 

  •  후에 보안요구사항을 내용별로 분류된 것을 토대로 분석에 들어가는데 요구사항 중에서는 실제로 구현하기 어렵거나 현시점에서 과도하게 비용 또는 인력이 소모되는 비용 효율적인 면을 고려하여 보안요구사항의 제약조건 판별
  • 만약 기술적 이나 비용적으로 당장 구현이 힘들더라도 비슷한 대안을 제시할  있다면 의견 제시 보안요구사항 분석서에 기술해도 무방

 

(3) 소프트웨어 개발보안의 요구사항 명세 

 

  • 보안요구사항을 다른 사람이 알아보기 쉽도록 명세화
  • 보안요구사항의 분석서를 통해 요구사항 정의서 도출
  • 내용은 소프트웨어 개발 시스템의  기술과 사업의 기능과 비기능적 요구사항 명세

 

(4) 소프트웨어 개발보안의 요구사항 확인과 검증 

 

  • 소프트웨어 개발보안요구사항 명세 작성이 완료되면 관계자들에게 요구사항이 맞는지 확인하고 검증하는 과정 필요
  • 이해 관계자들의 지식과 조직의 성숙도프트웨어 개발보안요구사항 문서와 조직의 표준을 고려하여 소프트웨어 개발보안요구사항 문제 보고서 작성
  • 보고서는 경영진 또는 중간관리자에게 승인을 받아 내용 확정
  • 경영진, 중간관리자는 보고서의 문서화 정도와 내용의 명확성간결하고 실제로 구현이 가능하고 문제가 없는지 테스트가 가능하여야 하며 향후 장애 등의 문제 발생  근본 원인을 파악할  있도록 추적성이 가능한 코드체계를 통하여 내용 검토를 수행한 검증

 

소프트웨어 개발보안의 요구사항 관리

 

  • 비즈니스 환경 변화 또는 시간의 흐름에 따라 서버 보안요구사항은 변경될  있으며 서버 보안요구사항은 지속적으로 관리, 갱신
  • 서버 보안요구사항의 관리는 이해관계자 간의 협상을 통해 기준을 정하고 상부의 정식  받아 변경 수행
  • 아무 승인 없이 서버 보안요구사항 변경 후 간이 지나면 이력을   없기 때문에 철저히 관리하고 서버 보안요구사항 명세서 함께 서버 보안요구사항 추적 매트릭스를 통해 산출물과 테스트 시나리오 관리

 

(1) 소프트웨어 개발보안 설계 

 

  • 소프트웨어 개발에 운영되고 개발되는 운영 애플리케이션의 조직의 사업방향에 맞는 보안 목적을 정의하고 조직의 업무 현행  업무 파악과 응용 애플리케이션 개발과정에서 이행되고 적용되어야 하는 조직의 보안 정책을 검토하고 소프트웨어 개발보안 위험 분석  전사 조직에 적용되는 소프트웨어 개발보안 계획 작성

 

(소프트웨어 개발보안의 요구사항 

 

  • 반영 소프트웨어 개발보안의 분석 단계에서 파악된 소프트웨어 개발보안 요구사항 분석서의 요구사항을 반영하여 소프트웨어 개발 설치  감지하지 못하는 보안 위험과 통제를 고려하여 소프트웨어 개발보안 설계 작성
  • 소프트웨어 개발보안 설계서의 내용은 소프트웨어 개발의 기능과 OS, 애플리케이션의 기본 설계와 상세 설계서 작성

 

(소프트웨어 개발보안의 요구사항 설계 반영 

 

  • 소프트웨어 개발보안의 분석 단계에서 정의된 소프트웨어 개발보안 요구사항 분석 통해 나타난 항목을 검토한 뒤에 여러 사항을 고려하여 설계에 반영
  1. 소프트웨어 개발보안 계획이나 조직의 표준(기술비즈니스 요건) 적합한지 확인
  2. 실제 소프트웨어 개발보안이 가능한지 가능성 여부 판단
  3. 보안요구사항을 분석하여 소프트웨어 개발보안 설계에 적절히 반영

 

(소프트웨어 개발보안의 환경 설계 반영 

 

  • ⁠기술적인 구현 타당성이 검증되었고 확인되었다면 네트워크 보안을 검토하여 소프트웨어 개발과 네트워크 연결  문제가 발생하지 않는지 여러 사항을 토하여 설계에 반영
  1. 외부 사이버 공격으로부터 개발/운영 환경 보호를 위해 네트워크 보안환경 구성
  2. 개발/운영에 필요한 네트워크를 분리하고 소프트웨어 개발도 분리하여 다른 접근 경로로 구성
  3. DMZ 구간에 설치될 소프트웨어 개발의 네트워크 접근과 소프트웨어 개발의 계정관리 체계를 점검하여 구성
  • DMZ : 인프라 네트워크의 구성중에서 외부 인터넷망과 내부 인프라넷망의 사이에 위치하는 중간지대, 인프라네트워크의 보안영역의 일부

 

(2) 소프트웨어 개발보안 계획 수립 

 

  1. 시작 단계
  2. 분석 단계
  3. 설계 단계
  4. 구현 단계
  5. 시험 단계

 

 

SW개발보안 요구사항 명세/설계

 

정보에 대한 보안항목을 환경 분석에 따라 법률적으로 검토

 

  • 소프트웨어 개발에 대한 보안항목의 식별을 위해 외부 환경 분석을 통하여 보안항목 분석하고 규제와 컴플라이언스 이슈제거를 위한 사전 항목 식별
  • 소프트웨어  목적에 맞게 소프트웨어가 처리하는 정보의 분류를 조직 정보의 자산 가치에 따라  중요정보 식별

 

(1) 외부환경 분석(법에 따른 제도와 규정) 통해 보안 항목 식별

 

  • 분석단계에서 정보와 조직의 정보처리 기능에 대해 식별해야 하는 항목작업이 우선적으로 수행
  • 보안요구사항은 법률적인 요구사항의 검토 필수

 

※ 정보보호관련 법령 목록

 

  1. ⁠국가기밀보호 : 보안업무 규정군사기밀 보호법, 군형법
  2. 중요정보 국외 유출 방지 : 산업기술의 유출 방지  보호에 관한 법률기술의 이전  사업화 촉진에 관한 법률민군겸용 기술사업 촉진법부정경쟁방지  영업 비밀 보호에 관한 법률
  3. 전자서명  인증 : 전자서명법전자정부법
  4. 정보통신망과 정보시스템 보호추진 : 국가정보화기본법정보통신기반보호법정보통신망 이용촉진  보보호 등에 관한 법률전자정부법전자 문서  전자거래 기본법국가사이버안전관리 규정
  5. 침해행위 처벌 : 전자무역 촉진에 관한 법률형법정보통신기반 보호법정보통신망 이용촉진  정보보호 등에 관한 법률 
  6. ⁠개인정보보호 : 개인정보 보호법정보통신망 이용촉진  정보보호 등에 관한 법률신용정보의 이용  보호에 관한 법률

 

(가) 보안 관련 법규 검토

 

(a) 개인정보 보호법 검토

 

  • 개인정보 처리 과정 상의 정보 주체와 개인정보 처리자의 권리/의무를 검토하 소프트웨어 개발 요구사항에 충분히 반영

 

1개인정보 고유식별 정보의 처리 제한 요구사항 수집

 

  • 개인을 식별하는 고유한 식별정보(ex. 주민등록번호) 처리하는 경우  정보가 분실/도난/유출/변조/훼손되지 않도록 암호화를 통하여 안전성 확보,조치 필요

 

2개인정보보호법 안전조치 의무화 요구사항 반영

 

  • 개인정보가 분실/도난/유출/변조/훼손되지 않도록 조직내부의 보안관리 계획 수립
  • 접속기록보관이 필요하기 때문에 안전성 확보를 위한 필요한 기술적관리적물리적 조치

 

3) 개인정보의 안전성 확보 조치 요구사항 수집

 

  • 개인정보를 안전하게 저장전송할  있는 암호화 기술의 적용하거나 상응 하는 조치 필요

 

(b) 정보통신망 이용촉진  정보보호 등에 관한 법률 검토

 

  • 정보통신망을 통하여 수집/처리/보관/이용되는 개인정보의 보호에 관한 규정을 검토하여 소프트웨어 개발 요구사항에 충분히 반영

 

1개인정보의 보호조치 시행령  15분석

 

  • 개인정보가 안전하게 저장전송될  있도록 보안조치
  • 비밀번  바이오정보(ex. 지문단방향 암호화 저장개인의 주민등록번호/계좌번호/금융정보를 암호화하여 저장
  • 개인정보  인증정보를 수신하는 경우 보안이 강화된 서버 인프라 구축 등의 조치   밖의 검증된 암호화 기술을 이용한 보안 조치를 위한 요구사항 분석 실시

 

2개인정보의 보호조치 법률  28분석

 

  • 개인정보를 취급할 때에는 개인정보의 분실도난누출변조 또는 훼손을 방지 하기 위해 기술적관리적 조치
  • 개인정보를 안전하게 저장전송   있는 암호화 기술 등을 이용한 보안조치

 

3) 개인정보의 암호화 분석

 

  • ⁠비밀번호/바이오정보는 복호화되지 않도록 일방향 암호화하여 저장
  • 주민등록번호/카드번호/계좌번호에 대해서는 안전한 암호화 고리즘으로 암호화하여 저장
  • 서비스를 제공하는 서버 단에서 SSL(Secure Socket Layer) 인증서를 통하여 수신하는 정보를 암호화하여 수신
  • 서비스를 제공하는 서버에 암호화 응용프로그램을 설치하여 전송하는 정보를 암호화하여 수신하는 기능의 보안조치

 

(c신용정보의 이용  보호에 관한 법률 개인 신용정보 취급 

 

  • 단계별 보호조치  의무사항에 관한 규정을 검토하여 소프트웨어 개발 요구사항에 충분히 반영

 

(d) 위치정보의 보호  이용 등에 관한 법률

 

  • 개인위치정보 수집이용제공 파기  정보주체의 권리  규정을 검토하여 소프트웨어 개발 요구사항에 충분히 반영

 

(e) 표준 개인정보보호 지침 

 

  • 조직의 표준 개인정보 지침은 개인정보 취급자와 개인정보 처리자가 준수해야 하는 개인정보의 처리에 관한 기준을 준수
  • 개인정보 침해의 유형  예방조치 등에 관한 세부사항 규정을 검토하여 소프트웨어 개발 요구사항에 충분히 반영

 

(f) 개인정보의 안전성 확보 조치 기준 

 

  • 개인정보 처리자가 개인정보를 처리함에 있어서 분실도난유출변조훼손되 아니하도록 안전성을 확보하기 위해 취해야 하는 세부적인 기준 규정과 개인 정보 위험도 분석기준과 개인정보 처리시스템의 보호수준을 진단하여 암호화에 상응하는 조치 필요여부를 판단할  있는 기준을 규정을 검토하여 소프트웨어 개발 요구사항에 충분히 반영

 

(g) 개인정보 영향평가에 관한 기준

 

  • 개인정보의 영향평가 수행을 위하여 공신력 있는 평가기관의 지정  영향평가의  등에 관한 세부 기준 규정을 검토하여 소프트웨어 개발 요구사항에 충분히 반영

 

(나) 소프트웨어 개발 요구사항 관련 특정 IT기술 관련 규정과 법률이 있는지 조사

 

(a) RFID 프라이버시 보호 가이드라인 

 

  • RFID 활용  개인정보보호 조치 사항을 검토하여 소프트웨어 개발 요구사항에 분히 반영

 

(b) 위치정보의 보호  이용 등에 관한 법률

 

  • 개인정보에서 실시간 개인의 위치정보 수집과 서비스 제공에 필요한 정보를 가공하거나 이용하는 경우 개인정보보호 조치 사항을 검토하여 소프트웨어 개발 요구사항에 충분히 반영

 

(c) 위치정보의 관리적/기술적 보호조치 권고 해설서 

 

  • 지문/홍채  생체정보 수집/이용  개인정보보호 조치 사항을 검토하여 소프트웨어 개발 요구사항에 충분히 반영

 

(d) 바이오정보 보호 가이드라인

 

  • 새로운 컨텐츠 서비스 이용하고 제공하는 경우 개인정보 침해사고 예방을 위한 수사항을 검토하여 소프트웨어 개발 요구사항에 충분히 반영

 

(e) 뉴미디어 서비스 개인정보보호 가이드라인

 

  • 뉴미디어 서비스 이용하고 뉴미디어 서비스를 제공  개인정보 침해사고 예방  위한 준수사항을 검토하여 소프트웨어 개발 요구사항에 충분히 반영

 

(2) 정보의 자산 가치에 따라 기타 중요정보 식별

 

(가) 조직의 정보 자산 가치에 따른 중요한 자산의 정보 식별 

 

  • 소프트웨어 시스템이 처리하는 정보는 법적인 의무사항으로 필수적인 결함제거를  안전조치가 필요한 정보들 이외에도 물리적이고 기술적으로 접근하거나 접근되는 허용되는 범위와 정보유출이 발생하는 경우 예상되는 피해를 기준으로 보안등급을 정하고 조직의 정보의 자산 가치를 기준으로 중요정보를 식별/분류하며 법적의무사항에 준하는 보안강도 적용

 

보안항목의 요구사항 수집

 

  • ⁠보안요구사항 수집을 통하여 다양한 관계자들의 의견을 청취하여 문서로 분류하고 비슷한 내용은 서로 그룹핑을 하여 요구사항을 단순화시킨  단순화시킨 내용을 다시 관계자들의 확인을 거쳐 내용검증을 통해 요구사항 분류/체계화
  • 서버 보안요구사항은 서버의 보안 안정성을 확보하기 위한 기초 데이터로서 /외부 위협으로 부터 주요 자산 보호

 

(1) 보안관련 법률검토 요구사항에 의한 개발 환경의 계획과 통제에 관한 정보 식별

 

  • 보안 법률검토에 의한 보안의 목적과 목표 설정 이행 시스템에 대한 정확한 정보를 식별하여 보안요구사항을 분석할  있도록 파악

 

(2) 소프트웨어 개발 PM(project manager) 보안요구사항을 분석하여 수행 계획 수립

 

  • 보안 설계서의 작업 준비로 보안 환경에 대한 자료 수집과 자료 정리에 따라 작업을 할당하고 역할과 책임 분류
  • 작업 실시에 따른 일정별 작업 계획을 수립하고 보안 환경 구축에 필요한 과업별 작업 카드 작성  기록과 보고체계 구축

 

(3) 보안 환경의 적용 기술을 검토

 

  • 보안 환경의 요구사항 수집과 현행 시스템의 목표를 바탕으로 보안 환경의 구축을 위해 구체적으로 필요한 적합한 환경 기술인력과 인력의 기술수준조직의 보안 성숙도를 반으로 스펙(spec) 기술하고 검토

 

(가) 보안 환경의 요구사항 이행 방안 

 

  • 보안 환경 설계서의 요구사항 정의에 의해 요구사항에 대한 식별을 수행하고  요구사항의 테스크(task) 대한 의존도와 독립성에 대한 검토 수행
  •  요구사항의 항목별로 하부 요구사항을 구체적으로 어떻게 구현할 것인지 세부적인 도출 수행

 

(나) 보안 환경의 구축 가능한 기술에 대한 참조 기술 목록 검색

 

  • 보안 환경 설계서의 정의된 요구사항의 세부 이행 방안에 대한 각종 참조 기술
  • 보안 설계서의 이행 방안에 따른 각각 적용해야 하는 참조 기술을 별도로 의하여 보안 환경의 구축을 수행하고 참조 기술 갱신

 

(다) 보안 환경의 참조 적용 기술에 대한 적용 가능성 검토 

 

  • 구체적으로 해당 참조 기술을 사용하는 방법해당 참조 기술을 이용하기 위한 적용 가능성 검토

 

Comments