IP 스푸핑, MAC 스푸핑, ARP 스푸핑

IP 스푸핑(IP Spoofing)

IP 스푸핑은 네트워크 공격 기법 중 하나로, 공격자가 자신의 IP 주소를 위조하여 다른 컴퓨터나 네트워크 장치를 속이는 행위를 말합니다. 이 기법은 주로 권한 없는 접근, 데이터 도청, 서비스 거부(DoS) 공격 등을 수행하기 위해 사용됩니다.

작동 원리

IP 스푸핑은 IP 패킷 헤더에 있는 발신자 IP 주소(SRC IP)를 위조하여 공격 대상이 이를 신뢰하도록 만드는 방식으로 작동합니다. IP 프로토콜은 발신자 주소를 검증하지 않기 때문에 이러한 위조가 가능합니다. 공격자는 자신이 실제로 소유하지 않은 IP 주소를 사용해 합법적인 사용자나 장치로 가장할 수 있습니다.

주요 유형

  1. Blind Spoofing (블라인드 스푸핑): 공격자가 응답 패킷을 받을 수 없는 상태에서, 예상되는 패킷 구조를 기반으로 공격을 시도하는 방법입니다. 보통 시스템의 순차적인 패킷 번호를 예측해 패킷을 위조합니다.

  2. Non-Blind Spoofing (논블라인드 스푸핑): 공격자가 목표 시스템과 같은 네트워크에 존재하며, 전송된 패킷을 직접 관찰할 수 있는 상황에서 실행됩니다. 이를 통해 더 정교한 공격이 가능합니다.

활용 사례

  1. DDoS(분산 서비스 거부) 공격: 다수의 IP를 스푸핑하여 공격 대상을 과도한 트래픽으로 마비시키는 데 사용됩니다.

  2. Man-in-the-Middle (중간자 공격): 스푸핑을 통해 네트워크 상의 데이터를 가로채거나 조작합니다.

  3. 권한 상승: 신뢰하는 IP로 가장하여 네트워크 자원에 무단으로 접근합니다.

방어 방법

  1. 패킷 필터링: 네트워크 경계에서 유입되는 패킷의 출발지 주소를 확인하여, 내부 네트워크에 적합하지 않은 패킷을 차단합니다.

  2. 역방향 경로 검증(RPF): 라우터에서 패킷의 발신 경로를 검사하여 위조된 IP 주소를 필터링합니다.

  3. 암호화와 인증: VPN이나 SSL과 같은 암호화된 통신을 통해 데이터 무결성과 인증을 강화합니다.

  4. IDS/IPS 시스템 활용: 침입 탐지/방지 시스템을 사용하여 스푸핑과 같은 비정상적인 트래픽을 감지하고 차단합니다.

MAC 스푸핑(MAC Spoofing)

MAC 스푸핑은 공격자가 네트워크 인터페이스 카드(NIC)의 물리적 주소인 MAC 주소(Media Access Control Address)를 위조하여 네트워크 상의 다른 장치로 가장하는 행위를 말합니다. MAC 주소는 일반적으로 네트워크 하드웨어에 고유하게 부여되지만, 소프트웨어적으로 변경이 가능하다는 점을 악용한 공격 기법입니다.

MAC 스푸핑의 원리

MAC 스푸핑은 주로 다음과 같은 방식으로 이루어집니다:

  1. MAC 주소 위조: 운영 체제나 네트워크 장치 설정에서 제공하는 기능을 이용하여 NIC의 MAC 주소를 원하는 값으로 변경합니다.
  2. 가로채기 또는 가장: 네트워크에서 특정 MAC 주소를 사용 중인 장치로 가장하거나, 통신 패킷을 가로채기 위해 위조된 MAC 주소를 사용합니다.

MAC 스푸핑의 주요 목적

  1. 네트워크 액세스 권한 획득: 특정 MAC 주소만 허용하는 네트워크(예: MAC 주소 기반 필터링을 사용하는 Wi-Fi 네트워크)에 접근하려는 시도에 사용됩니다.

  2. Man-in-the-Middle 공격: 위조된 MAC 주소를 통해 통신 흐름을 가로채고, 데이터를 도청하거나 수정합니다.

  3. IP 충돌 유발: 네트워크 내 다른 장치와 동일한 MAC 주소를 사용하여 IP 충돌이나 네트워크 혼란을 일으킵니다.

  4. 사용자 신분 숨기기: 추적을 피하기 위해 공격자의 실제 MAC 주소를 감추는 데 사용됩니다.

