테마 선택

📚 지식 노트

AI·하드웨어·주변기기·게임·컴퓨터 시스템·이론 컴퓨터 과학·수학·개발과 운영·보안·응용 분야에 대해 알아 두면 좋은 내용을 정리한 노트다. 위에서 분야를 고르고 아래에서 노트를 고른다.

네트워크 보안

오가는 데이터를 지키는 TLS와 인증서, 경계를 지키는 장치들이다.

목차 (9)
  1. TLS: 오가는 데이터를 지키는 세 가지 약속
  2. 인증서와 PKI: 공개키가 진짜 그 사이트의 것인가
  3. HTTPS와 HSTS: 처음 한 번의 틈까지 막기
  4. 방화벽과 NAT: 경계에서 거르기
  5. VPN: 믿지 못하는 구간 위에 터널 만들기
  6. 망분리: 업무망과 인터넷망을 떼어 놓는다
  7. DNS 보안: 주소록이 거짓말하지 않게
  8. DDoS: 막을 수 없으면 흡수한다
  9. Wi-Fi 보안: WPA2에서 WPA3로

TLS: 오가는 데이터를 지키는 세 가지 약속

인터넷의 패킷은 집 공유기, 통신사, 여러 중계 장비를 거쳐 간다. 그 길 위의 누구든 내용을 읽거나 바꿀 수 있다고 가정하는 것이 네트워크 보안의 출발점이다. TLS(Transport Layer Security)는 그 길 위에 세 가지를 약속한다. 남이 못 읽게 하는 기밀성, 바뀌면 알아채는 무결성, 그리고 지금 말하는 상대가 진짜 그 서버라는 인증이다. 암호 쪽 기초(대칭 암호, 키 교환, 서명)는 암호 노트에 있다.

현재 판은 RFC 8446(2018)의 TLS 1.3이다. 핸드셰이크(handshake)는 본 대화 전에 쓸 암호와 키를 정하는 짧은 인사다. TLS 1.3은 첫 메시지부터 키 교환 공개값을 실어 보내므로, 서버의 첫 답장 뒤로는 인증서까지 모두 암호화되고 왕복 한 번(1-RTT)이면 데이터를 보낼 수 있다.

TLS 1.3 핸드셰이크 순서도: ClientHello, ServerHello 다음부터 암호화된 인증서, 서명, Finished가 오가고 응용 데이터가 흐른다클라이언트(브라우저)서버이 아래는 모두 암호화ClientHello + key_share + 지원 암호 목록ClientHello + key_share + 지원 암호 목록ServerHello + key_shareServerHello + key_share{EncryptedExtensions} {Certificate}{EncryptedExtensions} {Certificate}{CertificateVerify}{CertificateVerify}{Finished}{Finished}{Finished}{Finished}[응용 데이터: HTTP 요청과 응답]{ } 핸드셰이크 키로 암호화 · [ ] 응용 데이터 키로 암호화
1 / 7

클라이언트가 ClientHello를 보낸다. 지원하는 암호 묶음과 함께 키 교환용 공개값(key_share)을 미리 담는다.

TLS 1.3 전체 핸드셰이크. 첫 메시지부터 키 교환 공개값을 실어 보내므로, 서버의 첫 답장 이후는 모두 암호화되고 왕복 한 번 만에 데이터를 보낼 수 있다.

핵심은 키 교환과 인증이 따로 움직인다는 점이다. 대칭 키는 양쪽이 즉석에서 만든 일회용 공개값(ECDHE)으로 정하고, 서버의 장기 개인키는 "이 대화에 내가 참여했다"는 서명에만 쓴다. 그래서 나중에 서버 개인키가 새어도 지난 대화를 풀 수 없다. 이 성질을 순방향 비밀성(forward secrecy)이라 한다.

바뀐 점TLS 1.2까지TLS 1.3
왕복 수전체 핸드셰이크에 두 번한 번. 재접속은 0-RTT도 가능하지만 재전송(replay)에 약해 안전한 요청에만 쓴다
키 교환RSA로 키를 그대로 실어 보내는 방식도 허용일회용 (EC)DHE만 남아 순방향 비밀성이 기본이다
암호 묶음CBC 모드, RC4 등 문제가 알려진 조합도 고를 수 있음AES-GCM, ChaCha20-Poly1305 같은 인증 암호(AEAD)만
인증서평문으로 보임암호화되어 엿보는 사람이 볼 수 없다

