728x90

빅데이터의 3대요소 (3V)

  • 크기(Volume) - 데이터의 양을 표현, 데이터가 어떤 형태로 이루어지고 있냐로 포함한다. 
  • 속도(Velocity) - 데이터가 수집되고 분석되어야 하는 시간 자체를 말한다. 
  • 다양성(Variety) - 어떤 타입의 데이터가 수집되어야 하느냐이다. Ex) xml, json 
  • value(가치창출) - 빅데이터를 분석해서 무언가 가치를 창출하는게 중요하다.

세 개의 축으로 어느 한쪽이든 결합해서 확장하게 되면은 빅데이터 기술이 필요하다. 예를들면 데이터가 PB 수준이면서 Batch성이면 대표적인 빅데이터 플랫폼 하둡(Hadoop)이 목표로하고 있는 데이터처리 방법이다. 그런데 데이터 볼륨이 커지면서 Real Time일 수 있다. 그러면 데이터가 끊임없이 들어오는데 그거를 다 저장하면 너무 많은거고 어느정도 구간을 정해서 구간내에서 결정을 하는 경우도 있다. 그런것들은 보통 스트링 프로세스 라고 한다. Velocity가 얼마냐에 따라서 데이터처리 기술이 많이 달라진다.

Variety 측면은 데이터의 다양성인데, 예를들어 데이터가 아무리 다양해도 볼륨이 작으면 큰 빅데이터 기술이 필요하지 않을 수 있겠다. 데이터의 복잡도를 넓히는 측면이다.

 

volume 많기 때문에 데이터를 다루기 어려워지고, 또한 볼륨이 크면서 variety 하기 때문에 데이터의 종류가 테이블 형태로 표현되는 정형데이터 뿐만 아니라 다양한 형태의 데이터가 들어올 있다.

 

 

크기(volume)


확장 가능한 방식으로 데이터를 저장하고 분석하는 분산컴퓨팅 기법으로 접근이 필요하다. 왜냐하면 기존의 데이터 웨어하우스는 하나의 컴퓨터로 돌아가는 커다란 데이터베이스였는데 이렇게 하면 싱글 노드가 처리할 수 있는 데이터베이스가 한계가 있기 때문에 확장가능하지 않다.  그래서 최근에는 parralel database (병렬 데이터베이스)도 나온다. 결과적으로 컴퓨터 하나에 꽂을 수 있는 하드가 제한되어있으니까 컴퓨터들을 늘리는 것으로 접근할 수 밖에 없다.

 

하나의 싱글 컴퓨터 안에 들어가기 어려운 규모가 돼야지 빅데이터라고 할 수 있다.

 

분산시스템(distributed computing) 에서는 네트워크로 연결돼있는 컴퓨터를 노드라고 표현한다.

 

 

속도(velocity)


  • 실시간 처리(Real-time Processing)
    • 디지털 데이터는 매우 빠른 속도로 생성 (교통, 금융 거래, 쇼핑, SNS )
    • 데이터의 생산, 저장, 유통, 수집, 분석의 실시간 처리가 중요
  • 장기적인 접근 (Batch Processing) 
    • 수집된 대량의 데이터를 다양한 분석 기법과 표현 기술로 분석 (데이터 마이닝, 기계 학습, 자연어리 )

 

 

다양성(variety)


    • 정형(Structured)
      • 고정된 필드에 저장되는 데이터 (: 온라인 쇼핑몰에서의 제품 주문) 
      • 존의 솔루션을 이용하여 비교적 쉽게 보관, 분석, 처리 작업을 진행할 있음 (굳이 Hadoop이나 스파크 같은 것을 필요가 없다.)
  • 반정형(Semi-Structured)
    • 고정된 필드로 저장되어 있지는 않지만, XML, HTML, JSON 같이 메타 데이터나 스키마 등을 포함하는 데이터 (데이터베이스에서 표현하는 고정된 컬럼으로 되어있는 그런 모습은 아니지만 key value형태로 어느정도 스키마를 정의할 있는 문법같은게 있는데 이것들이 반정도는 구조를 갖고있는 같은 것들이다.)
  • 비정형(Unstructured)
    • 고정된 필드에 저장되어 있지 않은 데이터
    • 동영상, 사진, 오디오 데이터, 메신저로 주고 받은 대화 내용, 스마트폰에서 기록되는 위치 정보, 유무선 전화기에서 발생하는 통화 내용
