정보보안기사/2024 최적합 정보보호론

PART4. 네트워크 보안 - SECTION 6. 네트워크 기반 보안공격

코드라니(CODERANY) 2026. 2. 16. 16:53

1. 서비스 거부 공격 개요

DoS는 해킹과 다름. 정보를 훔쳐오지도 않고, 걍 미워서 서비스 못하게 하는거임.

내가 중국집을 하는데 어떤 미친놈이 1초마다 전화하는상황 미친놈이지;

가용성을 떨어뜨림

 

기무가부인

 

방어 방법.. 걍 가게 접어~ ㅋㅋㅋㅋㅋㅋ

 

웬만한 웹서버 동시 접속자 수 디폴트가 75명임.

  도스 디도스 디알도스
좀비수 1:1 트래픽 n개 무수히
공격자판단 바로 걸림 ㅎ; 고소 당해요 ㅎㅎ; 시간 걸림 누군지 모름
대책 차단 사이버 대피소 블랙리스트차단, 어려움 

도스: 한명이 한명에게 1:1로 다량의 트래픽을 보냄. 누군지 앎, 역추적 되고 고발당함. 초창기에 이랬음.

디도스: 마스터를 감염시키고 본인은 빠져나옴. 그럼 이 마스터가 수많은 좀비피씨(슬레이브)를 만들고 마스터는 또 빠져나와. 그 다음에 정해진 시간에 다량의 트래픽을 보내서 뻗게함.

디알도스: 마스터 아래 슬레이브가 있음. 그리고 리플렉터들이 있음(정상동작). 리플렉터도 이용해서 공격함. 3 way hand shake의 취약점 이용함. 

 

-> 해커라기도 애매하고... 걍 미친놈들임;;

 

2. Dos, DDoS, DRDoS

가. DoS(Denial of Service) 공격의 개요

나. 서비스 거부 공격의 종류

1) DOS 내/외부 공격(서비스 거부 공격)

가) 개념

내부: 안에 있는 자원 념념쫍

2) DDoS(Distributed Denial of Service: 분산 서비스 거부 공격)

가) 개념

수 많은 도스 공격 프로그램을 분산설치함.

나) DDoS 구성요소

어택커 마스터, 핸들러 프로그램, 에이전트(좀비피씨), 도메인 프로그램

다) DDoS 방어 및 대응

쓸데없는 프로그램 깔지 말고, 쓸데없는 홈페이지 들어가지 말고, 정품 쓰고...

방화벽, IDS, 이중화(안정적인 네트워크 설계), DPI등 솔루션 사용, 

라) DDoS(분산 서비스 거부) 공격의 대표적 도구

3) DRDoS(Distributed Reflection DoS: 분산 반사 서비스 거부 공격)

가) 개념

반사를 함. 정상적인 자기일 하는 리플렉터들을 이용함.

전 시간에 TCP 세그먼트가 있고, 이 4계층이 그대로 3계층으로 내려오면서 IP패킷으로 캽슐화 됨. DR은 위조하는건데 송신자 아이피를 스푸핑(속이는)한 거임. 

나) DRDoS의 특징

다) DRDoS의 공격 방법

정상적인 3웨이는 수신자 IP를 받아오고 이더넷 프레임을 다 채워서 웹 서버로 보내겠지? 그럼 처음에 싱크가 연결 될거야. 그럼 싱크+액크-> 액크 이렇게 됨 

 

근데 해커는 송신자 IP에 타겟의 IP를 셋팅하고, 수신자 IP는 임의의 살아있는 서버의 IP를 넣음.

이걸 보내면 수신자에게 감(임의의 서버) 싱크가 왔으니까 응답으로 공격 대상에서 싱크를 보냄.

타켓은 갑자기 싱크+액크가 오네? 그래서 자기 프로세스들한테 물어봄. 님 요청한거 있음? 하면서 근데 없겠지.

