본문 바로가기
IT License/정처기-5과목

2021 #정보처리기사 필기요약 #5-3. 소프트웨어 개발 보안 구축

by 시뮝 2021. 3. 4.
728x90
2021년 NCS기반 정처기 필기입니다.

참고1. 노랑마킹은 시험에 나온 중요한 부분입니다.

참고2. 주황강조는 약어 혹은 중요한 내용입니다.

참고3. 회색마킹은 예시입니다. 


제 5과목 정보시스템 구축 관리 > 소프트웨어 개발 보안 구축


소프트웨어 개발 보안 설계

(1) SW 개발 보안

SW 개발 보안의 구성요소 (기무가)

3대 요소 설명
밀성
(Confidentiality)
인가되지 않은 개인 혹은 시스템 접근에 따른 정보 공개 및 노출을 차단하는 특성
결성
(Integrity)
정당한 방법을 따르지 않고선 데이터가 변경될 수 없으며, 데이터의 정확성 및 완전성과 고의/악의로 변경되거나 훼손 또는 파괴되지 않음을 보장하는 특성
용성
(Availability)
권한을 가진 사용자나 애플리케이션이 원하는 서비스를 지속 사용할 수 있도록 보장하는 특성

 

SW 개발 보안 용어

자산(Assets) / 위협(Threat) / 취약점(Vulnerability) / 위험(Risk)

 

 

(2) Secure SDLC

참고: https://simuing.tistory.com/entry/2021-정보처리기사-필기요약-5-IT-프로젝트-정보시스템-구축관리

 

2021 #정보처리기사 필기요약 #5 IT 프로젝트 정보시스템 구축관리

2021년 NCS기반 정처기 필기입니다. 참고1. 노랑마킹은 시험에 나온 중요한 부분입니다. 참고2. 주황강조는 약어 혹은 중요한 내용입니다. 참고3. 회색마킹은 예시입니다. 제 5과목 정보시스템 구

simuing.tistory.com

 

 

(3) 입력 데이터 검증 및 표현

입력 데이터 검증 및 표현 취약점

취약점 설명 대책
XSS
(Cross Site Script)
검증되지 않은 외부 입력 데이터가 포함된 웹페이지가 전송되는 경우, 사용자가 해당 웹페이지를 열람함으로써 웹페이지에 포함된 부적절한 스크립트가 실행되는 공격 [2020년 4회] 특수문자 등록 방지를 위해 특수문자 필터링
사이트 간 요청 위조
(CSRF; Cross-Site Request Forgery)
사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위를 특정 웹사이트에 요청하게 하는 공격 입력화면 폼을 작성 시 GET 방식보다 POST 방식 사용
SQL 삽입
(Injection)
응용 프로그램의 보안 취약점을 이용해서 악의적인 SQL 구문을 삽입, 실행시켜서 DB의 접근을 통해 정보 탈취, 조작 등의 행위를 하는 공격기법 바인딩 매개변수 방식을 적용하여 사전에 변수 타입을 명시적으로 지정
사용자로부터 입력될 수 있는 모든 값을 체크하여 필터링

 

XSS(Cross Site Script) 공격 유형

공격 유형 설명
Stored XSS 방문자들이 악성 스크립트가 포함된 페이지를 읽어 봄과 동시에 악성 스크립트가 브라우저에서 실행되면서 감염되는 기법
Reflected XSS 공격용 악성 URL을 생성한 후 이메일로 사용자에게 전송하면 사용자가 URL 클릭 시 즉시 공격 스크립트가 피해자로 반사되어 접속 사이트에 민감정보를 공격자에게 전송하는 기법
DOM XSS
(Document Object Model)
공격자는 DOM 기반 XSS 취약점이 있는 브라우저를 대상으로 조작된 URL을 이메일을 통해 발송하고 피해자가 URL 클릭 시 공격 피해를 당하는 기법

 

에러 처리 취약점

  • 취약한 패스워드 요구 조건
  • 오류 메시지를 통한 정보 노출
  • 오류 상황 대응 부재
  • 적절하지 않은 예외 처리

소프트웨어 개발 보안 구현

(1) 암호 알고리즘(Encryption Algorithm)

데이터의 무결성 및 기밀성 확보를 위해 정보를 쉽게 해독할 수 없는 형태로 변환하는 기법이다.

 

암호 알고리즘 방식

알고리즘 방식 알고리즘 방식 종류 기법
양방향 방식 대칭 키 암호 방식 블록 암호 방식 DES, SEED, AES, ARIA, IDEA [2020년 3회]
스트림 암호 방식 RC4, LFSR
비대칭 키 암호 방식 (=공개키 암호 방식)
RSA, ECC, ELGamal, 디피-헬만(Diffie-Hellman)
일방향 암호 방식
(해시 암호 방식)
MAC HMAC, NMAC
MDC
ND5, SHA

 

암호 알고리즘 기법 상세

방식 기법 설명
대칭 키 DES 블록 암호화  알고리즘, 블록 크기는 64bit, 키 길이는 56bit인 페이스텔(Feistel) 구조
RC4 로널드 라이베스트가 만든 스트림 암호
비대칭 키 (=공개키)
RSA 양방향, 비대칭 키(공개키)
1977년 3명의 MIT 수학 교수(Rivest, Shamir, Adleman)가 고안
소인수 분해 문제를 이용한 공개키 암호화 기법 [2020년 1회,3회]
ECC 양방향, 비대칭 키(공개키)
타원 곡선 암호(ECC)는 유한체 위에서 정의된 타원곡선 군에서의 이산대수의 문제에 기초한 공개키 암호화 알고리즘

 

암호 시스템

구분 설명
PKI
(Public Key System)
공개키 암호 방식을 바탕으로 한 디지털 인증서를 활용하는 구조
PEM 암호화, 인증, 무결성 등의 이메일을 위한 보안 시스템

 

 

(2)코드 오류

코드 오류 취약점

  • 널(null) 포인터 역참조
  • 정수를 문자로 변환
  • 부적절한 자원 해제
  • 초기화되지 않은 변수 사용

 

(3) 캡슐화

캡슐화 취약점

  • 잘못된 세션에 의한 데이터 정보 노출
  • 제거되지 않고 남은 디버그 코드
  • 민감한 데이터를 가진 내부 클래스 사용
  • 시스템 데이터 정보 노출

 

(4) API 오용

API 오용 취약점

  • DNS Lookup에 의존한 보안 결정
  • 위험하다고 알려진 함수 사용
  • 널(Null) 매개변수 미검사
  • 취약한 패스워드 요구조건

 

 

 

 

 

#정보처리기사필기요약 #정처기필기요약

728x90

댓글