정보처리기사 실기 9단원
9 소포트웨어 개발 보안 구축
SW 개발 보안의 3대 요소
- 기밀성(Confidentially) : 인가되지 않은 개인 혹은 시스템 접근에 따라 정보 공개 및 노출 차단
- 무결성(Intergrity): 정당한 방법을 따르지 않고서는 데이터가 변경될 수 없음
- 가용성(Avaliability) : 권한을 가진 사용자는 원하는 서비스를 지속적으로 사용할 수 있음
SW 개발 보안 용어
- 자산(Assets) : 소유자가 가치를 부연한 대상
- 위협(Threat) : 기업의 자산에 악영향을 끼칠 수 있는 사건이나 행위
- 취약점(Vulnerability) : 위협이 발생하기 위한 사전조건
- 위험(Risk) : 자산 손실 피해 가져올 가능성
Dos 공격 : 시스템을 악의적으로 공격해 해당 자원을 부족하게 하여 원래 의도된 용도로 사용하지 못하게 하는 공격
종류
- SYN 플러딩 : TCP프로토콜의 구조적인 문제 이용 공격
- UDP 플러딩 : UDP패킷을 만들어 응답 메시지를 생성하여 자원고갈
- 스머프,스머핑 : 직접 브로드 캐스팅하여 마비시키는 공격
- 죽음의 핑 : ICMP 패킷을 정상적인 크기보다 아주 크게 만들어 전송하여 단편화 발생
- 랜드 어택 : 출발지ip와 목적지ip를 같은 패킷 주소로 만들어 공격
- 티어 드롭 : 재조합 과정에서 Fragment Offset 정보로 인해 문제 발생
- 봉크,보잉크 : 프로토콜의 오류 제어를 이용한 공격
DDOS : 여러 대의 공격자를 분산 배치하엳 동시에 동작함으로써 특정 사이트를 공격하는 기법
DRDos : 출발지 IP를 공격대상 IP로 위조하여 다수의 반사 서버로 요청 정보를 전송, 공격 대상자는 반사 서버로 부터 다량의 응답을 받아 서비스 거부되는 공격
세션 하이재킹 : 케빈 미트닉이 사용했던, TCP세션관리 취약점을 이용한 공격기법
애플리케이션 공격기법
- HTTP GET 플러딩 : 과도한 Get 메시지 이용
- Slowloris : \r\n\만 전송
- RUDY : Content-Length 를 비정상적으로 크게 설정
- Slow HTTP READ : TCP 윈도 크기와 데이터 처리율을 감소시킨 상태
- Hulk Dos : 웹 페이지 주소를 지속적으로 변경
- Hash Dos : 해시테이블 주로 사용
네트워크 공격
- 스니핑 : 직접 공격하지 않고 데이터만 몰래 들여다 보는 공격
- 네트워크 스캐너 : 취약점 탐색
- 패스워드 크래킹 : 사전,무차별,패스워드하이브리드,레인보우테이블
- IP 스푸핑 : IP어드레스 위조
- ARP 스푸핑 : MAC주소 위조
- ICMP Redirect 공격 : 3계층에서 다른 라우터라고 알림으로써 흐름을 바꾸는 기법
- 트로이 목마 : 겉보기엔 정상적 프로그램
버퍼 오버 플로우 : 버퍼 크기 초과하는 양 데이터 입력
포맷 스트릿 공격 : 포맷 스트링을 인자로 하는 함수 취약점 공격
레이스 컨디션 공격 : 실행되는 프로세스가 임시파일을 만드는경우
키로거 공격 : 키보드 움직임을 탐지
루트킷 : 불법적인 해킹에 사용되는 기능제공 프로그램 모음
보험 관련 용어
- 스피어 피싱 : 사회 공학의 한 기법, 이메일 위장
- 스미싱 : SMS공격기법
- 큐싱 : 큐알코드, 피싱 공격 기법
- 봇넷 : 다수의 컴퓨터들이 네트워크 연결
- APT 공격 : 특정 타깃을 목표로 다양한 수단을 통한 지속적이고 지능적인 공격기법
- 공급망 공격 : 개발사 네트워크 침투 공격
- 제로데이 공격 : 취약점이 발견되기전 취약점 악용
- 웜 : 스스로 복제
- 악성 봇 : 스스로 실행되지 못하고, 해커의 명령에 의해 제어
- 사이버 킬체인 : 록히드 마틴의 기법, APT 공격 방어
- 랜섬웨어 : 파일 암호화 하여 돈 요구
- 이블 트윈 공격 : 무선 와이파이 공격
접근 통제 기법
- 식별(identification) : 자신이 누구라고 밝히는 행위
- 인증(Authentication) : 주체의 신원을 검증하기 위한 행동
- 인가(Authorization) : 접근 허용하는 활동
- 책임추적성(Accountability) : 추적하고 행동 기록
접근 통제 유형
- 임의적 접근 통제(DAC) : 신분에 의한 제한
- 강제적 접근 통제(MAC) : 허용등급과 접근 정보에 대한 접근통제
- 역할 기반 접근 통제(RBAC) : 역할에 기초하여 접근 제어
3A 구성
- 인증(Authentication) : 신분 검증
- 권한부여(Authorization) : 권한 서비스 허용
- 계정관리(Accounting) : 정보 수집 관리
접근 통제 보호 모델
- 벨-라파듈라 모델
- no read up, no write down
- 비바 모델
- no read down, no write up
암호화 알고리즘
대칭키 알고리즘
- DES : 1975년 IBMdptj roqkf
- SEED : KISA에서 개발
- AES : 2001년 NIST 개발
- ARIA : 국정원, 산학연구협회 개발
- IDEA : DES 대처
- LFSR : 선형 되먹임 시프트 레지스터 일종
비대칭키 알고리즘
- 디피-헬만 : 최초의 공개키 알고리즘
- RSA : 1977년 MIT 교수
- ECC : 타원 곡선 암호
- ELGamal : 이산대수의 계산
해시 암호화 알고리즘
- MD5 : MD4 개선
- SHA-1 : 160비트 해시값
- SHA-256/384/512 : SHA 알고리즘 한종류,256 비트
- HAS-160 : 국내 표준 서명 알고리즘
- HAVAL : 메시지를 1024bits 블록으로 나눔
IPSEC : 3계층에서 무결성과 인증을 보장하는 프로토콜
SSL/TLS : 4계층과 7계층 사이에서 암호화, 무결성 보장
Secure SDLC 모델 및 방법론
- BSIMM : 미국 지원 소프트웨어 보증 프로젝트 결과물
- Open SAMM : OWASP에서 개발한 개방형 보완 프레임워크
- Seven TouchPolints : SDLC에 통합된 개발 보안 생명주기 방법론
- MSSDL : 마이크로소프트에 적용
- OWASP CLASP : 프로그램 설계 오류를 찾아내어 개선하기 위해 취약점 목록 제공
9-2 소프트웨어 개발 보안 구현
입력 데이터 검증 및 표현 취약점
- XSS : 사용자가 해당 웹페이즈를 열람함으로써 부적절한 스크립트
- CSRF : 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위 요청
- SQL삽입 : 악의적인 SQL 구문 삽입
네트워크 보안 솔루션
- 방화벽 : 기업 내외부 접근 허용 차단
- 웹 방화벽 : 웹 애플리케이션 보안에 특화된 보안장비
- 네트워크 접근제어(NAC) : 네트워크 접속 제어
- 침입탐지시스템(IDS) : 보안 정책 위반 탐지
- 침입방지시스템(IPS) : 침입을 실시간 차단
- 무선 침입 방지 시스템(WIPS) : 무선 공유기 탐지
- 통합보안시스템(UTM) : 다양한 보안 장비 기능 하나의 장비로 통합
- 가상사설망(VPN) : 암호화를 활용한 보안 솔루션
비즈니스 연속성 계획(BCP)
-
각종 재해,재난으로부터 위기관리를 기반으로 비즈니스 연속성 보장하는 체계
- BIA : 비즈니스 영향 분석
- RTO : 다시 가동될때까지의 시간
- RPO : 데이터 손실 허용 시점
- DRP : 재난 복구 계획
- DRS : 재해복구 센터
DRS 유형
- Mirror site : 실시간 복구
- Hot site : 4시간 이내
- Warm site : 수일~ 수주
- Cold site : 수주~ 수개월
보안 중요 용어
- 부 채널 공격 : 부 채널에서 획득하는 공격 기법
- 드라이브 바이 다운로드 : 악성 스크립트 설치하고 동의없이 실행되는 공격
- 워터링 홀 : 잘 방문하는 웹사이트에 감염
- 스캠공격 : 무역 거래 대금 가로채는 범죄
- 하트 블리드 : 데이터 길이에 대한 검증
- 크라임 웨어 : 금융정보 인증정보 탈취,유출
- 토르 네트워크 : 익명으로 인터넷 사용
- MITM 공격 : 통신내용 도청
- DNS스푸핑 공격 : DNS응답 조작
- 포트 스캐닝 : 포트 취약점
- 디렉터리 리스팅 : 서버의 미흡한 설정
- 리버스 쉘 공격 : 타깃 서버의 쉘을 획득 공격
- 익스플로잇 : 하드웨어의 버그 취약점 이용
- 스턱스넷 공격 : 독일 지멘스사 공격
- 크리덴셜 스터핑 : 사용자 계정 탈취
공격 대응 관련 주요 용어
- 허니팟 : 일부로 허술하게 만들어서 노출하는 시스템
- OWASP TOP 10 : 10가지 취약점 대응 방안
- 핑거프린팅 : 사용자 정보 삽입
- 워터마킹 : 워터마크 추출
- 이상금융거래탐지시스템 : 전자금융거래 방지 대책
- CC : 정보보호기술 등급 평가
- 사이버 위협정보 분석(C-TAS) : 자동화된 정보공유 침해 예방 대응
- 장착형 인증 모듈(PAM) : 리눅스 시스템 인증용 라이브러리
- CVE : 미국 비영리 회사에 보안취약점 표준화된 식별자
- CWE : 소스 코드 취약점 정의 데이터 베이스
댓글남기기