본문 바로가기

스터디스터디/정처기

[실기] 정보보안 - 서비스 공격 유형

최초 작성일: 2024-09-15

최종 작성일: 2024-09-15

목표 : 정처기 합격 및 CS 지식 쌓기

 

 

1.    DoS(denial of service) 공격

(1)   DoS 공격의 개념

대상 시스템이 정상적인 서비스를 수행하지 못하도록 만드는 공격

(가용성을 헤치는 공격)

(2)   공격 목표

물리적인 파괴(디스크 및 시스템 파괴)

시스템 자원 공격 (cpu, memory, disk의 자원 고갈)

(3)   DoS 공격 유형

1)    Smurf attack

IP(내 주소) ICMP(응답을 돌려주는 것)의 특성을 이용한다

공격자는 자신의 IP주소를 공격 대상의 주소로 위장하고

ICMP Request 패킷을 브로드캐스트를 통해 많은 시스템 전송한다.

이러한 시스템들은 ICMP Echo Reply 패킷을 공격자가 아닌 대상 서버로 전송하여 서버에 부하를 일으킨다.

2)    Ping of death

정상 크기를 초과하는 icmp 패킷으로 시스템을 마비시키는 방법

공격 대상은 패킷을 조립하는 과정에서 부하가 발생하고 이로 이해 서비스가 중단 된다

3)    Land attack

출발지 ip와 목적지 ip가 동일한 패킷을 생성하여 보내는 방법

이로인해 서버 자원이 고갈되고 서비스 가용성이 파괴된다.

4)    Teardrop attack

재조립 가능한 fragment number를 위조하여 서버를 다운 시키는 방법

이공격은 데이터의 재조립 과정을 방해하여 서버를 마비시킨다

(패킷들을 보낼 때 쭉 나가는 게 아니라 나눠서 전송하는 건데, 패킷들을 추후에 조립해야하는데, 조립이 안되게 하는 것)

5)    SYN Flooding

TCP의 연결 과정의 취약점을 이용한 공격

공격자는 SYN 신호(어떤 서버에 요청만 하고 사용 후에 해제를 해야하는 데 해제 하지 않는 것)만 전송하고, ACK 응답을 받지 않아 서버의 backlog(자원들이 계속 만들어 진다. 해당 자원들은 메모리에 올라가고 계속 쌓이면 서버 다운됨) queue에 연결정보를 계속 쌓아 서비스를 제공하지 못하게 한다.

6)    UDP Flooding

다량의 UDP 패킷을 전송하여 네트워크 자원을 고갈시키는 방법

7)    PING FLOODING

많은 ICMP Echo 요청을 특정 사이트에 보내 서버가 모든 자원을 응답에 사용하도록 만들어 정상적인 작동을 방해하는 방법

 

2.    DDoS(distributed denial of service attack)공격 도스와 차이점은 디도스는 쫄병을 시킴

(1)   DDoS 공격의 개념

특정 서버나 네트워크 장비를 대상으로 많은 데이터를 발생시켜 장애를 일으키는 대표적인 서비스 거부 공격(가용성)

분산된 다수의 좀비 pc를 이용하여 공격대상 시스템의 서비스를 마비시키는 형태

(2)   DDos 공격 구성

구성  
공격자  
명령제어
(C&C Command and control)
 
좀비 pc  
공격 대상 (target)  

(3)   DDoS 공격 순서

순서 설명
권한획득 관리자가 관리할 수 없는 곳에서 계정을 획득하고 스니핑이나 버퍼 오버플로우 등의 공격으로 설치 권한이나 루트 권한을 획득
공격 대상 파악 취약한 서비스를 제공하는 서버를 파악하여 공격대상을 정한다
취약 시스템 리스트 확인 취약한 시스템의 리스트를 확인하고, 실제 공격을 위한 exploit(공격자의 의도된 명령/프로그램 등)을 작성
시스템 침투 및 exploit(설명서) 설치 권한을 획득한 시스템에 침투하여 exploit을 컴파일 하고 설치
공격 시작 설치한 exploit로 공격을 시작

(4)   DDoS 공격 툴의 종류

