1-1. 소프트웨어 개발 보안 설계
- SW 개발 보안 : 소스 코드 등에 존재하는 보안 취약점을 제거하고, 보안을 고려하여 기능을 설계 및 구현하는 등 소프트웨어 개발 과정에서 지켜야 할 일련의 보안 활동
- SW 개발 보안 구성요소 : 기밀성 / 무결성 / 가용성
< SW 개발 보안을 위한 공격기법의 이해 >
1. DoS 공격 : 시스템을 악의적으로 공격해서 해당 시스템의 자원을 부족하게 하여 원래 의도된 용도로 사용하지 못하게 하는 공격
DoS 공격 종류 : SYN 플러딩 / UDP 플러딩 / 스머프,스머핑 / 죽음의 핑(PoD) / 랜드 어택 / 티어 드롭
2. DDoS 공격 : 여러 대의 공격자를 분산 배치하여 동시에 동작하게 함으로써 특정 사이트를 공격하는 기법
DDoS 공격 구성요소 : 핸들러 / 에이전트 / 마스터 / 공격자 / 데몬 프로그램
3 DRDoS 공격 : 공격자는 출발지 IP를 공격대상 IP로 위조하여 다수의 반사 서버로 요청 정보를 전송, 공격 대상자는 반사 서버로부터 다량의 응답을 받아서 서비스 거부가 되는 공격
4 애플리케이션 공격기법(DDoS 서비스 마비 공격) : HTTP GET 플러딩 / Slowloris / RUDY / Slow HTTP Read Dos / Hulk Dos / Hash Dos
5. 네트워크 공격 : 스니핑 / 패스워드 크래킹 / IP 스푸핑 / ARP 스푸핑 / ICMP Redirect / 트로이 목마
6. 시스템 보안 위협 : 스택 버퍼 오버플로우 / 힙 버퍼 오버플로우 / 백도어
버퍼 오버플로우 공격 대응 방안 : 스택가드 / 스택쉴드
< 서버 인증 및 접근 통제 >
- 인증 기술 유형 : 지식 기반 / 소지 기반 / 생체 기반 / 특징 기반
- 접근 통제 기법 : 식별 / 인증 / 인가 / 책임추적성
- 서버 접근 통제 유형 : DAC / MAC / RBAC
- 접근 통제 보호 모델 : 벨라파둘라 모델(기밀성 강조) / 비바 모델(무결성 보장)
< SW 개발 보안을 위한 암호화 알고리즘 >
양방향 | 대칭 키 암호 방식 | - 암호화와 복호화에 같은 암호 키 사용 - 블록 암호화 : DES, SEED, AES - 스트림 암호화 : RC4 |
비대칭 키 암호 방식 | - 사전에 개인 키를 나눠 갖지 않은 사용자들이 안전하게 통신하는 방식 - 디피-헬만, RSA, ECC, Elgamal |
|
일방향 | 해시 암호 방식 | - 임의 길이의 정보를 입력받아, 고정된 길이의 암호문(해시값)을 출력하는 암호 방식 - MAC, MDC, MD5, SHA-1, SHA-2, HAS-160 |
< 안전한 전송을 위한 데이터 암호화 전송 >
- IPSec : IP 계층(3계층)에서 무결성과 인증을 보장하는 인증 헤더(AH)와 기밀성을 보장하는 암호화를 이용한 IP 보안 프로토콜
- SSL/TLS : 전송계층(4계층)과 응용계층(7계층) 사이에서 클라이언트와 서버간의 웹 데이터 암호화, 상호 인증 및 전송 시 데이터 무결성을 보장하는 보안 프로토콜
- S-HTTP : 웹상에서 네트워크 트래픽을 암호화하는 주요 장법 중 하나로 클라이언트와 서버 간에 전송되는 모든 메시지를 각각 암호화하여 전송하는 기술
2-1. SW 개발 보안 구현
< 시큐어 코딩 가이드 >
- 입력 데이터 검증 및 표현 / 보안 기능 / 시간 및 상태 / 에러 처리 / 코드 오류 / 캡슐화 / API 오용
< 입력 데이터 검증 및 표현 >
- 입력 데이터 검증 및 표현 취약점 :
XSS | - 검증되지 않은 외부 입력 데이터가 포함된 웹페이지가 전송되는 경우, 사용자가 해당 웹페이지를 열람함으로써 웹페이지에 포함된 부적절한 스크립트가 실행되는 공격 - Stored XSS, Reflected XSS, DOM XSS |
CSRF | - 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위를 특정 웹사이트에 요청하게 하는 공격 |
SQL Injection | - 응용 프로그램의 보안 취약점을 이용해서 악의적인 SQL 구문을 삽입, 실행시켜서 데이터베이스의 접근을 통해 정보를 탈취하거나 조작 등의 행위를 하는 공격기법 |
2-2. 시스템 보안 구현
- 네트워크 보안 솔루션 : 방화벽 / 웹 방화벽 / NAC / IDS / IPS / WIPS / UTM / VPN
- 시스템 보안 솔루션 : ANTI-SPAM Solution / Secure OS
- 콘텐츠 유출 방지 보안 솔루션 : 보안 USB / DLP / DRM
2-4. 비지니스 연속성 계획
- 비지니스 연속성 계획(BCP) : 각종 재해, 장애, 재난으로부터 위기관리를 기반으로 재해복구, 업무복구 및 재개, 비상계획 등을 통해 비지니스 연속성을 보장하는 체계
- 관련 주요 용어 : BIA(비지니스 영향 평가) / RTO(재해 시 복구 목표 시간의 선정) / RPO(재해 시 복구 목표 지점의 선정) / DRP(재난 복구 계획) / DRS(재난 복구 센터)
- DRS 유형 : Mirror Site / Hot Site / Warm Site / Cold Site
'8. 자격증 > 8-1. 정보처리기사' 카테고리의 다른 글
정처기 실기 10-2. 애플리케이션 통합 테스트 / 10-3. 애플리케이션 성능 분석 (0) | 2021.10.14 |
---|---|
정처기 실기 10-1. 애플리케이션 테스트 케이스 설계 (0) | 2021.10.14 |
정처기 실기 8-1. 개발환경 구축 / 8-2. 공통 모듈 구현 / 8-4. 배치 프로그램 구현 (0) | 2021.10.13 |
정처기 실기 7-3. 절차형 SQL 활용하기 / 7-4. 데이터 조작 프로시저 최적화 (0) | 2021.10.12 |
정처기 실기 7-1. 데이터베이스 기본 / 2. 응용 SQL 작성하기 (0) | 2021.10.12 |