근데 왔네, 이걸 계속 동네 방네 물어봄. 

ㅜㅜ 경유지 서버는 싱크+액크에 대한 액크를 못받으니까 싱크+액크 재전송함 ㅜㅜㅜ

대환장파티 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

 

라) DRDoS의 방어 및 대응

리셋시킴(연결 강제 종료) TCP 세그먼트의 리셋이 여기서 쓰이네 -> 방화벽 비싼거 쓰면 이거 해줌 ㅋ

 

다. 서비스 거부 공격 방법 구분

1) 내부에서의 공격

보통 관리자 실수..

2) 외부에서의 공격

라. 서비스 거부 공격(DoS)에 사용되는 방법

1) 개요

2) UDP Flooding

가) 개요

UDP랑 ICMP 프로토콜을 같이 씀. 

나) UDP Flooding 공격 방법

정상이면 UDP보내고 끝

근데 해커가 송신자 IP에 임의의 아이피를 세팅하고, 수신자 IP에는 타겟의 IP를 셋팅하고, 일부러 이상한 포트넘버 세팅하고, 데이터는 크게 해서 보냄. 피해자는 받았어, 음? UDP네? 하고 끝내려는데 포트번호가 이상하니까 ICMP를 임의의 IP에 알려줌. ICMP를 만드는 피해 서버는 지쳐가고, 임의의 Host도 뭔가 받느라 힘듦..

포트넘버와 ICMP Destination Unreachable(목적지 도달불가)를 답장함.

데이터가 크면 받는 애는 수십개 수백개의 4계층에서 쪼개진 이더넷프레임을 받게 됨... 응답수가 많아지지..

3) ICMP Flooding(Smurf Attack: 스머프 어택)

가) 개념

ICMP와 브로드캐스트를 이용함.브로드캐스트: 광고하다 -> 전체 네트워크에 딱 뿌림. IPv6에선 없애버림.

나) ICMP를 이용한 DoS공격

정상이면 ICMP를 보냄 -> 그걸 받음 -> ICMP가 요청한 사항을 조사해서 응답함. ICMP가 너의 상태를 알려줘 하면 받은 사람은 CPU용량, 네트워크 상태 등을 응답하고 끝남. 즉, ICMP는 망관리 프로그램임.

근데 해커가 송신 IP에 타겟 IP셋팅, 수신자 IP는 임의의 IP를 셋팅함. 그럼 ICMP(상태 요청)를 받은 수신 IP는 타겟에게 ICMP 리플레이 패킷(정보 요청)이가 감. 그럼 프로세스들한테 물어봄. "님 ICMP 요청한거 있음?" 없네? 그럼 그만 둚. 

근데 이게 문제가 뭐냐면 타겟 IP보다 중간에 송신 IP가 더 힘듦.. 타겟 IP는 확인만 하면 되는거라 쉽게 안뻗음 -> 그러다보니 중간 IP와 해커가 힘듦. 

그래서 해커는 생각했어요. 비효율적이라고... 그래서 브로드 캐스팅 모드를 이용하게 되었어요. 그게 아래 ICMP 플루딩이 생겼어용.

다) ICMP Flooding(Smurf Attack: 스머프 어택)

만화 캐릭터 '스머프'처럼 작고 약한 녀석들이 떼거지로 달려들어 큰 대상을 괴롭히는 모습에서 유래

라) 스머프 공격(Smurf Attack)공격 방법

송신 IP를 타겟 IP로, 수신 IP를 브로드 캐스트(255.255.255.255)로 뿌림. -> 근데 이건 타겟 IP도 송수신을 나로 받기 때문에 눈치빠르다면 쳐낼 수 있겠지만..... 한 3초후에 공격이라 보통 뻗음 ㅠ;ㅋㅋㅋㅋㅋㅋㅋㅋㅋ

 