MAC 스푸핑의 활용 사례

  1. 공공 Wi-Fi 해킹: 등록된 MAC 주소만 허용하는 네트워크에서 다른 사용자로 가장하여 인터넷에 접근합니다.
  2. ARP 스푸핑과 결합: ARP(Address Resolution Protocol) 테이블을 조작하여 네트워크 트래픽을 특정 장치로 유도하는 공격에 사용됩니다.
  3. 보안 우회: 조직 내부 네트워크에서 MAC 주소 기반 접근 제어를 우회하기 위해 사용됩니다.

MAC 스푸핑 방어 방법

  1. 포트 보안(Port Security): 네트워크 스위치에서 각 포트에 허용된 MAC 주소를 제한하여 위조된 MAC 주소를 차단합니다.

  2. 동적 ARP 검사(Dynamic ARP Inspection, DAI): 스위치에서 ARP 요청과 응답을 검증하여 위조된 MAC 주소를 탐지하고 차단합니다.

  3. 네트워크 액세스 제어(NAC): 인증된 장치만 네트워크에 연결되도록 보안 정책을 설정합니다.

  4. 침입 탐지 시스템(IDS) 및 침입 방지 시스템(IPS): 비정상적인 MAC 주소 변경이나 충돌을 실시간으로 탐지하고 대응합니다.

  5. 로그 모니터링: 네트워크 장치 로그를 주기적으로 확인하여 MAC 주소 위조 시도를 탐지합니다.

ARP 스푸핑(ARP Spoofing)

ARP 스푸핑은 네트워크 공격 기법 중 하나로, ARP(Address Resolution Protocol)를 악용해 공격자가 네트워크 내에서 데이터 패킷을 가로채거나 조작하는 방식입니다. 이 공격은 일반적으로 로컬 네트워크(LAN)에서 발생하며, ARP의 신뢰 구조를 악용하여 장치 간의 통신을 가로채거나 변경합니다.

ARP 스푸핑의 작동 원리

  1. ARP의 기본 작동:

    • ARP는 IP 주소를 MAC 주소로 변환하기 위해 사용됩니다.
    • 네트워크 장치는 ARP 테이블에 IP-MAC 매핑 정보를 저장합니다.
    • 장치가 특정 IP 주소로 패킷을 전송하려면 해당 IP의 MAC 주소를 확인해야 하며, 이를 ARP 요청/응답을 통해 수행합니다.
  2. 스푸핑 과정:

    • 공격자가 네트워크에 접속한 후, ARP 응답 패킷을 위조하여 자신을 게이트웨이 또는 타깃 장치로 가장합니다.
    • 예를 들어, 공격자는 자신의 MAC 주소를 네트워크 게이트웨이의 MAC 주소로 위조하여 타깃 장치가 데이터를 공격자에게 전송하도록 만듭니다.
  3. 결과:

    • 타깃 장치는 가짜 ARP 응답을 신뢰해 공격자의 MAC 주소를 저장하며, 이후 데이터를 공격자에게 전달하게 됩니다.
    • 이로 인해 공격자는 데이터 패킷을 가로채거나 변조할 수 있습니다.

ARP 스푸핑의 주요 목표

  1. Man-in-the-Middle (중간자 공격): 네트워크 트래픽을 가로채고, 이를 분석하거나 조작합니다.

  2. 데이터 도청: 민감한 정보를 포함한 데이터(예: 로그인 정보, 비밀번호 등)를 가로채는 데 사용됩니다.

  3. DoS(서비스 거부) 공격: ARP 테이블을 지속적으로 혼란시키거나, 트래픽을 차단하여 네트워크 연결을 마비시킵니다.

  4. 네트워크 탐색 및 공격 준비: 네트워크 내 다른 장치들의 IP와 MAC 주소 정보를 수집하기 위해 사용됩니다.