728x90

빅데이터 정의 (Big Data Definition)

  • 빅데이터는 21세기 원유
  • IT의 원유 빅데이터, 잘 정제하면 혁신 불꽃 피어나
  • 데이터를 얻는 능력, 이해하는 능력, 처리하는 능력, 가치를 뽑아내는 능력, 시각화하는 능력, 전달하는 능력은 앞으로 10년간 엄청나게 중요한 능력이다.

Data Deluge

Flood of data is coming from many sources

  • New York Stock Exchange generates 4-5 terabytes of data per day
  • Facebook
  • Google
  • Geneva 광입자 가속기

Why Big Data

  • Science
    • Data-intensive e-Science
      • ex) 광입자 가속기 - 1초당 1PB만큼의 raw 데이터가 생성된다.
  • Engineering
    • 데이터 분석하고, 장애발생 징후 패턴 분석하고 고장을 예측한다.
  • Commerce
    • Customer Data(고객 데이터) -> Insights(통찰) -> Competitive advantages(경쟁력있는 장점이 된다.)
    • ex) 넷플릭스, 유투브 <- 고객 성향을 알고 추천해주는 알고리즘을 고객의 데이터로 분석, 학습을 해서 만들어지기 때문에 예가 된다.
  • Convergence(집합)
    • Healthcare + Big Data Technology

Concepts of Big Data

  • 데이터의 규모에 초점을 맞춘 정의
    • 기존 데이터베이스 관리도구의 데이터 수집, 저장, 관리, 분석하는 역량을 넘어서는 데이터
  • 업무 수행 방식에 초점을 맞춘 정의
    • 다양한 종류의 대규모 데이터로부터 비용으로 가치를 추출하고, 데이터의 빠른 수집, 발굴, 분석을 지원하도록 고안된 차세대 기술 아키텍처 (저비용 고효율을 지원할 있는 차세대 기술 아키텍처)
728x90

서비스 거부 공격: DoS (Denial of Service)

  • 네트워크 대역, CPU, 메모리, 디스크 공간 등의 자원을 소모하여 네트워크, 시스템, 응용 서비스의 정당한 사용을 방해하는 공격 행위

DoS 공격 목표

  • 네트워크 대역
  • 시스템 자원 (resources)
  • 응용 프로그램 자원

DoS 공격은 정보 보안 요소의 가용성 (availability) 에 대한 공격이다.


공격 형태

Flooding

  • 공격 목표에 대량의 패킷을 집중적으로 전송한다.

Flooding 방법

  • Ping flooding
  • Source IP address spoofing
  • SYN flooding (spoofing)
    • Half-open connection
  • Reflector
  • Amplifier (Smurf attack)

Ping

Ping of death

  • 정상적인 ping 패킷 길이는 56바이트(ICMP 64, IP 84바이트)
  • IP 패킷의 최대 길이 65,535바이트
  • 공격자는 ping 패킷을 65,535바이트로 하고, 이것을 8바이트 로 분해하여 목표 호스트(target)에 전송하면, 이것을 재결합 하는 할 때 버퍼 오버플로우가 발생
  • 이전 시스템은 쉽게 이러한 문제가 발생했음

 

Ping flooding

  • 단순히 목표 호스트에 Ping 패킷을 집중적으로 보냄

 

Source IP address spoofing

  • 한 개의 호스트에서 공격 패킷이 날아오면 쉽게 공격을 찾아내고 방어할 수 있다.
  • 그래서 공격 패킷의 소스 IP 주소를 가짜 주소로 해서 보낸다.
    • 라우터에서 패킷을 처리할 때 IP 소스 주소의 진위 여부는 가리지 않는다.

 

