본문 바로가기
자격증/정보보안기사

[어플리케이션 보안] 인터넷 응용 & 데이터베이스 보안

by 푸고배 2021. 3. 9.

1. 인터넷 응용 보안

(1) FTP

 ▶ FTP 특징

  • 서버(Server)에 파일을 올리거나 다운로드 하는 인터넷 표준 프로토콜
  • 내부적으로 TCP 프로토콜 사용
  • 명령 채널(TCP 21)과 데이터 전송 채널(TCP 20) 분리 
  • Active Mode와 Passive 모드
  • 스니핑 공격에 취약함, 따라서 전송 과정의 내용을 암호화하는 sFTP 사용 권장
  • ftpuesrs 파일로 특정 사용자에 대해 FTP 접근 차단 가능

 ▶ FTP 종류

  • FTP : ID 및 Password 인증 수행, TCP 프로토콜을 사용해 데이터 송수신
  • tFTP : 인증 과정 없이 UDP 기반의 빠른 데이터 송수신, 69번 포트
  • sFTP : 암호화를 통한 기밀성 제공

 ▶ FTP Active Mode와 Passive Mode

  • Active Mode
    • FTP 클라이언트에서 서버의 21번 포트로 접속
    • FTP 클라이언트에서 서버의 20번 포트로 데이터 전송
  • Passive Mode
    • FTP 클라이언트에서 서버의 21번 포트로 접속
    • FTP 서버가 클라이언트로 데이터 송수신을 위해 1024~65535 범위의 랜덤 포트 정보 송신
    • FTP 클라이언트에서 해당 포트로 데이터 송수신

 ▶ FTP 서비스 로그 기록

  • xferlog 파일

 ▶ FTP 보안

  • FTP 보안 취약점
    • Bounce Attck : 네트워크 포트 스캐닝을 위해 사용
      • Fake Mail : FTP 바운스 공격을 이용해 전자메일을 보내는 공격
    • tftp Acttck : 인증 절차가 없어서 파일 접근 제한이 없어짐
    • Anonymous FTP Attack 
    • FTP 서버 취약점
    • 스니핑
    • Brute Force Attack : 무작위 대입 공격

(2) E-Mail 보안

 ▶ E-Mail 전송 방법

  • SMTP(Simple Mail Transfer Protocol)
    • 전자우편 송신 시 사용되는 표준 통신 규약
    • TCP 25 Port 사용(전자우편 송신 용), DNS의 MX 레코드 사용(상대 서버 지시용)
    • OSI 7계층에서 동작
  • POP3(Post Office Protocol Version 3)
    • E-Mail 수신 시 사용되는 프로토콜
    • 메일 서버에 접속해 저장된 메일을 내려받는 MDA 프로그램
    • E-Mail 수신 후 원격 서버의 E-Mail 삭제
    • 항상 연결 상태가 아닌 네트워크 접근에 유리
    • TCP 110 Prot
  • IMAP 및 IMAP4
    • 메일을 수신하더라도 원본은 계속 저장
    • 메일의 헤더만 검색해서 텍스트 부분만 가져오기 등 작업이 가능
    • IMP4는 프로토콜의 복잡성과 보안 문제 개선

 ▶ E-Mail 보안 기법

  • PGP(Pretty Good Privacy)
    • MIME(Multipurpose Internet Mail Extension, RFC 1521) 객체에 암호화와 전자서명 기능을 추가한 암호화 프로토콜
    • PGP 특징
      • 전자서명, 메시지 암호화, 1회용 세션키 생성, 이메일 호환, 세그먼테이션
  • PEM(Privacy Enhanced Mail)
    • 중앙집중화된 키 인증 방식
    • 구현 어려움 그만큼 높은 보안성 제공
  • S/MIME(Secure Multi-Purpose Internet Mail Extensions)
    • MIME 전자서명과 암호화 기능(RSA)을 첨가한 보안 서비스로 RSA사에서 개발한 보안 프로토콜
    • CA(인증기관)에게 자신의 공개키를 보증하는 인증서를 받아야 함
    • S/MIME에 사용되는 암호화 키
      • DSS : 디지털 서명 알고리즘
      • 3중 DES : 메시지의 암호
      • SHA-1 : 디저털 서명을 지원하기 위한 해시함수