ARP 스푸핑의 탐지 및 방어 방법

  1. 정적 ARP 테이블 설정:

    • ARP 테이블에 특정 IP-MAC 매핑 정보를 수동으로 설정하여 변경을 방지합니다.
    • 그러나 이 방식은 대규모 네트워크에서는 관리가 어렵습니다.
  2. ARP 검사(DAI, Dynamic ARP Inspection):

    • 네트워크 스위치에서 ARP 요청 및 응답 패킷을 모니터링하여 비정상적인 패킷을 차단합니다.
  3. 암호화된 통신 사용:

    • ARP 스푸핑으로 민감한 데이터를 탈취하지 못하도록 SSL, TLS, VPN 등 암호화된 통신 프로토콜을 활용합니다.
  4. 침입 탐지 시스템(IDS) 및 방지 시스템(IPS):

    • 네트워크에서 ARP 관련 비정상적인 활동을 감지하고 차단합니다.
  5. 네트워크 세그멘테이션:

    • 네트워크를 세분화하여 공격 범위를 줄이고, ARP 스푸핑의 영향을 제한합니다.
  6. ARPWatch와 같은 툴 사용:

    • ARP 테이블 변화를 실시간으로 모니터링하여 비정상적인 MAC-IP 매핑을 감지합니다.
같은 카테고리의 다른 글
Ubuntu 18.04 Server / Nginx, PHP, MariaDB 설치하고 설정하기

Ubuntu 18.04 Server / Nginx, PHP, MariaDB 설치하고 설정하기

Nginx 설치 Nginx를 설치합니다. # apt install nginx 만약 방화벽을 사용하고 있다면 포트를 열어줍니다. # ufw allow 'Nginx Full' 서버 주소로 접속했을 때 다음과 같이 나오면 제대로 된 것입니다. 시작, 정지 등 Nginx를 시작합니다. # systemctl start nginx Nginx를 멈춥니다. # systemctl stop nginx Nginx를 재시작합니다. # systemctl restart nginx Nginx를 다시 로드합니다. # systemctl reload nginx Nginx를 설치하면 부팅 시 자동으로 시작하게 설정됩니다. 만약 자동 ...

워드프레스 / 플러그인 / 자동 업데이트 활성화 비활성화하는 방법

워드프레스 / 플러그인 / 자동 업데이트 활성화 비활성화하는 방법

워드프레스 플러그인에는 자동 업데이트 기능이 있다. 새 버전이 나오면 업데이트를 하고 관리자에게 메일을 보내준다. 커스터마이징 없이 그대로 사용하고 있다면 큰 문제가 없으나, 무언가 수정을 하거나 덧붙인 게 있다면 제대로 작동하지 않을 수 있다. 따라서 업데이트를 해도 문제가 없는지 테스트를 해보고 진행하는 것이 좋다. 그러기 위해서는 일단 자동 업데이트를 꺼야 한다. 플러그인 목록에 가면 ...

DP(DisplayPort) / 버전별 기능 비교

DisplayPort는 고화질 영상과 오디오를 전송하는 데 사용되는 디지털 디스플레이 인터페이스입니다. 다양한 버전의 DisplayPort가 있으며, 각 버전은 더 높은 해상도와 대역폭, 추가 기능을 제공합니다. DisplayPort 1.0 / 1.1 출시 : 2006년 (1.0), 2007년 (1.1) 최대 해상도 및 주사율 : 2560x1600 @ 60Hz 대역폭 : 8.64 Gbps (전송 속도) 기능 : 기본적인 영상과 오디오 전송 지원, 2미터의 ...

당구 / 시스템 / 일출일몰 시스템

당구 / 시스템 / 일출일몰 시스템

비껴치기로 3쿠션을 칠 때 사용하는 시스템이다. 공이 배치에 따라 회전을 조절하는 것으로, 당점의 변화를 이으면 해가 뜨고 지는 것과 비슷하다 하여 일출일몰 시스템이라 부른다. 파란색이 수구 포인트, 주황색이 1쿠션 포인트, 초록색이 3쿠션 포인트이다. 포인트들을 다 더하여 당점을 정한다. 수구 포인트 + 1쿠션 포인트 + 3쿠션 포인트 = 팁 수 아래의 경우 2팁으로 친다. ...

버추얼박스 / 윈도우 10에서 가상 머신 만들 때 멈추는 문제 해결하는 방법

버추얼박스 / 윈도우 10에서 가상 머신 만들 때 멈추는 문제 해결하는 방법