종류 설명
트리누(Trinoo) -master/agent 구조로 구성되어 있으며, master의 명령에 따라 agent가 작업을 수행
-UDP Flooding 공격을 수행하며, 이를 통해 대량의 UDP 패킷을 목표 시스템에 전송하여 시스템을 다운시키는 방식으로 작동
TFN
(tribal flood network)
Master agent 간의 통신에 ICMP ECHO-REPLY 메시지메 사용
공격자 시스템과 마스터 시스템 간의 연결은 평문으로 이루어져 있으며, UDP Flooding, TCP Flooding, ICMP 브로드 캐스트 공격을 수행할 수 있다
슈타첼드라트 Trinoo의 네트워크 구조와 TFN의 다양한 공격 방법을 결합한 도구

 

 

3.    기타 해킹 기법

(Worm)

-네트워크를 통해 자신을 복제하고 전파 할 수 있는 독립적인 악성 프로그램

바이러스

-파일, 부트섹터, 메모리 영역 등에서 자신을 복제하는 악성 프로그램으로, 다른 파일에 숨어 이동한다 (숙주가 있어야 함)

트로이 목마

-겉으로는 해를 끼치지 않는 것처럼 보이지만, 실제로는 바이러스나 기타 위험 요소를 숨기고 있는 악성 프로그램

스턱스넷(Stuxnet)

-2010 6월에 발견된 웜 바이러스

-단순히 pc를 감염시키는 것이 아니라 물리적인 피해를 입히는 목적

-공항, 발전소, 철도 등 기간 시설을 파괴할 목적으로 제작된 컴퓨터 바이러스

루팅(rooting)

-핸드폰의 운영체제의 루트 관리자 계정을 획득하는 것

루트킷

-시스템에 전반적으로 접근할 수 있는 루트 권한을 쉽게 얻게 해주는 킷

혹스(hoax)

-가짜 바이거스 또는 거짓 경보로, 사용자를 속이거나 장난을 치는 것이 목적

스니핑 공격(지켜보는 것)

-네트워크를 통해 전송되는 데이터 패킷을 도청하는 공격

IP SPOOFING(속이는 것)

-      공격자가 자신의 IP 주소를 다른 주소로 위장하여 접속하는 공격방식

ARP Spoofing

-      ARP 프로토콜의 취약점을 이용하여 공격자의 MAC 주소를 다른 컴퓨터의 것으로 위장하는 공격

*IP주소 -> MAC : ARP 프로토콜 MAC -> IP : RARP

DNS Spoofing

-      DNS 질의를 가로채 변조된 결과를 반환하는 중간자 공격의 일종

파밍(Pharming) : DNS spoofing을 이용해 파밍을 함

-      사용자의 컴퓨터를 악성코드에 감염시켜, 정상적인 웹 사이즈 접속 시도 시 피싱 사이트로 유도하는 공격

타이포 스쿼팅(Typeosquatting)

-      사용자가 웹 사이트의 url을 잘못 입력하는 실수를 이용한 공격방법

-      사용자가 실수록 접속한 유사한 url의 사이트를 통해 민감한 정보를 획득하거나 악성코드를 설치하려는 의도를 가진다

Smishing(SMS phishing)

-      문자 메시지를 이용해 개인정보를 빼내는 피싱 공격

Qshing

-QR 코드를 이용하여 사용자를 악성 링크로 유도하거나 직접 악성 코드를 심는 금융 범죄 기법

포트 스캐닝 (PORT SCANNING)

-서버에 열려 있는 포트를 탐색하고 해당 포트의 취약점을 이용한 공격

-NMAP과 같은 도구를 사용하여 열린 포트, 호스트, 서비스 버전 등을 탐지할 수 있다.

세션 하이재킹(Session hijacking)

-이미 인증받고 세션을 유지하는 연결을 빼앗는 공격

-대책: ack storm 탐지, 데이터 암호화, mac 주소 고정, 비동기화 상태 탐지, 패킷의 유실 및 재전송 증가 탐지 등

버퍼 오버플로우

-프로그램 실행 시 입력값이 버퍼를 초과하여 메모리를 침범하는 현상이나 이를 이용한 공격 방법

-방어 기법 : 스택 가드, 스택 쉴드, ASLR(Address space layout randomization)

FORMAT STRING ATTACK

-      문자열 출력 포맷의 애매모호한 설정을 이용해 메모리의 RET 위치에 악성코드 주소를 입력하여 공격하는 기법

