티스토리 뷰

반응형

1. 보안 3요소

기밀성 (Confidential) : 데이터를 의도하지 않은 수신자로부터 보호

  • HTTPS(TLS)를 아용하여 전송채널 암호화 (보안채널)
    • 메시지 암호화를 적용할 경우, 안전하지 않은 채널(HTTP)을 이용 가능 (단, 메시지 암호화 과정에서의 노출 확인이 필요함)
  • 애플리케이션에서 전송 전 데이터를 암호화 (메시지 암호화)
    • 서버와 클라이언트가 미리 암/복호화에 대한 방법을 알아야 하므로 큰 분산시스템에서 적용의 어려움이 있음
    • 이를 해결하기 위해 메시지 보안 표준을 사용 (XML 암호화, JSON 웹서명/암호화)

무결성 (Integrity)  : 데이터의 정확성과 신뢰성을 보장하며 무단 수정을 탐지

  • 예방 : 메시지 암호화 또는 보안 채널 이용
  • 탐지 : 감사로그 이용 (감사로그 또한 무결성 요구조건이 만족되어야 함 (ex. Log Injection)

가용성 (Availability) : 합법적인 사용자가 언제나 시스템에 접근할 수 있도록 함

  • DDoS의 경우 대부분 네트워크 경계 수준에서 공격을 탐지하므로 애플리케이션에서는 크게 고려하지 않아도 됨
  • XML 구조 등을 이용한 DoS 공격 등은 애플리케이션에서 대응해야 함
    • 강제 파싱 공격
    • XML External Entity
    • 해시 충돌
    • ETC
  • 파일업로드 제약(최대 파일 갯수, 최대 파일 사이즈)

 

 

2. 보안 제어

인증

  • 사용자가 시스템에 ID(Username), Password 입력을 통한 직접인증
  • ID Provider를 통한 중개인증 (이때, 서비스 제공자는 ID Provider 만 신뢰 / OAuth)
  • 서비스의 중요도 및 리스크에 따라 지식기반, 소유기반, 생체기반 중 2개 이상의 타입의 요소를 결합하여 다중인증을 사용

인가

  • 임의 액세스 제어 (DAC)
    • 데이터를 소유한 사용자가 임의의 다른 사용자에게 권한을 양도
    • 중앙화된 제어가 없으므로 보안 결함 가능성이 높음
  • 필수 액세스 제어 (MAC)
    • 지정된 사용자만 권한을 부여
  • 접근 제어 규칙은 아래의 3가지 방법이 있음
    • 권한 테이블 :  '주체'(개인 또는 그룹), '행동', '자원' 으로 구성
    • 접근제어 목록 : 각 자원과 주체로 구성
    • 수행 가능성 : 각 주체에 각 자원에 대해 사용자가 수행할 수 있는 행동
  • 정책 기반으로 접근제어를 사용할 경우
    • 세분화 된 권한 부여 정책을 구성할 수 있음
    • 기능과 접근제어 목록은 정책에서 동적으로 파생이 가능함
    • 관련 표준 : XACML, OPA (Open Policy Agent)

부인방지

  • 제 3자가 언제든지 확인할 수 있도록 위조할 수 없는 방식으로 데이터의 출처와 무결성을 증명
    (사용자 신원, 날짜 및 시간, 트랜잭션 세부정보 등을 포함)
  • 디지털 서명

감사

  • 합법적인 접근시도를 추적하는 것과 발생가능한 위협을 식별하기 위한 모든 불법접근 시도를 추적

 

 

 

 

 

반응형

'Security > Architecture' 카테고리의 다른 글

Application Security Architecture - Design Principles  (0) 2023.08.06
댓글
반응형
최근에 올라온 글
Total
Today
Yesterday