스니핑·ARP·DNS 스푸핑·세션 탈취: 공격 지점별 방어 방법

1장 개념과 보호 목표#

네트워크 공격은 패킷을 읽는 도청, 통신 상대나 주소를 속이는 스푸핑, 인증된 세션을 가로채는 탈취 등으로 구분할 수 있습니다. 공격 지점이 다르므로 암호화, 주소 검증, 세션 관리와 접근통제를 조합해야 합니다.


2장 원리와 구분#

ARP 스푸핑은 로컬 네트워크에서 IP와 MAC 주소 대응을 속이는 방식입니다. DNS 스푸핑은 이름 해석 결과를 바꾸며 IP 스푸핑은 출발지 주소를 위조합니다. 세션 탈취는 토큰 유출이나 세션 관리 오류로 발생할 수 있습니다. 스위치의 MAC 테이블 소진 공격에 대한 반응은 장비 설정에 따라 달라지므로 항상 허브처럼 동작한다고 단정하면 안 됩니다.


3장 비교와 판단 기준#

공격 영향 지점 보완 통제
스니핑 전송 내용 관측 TLS·신뢰 검증
ARP 스푸핑 로컬 주소 매핑 DAI·DHCP snooping·분리
DNS 스푸핑 이름 해석 결과 DNSSEC·리졸버 보호
세션 탈취 인증 토큰·세션 안전한 쿠키·회수·재인증

4장 도청·위조·탈취는 같은 문제가 아니다#

스니핑은 관측 가능한 통신 내용을 읽는 행위, 스푸핑은 주소나 상대에 관한 정보를 속이는 행위, 세션 탈취는 인증 후의 접근 근거를 가져가는 행위로 구분할 수 있습니다. 각 공격은 계층과 조건이 다르며 TLS 하나나 장비 하나로 모든 경로가 해결되지는 않습니다.

flowchart TB
 N["통신과 인증의 경계"] --> L["링크: ARP 대응"]
 N --> D["이름 해석: DNS 데이터"]
 N --> T["전송: TLS와 상대 검증"]
 N --> S["세션: 토큰·쿠키·회수"]

5장 스위치 환경에서도 가시성을 확인한다#

스위치가 있다는 사실만으로 모든 도청 가능성이 사라지는 것은 아닙니다. 미러링·잘못된 구성·공격자의 위치·단말 침해가 가시성에 영향을 줍니다. MAC 테이블 소진에 대한 반응도 장비 설정마다 달라 무조건 허브처럼 바뀐다고 단정하지 않습니다.

데이터의 기밀성은 전송 암호화와 상대 검증을 기본으로 검토합니다. 암호화해도 메타데이터나 접속 패턴이 관측될 수 있는 범위와 단말의 평문 보호를 구분합니다.


6장 ARP의 IP와 MAC 대응#

같은 링크에서 IP 주소에 대응하는 MAC 주소를 찾는 기능입니다. 공격자가 잘못된 대응을 전달해 통신이 자신을 거치게 하거나 장애를 유발하는 상황을 검토합니다. 다른 네트워크 계층의 라우팅과 같은 역할로 설명하지 않습니다.

스위치의 DAI·DHCP snooping 같은 보호는 신뢰 포트·바인딩·고정 IP 예외 등 실제 조건에 맞춰야 합니다. 기능 이름을 켜 두고 예외가 전체 보호를 우회하는 상황을 놓치지 않습니다.


7장 주소 검증과 네트워크 분리#

관리 단말·업무 서버·방문자·IoT의 네트워크를 필요한 범위로 분리하면 같은 링크의 영향 범위를 줄일 수 있습니다. 분리 뒤에도 관리 포트·공유 경로·주소 설정의 실제 접근을 시험합니다. VLAN 이름만 다르다고 필요한 차단이 자동으로 완성되는 것은 아닙니다.

정상 바인딩의 확보
신뢰할 포트와 예외의 정의
잘못된 주소 대응의 검증
장비·고정 IP·이동 상황의 시험

8장 DNS 스푸핑의 공격 지점#

단말 설정·리졸버·응답·캐시 등 어디에서 잘못된 이름 해석이 생기는지 조사합니다. 이름이 다른 주소로 바뀌었다고 곧바로 모든 HTTPS의 상대 인증이 통과하는 것은 아닙니다. TLS 이름·인증서 검증이 추가 경계를 제공합니다.

리졸버의 접근·업데이트·관리 계정을 보호하고 원하지 않는 DNS 경로와 단말 설정의 변조를 조사합니다. DNS 데이터와 웹 콘텐츠의 안전성도 별도로 판단합니다.


9장 DNSSEC과 암호화 DNS#

DNSSEC은 데이터의 인증·검증 경로를 다루며 질의 내용을 숨기는 기능과 다릅니다. 암호화된 전송은 리졸버까지의 경로 보호에 관련되고 리졸버 자체의 신뢰는 남습니다. 두 기능을 같은 보호로 취급하지 않습니다.

flowchart LR
 Q["DNS 질의"] --> E["전송 경로의 보호"]
 E --> R["리졸버"]
 R --> S["DNSSEC 데이터 검증"]
 S --> A["주소 결과"]
 A --> T["웹 연결의 별도 TLS 상대 검증"]

10장 IP 출발지 위조와 반사#