반사 (reflection)

  • IP 소스 주소를 공격 대상 호스트로 하여 불특정 호스트에게 패킷을 보낸다.
    • 자신의 존재를 숨길 수 있다. (추적 방지)
    • 공격량을 증대시킬 수 있다.
  • 분산 반사 공격이라고 불리움
    • DRDoS (Distributed Reflection DoS)

 

 

증폭 (amplifier)

  • IP 브로드캐스트 주소 사용
    • IP 소스 주소를 공격 대상 호스트의 IP 주소로 한다.
    • 패킷의 수신 주소를 브로드캐스트 주소로 한다.
    • 그러면, 브로드캐스트 주소에 해당하는 모든 호스트가 공격 대상으로 응답 패킷을 보낸다.
  • Smurf 공격 (ICMP echo reply amplifier)

 

 

 

SYN flooding (spoofing)

  • 초기 대표적 DoS 공격 형태였다.
  • TCP 3-way handshake 절차 악용
    • 공격자는 SYN 패킷을 보낸다.
    • 수신 호스트는 메모리에 TCP 버퍼(스택)에 연결을 요청한 호스트 정보를 기록하고 SYN-ACK으로 응답한다. (half-connection)
    • 공격자는 소스 주소를 바꾸어 계속 SYN 패킷을 동일 호스트에 전송한다.
    • 수신 호스트는 메모리의 TCP 버퍼가 넘치면 더 이상 SYN 패킷을 처리할 수 없게 된다 (그것이 정상적인 SYN 패킷이라 하더라도).

 

'서버 > 암호' 카테고리의 다른 글

방화벽 (Firewall)  (0) 2021.08.02
Spoofing (속이기)  (0) 2021.07.29
Snooping (sniffing) – 정찰(탐색)  (0) 2021.07.29
네트워크 공격  (0) 2021.07.29
ICMP 질문 메시지(Query)  (0) 2021.07.29
728x90
  • 방화벽은 어떤 패킷이 네트워크를 통과할 수 있는지를 결정한다. - packet filtering
  • 어떤 패킷이 통과할 수 있는지의 여부는 망 보안 정책에 따라 결정된다.


방화벽 유형

원래 다음과 같은 두 가지 유형의 패킷 필터가 존재한다.

  • 패킷 필터
    • 네트워크와 수송 계층의 정보를 조사
  • Stateful 패킷 필터
    • 패킷 필터 + TCP 연결 상태를 조사

 


패킷 필터 (Packet Filter)

네트워크와 수송 계층의 헤더 정보를 사용

  • IP 소스/목적지 주소
  • IP 패킷의 Protocol Type
  • TCP/UDP의 소스/목적지 포트 번호
  • TCP Flag bits (SYN, ACK, etc.)
  • ICMP 메시지 유형(message type)
  • 네트워크 입구/출구에서의 기타 규칙

( + ) 장점 

  • 빠른 처리 속도

( - ) 단점

  • 각 패킷은 다른 패킷과 독립해서 별도로 처리된다.
  • TCP연결을볼수없다.
  • 응용데이터를볼수없다.
    • 따라서, 바이러스가 포함된 패킷이 통과할 수 있다.

 

패킷 필터링

 

Action Source IP Dest IP Source Port protocol Dest Port Flag Bits
Allow 202.30.107.0/24 Outside > 1024 TCP 80 Any
Allow Outside 202.30.107.0/24 80 TCP > 1023 ACK
Deny All All All   All All

( Access Control Lists (ACLs)에 의해 구성 )

  • 내부망의 주소: 202.30.107.0/24
  • 내부 호스트는 외부망의 웹 서버에 접속을 허용
  • 이외의 모든 트래픽은 차단

 

TCP ACK 스캔