TLS 1.0과 1.1은 RFC 8996으로 공식 폐기되었다. 서버 설정의 기준은 미국 표준기술연구소의 NIST SP 800-52 Rev. 2가 좋은 출발점이다. TLS는 웹만의 것이 아니다. 메일, DNS(아래 DoT·DoH), 그리고 P2P 화상 통화가 쓰는 WebRTC도 UDP용 변형인 DTLS로 키를 정한다.

인증서와 PKI: 공개키가 진짜 그 사이트의 것인가

키 교환은 상대가 누구든 비밀 키를 만들어 준다. 중간에 끼어든 사람과 만들어도 마찬가지다. 그래서 "이 공개키가 정말 example.com의 것"이라는 보증이 필요하고, 이것이 인증서(certificate)다. 인증서는 도메인 이름, 공개키, 유효기간을 적고 인증 기관(CA, Certificate Authority)이 서명한 문서이며, 형식은 RFC 5280의 X.509다.

신뢰 사슬: 루트 CA가 중간 CA에 서명하고 중간 CA가 사이트 인증서에 서명한다. 브라우저는 사이트 인증서에서 루트까지 거꾸로 서명을 확인한다루트 CA자기 자신이 서명OS·브라우저에 내장중간 CA루트 CA가 서명평소 발급을 맡음사이트 인증서중간 CA가 서명example.com 공개키서명서명검증은 거꾸로: 사이트 → 중간 → 루트루트 개인키는 오프라인에 두고, 일상 발급은 중간 CA가 맡아 유출 피해를 줄인다.브라우저는 서명 외에도 이름, 유효기간, 폐기 여부를 함께 확인한다.서명하는 방향검증하는 방향신뢰의 출발점(신뢰 앵커)
신뢰 사슬. 브라우저와 운영체제는 루트 CA 인증서 목록(신뢰 저장소)을 미리 갖고 있고, 사이트 인증서에서 출발해 서명을 하나씩 따라 올라가 그 목록에 닿으면 믿는다.

이 구조 전체를 공개키 기반 구조(PKI, Public Key Infrastructure)라 한다. 약점도 구조에서 나온다. 신뢰 저장소에 있는 CA 중 하나라도 잘못 발급하면 어떤 도메인의 가짜 인증서든 만들어질 수 있다. 이를 막는 장치가 인증서 투명성(Certificate Transparency)이다. CA가 발급한 인증서를 누구나 볼 수 있는 추가 전용 로그에 남기게 하고, 브라우저는 로그에 없는 인증서를 거부한다. 도메인 주인은 로그를 지켜보다 모르는 발급을 찾아낼 수 있다.

과정하는 일
발급CA는 신청자가 그 도메인을 실제로 다루는지 확인한다. Let's Encrypt는 ACME 프로토콜로 정해진 파일이나 DNS 레코드를 올리게 해 자동으로 확인한다
검증브라우저는 서명 사슬, 이름 일치, 유효기간, 폐기 여부, 투명성 로그 기록을 확인한다
폐기개인키가 새면 만료 전에 인증서를 무효로 한다. 폐기 확인이 늘 믿을 만하지 않아, 유효기간을 짧게(90일 등) 두고 자주 갱신하는 쪽으로 가고 있다

지금 쓰는 루트와 중간 인증서의 실제 사슬은 Let's Encrypt의 인증서 목록에서 볼 수 있다. 공개키 암호의 원리는 데이터 노트의 암호와 해시 절에 그림으로 있다.

HTTPS와 HSTS: 처음 한 번의 틈까지 막기

HTTPS는 HTTP를 TLS 안에 넣어 보내는 것뿐이다. 문제는 사람이 주소창에 example.com만 치면 브라우저가 예전 습관대로 http://로 먼저 갈 수 있다는 점이다. 서버가 https로 넘겨 주기 전의 그 첫 요청은 평문이라, 공용 Wi-Fi 같은 곳에서는 중간에서 응답을 바꿔 사용자를 계속 http에 붙잡아 둘 수 있다.

