시큐어코딩 편집하기
최신판 | 당신의 편집 | ||
1번째 줄: | 1번째 줄: | ||
− | '''시큐어코딩'''( | + | '''시큐어코딩'''(Secure Coding)이란 '''소프트웨어 개발 보안'''이라고도 부르며 설계 및 구현(개발) 단계에서 해킹 등의 공격을 유발할 가능성이 있는 잠재적인 보안 취약점을 사전에 제거하고, 외부 공격으로부터 안전한 소프트웨어를 개발하는 기법이다. 보안 취약점을 줄이기 위해서 소프트웨어 개발 초기 단계에 수정하는 것이 가장 손쉽고 비용 효율성 측면에서 가장 좋기 때문에 이 시큐어 코딩 기법을 적용하고자 한다. <ref> Wisedog, 〈[http://story.wisedog.net/%EC%8B%9C%ED%81%90%EC%96%B4-%EC%BD%94%EB%94%A9%EC%9D%B4%EB%9E%80/ 시큐어 코딩이란?]〉, 《wisedog》, 2013-12-09</ref> |
== 개요 == | == 개요 == | ||
58번째 줄: | 58번째 줄: | ||
* 구조설계 단계 : 공격 저항 분석(Attack Resistance Analysis), 모호성 분석, 허점 분석 등을 통해 위험 요소를 분석한다. | * 구조설계 단계 : 공격 저항 분석(Attack Resistance Analysis), 모호성 분석, 허점 분석 등을 통해 위험 요소를 분석한다. | ||
* 테스트 계획 단계 : 공격 패턴, 위험 분석 결과, 악용 사례를 기반으로 위험기반 보안 테스트를 수행한다. | * 테스트 계획 단계 : 공격 패턴, 위험 분석 결과, 악용 사례를 기반으로 위험기반 보안 테스트를 수행한다. | ||
− | * 코드 단계 : 구현 | + | * 코드 단계 : 구현 오휴에 중점을 두고 특히 소스 코드에 존재하는 취약성을 발견할 목적으로 수행되는 코드 정적 분석에 중심을 둔다. |
* 테스트ㆍ테스트 결과 단계 : 위험 분석 및 침투 테스팅을 수행한다. 침투 시험을 통해 실제 작동 환경에서의 필드 소프트웨어에 대한 좋은 이해를 제공한다. | * 테스트ㆍ테스트 결과 단계 : 위험 분석 및 침투 테스팅을 수행한다. 침투 시험을 통해 실제 작동 환경에서의 필드 소프트웨어에 대한 좋은 이해를 제공한다. | ||
* 현장과의 피드백 단계 : 보안 운영을 통해 얻은 공격자와 공격 도구에 대한 경험과 지식은 개발자에게 다시 피드백한다. <ref>〈[https://openeg.co.kr/585 '소프트웨어 개발보안 방법론' SECENT TOUCHPOINT]〉, 《openeg》, 2015-05-25</ref> | * 현장과의 피드백 단계 : 보안 운영을 통해 얻은 공격자와 공격 도구에 대한 경험과 지식은 개발자에게 다시 피드백한다. <ref>〈[https://openeg.co.kr/585 '소프트웨어 개발보안 방법론' SECENT TOUCHPOINT]〉, 《openeg》, 2015-05-25</ref> | ||
=== CLASP(Comprehensive, Lightweight Application Security Process) === | === CLASP(Comprehensive, Lightweight Application Security Process) === | ||
− | 소프트웨어 개발 생명주기 초기 단계에 보안 강화를 목적으로 하는 정형화된 프로세스로써, | + | 소프트웨어 개발 생명주기 초기 단계에 보안 강화를 목적으로 하는 정형화된 프로세스로써, 활동중심ㆍ역할 기반의 프로세스로 구성된 집합체이다.<ref name ="스틸스타크"></ref> CLASP는 보안 관련 활동을 기존 애플리케이션 개발 프로세스에 쉽게 통합할 수 있도록 설계되었다. 각 CLASP 활동은 개별 프로세스 구성 요소로 나누어지고 하나 이상의 특정 프로젝트 역할에 연결된다. CLASP는 이런 방식으로 프로젝트 참여자에게 자신의 업무 방식에 쉽게 적용할 수 있는 지침을 제공한다. 이로 인해 쉽게 성취되고 반복 가능하며 측정 가능한 보안이 점차 향상된다. <ref>〈[https://www.owasp.org/index.php/CLASP_Concepts CLASP 개념]〉, 《OWASP》</ref> |
{{각주}} | {{각주}} | ||
− | == | + | == 참고 자료 == |
* Wisedog, 〈[http://story.wisedog.net/%EC%8B%9C%ED%81%90%EC%96%B4-%EC%BD%94%EB%94%A9%EC%9D%B4%EB%9E%80/ 시큐어 코딩이란?]〉, 《wisedog》, 2013-12-09 | * Wisedog, 〈[http://story.wisedog.net/%EC%8B%9C%ED%81%90%EC%96%B4-%EC%BD%94%EB%94%A9%EC%9D%B4%EB%9E%80/ 시큐어 코딩이란?]〉, 《wisedog》, 2013-12-09 | ||
* 스틸스타크, 〈[https://needjarvis.tistory.com/174 시큐어 코딩(SECURE CODING)]〉, 《티스토리》, 2017-05-02 | * 스틸스타크, 〈[https://needjarvis.tistory.com/174 시큐어 코딩(SECURE CODING)]〉, 《티스토리》, 2017-05-02 | ||
81번째 줄: | 81번째 줄: | ||
{{보안|검토 필요}} | {{보안|검토 필요}} | ||
− |