공격자는 이와 같이 하여 방화벽을 통과할 수 있는 포트 번호를 스캔할 수 있다.

  • 공격자는 3-way handshake 없이 ACK 비트를 세팅하고 패킷을 보낸다.
  • 이것은 TCP/IP 프로토콜을 위반하는 것이다.
  • ACK 패킷은 패킷 필터를 통과한다.
    • 현재 연결 설정이 진행 중인 것으로 보여진다.
  • 이 패킷을 받은 수신 프로세스는 Reset 비트를 세팅하여 보낸다.
  • 공격자는 이와 같이 하여 방화벽을 통과할 수 있는 포트 번호를 스캔할 수 있다.


Stateful Packet Filter

패킷 필터에 연결 상태 정보를 추가한다.

TCP 연결과 flag 비트를 기억한다.

UDP 패킷도 기억할 수 있다. (e.g., DNS requests)

Action Source IP Dest IP Source Port protocol Dest Port Flag Bits 연결조사
Allow 202.30.107.0/24 Outside > 1024 TCP 80 Any  
Allow Outside 202.30.107.0/24 80 TCP > 1023 ACK O
Deny All All All   All All  

Intrusion Prevention System (IPS)

  • 원래 방화벽은 규범적인 용어가 아니라 서술적 용어, 즉, 이렇게 만들어야만 방화벽이라고 할 수 있다라는 것은 아니다.
  • 장비회사들은 원래의 패킷 필터가 사용하는 정보 이상의 정보를 사용하여 필터링하는 장비를 만들고 여러가지 이름으로 불렀다.
  • 이중 고착된 이름 중에 하나가 IPS이다.
  • IPS를 포괄적으로 정의를 해 보면,
    • 네트워크와 수송 계층 이상의 정보를 사용하여 필터링
    • 경우에 따라서는 트래픽에서의 규칙, 특성(signature)을 사용하여 필터링
      1. 이런 점에서는 IDS의 기능과 중복, 즉 패킷 필터링을 하는 IDS라고 할 수도 있다.

 

Applicartion Gateway (Proxy)

  • Application Gateway는 들어오는 (incoming) 응용 계층의 데이터를 검사한다.
  • 진입을 허용하기 전에 데이터가 안전한지 확인한다.
  • Proxy는 응용 프로토콜을 대신 동작하는 것을 의미한다.
  • 외부망으로 (에서) 접근할 때는 반드시 proxy와 먼저 통신을 해야 한다.
    • Proxy는 접근자에 대한 인증을 할 수도 있다.
    • 적법한 사용자의 패킷을 받아서 외부망의 서버에 패킷을 새로 구성해서 전달한다.
  • 여러 종류의 application proxy가 존재할 수 있다.
    • Telnet, HTTP, FTP, email application proxy 등등

( + ) 장점

  • 연결과 응용 데이터 모두를 볼 수 있다.
  • 응용 계층에서 나쁜 데이터를 걸러 낼 수도 있다. (viruses, Worm macros)

( - ) 단점

  • 느린 속도

 

예) Telnet gateway

예를 들어, 내부망의 특정 사용자만 외부망에 telnet으로 연결할 수 있도록 하고 싶다.

  • 사용자의 telnet 요청은 Application gateway와 먼저 연결
  • Gateway는 사용자를 인증
  • 허락된 사용자일 경우 외부망의 서버와 telnet 연결
  • 따라서, 두 개의 telnet 세션이 존재: gateway-to-내부 호스트, gateway-to-외부 호스트

 

 

방화벽과 심층 방어 (Defense in Depth)

  • DMZ부분은 쉽게 접근하여야 한다. 그리고 빨라야 한다.
  • 외부망에서 내부망 접근은 Telnet으로 연결이 된다. 속도가 느리다.

'서버 > 암호' 카테고리의 다른 글

네트워크 공격 : DoS (1)  (0) 2021.08.02
Spoofing (속이기)  (0) 2021.07.29
Snooping (sniffing) – 정찰(탐색)  (0) 2021.07.29
네트워크 공격  (0) 2021.07.29
ICMP 질문 메시지(Query)  (0) 2021.07.29
728x90
  • IP spoofing
  • ARP poisoning (spoofing)
    • MITM 공격
    • TCP 연결(세션) 하이재킹

 


