그림으로 배우는 Http Network 7장

Sorbet·2021년 2월 15일
0

그림HNB

목록 보기
3/9

7장 웹을 안전하게 하는 HTTPS

7.1 HTTP의 약점
7.1.1 평문이기 때문에 도청 가능
7.1.2 통신 상대를 확인하지 않기 때문에 위장 가능
7.1.3 완전성을 증명할 수 없기 때문에 변조 가능
7.2 HTTP + 암호화 + 인증 + 완전성 보호 = HTTPS
7.2.1 HTTP에 암호화와 인증과 완전성 보호를 더한 HTTPS
7.2.2 HTTPS는 SSL의 껍질을 덮어쓴 HTTP
7.2.3 상호간에 키를 교환하는 공개키 암호화 방식
7.2.4 공개키가 정확한지 아닌지를 증명하는 증명서
7.2.5 안전한 통신을 하는 HTTPS의 구조

1) HTTP의 약점

1.1) 평문이기 때문에 도청 가능

  • TCP/IP 는 도청 가능한 네트워크
  • 케이블을 당신돈내고 당신만의 케이블을 깔아놓지 않은 이상, 도청이 가능하다(물리적으로 랜선을 지나가는 전기신호를 확인하면 볼수야 있죠..)
  • 랜케이블을 통해서 전해지는 전기신호는 여기를 참고 https://m.blog.naver.com/PostView.nhn?blogId=specialist0&logNo=221169134737&proxyReferer=https:%2F%2Fwww.google.com%2F
  • 암호화되지 않은 통신은 byte단위로 분석하면 알아낼 수 있고, 암호화된 통신은 의미없는 값들이 나오겠지만, 아무튼 보임(키가 있으면 복호화 가능)
  • 같은 세그먼트 통신 도청은 너무나도 쉬운데
    • 네트워크 패킷을 수집해서 도청이 가능하고, 이를 위해 캡쳐 스니퍼라는 툴을 사용한다
    • 패킷 캡쳐를 위해 wireShark 라는 툴을 사용한다
    • 안전하기 위해서는
      • 통신의 암호화(SSH, SSL, TLS) 암호화 프로토콜 사용
      • 콘텐츠 암호화

1.2) 통신 상대를 확인하지 않기 때문에 위장 가능

  • 누구나 리퀘스트가 가능하다.
    • 네이버에 접속했는데, 네이버의 서버가 아닌, 다른 해커의 서버에서 리퀘스트 해도 알 방법이 없다
      • 근데 이건, 브라우저가 기본적인 보안검사를 하기 때문에(인증서..) 브라우저에 보이는 화면이 다를 수 있다.
    • 다른 해커의 서버를 위장 서버라고 한다.
  • 완전성의 증명은 불가능하다
    • 수신한 내용이 다를지도 모른다
    • 변조방지를 위해서 쓰이는 해쉬값 : MD-5, SHA-1

1.3) 완전성을 증명할 수 없기 때문에 변조 가능

2) HTTP + 암호화 + 인증 + 완전성 보호 = HTTPS

2.1) HTTP에 암호화와 인증과 완전성 보호를 더한 HTTPS

  • HTTPS 가 바로, 기존의 HTTP에 보안을 더한것인데

2.2) HTTPS는 SSL의 껍질을 덮어쓴 HTTP

  • 여기서 말하는 보안이 바로 SSL, TLS 임
    • 공개키, 비공개키 두가지 방식이 있는데 공부해라

2.3) 상호간에 키를 교환하는 공개키 암호화 방식

2.4) 공개키가 정확한지 아닌지를 증명하는 증명서

2.5) 안전한 통신을 하는 HTTPS의 구조

  • HTTPS 구조는 더럽게 복잡하다
  • SSL은 느리다
profile
Sorbet is good...!

0개의 댓글