ICMP는 TCP와 UDP 헤더가 없음. ICMP는 보통 라우터가 만듦. 라우터는 장애가 생기면 라우터는 3계층 장비임. IP까진 있는데 TCP는 없음. TCP자리에 ICMP가 들어와 있는거임. 그래서 TCP/UDP가 없음.

마) 스머프 공격(Smurf Attack) 공격의 예

바) 스머프 공격(Smurf Attack) 방어 방법

IP 브로드 캐스트 어드레스로 전송된 ICMP 패킷에 대해 응답하지 않도록 시스템을 설정함. -> 집단 면역임 ㅋㅋ

4) Ping of Death

죽을 때 까지 핑을 던져보자

핑은 ICMP를 쓰고, 타입은 8(응답하라)을 쓰고, 65,536바이트의 큰 패킷을 고의로 보냄.

전송계층에서 쪼갬(UDP로 보내겠지) 그리고 보냄. 응답하다 죽어용. 

5) SYN Flooding Attack = TCP Syn Flooding

가) 개념

TCP의 3웨이 핸듶쉐이크의 취약점을 이용함 

TCP프로토콜으ㅣ 초기연결 설정단계의 취약점을 이용.

나) 정상적인 3-way handshaking

싱크보냄 -> 서벙의 백로그q에 쌓임 -> 싱크+애크 보냄 -> 애크 보냄 -> 백로그 q에 있는 싱크를 지움.

다) 특징

다른 사용자가 서비스를 받지 못하게 하는 공격 

라) SYN Flooding 공격 방법

(1) 공격자가 계송 싱크만 보냄 -> 백로그q에 싱크만 쌓여서 뻗음

     -> 가장 무식한 방법: 백로그 Q의 사이즈를 이만하게 만듦 ㅎ

     -> 방화벽 좋은거 쓰면 방화벽이 애크 보냄 ㅎ;;;

(2) 악의적인 공격자가 존재하지 않은 IP주소를 송신자 IP로 수정해 보낼 경우

해커가 송신자 아이피를 임의의 IP로 바꿈. 존재하지 않는 IP주소나 임의의 IP. 수신자 IP는 타겟의 IP, 그렇게 싱크를 보냄. 싱크를 받은 타겟 IP는 임의의 IP에 싱크+애크를 보냄. 당연히 임의의 IP는 무시함. 근데 나는 씬을 계속 보냄. 그러면 백로그Q가 애크를 기다리다가 뻗겠징.

마) SYN Flooding 공격에 대한 대비 및 해결책

(1) 백로그Q를 늘려준다.

(2) 씬 쿠키 기능을 켠다

씬애크가 씬을 지움 -> 오버헤드가 심해서 잘 안되기는 함.

쿠키? 네이버나 다음 접속할 때 아이디패스워들르 안넣는데, 그냥 연결되는데 쿠키값이 내 피시에 있는거임. 별도의 로그인 절차 없이 빠르게 접속할 수 있는 것

(3) 씬 리시브의 대기시간을 줄이거나, 재시도 횟수를 3회로 제한하거나

6) LAND Attack

가) 개념

송신 IP = 수신 IP = 타겟 IP

자신에게 씬과 씬애크가 계속 쌓이면서 백로그q가 풀나서 뻗음

나) Land Attack 공격 특징

다) 공격 방법

라) Land Attack 확인 방법

마) 대응 방법

보안 솔루션

7) TearDrop

MTU(1500 바이트: 네트워크에서 전송할 수 있는 최대 크기)

가) 개념

보낼 떄 송신측에서 잘게 쪼개서 TCP헤더를 보내고 시퀀스 넘버를 붙임. 수신측에서 받을 때 뒤죽박죽으로 받기 때문에 시퀀스 넘버에 있는 순서 번호에 맞추어 조립을 함

나) 공격 방법

조립 못하게 하기~ 원래는 TCP세그먼트에 시퀀스 넘버 순서번호에 1번 세그먼트, 2번...이런식을 하는건데,  비정상 패킷을 보내 조립이 안되게 만