IP spoofing

 

  • 프로토콜의 허점
    • 라우터는IP패킷의경로를결정할때목적지IP주소만을본다.즉,IP소스주 소는 상관하지 않는다.
  • 따라서, 공격자는 IP 패킷의 소스 주소를 임의로 사용할 수 있다.
    • 특정 호스트의 IP 주소를 사용(앞의 Zombie scanning의 예)
    • 현재 사용하지않는 임의의 IP 주소를 소스 주소로 사용
  • IP spoofing은 대표적으로 DoS 공격에 이용된다.
  • IP spoofing의 방어
    • 최소한 라우터가 IP 소스 주소가 합법적인 주소인지 판단한다.
    • ISP는 라우터에서 현재 사용하지 않고 있는 IP 소스 주소인 경우 폐기한다.

 


ARP poisong (spoofing)

 

  • ARP 서버(일반적으로 디폴트 라우터)는 네트워크 내의 모든 host의 IP 주소와 MAC 주소의 매핑 테이블을 갖고 있다.
  • ARP 서버는 이 정보를 ARP request/reply 프레임을 통해 얻는다.
  • 공격 시나리오
    • 공격자는잘못된매핑정보를담은ARPreply메시지를계속 보낸다.
    • ARP 서버는 request에 대한 reply가 아니므로 보통 무시한다.
    • 그런데, 서버가 이 잘못된 정보를 믿고 자신의 ARP테이블을 변경하는 경우가 생길 수 있다. (자신이 조금 전에 보낸 request에 대한 reply라 고 오인, 혹은 구현상의 에러, 등)

Ethernet에서의 ARP

 

  • Ethernet은 브로드캐스트를 사용하 여 ARP 서버의 도움없이 주소를 변 환한다.
    • 목적지 IP 주소의 Ethernet 주소(MAC 주소)를 물어보는 request 프레임을 브로드캐스트한다.
    • IP 주소가 자신의 것인 스테이션은 자 신의 MAC 주소를 reply 프레임으로 응답한다.
    • 주소를 받은 스테이션은 이 주소를 사용하여 MAC 프레임을 전송하고, 이 MAC 주소를 캐쉬에 보관한다.

 

 1 ) IP 패킷을 ARP 테이블에 맞게 보낼 것이다. (C 컴퓨터로 IP 패킷이 가야함)

 2 ) 1)에서 보낸 IP 패킷을 reply하는데 ARP 테이블에 해당 IP 주소의 MAC 주소가 1) 그림의 MAC 주소와 상이한 것을 볼 수 있다.

 3 )전송자는 IP 패킷을 C컴퓨터로 의도했는데 ARP 테이블에 바뀐 MAC 주소 때문에 A 컴퓨터로 유도된다.

  • 위 ARP spoofing 예는 세션 호스트 통신 하이재킹의 예를 보여 주고있다.
    • 공격자A는호스트C로가는모든패킷을갈취하여보고있다.
    • 또한, 공격자 A는 소스 IP주소를 호스트C로 하여 패킷을 보낼 수 있다. (source IP address spoofing)
    • 그렇다면,호스트C와통신하는호스트는자신이호스트C와통신 을 하고 있다고 생각하지만 실제로는 호스트 A와 통신을 하고 있다. (hijacking)
  • 만약 호스트 AARP spoofing을 한번 더 할 수 있으면, 중간 자 공격(MITM)이 가능해진다.