HSTS가 없으면 첫 요청이 평문 http로 공용 Wi-Fi를 지나고, HSTS를 받은 뒤에는 브라우저가 처음부터 https로만 연결한다HSTS가 없을 때: 주소창에 example.com만 입력브라우저공용 Wi-Fi서버http:// 평문그대로 전달첫 요청이 평문이라 중간에서 응답을 바꿔칠 수 있다.HSTS를 한 번 받은 뒤 (max-age 동안)브라우저공용 Wi-Fi서버https:// 암호화https:// 암호화브라우저가 요청을 보내기 전에 스스로 https로 바꾼다.인증서 오류도 "그냥 진행" 없이 막는다.평문(읽고 바꿀 수 있음)TLS로 암호화
HSTS 전후. 서버가 한 번 HSTS 헤더를 보내면 브라우저는 그 기간 동안 이 도메인에 평문 요청을 아예 보내지 않는다.

HSTS(HTTP Strict Transport Security, RFC 6797)는 서버가 HTTPS 응답에 다음 헤더를 실어 "앞으로 이 기간에는 https로만 오라"고 기억시키는 장치다. 브라우저는 그 기간 동안 http 링크도 보내기 전에 https로 바꾸고, 인증서 오류가 나면 사용자가 무시하고 넘어갈 수 없게 막는다.

Strict-Transport-Security: max-age=63072000; includeSubDomains; preload

남는 틈은 정말 처음 방문하는 순간이다. 이것은 브라우저에 미리 넣어 두는 목록인 HSTS 프리로드로 막는다. 목록에 오르면 하위 도메인까지 모두 https여야 하고 빠지기도 오래 걸리므로, 모든 하위 도메인이 준비된 뒤 신청한다. 헤더 각 항목의 뜻은 MDN의 Strict-Transport-Security 문서에 있다. 쿠키를 https로만 보내게 하는 Secure 속성은 웹 보안 노트에서 다룬다.

HTTPS로 보내는 비밀번호를 브라우저에서 한 번 더 해시·암호화할 필요가 없는 이유는 보안 › 인증과 인가에 있다.

방화벽과 NAT: 경계에서 거르기

방화벽(firewall)은 정한 규칙에 따라 패킷을 통과시키거나 버리는 장치나 프로그램이다. 규칙의 기본값은 "명시적으로 허용한 것만 통과"(기본 거부)가 원칙이다. 미국 표준기술연구소의 NIST SP 800-41 Rev. 1은 방화벽 종류와 정책 짜는 법을 정리한 지침이다.

종류보는 것예
패킷 필터패킷 하나의 주소, 포트, 프로토콜"밖에서 22번 포트로 오는 것은 버린다"
상태 기반(stateful)연결 단위. 안에서 연 연결의 답장인지 기억한다집 공유기, 운영체제 기본 방화벽
애플리케이션 계층HTTP 요청 내용 같은 응용 데이터웹 애플리케이션 방화벽(WAF), 프록시
호스트 방화벽그 컴퓨터 한 대로 드나드는 것노트북을 공용 Wi-Fi에 붙일 때 마지막 방어선
공유기 그림: 집 안 기기가 밖으로 연 연결은 상태표에 기록되어 답장이 통과하고, 인터넷에서 먼저 들어온 연결은 기록이 없어 차단된다인터넷공유기 (NAT + 방화벽)공인 IP 203.0.113.7연결 기록(상태표):40001 ↔ .10:51000:40002 ↔ .11:52344기록에 없는 연결은 버린다포워딩 = 일부러 연 구멍노트북 .10휴대폰 .11NAS .12나감: 허용먼저 옴: 차단NAT는 공인 주소 하나를 나눠 쓰려는 장치지만, 기록에 없는 연결을 받을 수 없어결과적으로 방화벽처럼 동작한다. 진짜 방화벽은 규칙으로 허용과 차단을 정한다.경계 장치허용차단
집 공유기의 NAT. 안에서 밖으로 연 연결은 상태표에 남아 답장이 들어오지만, 밖에서 먼저 두드린 연결은 어느 기기로 보낼지 기록이 없어 버려진다.

NAT(Network Address Translation)는 공인 IP 하나를 집 안 여러 기기가 나눠 쓰게 하는 주소 변환이다. 원리는 네트워크 노트의 주소 절에 있다. 기록에 없는 연결을 받을 수 없으니 부수 효과로 방화벽처럼 동작하지만, 목적이 보안은 아니다. 포트 포워딩이나 UPnP로 연 구멍은 그대로 바깥에 드러나고, IPv6에서는 기기마다 공인 주소를 받으므로 NAT 없이 방화벽 규칙이 그 역할을 맡아야 한다.

