Information and Network Security Concepts

고강희·2023년 4월 23일
0

1.1 CYBERSECURITY, INFORMATION SECURITY, AND NETWORK SECURITY

1.1.1 Cybersecurity

  • 컴퓨터, 디지털 장치, 네트워크 장치, 인터넷 등등의 netowrked 시스템 정보들을 보호하는것. (confidentiality, integrity, availability를 보호하는 것 포함)

1.1.2 Information security

  • CIA를 보호하는 것(confidentiality, integrity, availability) 추가로 Authenticity, Accountability, nonrepudiation, reliability 등을 포함

1.1.3 Network Security

  • 네트워크 상에서 허가받지 않은 변경, 파괴 등을 보호하는 것

1.1.4 Security Objectives - 보안의 목적

  • Confidentiality(기밀성): 데이터, 개인정보가 안전하게 보호되어야 한다. 다만 무조건 보호하는 것이 아니라 당사자가 정보를 open할지 말지 결정 할 수 있다. 다음 두가지 용어를 합친것
    • Data Confidentiality: 데이터에 대한 중요한 정보를 허가받지 않은 사용자에게 보여주지 않는 것.
    • Privacy: 개인적인 정보를 허가받지 않은 사용자에게 보여주지 않는 것.
  • Integrity(무결성): 시스템, 혹은 데이터 프로그램들이 원래의 상태로 결점없이 유지되어야 하며, 바꾸려면 허가를 받아야 한다. 다음 두가지 용어를 합친것
    • Data Integrity: 데이터와 컴퓨터 안에 논리적으로 존재하는 어떤 대상들이(프로그램) 허가받은 방식에 의해서만 바뀔수 있게 하는 것. ex 파일 시스템 권한 - read, write 권한 부여하는 것
    • System Integrity: 시스템이 허가받은 방식에 의해서만 바뀔수 있게 하는 것 (시스템 업데이트 등).
  • Availability(가용성): 시스템이 허가받은 사용자들에게 거부하지 않고, 요청대로 바로바로 잘 동작 하도록 보장하는 것.

  • Accountability: 책임 소재 확인

  • Authenticity: 인증

1.1.5 The Challanges of Information Security - 보안이 어려운 이유

  • 공격을 막는 사람에게는 잠재적인 공격까지 모두 고려를 해야함
  • 공격자는 여러 가능성중 하나만 뚫으면 성공 - 방어자는 모든 가능성을 막아야함 -> 불공정
  • 사용 편의성 대비 안전성을 지키기 쉽지 않음 -> 보안을 위해 이것저것 추가하다보면 사용자 입장에서 불편함이 증가 -> 보안 vs 개발간의 내부적인 갈등발생

1.1.6 Some design principles - 보안시스템 설계 원칙

  • Fail - safe defaults
    실패 하더라도 안전하게 보장하는 default로 설정해라. 즉 화이트 리스트 방식 (안되게 하는것을 default로 설정) <-> 블랙리스트 방식과 반대. 블랙리스트는 모두 열어주지만 알려진 사용자들에 대해서만 Block하는것 화이트 리스트는 모두 닫아주지만, 검증된 사용자들에 대해서만 Open.
    ex) 리눅스 파일시스템
  • Isolation : 무언가를 분리하는것
    • 공개적으로 엑세스 가능한 시스템과, 중요자원을 관리하는 시스템은 분리되어야 한다.
    • 개개인들의 process들과 파일들은 분리되어야 한다.
    • 보안관련 메커니즘들은 다른 자원들과 분리되어야 한다.
  • Complete mdediation
    모든 자원을 엑세스를 할때마다, 그 권한이 있는지 체크해야 한다. ex) zero trust
  • Open design
    Security 메커니즘을 설계할 때 개방형으로 설계해라. 열쇠와 자물쇠를 설계하는 방법 자체는 모든 사람이 공유. 하지만 key를 안전하게 보관. 집단 지성을 활용해 보안을 유지시키고 발전시킬 수 있음.
  • Least privilege
    최소한의 권한 부여. 어떤 일을 수행해야 할 때 필요한 권한까지만 부여하고 그 이상의 권한을 부여하지 말자.