(3) 스팸메일(Spam Mail) 차단 방법

 ▶ RBL(Real Time Blocking List)

  • 이메일 수신 시 간편하게 스팸 여부를 확인하여 차단
  • 스팸메일에 사용되는 IP 리스트를 등록하고 차단

 ▶ SPF(Sender Policy Framework)

  • 발신자 : 자신의 메일 서버 정보와 정책을 나타내는 SPF 레코드를 해당 DNS에 등록
  • 수신자 : 메일 수신 시 발송자의 DNS에 등록된 SPF 레코드를 확인하여 해당 메일에 표시된 발송 IP와 비교를 통해 수신 여부를 결정

 ▶ SpamAssasin

  • 실시간 차단 리스트를 참고하여 각각의 룰에 매칭될 경우 점수를 매겨서 총 점수가 기준점을 초과하는지 여부에 따라 스팸 여부 결정

(4) 웹 방화벽(Web Firewall)

 ▶ 웹 방화벽(Web Firewall)

  • 홈페이지 자체 및 웹 프로토콜을 기반으로 하는 모든 서비스와 애플리케이션 데이터 기반 정보 시스템에 보안 서비스 제공
  • 웹 애플리케이션 취약점을 이용한 공격에 대한 대응

 ▶ 웹 방화벽 종류

  • 네트워크 기반 방화벽
  • 호스트 기반 방화벽
  • Proxy Method
  • Filtering Module Method

 ▶ 웹 방화벽 주요 기능

  • 웹 공격 방지
  • Positive Security Model 지원
  • SSL 지원
  • 애플리케이션 구조 변화에 대응

 ▶ 워터링 홀(Watering Hole) 공격

  • 워터링 홀 공격(특정 타겟)은 홈페이지에 접속하는 특정 사회적 그룹을 대상으로 악성코드를 유포하여 특정 사회적 그룹에 추가적인 APT 공격등을 목적으로 함
  • Advanced Persistent Threat(지능적 지속 위협)

(5) DNS 보안

 ▶ DNS(Domain Name Service)

  • 인터넷 네트워크 상에서 컴퓨터의 이름을 IP 주소로 변환하거나 해석하는 데 사용되는 분산 네이밍 시스템
  • URL 주소에 대해서 IP 주소를 알려주는 서비스

 ▶ DNS Query 종류

  • Recursive Query(순환) : Local DNS 서버에 Query를 보내 완성된 답을 요청
  • Iterative Query(반복) : Local DNS 서버가 다른 DNS 서버에게 Query를 보내어 답을 요청, 외부 도메인에서 개별적인 작업을 통해 정보를 얻어와 종합해서 알림
  • DNS 레코드
    • A(Address) : 단일 호스트 이름에 해당하는 IP 주소가 여러 개 있을 수 있음
    • AAAA(IPv6 Address) : 호스트 이름을 IPv6 주소로 매핑
    • PTR(Pointer) : 특수 이름이 모데인의 일부 다른 위치를 가리킬 수 있음. 1개만 존재 가능
    • NS(Name Server) : 도메인에는 해당 이름의 서비스 레코드가 적어도 한 개 이상 있어야함(DNS 서버 가리킴)
    • MX(Mail Exchanger) : 도메인 이름으로 보낸 메일을 받도록 하는 목록을 지정
    • CNAME(Canonical Name) : 호스트의 다른 이름을 정의
    • SOA(Start of Authority) : 도메인에 대한 권하능ㄹ 갖는 서버 표시
    • Any(ALL) : 위의 모든 레코드를 표시
  • DNS 보안
    • dnsspoof
      • DNS 파일을 참조해서 DNS를 수행
      • 53번 포트로 전송되는 UDP 데이터를 모니터링 시 URL에 대해 요청이오면 특정 IP로 응답
  • DNSSEC
    • DNS 캐시 포이즈닝과 DNS의 보안 취약점을 보완하기 위해 등장한 기술
    • DNS 응답 정보에 전자서명 값을 첨부하여 송신함으로써 DNS 위변조를 방지하며 정보 무결성 제공 

2. 데이터베이스 보안

