정보처리기사(20)

서창민·2024년 1월 24일
0

자격증

목록 보기
56/70
post-thumbnail

정보처리기사

SQL응용과 소프트웨어 개발보안 구축

S/W 개발 보안

S/W 개발 과정에서 발생할 수 잇는 보안 취약점을 최소화하여
보안 위협으로 부터 안전한 S/W를 개발하기 위한 보안활동

목표
데이터의 기밀성(confidentiality)
무결성(intergrity)
가용성(avaliability)유지

Secure SDLC

보안상 안전한 S/W를 개발하기 위해 SDLC에 보안 강화를 위한 프로세스를 포함한 것
S/W의 유지보수 단계에서 보안 이슈를 해결하기 위해 소모되는 많은 비용을 최소화하기 위해 등장
SECURE SDLC 대표 방법론
Secure S/W사의 CLASP
MS사의 SDL

보안요소

기밀성(비밀성 configidentiality)
: 정보를 인가된 시간, 사용자, 기관에게만 공개 또는 
  처리하는 것으로 공개로부터 정보를 보호

무결성(완정성 integrity)
: 데이터를 정확하고 완전한 상태로 보존
  외부로부터 정보 변조 시도로부터 보호
  (인증받은 사용자만 데이터 수정 가능, 전달과정 중 데이터 훼손없도록 보호)

인증성(authentication)
: 정보를 보내는 사람의 신원을 확인
  네트워크에 접속하는 사용자 계정등을 확인
  거짓인증으로부터 시스템과 정보를 보호
  
가용성(availability)
:  사용권한이 부여된 사용자는 언제든지 시스템을 사용할 수 있도록 하는것

부인방지(non-requdiation)
: 송신자의 송신여부와 수신자의 수신여부를 확인
  정보제공자 또는 수신자가 상대방의 정보내용에 대해 부인하는것 방지

보안기능점검 미수행시 발생되는 보안약점

적절한 인증 없이 중요기능 허용 
: 보안검사 우회하여 인증과정 없이 중요한 정보 또는 기능에 접근 및 변경이 가능
 > 중요정보나 기능을 수행하는 페이지에서는 재인증 기능을 수행하여 약점을 보완

부적절한 인가 
: 접근제어 기능이 없는 실행경로를 통해 정보 또는 권한을 탈취할 수 있다.
 > 모든 실행경로에 대한 접근제어 검사 수행,
   사용자에게는 반드시 필요한 접근권한만을 부여

중요한 자원에 대한 잘못된 권한 설정 
: 권한 설정이 잘못된 자원에 접근하여 해당 자원을 임의로 사용할 수 있다.
 > 관리자만 자원을 읽고 쓸 수 있도록 설정하고, 인가되지 않은 사용자의 자원 접근여부를 검사

취약한 암호화 알고리즘 사용 
: 암호화된 환경설정 파일을 해독하여 비밀번호 등의 중요정보를 탈취할 수 있다.
 > 완전한 암호화 알고리즘 이용, 업무내용,
   개인정보에 대해서는 IT보안인증사무국이 안정성을 확인한 암호 모듈을 이용

중요정보 평문저장 및 전송 
: 암호화되지 않은 평문 데이터를 탈취하여 중요한 정보를 획득할  수 있다.
 > 전송시 암호화 알고리즘 이용,HTTPS,SSL과 같은 보안 채널을 이용

하드코드 된 비밀번호 
: 소스코드 유출 시 하드코드된 패스워드를 이용하여 관리자 권한을 탈취할 수 있다.
 > 암호는 암호화하여 별도 파일에 저장하고, 디폴트 패스워드, 디폴트 키 사용자제

단계별 보안활동

요구사항 분석단계
: S/W개발에 적용할 수 있는 보안정책 항목들의 출처, 요구수준, 세부내용등을 문서화

설계단계
: 식별된 보안요구사항들을 S/W설계서에 반영하고 보안 설계서를 작성

구현단계
: 표준코딩정의서 및 소프트웨어 개발 보안 가이드를 준수하며 
  설계서에 따라  보안 요구사항들을 구현

테스트단계
: 설계단계에서 작성한 보안 설계서를 바탕으로 보안 사항들이 정확히 반영 동작되는지 점검

유지보수단계
: 이전 과정을 모두 수행하였음에도 발생할 수 있는 보안사고들을 식별
  사고발생 시 이를 해결하고 보안패치 실행

S/W 개발 구현단계(보안점검)

보안기능

- S/W개발의 구현 단계에는 코딩하는 기능인 인증, 접근제어, 기밀성,
  암호화 등을 올바르게 구현하기위한 보안점검 항목
- 보안 기능들은 서비스 환경이나 취급 데이터에 맞게 처리될 수 있도록 구현
- S/W기능 또는 데이터에 접근하려는 사용자별로 중요도를 구분, 
  차별화된 인증방안 적용
- 인증된 사용자가 이용할 기능과 데이터에 대해 개발적으로 접근권한을 부여
  인가되지 않은 기능과 데이터로의 접근을 차단
- 개인정보나 인증 정보와 같은 중요한 정보의 변조/삭제/오남용등
  방지위해 안전한 암호화 기술 적용

체크포인트

문제 1

정답 : 소프트웨어 개발 보안

문제 2

정답 : 기밀성, 무결성, 가용성
profile
Back-end Developer Preparation Students

0개의 댓글