다) Tear Drop 공격 유형의 종류

봉크(Bonk): 시퀀스 넘버가 1,2,3 이렇게 잘 되어야하는데, 봉크는 1,1,1,1의 모음

보잉크(boink): 시퀀스 넘버가 1,59,3,5 이런식으로 뒤죽박죽 

8) 서비스 마비 공격

가) HTTP GET Flooding: 동일 URL을 무한 반복 요청

9) HTTP CC(Cache-control) 공격

웹서버가 좀 더 빨리 작업하게 캐싱을 씀.

근데 그거 쓰지 말라고 설정하고 Get을 보냄 -> 파일 찾다가 죽어버림.. 

마. DoS 공격 종류와 공격 방법, 대응책

구분 공격 방법 보안대책
UDP Flooding    
ICMP Flooding
(Smurf Attack: 스머프 어택)
   
Ping of Death    
SYN Flooding Attack
(TCP Syn Flooding  Attack)
   
LAND Attack    
TearDrop  Attack    

바. DoS 공격도구

1) Targa Attack

 

3. 공개키 해킹도구 종류

1) 크래킹(Creaking) 소프트웨어

가) 개념

나) 루트킷(Rootkit)

나쁜 프로그램 도구모음

다) 패스워드 크래킹(Password Cracking)

패스워드를 뚫는 프로그램들

라) 포트 스캐닝(Port Scanning)

열려있는 포트넘버를 찾는 일

마) Join the Ripper

바) pwdump

사) L0phCreak

 

4. 네트워크 취약점 스캐닝 공격

취약점을 스캔(찾는)하는 것

단순 포트가 열려있는지, 닫혀있는지 등 취약점을 찾음

가. 개요

나. Port Scan

포트가 열려있는지. 내가 지금 네트웤에 접속이 되어있고 정상적으로 연결이 되어 있다를 찾는 것임.

해커가 인터넷을 해킹하겠지. 그러려면 상대방 포트가 일단 열려있어야함. 

포트를 검색하기 위해서는 IP 주소를 알아야하고

TCP 또는 UDP 포트가 어떤 서비스를 하는지. 그리고 열려있는 포트를 찾음.(논리적 포트)

가) 개념

나) Target 호스트의 해당 포트가 열려 있는 경우

포트가 열려있음. (현관문이 열려있고 손님 맞이 준비 ㅇㅋ)

공격자가 씬을 보냄 -> 포트 열려 있는지 확인 -> 신애크 보냄(열렸음) -> 그럼 애크 보냄 -> 세션 성립, 로그파일 남김.

다)  Target 호스트의 해당 포트가 닫혀 있는 경우  

포트가 닫혀있음 = 문이 닫혀있음. 씬을 보내도 통신이 곤란하면 리셋+애크를 보냄

그럼 공격자는 애초에 들어갈 수 없으니 공격 대상에서 제외시킴

그리고 열린 포트를 찾아 헤맴(스캐닝)

다. Port Scan 공격 종류

1) Sweep

가) 개념

나) ISMP Sweep

다) TCP Sweep

라) UDP Sweep

2) Open Scan

가) 개념

나) TCP Scan

다) TCP Full Open Scan(=TCP Connect() Scan)

싱크 응답 애크를 받음. 포트가 열려있넹 -> 근데 로그가 남는 건 싫음. -> 역추적 위험

그래서 풀로 열지 말고 절반만 여는 라)가 생김

라) TCP Half Open Scan

포트 열린데 싱크 보내면 싱크+애크가 오겠지. 근데 리셋을 날리면 세션이 미성립되어 로그파일 기록이 없음.

포트가 닫혀있을 때는 싱크를 보내면 제낌.

액크를 안 보내고 리셋을 보내 증거를 안 남기는 일.

 

씬애크를 보내면 리셋으로 연결을 끊음으로 3웨이 핸드쉐이크가  생기지 않음

