정보처리기사 실기(소프트웨어 개발 보안 구축)
소프트웨어 개발 보안)
- 기밀성, 무결성, 가용성
- 행정안전부 : 소프트웨어 개발 보안 정책을 총괄
- 한국인터넷진흥원(KISA) : 소프트웨어 개발 보안 정책 및 가이드를 개발
- 발주기관 : 소프트웨어 개발 보안의 계획을 수립
- 사업자 : 소프트웨어 개발 보안 관련 기술 수준 및 적용 계획을 명시
- 감리법인 : 감리 계획을 수립하고 협의
소프트웨어 개발 보안 활동 관련 법령)
- 개인정보 보호법 : 개인정보의 처리 및 보호에 관한 사항을 정함으로써 개인의 자유와 권리를 보호
- 정보통신망 이용촉진 및 정보보호 등에 관한 법률 : 정보통신망의 이용 촉진 및 정보통신 서비스를 이용하는 이용자들의 개인정보를 보호
- 신용정보의 이용 및 보호에 관한 법률 : 개인 신용정보의 효율적 이용과 체계적인 관리를 통해 정보의 오남용을 방지
- 위치정보의 보호 및 이용 등에 관한 법률 : 개인 위치정보의 안전한 이용 환경을 조성하여 정보의 유출이나 오남용을 방지
- 표준 개인정보 보호 지침 : 개인정보의 처리에 관한 기준, 개인정보 침해의 유형 및 예방조치 등에 관한 세부사항을 규정
- 개인정보의 안정성 확보 조치 기준 : 개인정보 처리자가 개인정보를 처리하는데 있어 개인정보가 분실, 도난, 유출, 위조, 변조, 훼손되지 않도록 안전성 확보에 필요한 기술적, 관리적, 물리적 안전조치에 관한 최소한의 기준을 규정
- 개인정보 영향평가에 관한 고시 : 개인정보 영향평가를 위한 평가기관의 지정, 영향평가의 절차 등에 관한 세부기준을 규정
Secure SDLC)
- 보안상 안전한 소프트웨어를 개발하기 위해 SDLC에 보안 강화를 위한 프로세스를 포함한 것
- 요구사항 분석 단계에서의 보안 활동 : 보안 항목에 해당하는 요구사항을 식별하는 작업을 수행
- 설계 단계에서의 보안 활동 : 식별된 보안 요구사항들을 소프트웨어 설계서에 반영하고, 보안 설계서를 작성
- 구현 단계에서의 보안 활동 : 표준 코딩 정의서 및 소프트웨어 개발 보안 가이드를 준수하며, 설계서에 따라 보안 요구사항들을 구현(시큐어코딩)
- 테스트 단계에서의 보안 활동 : 설계 단계에서 작성한 보안 설계서를 바탕으로 보안 사항들이 정확히 반영되고 동작되는지 점검
- 유지보수 단계에서의 보안 활동 : 이전 과정을 모두 수행하였음에도 발생할 수 있는 보안 사고들을 식별하고, 사고 발생 시 이를 해결하고 보안 패치를 실시
암호 알고리즘)
- 단방향 암호화(해시)
- 양방향 암호화(개인키, 공개키)
개인키 암호화(대칭 암호화)
블록 암호화 방식 : DES(64비트, 56), SEED(KISA 128비트, 128,256), AES(128비트, 128 192 256), ARIA(128비트, 128, 192, 256)
스트림 암호화 방식 : LFSR, RC4
공개키 암호화(비대칭 암호화)
RSA(소인수분해)
해시)
- 임의의 길이의 입력 데이터나 메시지를 고정된 길이의 값이나 키로 변환하는 것