(2) 데이터베이스 보안

 ▶ 데이터베이스(Database) 개요

  • 정보시스템 및 기업의 비지니스를 위해 각종 데이터를 일정한 규격으로 저장하여 관리하는 것
  • 여러 사람들이 공동으로 사용할 수 있게 저장되어 잇는 데이터를 공유하는 것
  • 데이터베이스 기능
    • 지속성(Persistence)
    • 데이터 공유(Data Sharing)
    • 회복(Recovery)
    • 데이터베이스 언어(Data Base Language)
    • 보안 & 무결성(Security & integrity)
  • 데이터베이스 관리 시스템(DBMS, Database Management System)
    • 데이터베이스를 생성하고 관리하며 이를 응용하기 위해 구성된 소프트웨어의 모임

 ▶ 데이터베이스 모델(Database Model)

  • 데이터베이스 모델(Database Model)
    • 데이터를 어떤 형태의 자료 구조로 저장할 것인지를 결정하는 것
    • 계층형, 네트워크형, 관계형 데이터베이스
  • 개체관계 모델(ERD, Entity Relationship Diagram)
    • 데이터베이스 설계 과정에서 데이터의 구조를 개념적으로 표현하는 과정
    • 개체관계 모델 구성요소
      • 개체(Entity) : 물리적으로 존재하는 대상 또는 개념적으로 존재하는 대상, 관리할 대상
      • 관계(Relation) : Entity 간의 관계
      • 속성(Attrivute) : Entity의 특성이나 속성

 ▶ 데이터베이스 보안(Database Security)

  • 각종 외부적, 내부적 위협에서 데이터베이스의 기밀성, 무결성, 가용성 등을 확보하는 활동
  • 인가되지 않은 접근, 의도적인 데이터의 일관성을 저해하는 사고로부터 보호하는 것
  • 데이터베이스 보안 위협요소
    • 집합성(Aggregation)
      • 낮은 보안 등급의 정보들을 이용해 높은 등급의 정보를 알아내는 것
    • 추론(Inference)
      • 보안 등급이 없는 일반 사용자가 보안으로 분류되지 않은 정보에 정당하게 접근하여 기밀 저보를 유추해 내는 행위
      • 로우 데이터로부터 민감한 데이터를 유출하는 행위
      • 보안대책 : 다중인스턴스화(Polyinstantiation)
  • 데이터베이스 보안 요구사항
    • 무결성 보장
    • 추론 방지
    • 사용자 제한
    • 감사 기능 : 기록 저장
    • 암호화

 ▶ 데이터베이스 보안 솔루션

  • DB 암호화 솔루션
    • 장점 : 허가받지 않은 사용자가 불법적인 데이터를 취득해도 볼 수 없음
    • 단점 :
      • 운영 서버에 부하발생
      • DB 단위의 접근 제어 X
      • SQL 문장에 대한 로깅 X
    • Plug In 방식
      • 데이터베이스 서버에 별도의 암호화 솔루션 설치
    • API 방식
      • 암호화 API를 호출하여 암호화를 수행하는 방식
    • 패스워드는 무조건 암호화를 수행해야하며, 일방향 암호화를 수행해야 함
  • 데이터베이스 감사 솔루션
    • 장점 :
      • 스니핑 서버가 죽어도 업무에 지장이 없음
      • 운영서버에 부담이 없음
    • 단점 :
      • Packet Loss가 있음
      • 접근 제어가 안 됨
    • 스니퍼 소프트웨어 활용
    • T-Sensor 하드웨어 활용 : 실제 기업이 많이 사용하는 방식
  • 데이터베이스 접근 제어 솔루션
    • 장점 :
      • 독립된 서버로 다중 인스턴스에 대해 통제 가능한 독립된 서버
      • DB 단위의 접근 제어
    • 단점 : 
      • 독립된 서버이기 때문에 이중화 구성 필요
      • Telnet을 통하여 접근하는 SQL 명령에 대해서는 토엦가 어려움
      • 우회해서 접근할 수 있으므로 보안 허점 발생
  • 데이터베이스 암호화 및 접근 통제
    • 사용자 인증(Authentication)
    • 권한 부여(Authorization)
    • 암호화(Encryption)

(3) 데이터베이스 백업

 ▶ 백업 방식

  • 전체 백업(Full Backup) : 전체 백업, 디스크 또는 특정 폴더에 대한 전체를 백업, 많은 양의 백업 매체 필요
  • 차등 백업(Differential Backup) : 가장 최근에 수행된 전체 백업 이후 변경된 모든 것을 백업
  • 증분 백업(Incremental Backup) :
    • 가장 최근에 수행된 백업 이후 모든 변경된 것만 백업, 백업 시간 절감
    • 저장 매체의 효율적 이용, 복구 시 많은 매체가 필요

참고 자료 : 이기적 정보보안기사 필기 이론서

반응형

댓글