경계 방화벽만 믿는 설계는 한 번 안으로 들어오면 모든 것에 닿을 수 있다는 약점이 있다. 그래서 요즘은 내부 망도 믿지 않고 요청마다 사용자와 기기를 확인하는 제로 트러스트(zero trust) 방식과, 망을 잘게 나누는 분할(segmentation)을 함께 쓴다. 한 겹이 뚫려도 버티는 설계는 보안의 기초의 심층 방어와 같은 생각이다.

방화벽이 규칙에 맞는지 보고 통과시킨다면, 침입 탐지 시스템(IDS, intrusion detection system)은 통과한 흐름 속에서 공격의 흔적을 찾아 경보를 낸다. 알려진 공격 모양(시그니처)과 맞춰 보거나 평소와 다른 흐름(이상 행위)을 잡는다. 탐지에 그치지 않고 그 자리에서 연결을 끊거나 패킷을 버리면 침입 방지 시스템(IPS)이다. IPS는 흐름 한가운데에 서야 해서 오탐이 정상 업무를 막을 수 있고, IDS는 옆에서 사본을 보므로 안전하지만 막지는 못한다. 네트워크에 두는 것, 서버마다 두는 것(호스트 기반), 무선용이 있고, 미국 NIST의 SP 800-94가 종류와 배치를 정리한다. 요즘은 방화벽에 IPS 기능을 합친 장비가 흔하고, 이들이 낸 경보는 보안 관제로 모인다.

VPN: 믿지 못하는 구간 위에 터널 만들기

VPN(Virtual Private Network)은 원래 패킷을 통째로 암호화해 다른 패킷 안에 싸서 보내는 터널이다. 중간 구간에서는 바깥 포장만 보이고, 반대편 VPN 서버가 포장을 풀어 원래 목적지로 보낸다.

VPN 터널: 노트북이 원래 패킷을 암호화해 VPN 서버로 보내는 바깥 패킷에 싸고, VPN 서버가 풀어 사이트로 전달한다노트북카페 Wi-Fi·통신사VPN 서버사이트바깥 머리: 목적지 VPN 서버안: 암호화된 원래 패킷(→ 사이트)카페·통신사가 보는 것: VPN 서버와 통신한다는 사실, 양과 시간VPN 서버가 보는 것: 목적지 주소 (HTTPS면 내용은 여전히 못 본다)VPN은 엿볼 수 있는 자리를 통신사에서 VPN 운영자로 옮길 뿐이다암호화된 터널터널 밖의 일반 인터넷 구간
VPN 터널. 원래 패킷(목적지: 사이트)은 암호화되어 VPN 서버로 가는 바깥 패킷에 담긴다. 터널을 나온 뒤의 구간은 VPN이 지켜 주지 않는다.
쓰임모습주로 쓰는 프로토콜
원격 접속집이나 출장지 노트북을 회사 내부망에 붙인다IPsec, TLS 기반 VPN, WireGuard
사이트 간(site-to-site)지사와 본사 망을 인터넷 위에서 하나로 잇는다IPsec
개인용 VPN 서비스카페 Wi-Fi나 통신사로부터 접속 기록을 가린다WireGuard, OpenVPN 등

VPN은 엿보는 사람을 없애지 않고 자리를 옮긴다. 통신사 대신 VPN 운영자가 목적지를 보게 되므로, 개인용 VPN은 그 운영자를 통신사보다 더 믿을 때만 의미가 있다. 또 이미 HTTPS로 지켜지는 내용을 한 번 더 감쌀 뿐이라, 피싱이나 악성 프로그램을 막아 주지는 않는다. IPsec VPN을 설계할 때의 기준은 NIST SP 800-77 Rev. 1에 정리되어 있다.

망분리: 업무망과 인터넷망을 떼어 놓는다

망분리(network separation)는 내부 업무 시스템이 있는 업무망과 메일·웹 검색에 쓰는 인터넷망을 나눠, 업무용 PC가 인터넷에 직접 닿지 않게 하는 설계다. 인터넷에서 들어오는 악성코드와 피싱이 업무 서버까지 오는 길을 끊고, 업무 자료가 인터넷으로 곧장 새는 길도 끊는다. 한국에서는 공공기관과 금융회사에 규제로 의무화되면서 널리 퍼져, 보안 일을 하면 가장 먼저 마주치는 말 가운데 하나다.

두 망을 아예 끊어 사람이 손으로만 자료를 옮기게 한 상태는 에어 갭(air gap)이라 한다. 한국의 망분리는 대개 그보다 한 걸음 느슨해서, 두 망 사이에 검사하는 통로(망연계)를 하나 둔다.