TCP 연결(세션) 하이재킹

 

  • 공격자는 공격대상 호스트의 IP 주소로 연결을 요청
  • 공격자는 flooding 공격으로 호스트(T)가 응답하지 못하도록 함
  • 공격자는 호스트 T를 대신하여 응답
  • 공격자는 ARP 서버와 호스트(T)의 TCP 연결을 절반은 하이재킹

 

  • 이 공격 시나리오가 성공하기 위해서는 공격자는 서버 가 처음으로 사용할 일련번호(y)를 알고 있어야 한다.
    • 일련번호를랜덤값으로하게되면예측하는것은거의불가 능하다.
    • 하지만이전OS는완전한랜덤값으로하지않아충분히예측 가능했다.

 


 

 

  • 만약 공격자가 호스트와 동일한 LAN에 있으면 ARP spoofing을 사용하여 이 공격을 더 쉽게 할 수 있다.
    • 이경우공격자는서버와호스트T의TCP연결을완전히 하이재킹하게 된다.(즉, 호스트 T를 소스로 하여 패킷을 보내고, 호스트 T가 목적지인 패킷을 모두 받아 볼 수 있다.)
    • 이공격시나리오는공격자와호스트T가동일한LAN에있 을 때 가능하다. 만약 공격자가 방화벽 뒤에 위치한다면 이런 공격이 성립하기는 어렵다.

 

'서버 > 암호' 카테고리의 다른 글

네트워크 공격 : DoS (1)  (0) 2021.08.02
방화벽 (Firewall)  (0) 2021.08.02
Snooping (sniffing) – 정찰(탐색)  (0) 2021.07.29
네트워크 공격  (0) 2021.07.29
ICMP 질문 메시지(Query)  (0) 2021.07.29
728x90
  • 엿듣기
  • Ping - ICMP echo request/reply (type 8과 0)
  • Trace route - ICMP time exceeded (type 11)
  • ICMP redirect - ICMP redirection (type 5)

 


경로 추적 (trace route)

 

  • 특정 목적지 호스트에 이르는 경로를 추적한다.
  • IP 패킷의 TTL값을 1부터 차례로 증가시켜 보낸 후에, ICMP Time Exceeded 에러 메시지를 받아본다.


ICMP redirect 공격

 

  • ICMP redirect는 네트워크 내의 호스트가 다른 네트워크의 호스트로 패킷을 보낼 때 네트워크의 정해진 라우터로 전송하게 된다.(보통 디폴트 라우터)
  • 이때 정해진 라우터를 변경하고 싶을 때 ICMP redirection 패킷을 전송한다.
  • 이 패킷을 수신한 호스트는 새로운 라우터를 디폴트 라우터로 하고 라우팅 테이블 값을 변경한다.
  • 원래 ICMP redirect의 목적은 더 좋은 경로가 존재할 경우 라우터를 변경하기 위한 것이다.
  • ICMP redirect 자체가 공격은 아니지만, 악의적으로 특정 호스트가 있는 네트워크로 패킷 전송을 유도(변경)할 수 있다.

Ping (포트스캐닝)

 

  • 완전 TCP 연결을 통한 포트 스캐닝 - 3 way handshake를 하여 완전한 연결을 설정
  • 반 연결 (half-open connection)을 통한 포트 스캐닝
    • 공격자는 SYN 세그먼트를 보내고 SYN-ACK 응답을 받는다.
    • 더 이상의 ACK는 하지 않는다.
  • Zombie scanning - TCP 연결을 통해 포트 스캐닝을 했다는 흔적을 남기지 않는다.
  • TCP ACK 스캔 - 방화벽에 열려있는, 즉 방화벽을 통과할 수 있는 포트 번호를 찾는다.

TCP 연결 설정 - 3 way handshake

 

  1. 세 번의 TCP 세그먼트의 교환으로 연결을 설정한다.
  2. 첫번째 세그먼트는 SYN flag 값을 1로 하고 초기 seq을 알려준다.(다른 내용은 없음)
  3. 두번째 세그먼트는 SYN ACK flag값을 1로 하고, ACK 값을 적음
  4. 세번째 세그먼트는 ACK flag값을 1로 하고, ACK 값을 적음

 

 


Zombie scanning

  • 공격자는 공격(스캔)을 대행할 호스트(zombie)의 IP 주소 를 이용한다. (source address spoofing)
  • 나중에 zombie 호스트로부터 받은 패킷의 IPID 값으로 공격 대상 호스트의 특정 포트가 열려 있는지를 판단한다.
  • 공격 대상 호스트는 연결을 요청한 호스트는 zombie로 기록되고 실제 공격자는 알지 못한다.

 