SQL injection

-클라이언트의 입력 값을 조작하여 서버의 데이터베이스를 공격하는 코드 인젝션 기법

XSS(Cross-site scripting)

-악의적인 사용자가 타 사이트에 스크립트를 삽입하여 사용자의 쿠키 정보나 세션을 탈취하는 공격

CSRF(Cross-site Request Forgery)

-사용자가 자신의 의지와 무관하게 공격자가 의도한 행위를 특정 웹 사이트에 요청하도록 만드는 해킹 공격

Backdoor

-정상적인 인증 절차 없이 시스템에 접근할 수 있게 하는 프로그램

취약점을 이용하거나 악성 코드를 삽입하여 공격

Password cracking

-다양한 도구를 이용해 시스템의 비밀번호를 알아내는 공격 기법

Rainbow table(단방향 암호화 테이블)

-다양한 해시 함수를 이용하여 생성가능한 값들을 대량으로 저장한 테이블

APT(Advanced Persistent Threat)

-지속적이고 체계적인 해킹 공격

Nucking

-특정 IP 주소에 대량의 패킹을 보내 인터넷 접속을 끊는 크래킹의 한 형태

부채널 공격(side channel attack)

-암호 알고리즘을 대상으로 한 물리적 공격 기법

Brute force

-무차별 대입 공격으로, 가능한 모든 문자열 조합을 시도하여 공격

Dictionary attack(많이 사용하는 암호 테이블)

-사전에 정의된 일반적으로 사용되는 패스워드 패턴을 이용한 공격 방식

Key logger attack(v3, 알약)

-사용자의 키보드 입력을 기록하여 개인 정보를 훔치는 공격

스파이웨어

-사용자 동의 없이 사용자 정보를 수집하는 프로그램

애드웨어

-프로그램 실행 중에 광고를 보여주는 소프트웨어로 사용자가 광고를 본 대가로 프로그램 비용을 대신 지불

트랙웨어

-사용자의 시스템 작업을 추적하고 정보를 수집하여 다른조직에 전달하는 소프트웨어

그레이 웨어

-사용자 동의를 얻어 설치되지만 사용자에게 불편을 주는 일종의 악성 소프트웨어

크라임웨어

-불법 온라인 활동을 용이하게 하는 소프트웨어로 스파이 웨어, 키로거, 금융 정보 탈취등을 위해 사용

랜섬웨어

-시스템 접근을 제한하고 사용자에게 몸값을 요구하는 악성 소프트웨어

제로데이 공격

-아직 알려지지 않은 소프트웨어 취약점을 이용한 공격

사회공학

-기술적인 방법이 아닌 사람들 간의 기본적인 신뢰를 기반으로 사람을 속여 비밀정보를 획득하는 기법

Evil twin attack

-가짜 wifi ap를 구축하여 사용자 정보를 중간에서 가로채는 공격

Bluebug

-블루투스 연결 취약점을 이용한 공격

Bluesnarf

-블루투스 취약점을 이용해 장비의 파일에 접근하는 공격

Blueprinting

-블루투스 장비를 탐색하는 활동

Bluejacking

-개인이 특정 반경 내에서 블루투스 지원장치로 익명 메시지를 보낼 수 있는 해킹 방법

Switch jamming

-위조된 mac 주소를 이용해 네트워크 스위치를 혼란시키는 공격

(스위치를 더미 허브로 만들어버리는)

Honeypot

-공격자를 유인하기 위해 의도적으로 설치된 시스템

블루킵

-원격 데스크톱 서비스의 취약점을 이용한 공격

*////(라우터)/(스위치, 브릿지)/( nic, 허브, 리피터)

인포데믹스

-잘못된 정보나 소문이 빠르게 확산되어 대중의 두려움을 증폭시키는 현상

살라미

-금융기관이나 인터넷에서 작은 금액을 조금씩 빼내는 기법

다크 데이터

-수집되었지만 분석되지 않고 저장만 되어 있는 대량의 데이터

킬 스위치

-분실한 정보기기의 데이터를 원격으로 삭제하고 사용을 중지시키는 기능

트러스트 존

-중요정보를 보호하기 위해 별도의 독립적인 보안구역을 두는 하드웨어 기반의 보안 기술