망분리의 두 방식. 물리적 망분리는 인터넷 PC와 업무 PC를 따로 두고, 두 망 사이에는 연결 없이 망연계 시스템으로 파일만 넘긴다. 인터넷 PC가 감염돼도 연결로 닿는 업무망 자산은 0곳이다. 논리적 망분리는 업무망에 연결된 PC 한 대에서 서버의 가상 PC를 원격 화면으로 띄워 인터넷을 쓰고, 두 쪽 사이에는 화면과 입력만 오간다물리적 망분리: PC 두 대, 망 두 개인터넷망업무망인터넷인터넷 PC업무 PC업무 서버논리적 망분리: PC 한 대, 인터넷은 가상 PC로인터넷망업무망인터넷가상 PCVDI·SBC 서버사용자 PC업무망에 연결업무 서버망연계파일만 검사 후감염돼도업무망 연결 0곳망 사이연결 없음화면·입력만받은 파일은 서버에 남는다인터넷 창은 원격 화면이다
망분리의 두 방식. 물리적 망분리는 PC를 두 대 두고 망 사이에는 파일만 검사해 넘긴다. 논리적 망분리는 업무망 PC 한 대에서 서버의 가상 PC를 원격 화면으로 띄워 인터넷을 쓴다. 숫자는 인터넷 PC에서 연결로 닿는 업무망 자산 수를 계산한 값이다.
방식모습좋은 점약한 점
물리적 망분리사람마다 인터넷 PC와 업무 PC 두 대, 망 장비와 회선도 따로 둔다두 망 사이에 연결이 아예 없어 가장 확실하다장비가 두 벌이라 비용과 자리가 들고, 두 PC를 오가는 일이 번거롭다
논리적 망분리(서버 기반)PC 한 대. 한쪽 환경은 서버에서 도는 가상 데스크톱(VDI)이나 서버에서 브라우저·앱만 띄워 보내는 방식(SBC)의 화면으로 쓴다PC가 한 대로 줄고, 인터넷에서 받은 파일이 서버에 남아 PC로 내려오지 않는다가상화 서버와 화면 전송 경로가 새 공격면이 되고, 서버가 멈추면 그쪽 업무가 함께 멈춘다
논리적 망분리(PC 안 가상화)PC 한 대 안에서 소프트웨어로 격리한 두 환경을 나눠 쓴다서버를 따로 두지 않아도 된다같은 하드웨어와 운영체제 위라, 격리가 뚫리면 두 환경이 함께 위험해진다

서버 기반 방식이 화면만 보내고 입력만 받는 원리는 가상화 노트의 원격 데스크톱 절에 있다.

망을 나눠도 업무에는 자료가 오가야 한다. 인터넷 메일로 받은 첨부를 업무망으로 들이고(반입), 업무망에서 만든 자료를 밖으로 보낸다(반출). 이 일을 맡는 것이 망연계(자료 전송) 시스템이다. 두 망에 한 발씩 걸친 서버가 파일을 받아 검사하고 건너편에 내려놓을 뿐, 두 PC 사이에 연결을 열어 주지는 않는다. 더 엄격한 곳은 데이터가 물리적으로 한 방향으로만 흐르는 데이터 다이오드(일방향 게이트웨이)를 쓴다. 보안 등급이 다른 영역 사이에서 정보를 통제하며 옮기는 장치를 통틀어 교차 도메인 솔루션(CDS, cross domain solution)이라 부르기도 한다.

망연계 단계 그림: 인터넷 PC에서 올린 회의자료.pdf이 형식 검사, 악성코드 검사, 승인과 기록을 거쳐 업무 PC에 전달되고, setup.exe은 형식 검사에서 멈춘다인터넷망업무망인터넷 PC망연계 시스템형식 검사악성코드 검사승인·기록업무 PC회의자료.pdf회의자료.pdf회의자료.pdf회의자료.pdf회의자료.pdfsetup.exe여기서 멈춤두 망 사이의 길은 이 통로 하나뿐이다
1 / 6

인터넷 PC에서 받은 회의자료.pdf을 업무 PC로 옮기려 한다. 두 PC 사이에는 연결이 없어, 파일을 망연계 시스템에 올린다.

망연계로 파일 넘기기. 망을 건너는 길은 파일 하나를 검사해 넘기는 통로뿐이고, 검사 하나라도 걸리면 그 자리에서 멈춘다.