공격 대상 호스트의 포트가 열려있다면.

공격 대상 호스트의 포트가 열려있을 때

  1. 공격자가 공격 대상(T)한테 SYN과 ACK를 보내면
  2. 공격 대상(T)은 공격자가 SYN부터 보내오지 않았기에 일반적인 3 way handshake가 아니다. 그래서 비정상적인 요청이기 때문에 RST (Rest)과 IPID = x를 보낸다. 여기서 공격자의 목적은 IPID = x이다.
  3. 그리고 공격자는 Zombie PC한테 공격 대상의 포트로 SYN을 보낸다.
  4. 그러면 Zombie PC는 공격대상(T)에게 SYN을 받았다고 생각해서 공격대상(T)에게 SYN-ACK를 보낸다. 
  5. 그런데 공격대상(T)가 SYN을 보낸적이 없는데 SYN-ACK 요청이 오니깐 Zombie PC에게 RST (Rest)과 IPID = x+1을 보낸다.
  6. 그리고 공격자는 IPID가 x+1이라는것을 알고있고 다시 SYN-ACK를 공격대상(T)에게 보낸다
  7. 공격대상(T)는 RST (Rest)과 IPID = x+2 보낸다. 
  8. 결론 : 공격자는 IPID가 x+2 인걸 알고 2라는 짝수가 오면 공격자는 공격대상자의 포트가 열려있다는 것을 알 수 있다.

 

공격 대상 호스트의 포트가 닫혀있다면.

공격 대상 호스트의 포트가 닫혀있을 때

  1. 공격자가 공격 대상(T)한테 SYN과 ACK를 보내면
  2. 공격 대상(T)은 공격자가 SYN부터 보내오지 않았기에 일반적인 3 way handshake가 아니다. 그래서 비정상적인 요청이기 때문에 RST (Rest)과 IPID = x를 보낸다. 여기서 공격자의 목적은 IPID = x이다.
  3. 그리고 공격자는 Zombie PC한테 공격 대상의 포트로 SYN을 보낸다.
  4. 그러면 Zombie PC는 공격대상(T)에게 SYN을 받았다고 생각해서 공격대상(T)에게 연결을 시도하려고 했으나 포트가 열려있지 않아서 RST를 보낸다.
  5. 공격자는 다시 공격대상(T)에게 SYN-ACK을 보내본다.
  6. 공격대상(T)는 Zombie PC와 아에 echo가 발생하지 않았기 때문에 IPID가 x+1이 아닐 것이다. 그래서 공격대상(T)는 RST와 IPID = x+1를 공격자한테 보낸다.
  7. 결론: 공격자는 IPID가 x+1 인걸 알고 1이라는 홀수가 오면 공격자는 공격대상자의 포트가 열려있다는 것을 알 수 있다.

 


TCP ACK 스캔

  • 공격자는 3-way handshake 없이 ACK 비트를 세팅하고 패킷을 보낸다
  • ACK패킷은 패킷필터를 통과한다면, 이 ACK 패킷을 받은 수신 프로세스는 RST비트 를 세팅하여 보낸다.
    • SYN-ACK에 대한 응답 패킷이 아니므로 (프로토콜을 위반한 패킷)
  • 이와 같이 하여 공격자는 포트 1302가 현재 방화벽에서 열려 있는 것을 알 수 있다.

 

'서버 > 암호' 카테고리의 다른 글

방화벽 (Firewall)  (0) 2021.08.02
Spoofing (속이기)  (0) 2021.07.29
네트워크 공격  (0) 2021.07.29
ICMP 질문 메시지(Query)  (0) 2021.07.29
ICMP 에러 보고 메시지  (0) 2021.07.29
728x90
  • 원래 인터넷 프로토콜(TCP/IP protocol suite)은 네트워크 공격이 라는 것을 사실상 전혀 고려하지 않고 만들어졌다.(모두 신뢰할 수 있는 사용자일 것으로 가정)
  • 그래서 프로토콜에는 쉽게 공격에 이용당할 수 있는 취약점이 존재한다.
  • 인터넷 초기 이러한 유형의 네트워크 공격이 등장했다. 지금은 프 로토콜을 세심하게 운용하여 모두 방어를 하고 있다고 볼 수 있다.
  • 하지만 아직 우리가 발견하지 못한 네트워크 프로토콜의 취약점이 존재할 수도 있다.