1.1.7 Attacks

  • Attack: 취약점에 대해 실제로 일어난 악의적인 공격, 행위들
  • Threat: 실제로 일어나지 않았지만, 잠재적인 위험들.
  • Passive Attack: 수동적인 공격. 전송되는 정보를 바꾸지 않고 그냥 내용을 보기만 하는 것. -> 암호화를 통해 막을 수 있다. 하지만 Traffic analysis (전송 되는 내용은 보지 못하더라도, 전송 Traffic 정보, 즉 몇시에, 어떤 데이터가 많이 보내지는지.. 등등은 알 수 있음) 를 하게 되면, 간접적으로 정보가 노출 될 수 있다.
  • Active Attack: 능동적인 공격. 전송되는 정보를 바꿀 수 있음.
    • Masquerade: 어떤 주체가 다른 주체인 척 정보를 보내는 것.
    • Data Modification: 공격자가 다른 사용자에 의해 보내진 정보를 중간에 몰래 수정해서 보내는 것.
    • Replay: 다른 사용자가 보낸 데이터를 Copy해서 여러번 반복적으로 보내는 것.
    • Denial of Service: 공격자가 특정 사용자의 정보전송을 아예 막아버리는 것.

1.1.8 Security Services - 위의 공격들을 막는 방법들

Authentication (보증, 인증)

통신 내용이 진짜라는 것을 보증해주는 것.

  • Peer entity authentication: 내가 통신하고 있는 상대방이 실제로 내가 생각하는 상대방이 맞는지 확인 하는것.
  • Data origin Authentication: 나에게 온 데이터가 진짜 원하는 상대에게 온건지 확인하는 것.

Access Control

허가받지 않은 누군가가 접근하는 것을 막는것. 이를 위해 상대방이 허가받은 상대인지 식별 혹은 인증하는 것이 필요 하다. 따라서 Authentication은 접근 제어와 반드시 같이 가게되어있음.

※ 인증의 종류

  • 지식기반 인증: password, Pin, ID
    • 단점:
      • 공유될 수 있지만 뺏기면 다시 돌려받을 수 없다.
      • 관찰이되고 녹화가 됨. (password를 넣고있으면 옆에서 볼 수 있음).
      • password 추측이 가능. 랜덤인것 같지만 사실 사람은 기억할 수 있는 정보로 password를 입력하므로 추측할 수 있는 공간이 꽤 작다.
      • 잊어버리기 쉽다.
  • 소유물 기반 인증: Smart card, Electronic Badge, Electronic Key.
    • 단점:
      • 열쇠같은 경우 복사가 가능함.
      • 잃어버릴 수 있음.
  • Biometric 기반 인증: 지문, 얼굴, Iris, Voice print
    • 단점
      • 지문 같은 경우 뚫리면 바꿀 수 없음.
      • 100% 완벽하게 안전하지 않음. 가끔 풀리지 않는 경우도 생기고, 얼굴인식의 경우 비슷한 얼굴이면 풀릴 수 도 있다.
  • Multifactor Authentication
    • 위의 인증방식을 And 조합으로 엮는 방식. 하지만 사용자 입장에서 약간 불편해질 여지가 있다.

Data Confidentiality, Integrity

Data Confidentiality: 위의 서술한 대로 데이터에 대한 중요한 정보를 허가받지 않은 사용자에게 보여주지 않는 것.

Data Integrity: 데이터가 내가 원하는 상태로 결점없이 바뀌지 않는 것. (허가된 사용자에 의해서만 바뀔 수 있는 것.)

  • Connection-oriented integrity service: 메시지가 변조 된건지 확인할 뿐만 아니라 메시지의 전송 순서가 맞게 됐는지도 확인함 -> TCP와 유사
  • Connectionless integrity sevice: 메시지가 변조 된건지만 확인함. -> UDP와 유사

Nonrepudiation (부인 방지)

Sender가 데이터를 전송했는데도 불구하고, 전송하지 않았다고 부인하면 Receiver가 해당 데이터의 Sender가 맞다라는 것을 증명해 낼 수 있는것. 혹은 그 반대도 성립 (받는사람이 안받았다고 부인).
※ Accountability(책임 소재 확인)중 일종이다.

Availability Service