마) UDP Scan

UDP는 보내면 끝임. 내가 UDP를 보냄. 그럼 서버에서 ㅇㅋ하고 끝. 

-> 내가 UDP를 보내서 상대방이 응답을 안하면 포트 열린거임. 

포트가 닫혀있으면  ICMP Unreachable 날라옴.

 

ICMP 언리쳐블 날라옴. ICMP 타입 3-3임. 

3) Stealth(스텔스) 스캔

FIN이 1로 세팅되고 나머지가 0이면 우리 끝내자.

 

스텔스 스캔은 TCP의 어액프리신핀 가지고 하는 거임. 

스텔스 스캠의 종류에

가) 개념

나) 스텔스 스캔(TCP FIN 스캔, NULL 스캔, XMAS 스캔)

필드 URG ACK PSH RST SYN FIN
FIN Scan 0 0 0 0 0 1
XMAS Scan 1 1 1 1 1 1
NULL Scan            

맨 끝에만 봄. 맨 끝이 1이네? 포트가 열려있으면 받고 끝남. 근데 포트가 닫혀있으면 연결을 강제로 끊음

엑스마스도 포트가 열려있으면 끝내고, 포트가 닫혀있으면 리셋이 옴.

널스캔도 포트가 열려있으면 끝내고, 포트가 닫혀있으면 리셋이 옴. 

NULL 스캔은 값이 없는거임 -> 0이 아니기에 1이라고 생각함. 

-> 실제로는 액크+리셋이 옴 (걍 시험용 TCP 표준에선 리셋)

 

4) TCP ACK 스캔

방화벽 룰셋을 테스트하기 위함 

5) TCP 단편화 스캔

라. 포트 스캔의 종류

  포트 열림 포트 닫힘
UDP Open Scan 응답x ICMP Unreachable 응답
TCP Open Scan ACK 응답 -> 로그 남음 RST/ACK 응답
TCP Half Open Scan RST 응답 RST/ACK 응답
Stealth Scan
(TCP FIN 스캔, NULL 스캔, XMAS 스캔)
응답x RST 응답

 

마. 각종 네트워크 스캐닝 툴

1) 개념

2) 다중 취약점 스캐너: SAINT, vetescan, mscan, sscan2k 등

3) 특정 취약점 스캐너

4) 은닉 스캐너: Nmap, stealthscan 등

5) 네트워크 구조 스캐너: firewalk, Nmap, Nessus 등

Nmap: 네트워크 보안용 유틸리티인뎅.. 해커들이 더 많이 애용하더라. 관리자가 취약점 확인하려고 쓰는거임 ㅋㅋ

 

5. APT공격(지능형 지속 위협 공격: Advenced Persistent)

조직적으로 함. 몇 년 걸림. 준비해서 중요한 정보를 탈취하는거임. 유심털린것도 이거 아닐까? 싶음.

2016년에 북한이 방글라데시 털었는뎅...  방글라데시의 외환보유액의 거의 다 털음; 1년 넘게 준비함.

어느 직원들이 어디있는지 습관은 뭔지. 2016년 방글라데시 은행의 프린터 고장시키고... 뉴욕 연방은행에다가 보유액 거의 다 다른 은행으로 이체해달라고 팩스보냄;;-> 팩스 프린터 고장남;;; 하필 또 방글라데시는 목/금에 쉼 ㅠ 그리고 뉴욕은 토일 쉬고, 나흘 시간 번걸로 금액을 여러계좌에 송금해서 현금화 시키는게 계획이었는데, 해커가 실수함 ㅠ 

이체 요구 은행이 주피터임 근데 이란(미국 제제 받는 중)의 선박과 같은 이름임. 그래서 송금이 안됨 ㅋㅋ 그래서 이체지연이 되어서 1조원인데 1100억만 이체 성공함. 근데 그마저도 스리랑카로 200억 이체 과정에서 o빠쳐서 이체 거절;