출발지 주소를 위조하는 공격은 해당 경로에서 검증할 수 있는 위치와 프로토콜의 조건을 확인해야 합니다. UDP 반사·증폭의 경우 위조된 피해자 주소로 응답이 전달될 수 있습니다. 출발지 검증과 공개 서비스의 제한을 적절한 구간에 적용합니다.

출발지 IP가 허용 목록에 있다는 사실만으로 사용자의 신원을 증명하지 않습니다. 애플리케이션 인증과 업무 인가가 계속 필요합니다.


11장 세션 토큰이 노출되는 경로#

TLS가 있어도 XSS·단말 악성코드·서버 로그·공유 URL·지원 자료에서 토큰이 새어 나갈 수 있습니다. 저장·전달·만료·회수의 경로를 그려 봅니다. 비밀번호 변경 뒤 탈취 세션이 계속 유효한지도 확인합니다.

쿠키의 Secure·HttpOnly·SameSite는 각각 다른 조건을 다룹니다. HttpOnly는 스크립트의 읽기를 제한하는 데 도움이 되지만 같은 출처의 악성 코드가 요청을 수행하는 피해까지 없애지는 않습니다.


12장 로그인 이후 세션 갱신과 회수#

인증 전후 세션 ID의 처리와 민감한 권한 변경의 갱신을 검토합니다. 오래된 세션·로그아웃·분실 기기·계정 회수의 상태를 시험합니다. 회수는 새 로그인 차단과 별도로 기존 접근 근거를 처리해야 합니다.

사건 조사할 자료 연결할 조치
잘못된 ARP 링크·장비·바인딩 주소 검증·분리
이름 해석 변조 단말·DNS·캐시 경로·리졸버 보호
세션 노출 토큰·로그·기기 회수·재인증·노출 경로 수정

13장 공격 지점별로 검증 결과를 남긴다#

실제 허가된 환경에서 링크 주소·이름 해석·TLS 검증·세션 회수를 각각 확인합니다. 한 시험이 성공했다고 다른 계층의 보호도 충족했다고 기록하지 않습니다. 정상 업무의 예외와 공격자의 우회 경로를 함께 조사해야 운영 가능한 대응이 됩니다.


14장 적용 사례와 운영 방법#

기업망에서는 DHCP snooping과 DAI 같은 링크 계층 보호 기능의 조건을 확인하고, 웹 서비스는 HTTPS·인증서 검증과 쿠키의 Secure·HttpOnly·SameSite를 적용합니다. DNSSEC은 DNS 데이터의 인증에 도움을 주지만 DNS 질의 내용을 숨기는 암호화와는 역할이 다릅니다.


15장 공격의 계층을 찾으면 방어 위치가 보인다#

ARP는 같은 링크에서 IP 주소의 대응 MAC 주소를 찾는 기능이고 DNS는 이름을 주소 등으로 해석합니다. IP 출발지 위조와 인증 세션 탈취는 또 다른 경계입니다. 모든 공격을 스푸핑이라는 이름 하나로 묶으면 방화벽·TLS·쿠키 설정 중 무엇을 점검할지 모호해집니다.

DHCP snooping과 DAI는 스위치의 신뢰 포트와 바인딩 정보를 바탕으로 작동하는 구성을 검토해야 합니다. 고정 IP·예외 장비·네트워크 이동에 대한 정책이 빠지면 정상 통신이 막히거나 우회 경로가 남을 수 있습니다. 장비 기능을 켠 사실보다 대상 구간의 실제 검증이 중요합니다.


16장 DNS 데이터 인증과 질의 암호화는 별개다#

DNSSEC은 검증 경로를 통해 DNS 데이터의 진위를 확인하는 기술이며 질의 내용을 숨기는 기술이 아닙니다. 암호화된 DNS 전송도 리졸버나 단말을 무조건 신뢰할 이유가 되지는 않습니다. 웹 접속에서는 별도로 TLS 인증서와 호스트 이름을 검증합니다.

세션은 TLS만으로 보호가 끝나지 않습니다. 로그인 후 세션 ID 갱신, 만료·회수, 쿠키 속성, URL·로그 노출과 XSS를 점검합니다. 탈취가 의심되면 비밀번호 변경뿐 아니라 활성 세션을 회수해야 기존 토큰으로 접근하는 경로를 줄일 수 있습니다.


17장 적용 전 확인할 사항#

  • 공격이 발생하는 네트워크·세션 경계를 구분한다
  • 장비 기능과 실제 설정을 테스트한다
  • 토큰 회수·재인증·로그 분석 절차를 마련한다

18장 자주 묻는 질문#

HTTPS면 세션 탈취를 완전히 막을 수 있나요?#

전송 도청은 줄일 수 있지만 XSS, 단말 악성코드와 서버 로그 유출로 토큰이 노출될 수 있습니다. 저장·전달·만료·회수까지 보호해야 합니다.

DNSSEC을 적용하면 악성 사이트 주소도 모두 막히나요?#

DNS 데이터의 인증과 사이트 내용의 안전성은 다릅니다. 공격자가 자신의 도메인을 정상적으로 운영하는 경우도 별도 판단이 필요합니다.

쿠키를 HttpOnly로 만들면 세션 회수는 필요 없나요?#

다른 경로의 유출과 단말·서버 침해가 남습니다. 만료와 회수는 세션 수명주기의 별도 통제입니다.


함께 읽기#