[정보처리기사 필기] 인터페이스 구현 - 058. 인터페이스 보안

1. 인터페이스 보안의 개요

  • 인터페이스는 시스템 모듈 간 통신 및 정보 교환을 위한 통로로 사용되므로 충분한 보안 기능을 갖추지 않으면 시스템 모듈 전체에 악영향을 주는 보안 취약점이 될 수 있음
  • 인터페이스 보안성 향상을 위해 인터페이스 보안 취약점을 분석한 후 적절한 보안 기능을 적용

2. 인터페이스 보안 취약점 분석

  • 인터페이스 기능이 수행되는 각 구간들의 구현 현황을 확인하고 각 구간에 어떤 보안 취약점이 있는지를 분석
  • 인터페이스 기능이 수행되는 각 구간의 구현 현황은 송수신 영역의 구현 기술 및 특징 등을 구체적으로 확인
  • 확인된 인터페이스 기능을 기반으로 송신 데이터 선택, 송신 객체 생성, 인터페이스 송수신, 데이터 처리 결과 전송 등 영역별로 발생할 수 있는 보안 취약점을 시나리오 형태로 작성

3. 인터페이스 보안 기능 적용

  • 분석한 인터페이스 기능과 보안 취약점을 기반으로 인터페이스 보안 기능을 적용
  • 인터페이스 보안 기능의 적용 영역
    • 네트워크 영역
      • 인터페이스 송수신 간 스니핑 등을 이용한 데이터 탈취 및 변조 위협을 방지하기 위해 네트워크 트래픽에 대한 암호화를 설정
      • 암호화는 인터페이스 아키텍처에 따라 IPSec, SSL, S-HTTP 등의 다양한 방식으로 적용
    • 애플리케이션 영역
      • 소프트웨어 개발 보안 가이드를 참조하여 애플리케이션 코드 상의 보안 취약점을 보완하는 방향으로 애플리케이션 보안 기능을 적용
    • 데이터베이스 영역
      • 데이터베이스, 스키마, 엔티티의 접근 권한과 프로시저, 트리거 등 데이터베이스 동작 객체의 보안 취약점에 보안 기능을 적용
      • 개인 정보나 업무상 민감한 데이터의 경우 암호화나 익명화 등 데이터 자체의 보안 방안도 고려
  • 인터페이스 보안 기능 프로토콜 종류
    • IPsec (IP Security)
      • 네트워크 계층에서 IP 패킷 단위의 데이터 변조 방지 및 은닉 기능을 제공하는 프로토콜
      • 암호화 수행 시 암호화와 복호화가 모두 가능한 양방향 암호화 방식을 사용
      • 구성 요소 : AH, ESP
      • 운영 모드 : 터널 모드, 전송 모드
    • SSL (Secure Sockets Layer)
      • TCP / IP 계층과 애플리케이션 계층 사이에서 인증, 암호화 무결성을 보장하는 프로토콜
    • S-HTTP (Secure Hypertext Transfer Protocol)
      • 클라이언트와 서버 간에 전송되는 모든 메시지를 암호화하는 프로토콜

4. 데이터 무결성 검사 도구

  • 시스템 파일의 변경 유무를 확인하고, 파일이 변경되었을 경우 이를 관리자에게 알려주는 도구로, 인터페이스 보안 취약점을 분석하는데 사용
  • 크래커나 허가 받지 않은 내부 사용자들이 시스템에 침입하면 백도어를 만들어 놓거나 시스템 파일을 변경하여 자신의 흔적을 감추는데, 무결성 검사 도구를 이용하여 이를 감지할 수 있음
  • 해시 함수를 이용하여 현재 파일 및 디렉토리의 상태를 DB에 저장한 후 감시하다가 현재 상태와 DB의 상태가 달라지면 관리자에게 변경 사실을 알려줌
  • 대표적인 데이터 무결성 검사 도구 : Tripwire, AIDE, Samhain, Claymore, Slipwire, Fcheck 등