망연계는 두 망을 잇는 유일한 다리라서 그 자체가 가장 노려지는 곳이다. 검사를 빠져나가는 파일 형식, 망연계 서버의 취약점, 관리자 계정 탈취가 모두 두 망을 다시 잇는 길이 된다. 그래서 망연계 서버는 패치, 접근 통제, 로그 감시를 가장 엄격하게 둔다.

한국에서 망분리가 자리 잡고 다시 바뀌어 온 흐름은 이렇다.

  • 공공기관: 2006년 일부 기관의 시범을 거쳐 2007년 지침, 2008년 국가정보원 가이드라인으로 국가·공공기관에 넓혀졌다(바이라인네트워크의 망분리 해설).
  • 금융권: 2011년 4월 농협 전산망 마비 사태와 2013년 3월 20일 방송사·은행 전산망이 한꺼번에 멈춘 3·20 전산 대란을 거치며 규제가 강해졌다. 금융위원회의 2013년 7월 금융전산 보안 강화 종합대책은 전산센터의 물리적 망분리를 2014년 말까지 의무화하고, 본점과 영업점은 단계적으로 망분리하게 했다.
  • 기업: 2012년부터는 이용자 수나 매출이 일정 규모를 넘는 정보통신 서비스 기업도 개인정보를 다루는 PC를 망분리하도록 요구받았다(같은 해설).
  • 금융권 완화: 금융위원회는 2024년 8월 금융분야 망분리 개선 로드맵을 내고, 도입 뒤 약 10년 동안 쌓인 업무 비효율과 신기술 제약을 이유로 규제 샌드박스를 통해 생성형 AI 활용을 허용하고 SaaS 이용 범위를 넓히고 연구·개발 환경을 고치기로 했다. 중장기로는 금융회사가 위험을 스스로 평가해 통제를 정하고 사고에는 책임을 더 지는 '자율보안-결과책임' 원칙의 체계와, 가칭 디지털 금융보안법을 제시했다.
  • 공공 개편(N2SF): 국가정보원은 2025년 1월 국가 망 보안체계(N2SF) 가이드라인 초안을, 9월에 1.0 정식판을 냈다. 업무 정보와 시스템을 기밀(C)·민감(S)·공개(O) 세 등급으로 나누고 등급마다 보안 통제를 골라 거는 방식으로, 모든 업무를 같은 벽으로 끊던 망분리를 데이터 중요도에 따른 차등 통제로 바꾼다. 초안은 통제 항목을 권한, 인증, 분리 및 격리, 통제, 데이터, 정보자산의 여섯 영역으로 묶었고, 정식판은 항목을 280여 개로 늘리며 제로 트러스트의 "항상 검증, 최소 권한" 원칙을 보안 대책 수립의 기준으로 넣었다.
견줄 점망분리가 해 주는 것남는 문제
바깥 공격인터넷 PC가 감염돼도 업무망까지 이어진 연결이 없다망연계, 프로그램 배포·관리 서버, 외주 장비처럼 두 망을 잇는 예외가 생기면 그 길로 들어온다
자료 유출업무 자료가 인터넷으로 곧장 나가지 않는다USB 같은 이동식 매체, 화면 촬영, 권한 있는 내부자의 반출은 막지 못해 매체 통제와 반출 기록이 따로 필요하다
일하는 방식정해진 통로 밖의 자료 이동을 줄인다두 PC를 오가야 하고, 클라우드·SaaS·생성형 AI·오픈 소스 저장소를 업무망에서 바로 쓰기 어렵다. 개발자를 뽑기 어렵다는 호소도 나온다
안쪽의 신뢰경계를 한 겹 더 두껍게 세운다업무망 안은 여전히 평평하게 믿는 경우가 많아, 한 번 들어온 공격자는 옆으로 이동하기 쉽다

실제 사고도 이런 예외에서 났다. 농협 사태에서는 서버 관리에 쓰던 외주 직원의 노트북이 감염돼 공격의 발판이 됐고, 3·20 때는 사내 PC에 프로그램을 배포하는 관리 서버가 악성코드를 퍼뜨린 통로로 지목됐다. 망을 나눴어도 두 망을 오가는 사람, 장비, 업데이트 경로가 곧 경계다.

