[정보보안] spoofing(스푸핑) & sniffing(스니핑) & Dos(서비스 거부)

[정보보안] spoofing(스푸핑) & sniffing(스니핑) & Dos(서비스 거부)

스푸핑

spoof은 '속이다, 사기치다'의 뜻으로, 인터넷 내에서 여러가지 의미로 사용되며,

외부의 악의적 네트워크 침입자가 웹사이트를 구성해 사용자들의 방문을 유도,
인터넷 프로토콜인 TCP/IP의 구조적 결함을 이용해 사용자의 시스템 권한을 획득한 뒤,
정보를 빼가는 해킹 수법을 말한다.

유명업체의 명의로 스팸 메일을 발송하거나 위조 사이트로 접속을 유도하는 등의 기술이 있다.


IP 스푸핑 : 로그인하려는 컴퓨터가 허가받은 IP를 도용해 로그인을 하는 기법


ARP 스푸핑 : MAC주소를 속여 랜에서의 통신 흐름을 왜곡시키는 기법


예를들어, 서버의 MAC 주소가 AA, 클라이언트가 BB, 공격자가 CC라고 가정할 때,

공격자는 서버와 클라이언트에게 가짜 MAC주소인 CC를 알려주게 되는데,

서버와 클라이언트는 통신 대상을 CC로 알기 때문에, 공격자에게 패킷을 보내게 되고
공격자는 서버가 클라이언트에게 보내고자 했던 패킷을 클라이언트에게 전달,
클라이언트가 서버에게 보내고자 했던 패킷은 서버에게 전달함으로써,
공격자는 사용자 몰래 모니터로 편안히 패킷의 흐름을 볼 수 있게 되는것이다.

앞서 언급된 것처럼 IP 주소를 속이면 IP스푸핑,
DNS를 속이면 DNS스푸핑이라고 하며,
DNS스푸핑 공격을 통해 개인정보를 수집하면 그것을 파밍(Pharming)이라고 한다.

스푸핑의 한 예 : ARP Spoofing

ARP Redirect와 큰 차이는 없지만, 공격자가 공격대상의 MAC주소를 알고 있고, 단순히 도청만 하는 것이 아니라 거짓 패킷을 보낸다는 특징을 가지고 있다.
따라서 호스트 대 호스트 공격이 가능하다.



스니핑


sniffing이란 단어의 사전적 의미는 '코를 킁킁거리다', '냄새를 맡다' 등의 뜻이 있습니다.
사전적인 의미와 같이 해킹 기법으로서 스니핑은 네트워크 상에서 자신이 아닌 다른 상대방들의 패킷 교환을 엿듣는 것을 의미합니다.
간단히 말하여 네트워크 트래픽을 도청하는 과정을 스니핑이라고 할 수 있습니다.
이런 스니핑을 할 수 잇도록 하는 도구를 스니퍼(Sniffer)라고 하며 스니퍼를 설치하는 과정은 전화기 도청 장치를 설치하는 과정에 비유될 수 있습니다.
스니핑은 네트워크상에서 전송자와 수신자 사이에 주고 받는 데이터를 패킷 수준으로 분석하여 계정, 비밀번호, 프로토콜, 시스템 정보 등 유의미한 내용을 알아내기 위한 해킹기법입니다.
스니핑을 이해하기 위해 먼저 이더넷 로컬 네트워크의 동작원리를 이해해야합니다.
이더넷 로컬 네트워크 내의 모든 호스트는 동일한 선으로 공유하도록 설계되었으며, 호스트를 식별하기 위해 물리적인 MAC 주소를 사용합니다.
따라서 전송하는 주체는 자신의 MAC주소와 수신 주체의 MAC주소, 그리고 데이터를 포함하여 전송하게 되고, 로컬 네트워크 내의 모든 호스트는 수신 MAC주소를 확인하여 본인이 아닐 경우 해당 패킷을 폐기하는 방식으로 동작합니다.
그러나 로컬 네트워크를 동작하게 만드는 하드웨어 장치인 랜카드의 모드를 Promiscuous로 변경하게 되면 모든 패킷을 버리지 않기 때문에 다른 호스트들간의 통신 내용 또한 수신할 수 있는 것입니다.

스니핑의 예 : ARP Redirect

기본적으로 2계층 공격, 랜에서 공격

랜의 모든 호스트 대 라우터

라우터의 MAC주소를 알아내어, 공격대상에게 자신의 MAC 주소가 다루터인 것처럼 속인 후, 브로드캐스트를 주기적으로 하여 패킷을 스니핑하는 공격방법이다.
2계층 스위칭 환경에서 실시되며, 브로드캐스트를 이용하기 때문에 모든 호스트를 대상으로 한다.


ICMP Redirect

스니핑 공격!!

보통의 네트워크는 라우터나 게이트웨이가 하나이지만, 하나의 라우터로 감당하기 어려울 때는 라우터나 게이트웨이를 2개 이상 운영하여 로드밸런싱을 구현하게 된다.

이 때, 로드밸런싱 방법의 하나로 ICMP Redirect를 사용할 수 있는데, ICMP Redirect 공격은 이러한 경우를 강제적으로 만들어 공격하는 방법이다.
정상적인 ICMP Redirect의 경우에는

  1. 외부 웹서버에 접속하기 위해 라우팅 테이블을 확인
  2. 라우터A에 패킷을 전송
  3. 라우터A는 패킷을 확인 후, 효율적 처리를 위해 라우터B에 패킷을 전송하도록 호스트에게 ICMP Redirect 패킷을 전송
  4. ICMP Redirect 패킷을 수신한 호스트는 라우팅 테이블을 갱신
  5. 라우터B에 패킷 전송
의 절차를 거치며, ICMP Redirect 공격은 이것을 악용하여 공격자가 네트워크에 존재하는 또 다른 라우터라고 속여 공격한다.

ARP Spoofing과의 차이로 ARP Spoofing은 모든 트래픽에 대한 Redirect를 가능하게 하지만, ICMP Redirect는 특정한 목적지 주소를 가진 패킷만을 Redirect 하게 된다는 특징을 가지고 있다.


DOS(Denial of Service, 서비스 거부)

  • 정보 시스템의 데이터나 자원을 적당한 사용자가 적절한 대기시간 내 사용을 방해하는 행위
  • 컴퓨터에 침입해서 자료를 삭제하거나, 훔치는것이 아니라 당한 신호를 받지 못하도록 방해를 하는 작용
  • Dos의 예
    • Ping of Death
    • SYN Flooading
    • DDos 공격
    • smurf attack 공격
    • DUP Flooading
    • Targa, Bonk, Boink
한곳에서 계속 데이터(트래픽)를 보내면 다른곳에서는 서비스를 받을 수 없음



 출처

댓글

이 블로그의 인기 게시물

[Python] # -*- coding: utf-8 -*-를 쓰는 이유

[소프트웨어공학] NS(Nassi-Schneiderman) 차트

[컴퓨터네트워크] Telnet이란?