소프트웨어 보증

Software assurance

소프트웨어 보증(SwA)은 "소프트웨어에 의도적으로 설계되거나 라이프사이클 동안 언제라도 우연히 삽입되어 소프트웨어에 취약성이 없다는 자신감과 소프트웨어가 의도된 방식으로 기능한다는 자신감의 수준"[1]으로 정의된다.

소프트웨어 보증의 주요 목적은 소프트웨어를 생산하고 유지하기 위해 사용되는 프로세스, 절차 및 제품이 이러한 프로세스, 절차 및 제품을 통제하기 위해 지정된 모든 요건과 표준을 준수하는지 확인하는 것이다.[2]소프트웨어 보증의 두 번째 목표는 우리가 생산하는 소프트웨어 집약적인 시스템의 보안을 강화하는 것이다.이러한 소프트웨어 집약적인 시스템의 경우 잠재적인 취약성에 대한 예방적 동적 및 정적 분석이 필요하며, 전체적인 시스템 수준의 이해가 권장된다.게리 맥그로가 밝힌 대로 "디자인 결함은 보안 문제의 50%를 차지한다.코드만 쳐다봐도 디자인 결함을 찾을 수 없다.더 높은 수준의 이해가 필요하다.그렇기 때문에 구조적 리스크 분석은 어떤 견고한 소프트웨어 보안 프로그램에서도 필수적인 역할을 한다."[3]

대체 정의

미국 국토안보부(DHS)

DHS에 따르면, 소프트웨어 보증은 다음과 같다.

  • 신뢰도 - 악의적으로 또는 의도치 않게 삽입된 공격 가능한 취약성이 존재하지 않는다.
  • 예측 가능한 실행 - 실행 시 소프트웨어가 의도한 대로 작동한다는 정당한 신뢰
  • 컴플라이언스 - 소프트웨어 프로세스 및 제품이 요구사항, 표준/절차를 준수하도록 보장하는 계획되고 체계적인 다학제 활동 세트.

소프트웨어 엔지니어링, 시스템 엔지니어링, 정보 시스템 보안 엔지니어링, 정보 시스템 보안 엔지니어링, 정보 보증, 테스트 및 평가, 안전, 보안, 프로젝트 관리 및 소프트웨어 획득과 같은 지식 및 핵심 역량 기관에서 명확히 설명되는 기여 SwA 분야.[4]

소프트웨어 보증은 소프트웨어의 무결성, 보안성, 신뢰성을 촉진하기 위한 미국 국토안보부(DHS)의 전략적 이니셔티브다.SwA 프로그램은 사이버 공간 보안을 위한 국가 전략 - 액션/권장 2-14:

DHS는 개발 중에 도입될 수 있는 오류 코드, 악성 코드, 트랩 도어 등의 가능성을 줄이는 프로세스와 절차 등 소프트웨어 코드 개발의 무결성, 보안성, 신뢰성을 촉진하는 베스트 프랙티스와 방법론을 널리 알리기 위해 민관 협력을 촉진할 예정이다.[5]잠재적인 보안 취약점을 식별하는 데 도움이 되는 소프트웨어 보증을 위한 오픈 소스 소프트웨어 도구가 있다.[6]

미국 국방부(DoD)