망분리는 경계 보안을 버린 것이 아니라 성벽을 한 겹 더 두껍게 쌓은 것이다. 안쪽이면 믿는다는 경계 보안의 약점(제로 트러스트 노트의 첫 절)은 그대로 남는다. 제로 트러스트는 위치 대신 요청마다 신원, 기기 상태, 데이터 민감도로 판단하고, 마이크로세그멘테이션으로 안쪽도 잘게 나눈다. 둘은 양자택일이 아니어서, N2SF처럼 중요한 데이터일수록 분리와 격리를 강하게 걸고 나머지는 신원과 기기를 확인하는 통제로 여는 혼합이 지금 한국 규제가 가는 방향이다.

DNS 보안: 주소록이 거짓말하지 않게

DNS는 이름을 IP 주소로 바꾸는 인터넷의 주소록이다. 전통적인 DNS 질의와 응답은 평문 UDP라 두 가지 문제가 있다. 길 위에서 어떤 사이트를 찾는지 엿볼 수 있고, 가짜 응답을 끼워 넣어 사용자를 엉뚱한 서버로 보낼 수 있다(DNS 스푸핑, 캐시 오염). 두 문제는 해결책이 다르다.

DNS 보안: 기기와 리졸버 사이는 DoT나 DoH로 암호화하고, 리졸버는 루트에서 .com, example.com으로 이어지는 DNSSEC 서명 사슬로 응답을 검증한다내 기기리졸버통신사·공용 DNSDoT·DoH경로 암호화루트 (.)신뢰 앵커 키.com루트가 보증한 키example.com.com이 보증한 키DNSSEC: 응답에 서명이 붙고, 리졸버가 루트부터 사슬을 따라 검증한다 (위조 방지)DoT·DoH: 기기에서 리졸버까지를 암호화한다 (엿보기·중간 변조 방지)암호화 구간위 단계가 아래 키를 보증(DS 레코드)일반 DNS 질의
DNS 보안의 두 구간. DoT·DoH는 기기와 리졸버 사이의 길을 암호화하고, DNSSEC은 권한 서버가 낸 응답 자체에 서명해 리졸버가 진위를 확인하게 한다.
방법막는 것방식
DNSSEC (RFC 4033 등)위조. 응답이 진짜 그 도메인 주인이 낸 것인지레코드에 서명하고 상위 영역이 하위 영역 키를 보증한다. 내용을 숨기지는 않는다
DoT (DNS over TLS, RFC 7858)엿보기와 길 위의 변조전용 포트 853에서 TLS로 질의한다. 망 관리자가 DNS 흐름을 구별하기 쉽다
DoH (DNS over HTTPS, RFC 8484)엿보기와 길 위의 변조보통의 HTTPS(443) 요청으로 질의해 웹 통신과 섞인다. 브라우저가 직접 쓰기도 한다

DoT·DoH는 리졸버까지만 지키므로 그 리졸버 운영자는 여전히 질의를 본다. 반대로 DNSSEC은 서명을 확인할 뿐 질의 내용을 숨기지 않는다. 둘은 경쟁이 아니라 서로 다른 구멍을 메운다. 그리고 DNS가 속더라도 HTTPS 사이트라면 가짜 서버는 올바른 인증서를 내밀 수 없어 브라우저가 경고한다. 여러 겹이 함께 지키는 셈이다.

DDoS: 막을 수 없으면 흡수한다

서비스 거부(DoS, Denial of Service) 공격은 데이터를 훔치는 대신 서비스를 못 쓰게 만든다. 수많은 기기(감염된 PC, 공유기, IoT 기기로 이루어진 봇넷)를 동원하면 분산 서비스 거부(DDoS)가 된다. 정상 요청과 공격 요청이 겉보기에 같을 때가 많아, 한곳에서 다 막으려 하기보다 넓게 받아 나눠 거르는 쪽으로 방어한다.

종류노리는 것대표적인 방어
볼륨형회선 대역폭. 양으로 관을 막는다큰 용량의 Anycast 망·CDN이 흡수, 통신사 단의 필터링
프로토콜형연결 상태를 기억하는 장비의 표(예: 반쯤 열린 TCP 연결)SYN 쿠키처럼 상태를 미루는 기법, 상태표 크기와 시간 제한 조정
애플리케이션 계층무거운 페이지나 검색처럼 서버가 많이 일하는 요청캐시, 속도 제한(rate limiting), 봇 판별, WAF 규칙
DDoS 흡수: 여러 곳의 봇 트래픽을 가장자리 거점 세 곳이 나눠 받아 거르고, 원본 서버에는 정상 요청만 전달된다봇봇봇봇봇봇봇봇가장자리 거점 A흡수·필터·속도 제한가장자리 거점 B흡수·필터·속도 제한가장자리 거점 C흡수·필터·속도 제한원본 서버주소를 숨김걸러진 요청만같은 주소를 여러 거점이 함께 알리는 Anycast 덕분에 공격량이 한곳에 몰리지 않고,각 거점이 자기 몫만 걸러 내면 된다. 원본 주소가 드러나면 이 방어를 돌아서 온다.공격 트래픽정상 요청
DDoS 흡수. Anycast로 같은 주소를 전 세계 거점이 함께 받으면 공격량이 쪼개지고, 각 거점이 걸러 낸 정상 요청만 원본 서버로 간다.