네트워크 공격의 유형

공격의 절차

  • 공격자는 공격의 대상(victim)을 찾는다. - 호스트혹은TCP연결혹은응용프로토콜세션
  • 공격의 완성은 연결 혹은 세션을 갈취(hijacking)하여 공격자 의도대로 패킷을 주고 받는 것이라고 할 수 있다.
  • Snooping (sniffing) - 정찰(탐색)
  • Spoofing - 속이기
  • 하이재킹 (hijacking)

'서버 > 암호' 카테고리의 다른 글

Spoofing (속이기)  (0) 2021.07.29
Snooping (sniffing) – 정찰(탐색)  (0) 2021.07.29
ICMP 질문 메시지(Query)  (0) 2021.07.29
ICMP 에러 보고 메시지  (0) 2021.07.29
부트킷 (bootkit)  (0) 2021.07.29
728x90
  • Echo request/reply: 내용은 없고 그대로 응답
  • Timestamp request/reply: ICMP 질의메세지가 두 시스템간에 왕복하는데 소요된 시간 또는 시간차를 파악
  • Address-mask request/reply : 서브넷 마스크를 알고 싶을 때
  • Router solicitation/advertisement: 디폴트 라우터가 누구인지 알고 싶거나 알려줄 때

 

'서버 > 암호' 카테고리의 다른 글

Snooping (sniffing) – 정찰(탐색)  (0) 2021.07.29
네트워크 공격  (0) 2021.07.29
ICMP 에러 보고 메시지  (0) 2021.07.29
부트킷 (bootkit)  (0) 2021.07.29
루트킷 (rootkit)  (0) 2021.07.29
728x90
  • Destination unreachable: 목적지를 못 찾을 때
  • Source Quench: 수신하는 버퍼의 크기가 모자랄 때
  • Time exceeded: time-to-live값이 0이 되었을 때
  • Parameter problems: 예, do not fragment 비트가 설정되었을 때
  • Redirection: 더 좋은 경로가 존재할 때

 

'서버 > 암호' 카테고리의 다른 글

네트워크 공격  (0) 2021.07.29
ICMP 질문 메시지(Query)  (0) 2021.07.29
부트킷 (bootkit)  (0) 2021.07.29
루트킷 (rootkit)  (0) 2021.07.29
이진 분류기(binary classifier)의 결과 분류  (0) 2021.07.29
728x90
  • Bootkit은 boot + rootkit의 합성어로 부팅 시에 운영체제 보다 먼저 실행되도록 한 루트킷을 말한다.
  • 2006년 Black Hat Briefings에서 시연된 Blue Pill 프로젝 트가 최초로 구현된 bootkit이다.
  • 운영체제보다 위에서 실행되어 운영체제 및 그 밑에서 도는 보안 소프트웨어를 완전히 속일 수 있다.

 

대응책
  • 시큐어 부트 (Secure Boot) - Windows 8 이후로 적용된 Secure Boot는 PC 펌웨어 표준인 UEFI에서 제공하는 보 안 기능으로, 펌웨어를 디지털 서명으로 검증하는 기능 이다.

 

http://lpccs-docs.dialog-semiconductor.com/da14683_secure_boot/secure_boot_overview.html

'서버 > 암호' 카테고리의 다른 글

ICMP 질문 메시지(Query)  (0) 2021.07.29
ICMP 에러 보고 메시지  (0) 2021.07.29
루트킷 (rootkit)  (0) 2021.07.29
이진 분류기(binary classifier)의 결과 분류  (0) 2021.07.29
익스플로잇 (exploit)  (0) 2021.07.27

+ Recent posts