DoD의 경우, SwA는 "소프트웨어가 의도한 대로만 작동하고 소프트웨어의 일부로 의도적이거나 의도치 않게 설계되거나 삽입되는 취약성이 없다는 신뢰도 수준"으로 정의된다.[7]DoD는 소프트웨어 엔지니어링 연구소(SEI)가 주도하는 개발로 JFAC가 후원하는 최신 간행물 두 권과 군대와 NSA 내의 전문 실무자들이 입증한 것처럼 SwA를 사운드 시스템 엔지니어링 실무자로 개발하고 있다.프로그램 매니저의 SwA 가이드북은 SwA가 어떻게 계획되고, 재원이 되고, 관리되어야 하는지를 보여주며, 개발자의 SwA 가이드북은 라이프사이클 전체에 걸쳐 추적 가능한 기술 관행을 권고한다.[8]이 두 문서 모두 그 종류 중 처음이며, 상을 받았다.[9]DoD 빌딩 SwA 역량에 있는 두 개의 기업 규모의 조직은 공동 연합 보증 센터(JFAC)[10]와 DoD SwA 커뮤니티로, 분기별 공동 포럼 32회 연속 모임으로 운영되어 왔다.둘 다 미국 정부의 다른 부분에도 개방되어 있다.JFAC 헌장은 웹사이트에서 이용할 수 있다.상업적으로 이용 가능한 SwA 도구 제품군에 대한 상황 인식의 폭을 넓히기 위해 JFAC는 국방 분석 연구소(IDA)에 자금을 지원하여 국가 예술 자원(SOAR)을 제작했다.[11]라이프사이클 전체에 걸쳐 "엔지니어링 인" SwA의 최근 혁신은 선택된 NIST 800-53 제어장치를 엔지니어링 작업에 결합하여 엔지니어링 결과가 RMF(Risk Management Framework)를 정의하고 기관 운영(ATO)을 추진하도록 하는 것이다.데이터 항목 설명(DID), 기계 판독이 가능한 취약성 보고서 형식 및 기술 적용에 대한 간략한 개요를 포함한 패키지는 JFAC 웹사이트에서 확인할 수 있다.다른 파괴적인 혁신들이 진행 중이다.

SAMATE(Software Assurance Metrics and Tool Evaluation) 프로젝트

NIST SAMATE 프로젝트에 따르면,[12] 소프트웨어 보증은 "소프트웨어 프로세스와 제품이 다음을 달성하는 데 도움이 되는 요건, 표준 및 절차를 준수하도록 보장하는 계획적이고 체계적인 활동의 집합이다.

  • 신뢰도 - 악의적이거나 의도하지 않은 원인인 공격 가능한 취약성이 존재하지 않으며,
  • 예측 가능한 실행 - 실행 시 소프트웨어가 의도한 대로 작동한다는 정당한 확신."

미국 항공우주국(NASA)

NASA에 따르면, 소프트웨어 보증은 "소프트웨어 프로세스와 제품이 요건, 표준, 절차를 준수하도록 보장하는 계획적이고 체계적인 활동의 집합이다.여기에는 소프트웨어 라이프사이클 동안 품질보증, 품질공학, 검증 및 검증, 부적합 보고 및 시정조치, 안전보증 및 보안보증의 분야와 그 적용이 포함된다.NASA 소프트웨어 보증 표준은 또한 다음과 같이 기술하고 있다: "소프트웨어 개발 수명 주기 동안 이러한 분야를 적용하는 것을 소프트웨어 보증이라고 한다."[13]

OMG(개체 관리 그룹)

OMG에 따르면, 소프트웨어 보증은 "기존의 비즈니스 및 보안 목표를 달성하는 데 있어 정당화될 수 있는 신뢰도"[14]라고 한다.

OMG의 SwA SIG(SIG)[15]플랫폼과 함께 및 도메인 작업하고 다른 소프트웨어 산업 기업과 단체는 OMG에, 분석과 정보 소프트웨어 신뢰에 대한 Softwa에 대한 규격의 개발을 촉진하여 관련된 교환을 위한 일반적인 건설을 조정하기 위해 외부 일한다.A항목을 보강하려면다음을 실현하는 ssurance Framework:

  • 소프트웨어 공급업체 및 취득자가 해당 증거와 함께 (존중하게) 자신의 주장과 주장을 표현할 수 있도록 소프트웨어 속성(규모를 해결하기 위해)의 모든/모든 종류를 나타내는 데 사용할 수 있는 공통 프레임워크를 확립한다.
  • 제품 획득 전에 제품이 이러한 특성을 충분히 만족하는지 확인하여 시스템 엔지니어/통합업체가 이러한 제품을 사용하여 더 큰 보장 시스템을 구축(포장)할 수 있는지 확인하십시오.
  • 업계에 소프트웨어 개발 중에 소프트웨어 보증의 현재 상태에 대한 가시성 향상 지원
  • 업계에서는 공통 프레임워크를 지원하는 자동화된 툴을 개발할 수 있도록 지원하십시오.