어떤 시스템이 가용한 상태로 유지, 보호해주는 서비스. Denial-of-service Attack에 대응해주는 서비스이다. 시스템의 자원들을 관리하고 제어하는게 가장 중요하며, 따라서 접근제어 서비스와 같은 보안 서비스와 연관이 깊다.

1.1.9 Core concept: Attacks, Services, Mechanisms

각각의 Attacks를 막을 수 있는 서비스와, 그 서비스들을 구현하는 방법을 나타낸 구조.

  • Release of contents, Traffic anaysis는 Confidentiality(허가받은 사용자만 데이터를 볼 수 있는 것) 서비스로 막을 수 있으며, 이는 Encryption과 Traffic padding(padding Traffic을 추가해 Traffic 정보에 혼선을 주는것)등으로 구현 가능하다.

  • Modification과 Masquerade/Forgery는 직접 막을 수는 없지만, Integrity(허가받은 사용자만 데이터를 수정 가능)와 Authenticity(통신 내용이 진짜라는 것을 보증) 서비스로 안전한지 확인 하는 것이 가능하며 이는 Message Authentication과 Digital signature로 구현이 가능하다. 이때 만약 Nonrepudation(송, 수신에 대한 부인을 방지하는 것) 중에서 송신에 대한 부인 방지에 관한 서비스는 Digital signature로 구현이 가능하다.

  • Denial of Service Attack은 Availability(허가받은 사용자가 잘 사용할수 있도록 하는 것), Access control(허가 받지 않은 누군가가 접근하는 것을 막는 것), Acountability(책임 소재 확인)로 방어할 수있으며. 이는 Network Management로 구현이 가능하다.

1.1.10 Network Security

Communication Security

  • 네트워크를 통한 통신을 보호하는 것.(Passive attack, Active attack 모두 고려)

  • 네크워크 프로토콜(네트워크에서 사용하는 약속, 조약, 데이터를 주고받는 절차, 형식)을 통해서 구현됨

  • 기존 네트워크 프로토콜의 일부에 보안기능을 추가하여 구현
    • IEEE 802.11i: 무선랜 프로토콜(802.11)에 보안기능을 추가
    • HTTPS: 웹페이지에 보안기능을 추가
    • IPsec: IP 프로토콜에 보안기능을 추가
    • TLS: Transport 계층(TCP,UDP)에 보안기능을 추가
  • 처음부터 보안을 위해 구현된 프로토콜
    • SSH: 원격 접속시 안전하게 접속하기 위한 프로토콜
    • S/MIME: 이메일 보안 프로토콜

Device Security

네트워크에 필요한 Devices(Router, Switch, Client, Server)를 보호하는 서비스. 허가되지 않은 활동(CIA 공격)을 보호.

  • Firewall(방화벽): access를 제한. 들어오고 나오는 Data Traffic에 filter를 설정.
  • Intrusion detection: 허가받지 않은 방식으로 시스템 자원을 접근하는 것을 실시간으로 탐지.
    • Host-based: 내 서버 하나를 보는것. 서버안에 어떤 악의적인 행위가 벌어지는지 보는것.
    • Network-based: 네트워크에서 악의적인 Packet들을 찾는 것.
  • Intrusion prevention: detection에서 추가적인 기능(단순히 detection만 하는 게 아니라 멈추게 하는 것)

1.1.11 Standards

  • National Institute of Standards and Technology(미국 국립 표준 기술 연구소): Federal Information Processing Standards(FIPS), Special Publication(SP) 표준 문서 제공.
  • Internet Society: 전세계적인 인터넷과 관련 조직, 멤버십을 연결하는 협회. Internet Engineering Task Force(IETF) 부속기구에서 인터넷, 네트워크 관련 표준 문서 제공. Requests for Comments(RFCs) 표준 제공.
  • ITU-T: ITU(International Telecommunication Union)에서 제공하는 표준 문서. 전세계에서 공통적으로 사용하는 통신을 합의해서 정하는 기구.
  • ISO(International Organiztion for Standardization): 국제 표준 기구. 여러 나라에서 공통적으로 사용하는 표준 제공
  • IEEE(Institute of Electrical and Electronics Engineers): 사설 단체이지만 영향력있는 표준을 제공.
  • TTA(한국정보통신기술협회, Telecommunications Technology Association)
profile
그냥 AI 관련 유익해보이는거 이것저것 적어놓음

0개의 댓글