버추얼박스로 가상 머신을 만들 때, 환경에 따라 이런 저런 문제가 발생할 수 있습니다. 이번에 생긴 문제는 아주 근본적인 문제, 가상 머신에 OS를 설치할 수 없는 것이었습니다. 윈도우 호스트에 Ubuntu 게스트를 만들려고 했는데, 아래와 같은 화면에서 멈춰서 아무 것도 할 수 없었습니다. 원인은 윈도우에 포함된 가상화 관련 기능때문이었습니다. 안드로이드 앱 개발을 위해서 ...

크롬 / 홈 버튼 설정 및 활용 방법

크롬 / 홈 버튼 설정 및 활용 방법

크롬(Chrome) 브라우저의 홈 버튼(Home button)은 사용자가 설정한 홈 페이지로 빠르게 이동할 수 있게 해주는 기능입니다. 기본적으로 크롬 브라우저에는 홈 버튼이 표시되지 않지만, 설정을 통해 활성화할 수 있습니다. 홈 버튼을 설정하고 사용하는 방법은 다음과 같습니다. 홈 버튼 활성화 방법 크롬 설정 페이지 열기 크롬 브라우저를 열고 오른쪽 상단의 세 개의 점(메뉴 버튼)을 클릭합니다. 을 선택합니다. 홈 ...

포토샵(Photoshop) 대체 프로그램 7가지

Photoshop은 강력한 이미지 편집 도구이지만, 고가의 가격과 높은 시스템 요구사항으로 인해 많은 사용자가 대체 프로그램을 찾고 있다. 다음은 다양한 기능을 제공하면서도 무료 또는 저렴한 가격으로 이용할 수 있는 Photoshop 대체 프로그램이다. 1. GIMP (GNU Image Manipulation Program) 특징 : 무료 오픈 소스 소프트웨어로, Photoshop과 유사한 기능을 제공한다. 레이어, 필터, 브러시 및 다양한 ...

위키(Wiki) / 역사, 특징, 장점, 단점 및 사용 사례 분석

위키(Wiki)는 다수의 사용자들이 협력하여 콘텐츠를 작성하고 편집할 수 있는 웹사이트의 한 형태입니다. 위키는 하와이 말로 "빠르다"는 뜻을 가진 "위키위키(wikiwiki)"에서 유래되었으며, 그 특성상 빠르고 유연하게 정보를 추가하고 수정할 수 있습니다. 이러한 특성 덕분에 위키는 정보 공유와 협업을 위해 널리 사용되고 있습니다. 역사 위키의 시작은 1995년으로 거슬러 올라갑니다. 워드 커닝햄(Ward Cunningham)이 최초의 위키인 "위키위키웹(WikiWikiWeb)"을 ...

IEEE 1394VT EX / 비디오 테이프를 파일로 변환할 때 필요한 카드

IEEE 1394VT EX / 비디오 테이프를 파일로 변환할 때 필요한 카드

캠코더가 있습니다. SONY Digital Handycam. 6mm 테이프를 넣어서 녹화를 하는 제품입니다. 메모리카드를 사용할 수도 있는, 한때 고급 기종이었으나, 지금은... 이것으로 찍은 테이프가 몇 개 있는데, 그동안 캠코더와 TV를 연결해서 봤었습니다. 보는 데는 문제 없지만, 보고 싶은 곳 찾기도 힘들고, 다른 사람에게 전달하기도 힘들고... 그래서 파일로 변환해보기로 했습니다. 화살표가 가리키는 곳을 이용해서 컴퓨터와 ...

Ubuntu 20.04 Server / Samba / 설치하고 공유 폴더 만드는 방법

Ubuntu 20.04 Server / Samba / 설치하고 공유 폴더 만드는 방법

Samba를 이용하여 Ubuntu Server에 공유 폴더를 만들고, Windows 클라이언트에서 접속하는 방법을 알아본다. Samba 설치 Samba를 설치한다. 설치하면 바로 시작하고, 재부팅을 해도 자동으로 시작한다. apt install samba 공유할 폴더를 만들고 권한을 777로 설정한다. mkdir /sharedfolder chmod 777 /sharedfolder 설정 파일은 /etc/samba/smb.conf이다. 텍스트 에디터로 열고 제일 밑에 다음 코드를 추가한다. 폴더 이름은 sharedfolder이지만, 네트워크에서는 Shared Folder로 보인다. comment = ...