SAFECod(Software Assurance Forum for Excellence in Code)

SAFECod에 따르면, 소프트웨어 보증은 "소프트웨어, 하드웨어 및 서비스는 의도하지 않은, 의도하지 않은 취약성이 없고 소프트웨어가 의도한 대로 기능한다고 확신한다"[17]고 한다.

이니셔티브

미국의 연방 자금 지원 이니셔티브는 소프트웨어 보증이라고 불렸는데,[18] 이 이니셔티브는 DHS, DOD, NIST가 공동으로 자금을 지원했으며, BSI([19]Build Security In, Build Security In) 웹사이트를 운영했다.

소프트웨어 보증이 중요한 이유

국방에서 은행, 의료, 통신, 항공, 위험 물질 통제 등 많은 비즈니스 활동과 중요 기능은 소프트웨어의 정확하고 예측 가능한 작동에 의존한다.이러한 활동은 소프트웨어 집약적인 시스템이 실패에 의존하는 경우 심각하게 중단될 수 있다.[2]

참고 항목

참조

  1. ^ "국가정보보증 용어집"; CNSS 지침 제4009호 국가정보보증 용어집
  2. ^ a b Karen Mercedes, Todor Winograd "보안 소프트웨어 생산을 위한 개발 수명 주기 향상" 2012년 3월 30일 Wayback Machine, Data & Analysis Center for Software, 2008년 10월 보관
  3. ^ McGraw, Gary (2006). Software Security: Building Security In. Software Security. Addison-Wesley. ISBN 0-321-35670-5. 75 페이지
  4. ^ Build Security In Home (December 2, 2011). "DHS Build Security In web portal". Buildsecurityin.us-cert.gov. Retrieved May 8, 2013.
  5. ^ Build Security In Home (December 2, 2011). "Build Security In Home". Buildsecurityin.us-cert.gov. Retrieved May 8, 2013.
  6. ^ "Open source (software) assurance tools". Archived from the original on September 11, 2014.
  7. ^ 공공법 112–239—2013년 1월 2일, 2013 회계연도 국방수권법 933조.
  8. ^ https://resources.sei.cmu.edu/library/asset-view.cfm?assetid=538756https://resources.sei.cmu.edu/library/asset-view.cfm?assetid=538771
  9. ^ 그리고 https://www.isc2.org/News-and-Events/Press-Room/Posts/2019/06/17/ISC2-Announces-2019-Information-Security-Leadership-Awards-Government-Winners
  10. ^ 공공법 113–66—2013년 12월 26일, 2014 회계연도 국방수권법, 937조
  11. ^ https://www.ida.org/research-and-publications/publications/all/s/st/stateoftheart-resources-soar-for-software-vulnerability-detection-test-and-evaluation-2016-app-e
  12. ^ "Main Page - SAMATE project". Samate.nist.gov. Retrieved May 8, 2013.
  13. ^ NASA-STD-2201-93, 1992년 11월 10일 웨이백 머신 "소프트웨어 보증 표준"에 보관
  14. ^ OMG Software Assurance(SWA) SIG(Special Interest Group) http://adm.omg.org/SoftwareAssurance.pdfhttp://swa.omg.org/docs/softwareassurance.v3.pdf
  15. ^ "Omg Swa Sig". Swa.omg.org. February 26, 2010. Retrieved May 8, 2013.
  16. ^ http://www.omg.org/CISQ_compliant_IT_Systemsv.4-3.pdf[bare URL PDF]
  17. ^ "Software Assurance: An Overview of Current Industry Best Practices" (PDF). Archived from the original (PDF) on May 13, 2013. Retrieved May 8, 2013.
  18. ^ "Software Assurance Community Resources and Information Clearinghouse". Buildsecurityin.us-cert.gov. Retrieved May 8, 2013.
  19. ^ Build Security In Home (December 2, 2011). "Build Security In Home". Buildsecurityin.us-cert.gov. Retrieved May 8, 2013.

외부 링크