[OS] 16. Security

SYiee·2022년 12월 31일
0

🦕Operating System

목록 보기
14/14
post-thumbnail

Computer Security

AS Cryptography

  • Application: Software Security
  • Network Security : 컴퓨터와 컴퓨터 간의 정보를 주고 받을 때
  • System Security : OS, HW
  • Surveillance : 위 세 개를 관재

Computer Security Overview

⭐Security requirement triad (CIA Triad) 보안의 3대요소

  1. Confidentiality 기밀성
    → 데이터 내용을 남들이 알 수 없게 만들어야 한다
  2. Integrity 무결성
    → 위조나 변조가 되지 않아야 한다
  3. Availability 가용성
    → 사용가능하게 하는 것, 어떤 상황에서든 사용될 수 있어야 한다.

⇒ 무가기~

Security Problem

  • 모든 시스템에는 hole이 존재

Terminology

  • Vulnerability : 취약점, CIA가 깨지는 상황
    → 악용되지 않으면 문제없음
  • Threat : 위협, 취약점으로 인해 발생할 수 있는 위헙
  • Attack : 위협을 수행하면 공격
  • Adversary : 공격하는 주체
  • Countermeasure : 공격이 들어오면 막는 수단

Security Services

  • Authentication : 인증 id pass
  • Access control : Authentication 유저가 어디까지 접근이 가능하게 할 것인가
  • Nonrepudiation : 부인방지, 나쁜짓했는데 안했다고 잡아뗴지 못하게 하는 것
    → 이메일 시스템

Cracker’s Basic Steps

  • Gather information 정보를 최대한 많이 모으고
  • Use port scanner
  • Get a login account : 로그인을 하고
  • Get root privilege
  • Keep root privilege
  • 시스템에 접근을 해서 이상한 부분이 있는지를 찾아서 루트 권한을 얻어서 백도어를 설치하고 나가면 앞 부분을 안 하고 바로 접근 가능

Physical Security

Hardware security

  • 삼성전자에 사원증 있어야지 들어갈 수 있음 id카두
  • 지문 센서

BIOS security

  • 부팅할때 bios에 비번거는것

Session security

  • 윈도우 계정

Account Security

Authentication
: 유저 패스워드 아이디 쓰는 것

  • Problems in passwords
  • CHAP (Challenge Handshake Authentication Protocol)

Authentication alternatives

  • 바이오매트릭한 방법

Authorization

  • 자격, 권한에 대한 것

File System Security

  • Setuid/setgid programs
    → 유닉스 보안에서 구멍을 담당하는 프로그램
  • Search paths
    → 잘 관리해야해용
  • Other countermeasures

Network Security

  • Use secure protocols
    → 패킷을 어케 암호화해서 보내나
    → https!!

  • TCP wrappers
    → 서버에서는 접속 가능한 멤버를 정해놓고

  • firewall 방화벽 A firewall is placed between trusted and untrusted hosts : 외부망이랑 내부망 사이에 필터역할
    • 들어올때 걸러진 것은 드랍시킴
    • 근데 단절될 수 있음 그래서 DMZ 영역을 두고 공개해도 되는 건 저기서 보도록
  • Intrusion Detection / Prevention

Attacks vs. Countermeasures 안나

Security Threats

  • Physical threats : 자연재해
  • Logical threats : 잘못된 프로그램을 실행시키거나 할 때
  • Operational threats : 매니지컨트를 잘 못해서
  • Denial of service : 서비스를 못하게 만들어버림

The Morris Internet Worm

  • 모리스가 푼 웜이 몇시간만에 미국 전역에 퍼짐
  • finger 취약점 발견, 버퍼오버플로우해서 웜을 심어둠
  • 웜코드를 삽입해서 실행을 시키면 웜코드가 네트워크에 연결되어 있는 다른 유닉스 서버중에 finger 살아있는 녀석한테 똑같은 짓을 또함
  • Buffer overflow → arhument의 크기를 일차적으로 확인을 해야한다

IP spoofing

  • a랑 b가 소통을 하는데 공격자가 a를 무력화시켜서 아무것도 못하게 만들고
    a인척하고 패킷(데이터의 단위)을 보내면 b는 답을 에이한테보냄 근데 답을 못함 a는 무력화 되서 그러면 크래커가 a인척하고 Send SYN, ACK Packet 을 보냄.

Denial of service:
: 서비스를 못하게 만들기

  • internal attacks
    • 무한루프 무한포크 돌려버리기
  • external attacks
    • 뭐 기타 등등 패킷으로 공격하는 것
    • 한 놈이 하면 누가 한건지 추적하면 걸리자나 그러면 안도니까 분산 시켜서 공격을 함 → Distributed DOS (DDOS)

Basic Concept of Cryptography

Shared key cryptography
암호화키 = 복호화 키

  • AES(Advanced Encryption Standard) → 암호학 할꺼면 봐라
  • 가장 중요한 이슈 : 똑같은 키를 어떻게 양쪽이 가지게 할 것인가, 안전하게

Public key cryptography

  • 나의 퍼블릭 키와 프라이빗 키가 있음. 프라이빗은 나만 알고 퍼블릭 키는 공개
  • 프라이빗 키로 암호화한것은 퍼블릭 키로만 풀 수 있고(복구) 퍼블릭 킬로 암호화한것은 프라이빗키로만 복구할 수 있다.
  • a가 만약 A의 프라이빗 키로 암호화를 함
    → a의 퍼블릭 키는 누구나 가질 수 있다. 그러면 a의 퍼블릭 키로 a가 가진 보낸 파일을 풀면 보낸 놈이 a구나. a가 프라이빗 키를 유일하게 가지고 있으니까
  • a가 만약 b의 퍼블릭 키로 암호화를 함 그리고 네트워크로 흘려보냄
    → 받아서 풀 수 있는 사람은 B만 임
    → 안전하게 데이터를 전달해주기 위해
    → 기밀성 보장
    ⇒ 비대칭키 알고리즘 - RSA 등등

Digital Signature
데이터를 암호화하는 것이 아니라 데이터 자체는 공개가 되도 됨

  • 내가 보낸 것임을 확실하게 하기 위해 프라이빗 키를 암호화해서 던짐

  • 받는 사람 입장에서는 A가 보낸 서명모시기를 퍼블릭 키로 복구하면 나오는 해시값이랑 받은 원문 텍스트를 해시를 돌려서 비교해서 같으면 A가 보낸게 맞구나 + 원문이 위조되지 않았구나

⇒ authentication integrity 도 가능

Applied Cryptography for Network (TLS/SSL)

Virtual Private Network (VPN)

서울과 국제 캠퍼스 간의 통신 전용선을 까는게 젤 안전하지만 돈이 많이 듬
→ 퍼블릭 인터넷에 패킷은 따 까볼 수 있으니까 안전X
→ 암호화를 해서 보내고 받을때 복호화를 함
→ 암호화를 해서 만든 네트워크 - VPN

profile
게임 개발자

0개의 댓글