방글라데시 특수부대 파견하고 5000만 달러는 카지노로 빠졌고, 북한인 1명 체포 1600만 달러 회수하고

결국 700억원 미회수 

가. 개요

나. APT(Advance Perdiddtent Threat) 공격과 목적

1) 공격

2) 목적

다.  APT 공격 프로세스

1) 개념

가) 사전조사 및 사회공학적 방법으로 공격 시도

강아지를 키우면? -> 강아지 관련 메일을 계속 보냄. 보통 무시하는데, 어쩌다가 한 번 누르면 침투~

나) 내부 침입 성공

다) 악성코드 전파확산

라) 중요 정보 유출

마) 흔적 삭제

로그 파일 싹 지워~

2) 특징

3) APT 공격 기법

(1) 사전조사

(2) 제로데이

(3) 사회공학 기법

(4) 은닉

(5) 권한상승

(6) 적응

(7) 지속

4) APT 공격 예방 방법

앱스토어

개발자가 어플을 만들면 앱 등록 사이트에 등록함. 애플은 앱스토어에서 그 프로그램이 잘 돌아가는지 하나하나 눌러봄(테스트). 테스트에서 오류가 없다면, 검증센터에서 코드를 다 열어서 악성코드 확인함(코드사이닝 기술) -> 마켓에 등록 -> 구매자들이 어플 다움 

 

6. 사회공학적 방법

가. 개념

사람의 심리적 취약점을 이용하는 것

나. 인간 기반 사회공학 기법

1) 직접적인 접근

2) 도청

3) 어깨너머로 훔쳐보기(shoulder Surfing): ATM기의 카드 비번 훔쳐보기 히히

4) 휴지통 뒤지기(스캐빈징: Scavenging): 쇄절기 뒤적뒤적... 

5) 고무호스 암호분석: 물리

다. 컴퓨터 기반 사회공학 기법

시스템분석

악성 소프트웨어 전송

인터넷을 이용한 사회공학 공격

피싱: 낚시, 메일 기반, 이상한 링

파밍: 도메인 탈취, 진짜 사이트 링크를 입력해도 가짜 사이트로 넘어감 -> 근데 이렇게 하면 DNS서버에 고소들어와서 DNS서버가 진짜 ㄹㅇ 철두철미하게 DNS 정보 관리함; 그래서 나온게 DNS 주소변경(DNS의 정상 IP를 위조한 시스템의 IP로 변경함, 컴퓨터는 내 DNS캐시에 아이피를 먼저 확인하고 없으면 Hosts파일을 열어보고 그래도 없으면 DNS서버에 요청하기 때문)

스미싱: 문자 메세지 낚시

1) 시스템 분석 

2) 악성 소프트웨어 전송

3) 인터넷을 이용한 사회공학 공격

 

7. Ransomware(랜섬웨어)

가. 랜섬웨어 정의

인질, 데이터를 인질로 돈을 요구

문서를 암호화하고 돈줘함

웁스! 유어 임포턴트 파일이 인크립트(암호화)이 되었당! 1코인을 주면 키를 주겠당~ 

나. 랜섬웨어

1) 개념

다. 랜섬웨어 공류

1) 화면 잠금형 핸섬웨어

2) 파일 암호형 핸섬웨어

라. 랜섬웨어의 위협과 대처방법

1) 랜섬웨어가 위협적인 이유

2) 피해예방을 위한 보안수칙

3) 랜섬웨어 피해 사례(워너 크라이)

(1) 워너크라이 개념

(2) 워너크라이 확산

(3) 워너크라이 증상

라) 랜섬웨어(워너크라이) 방지

SMB(원격접속) 관련 포, 포트가 원격 접속하려면 공유폴더 포트가 열려있어야하는데, 이걸 닫아 놓아야함.

- UDP: 137,138,

- TCP: 139,445