볼륨형 공격 중에는 출발지 주소를 피해자 주소로 속여, 작은 질문에 큰 답을 돌려주는 공개 서버들이 피해자에게 답을 쏟게 만드는 반사·증폭 방식이 있다. 근본 대책은 망 운영자들이 자기 망에서 나가는 패킷의 출발지 주소를 검사해 위조된 것을 버리는 것으로, BCP 38(RFC 2827)로 정리되어 있다. 서비스 운영자가 할 일은 공격 전에 정해 둔다. 원본 서버 주소를 감추고, 보호 서비스와 연락 경로를 마련하고, 평소 트래픽 기준선을 알아 둔다. 이 준비는 CISA의 DDoS 대응 안내에 단계별로 정리되어 있다.

Wi-Fi 보안: WPA2에서 WPA3로

무선은 전파가 벽 밖까지 나가므로 근처의 누구든 신호를 받을 수 있다. 그래서 Wi-Fi 보안은 누가 접속할 수 있는지(인증)와 오가는 프레임을 암호화하는 일을 함께 맡는다. 규격의 인증 프로그램은 Wi-Fi Alliance가 운영한다.

방식상태요점
WEP쓰면 안 된다암호 설계 결함으로 짧은 시간에 키가 드러난다
WPA (TKIP)쓰면 안 된다WEP 장비에서 돌리려고 만든 임시방편이다
WPA2 (AES-CCMP)아직 널리 쓰인다암호화는 튼튼하지만, Personal 모드는 비밀번호가 약하면 오프라인 대입에 뚫린다
WPA3권장Personal은 SAE로 오프라인 대입을 막고, Enterprise는 더 강한 암호 묶음을 고를 수 있다
WPA2-Personal은 엿들은 핸드셰이크로 오프라인 비밀번호 대입이 가능하고, WPA3-Personal의 SAE는 추측마다 AP와 직접 주고받아야 해 온라인 추측만 가능하다WPA2-Personal (사전 공유 키, PSK)기기AP(공유기)4-way 핸드셰이크오프라인 대입 가능엿들은 핸드셰이크 기록만 있으면 비밀번호 후보를 혼자서 끝없이 맞춰 볼 수 있다.WPA3-Personal (SAE)기기AP(공유기)SAE: 서로 증명 + 새 키온라인 추측만 가능엿들은 기록으로는 맞춰 볼 수 없다. 추측할 때마다 AP와 직접 주고받아야 한다.세션마다 새 키라, 나중에 비밀번호가 새도 지난 통신은 풀리지 않는다.약한 비밀번호가 빨리 뚫린다추측 속도를 AP가 묶어 둔다
WPA2-Personal과 WPA3-Personal. WPA2에서는 엿들은 접속 과정이 비밀번호를 맞춰 보는 재료가 되지만, WPA3의 SAE는 그런 재료를 남기지 않는다.

SAE(Simultaneous Authentication of Equals)는 비밀번호를 바탕으로 한 키 교환으로, 양쪽이 같은 비밀번호를 안다는 것을 비밀번호 자체를 흘리지 않고 서로 증명한다. 집과 사무실에서 할 일은 단순하다. 공유기와 기기가 지원하면 WPA3(아니면 WPA2-AES)를 고르고, 긴 비밀번호를 쓰고, 공유기 펌웨어를 갱신하고, 쓰지 않는 WPS는 끈다.

카페의 비밀번호 없는 공개 Wi-Fi는 원래 전혀 암호화되지 않았다. Wi-Fi Enhanced Open은 RFC 8110의 OWE로 비밀번호 없이도 기기마다 따로 암호화한다. 다만 상대 AP가 진짜인지는 증명하지 않으므로, 공용 망에서는 여전히 HTTPS와 위의 HSTS가 실제 내용을 지킨다.

더 읽을거리