7주차 정리

2022. 6. 24. 15:4422-1학기/네트워크 보안(NETWORK SECURITY)

[이론]

- 스캐닝

- 무차별 대입공격(브루트 포스)

- DOS 공격

- 중간자 공격

- 세션 하이재킹

[실습]

- [DOS 공격] Ping of Death

- [DOS 공격] SYN Flooding

- [DOS 공격] Land

 


1. 스캐닝(Scanning)

  • 스캔(Scan)

1) 일반적 스캔 : 포트스캐닝 서버 포트가 열려있는지

2) 취약점 스캔 : 서버의 포트 취약점 질의

3) ICMP Scan

-ping은 네트워크와 시스템이 정상적으로 작동하는지 확인하는 유틸리티

-ICMP(Internet Control Messaging Protocol)를 사용

4) Service Scan

-특정 애플리케이션이 동작하는 경우 반드시 구동되는 포트가 있다는 것에 기인하여 확인

-telnet/nc 유틸리티 사용

 

  • 스캐닝 도구 : 스캔 범위에 의한 스캐닝 도구의 종류

1) 시스템 진단 도구 

-진단 대상 시스템에 설치되어 시스템의 내부 보안 취약점 진단

-단순 패스워드, 패치 현황, 중요 파일 변조 여부, 백도어, 루트킷(Rootkit) 설치여부 체크

 

2) 네트워크 스캐닝 도구

-네트워크 상의 특정 시스템에 설치/시스쳄 원격 진단

-주요 네트워크 서비스들에 대한 정보 수집, 해킹 가능여부 및 취약점 점검, 백도어 설치 여부 체크

 

3) 전문 스캐닝 도구

-데이터 베이스 스캐닝 도구

-방화벽 룰셋(Ruleset) 테스트 도구

-웹 서버 취약점 진단 도구

-소스 코드 취약점 진단 도구

 


2. 무차별 대입공격(브루트 포스)

 

1) 무차별 대입 공격(Brute Force)

무차별 대입 공격은 인증 정보(사용자 이름과 비밀번호)를 알아내기 위해 공격자가 반복적으로, 체계적으로 매번 다른 사용자 이름과 비밀번호를 입력하는 방식의 공격이다. 단순하지만 리소스를 많이 소비하는 시행착오 기반의 접근 방식으로, 보통 자동화된 툴이나 스크립트 또는 봇을 사용해 액세스 권한을 회득할 때 까지 가능한 모든 조합을 대입한다. 

 

이 방법은 오래된 공격 방법이지만 여전히 효과적이며 해커들 사이에서 인기가 있다. 무차별 대입 공격은 원격 네트워크의 디바이스를 대상으로 비밀번호 , 비밀 문구, 사용자 이름, 개별 식별 번호(PIN)과 같은 개인 정보를 회득하기 위한 공격에 자주 사용된다.

그러나 저장된 인증 정보의 비밀번호가 길고 암호화 수준이 높을수록 이 공격이 성공하기 위해 필요한 시간과 컴퓨팅 성능도 높아진다. 따라서 이런 방법으로 공격이 사실상 불가능한 수준까지 무차별 대입 공격의 효과를 낮출 수 있다.

 

2) 무차별 대입 공격의 유형

  • 역 무차별 대입 공격 : 많은 계정을 대상으로 소수의 흔한 비밀번호를 반복 시도한다.
  • 인증 정보 스터핑 : 사이트 또는 서비스에서 훔친 사용자 이름과 비밀번호를 사용해 다른 서비스와 애플리케이션의 계정을 하이재킹한다.
  • 사전 공격 : 사전의 단어 또는 다른 데이터 침해에서 얻은 일반적인 비밀번호를 돌아가면서 시도한다.
  • 레인보우 테이블 공격 : 공격자는 평문 비밀번호와 각 비밀번호의 해시값이 저장된 사전 계산된 사전을 사용해 해싱 함수를 반대로 되돌려 비밀번호를 알아낸다.

3) 무차별 대입 공격을 방어하는 방법

기업은 공격에 필요한 시간과 컴퓨팅 리소스를 늘림으로써 공격 대상으로 매력을 낮출 수 있다

  • 길고 복잡하며 암호화된 비밀번호를 사용함
  • 비밀번호 해시에 솔트(salt)를 넣음
  • 캡차(captcha)를 활성화함
  • 비밀번호 관리자를 사용함

3. DOS 공격

 

1) DoS (서비스 거부) 공격

서비스 거부(DoS, Denial-of-Service) 공격이란 특정한 네트워크나 웹 리소스에 합법적인 유저가 접근하지 못하도록 방해하는 것이다. 막대한 양의 트래픽을 통해 특정 대상(흔히 웹 서버)에 과부하를 주거나, 악의적인 요청을 보내 해당 리소스가 오작동을 일으키게 하거나 완전히 정지시킵니다.

 

2) 서비스 거부 공격의 종류

일부 서비스 거부 공격은 특정 개인의 네트워크 또는 리소스에 대한 접근 방해를 목표로 삼는 반면, 다른 유형의 공격들은 리소스에 완전히 접근하지 못하게 한다.

 

-버퍼 오버플로 공격(Buffer overflow attack)

가장 일반적인 공격 유형인 버퍼 오버플로는 개발자들이 본래 설계한 시스템 처리 능력보다 많은 트래픽을 대상으로 보냄으로써 발생함. 이러한 유형의 공격은 악의적 행위자가 목표로 하는 과정을 정지시키거나 제어할 수 있다.

 

-ICMP flood

ICMP flood 공격은 대상 네트워크에서 잘못 구성된 장치를 타깃으로 하며, 해당 장치가 단일 노드 대신 모든 노드에 가짜 패킷을 배포하도록 하여, 네트워크 과부하를 초래한다. 이러한 유형의 공격은 종종 '죽음의 핑(the ping of death)' 혹은 '스머프 공격(smurf attack)'이라 불림

 

-SYN flood

SYN flood는 서버에 연결 요청을 보내지만, 연결을 완전히 인증하지는 않음. 이러한 과정은 해당 웹 서버의 모든 오픈 포트를 대상으로 하며, 서버가 강제로 중단될 때까지 계속된다.

 


4. 중간자 공격

 

1) 중간자 공격

장치(PC/전화)와 웹 서버 사이에서 데이터 전송이 이루어지는 동안 기술과 도구를 사용하여 공격자는 둘 사이에 자신을 배치하고 데이터를 가로채는 것이다. 쉽게 말하면 도청과 매우 유사한 방법이다.

양측이 서로 이야기하고 있다고 믿고있지만 실제로는 가해자와 소통을 하고 있는 것이다. 이 공격은 장치와 서버 간 통신 중에 발생하는 것만이 아니라 두 시스템이 가상으로 데이터를 교환하는 곳 어디서는 발생할 수 있다.

 

2) 중간자 공격의 작동원리

-스니핑(sniffing)

시스템/네트워크에서 들어오고 나가는 데이터 패킷을 캡쳐하는데 사용되는 기술이다. 네트워크에서의 패킷스니핑은 도청이랑 비슷하다. 하지만 패킷 스니핑은 올바르게 적용되면 합법적이며 보안 목적을 위해 이를 수행하고 있다.

 

-패킷 주입(packet injection)

공격자가 일반 데이터와 함께 악의적인 데이터를 주입하는 것이다. 사용자는 합법적 통신 스트림 일부로 제공되기 때문에 파일/뭘웨어 프로그램을 알지 못하게 된다. 이러한 파일은 중간자 공격과 서비스 거부 공격에서 흔히 볼 수 있는 요소이다. 

 

-세션 하이재킹 공격(session hijacking)

일명 세션 가로채기라고 불리는 이 공격은 두 시스템 간 연결이 활성화된 상태를 가로채는 것이다.

은행 계좌에 로그인하고 로그 아웃하는데 걸리는 시간을 세션이라고 하는데, 이러한 세션이 해커들의 표적이 되고 대부분의 경우에 해커는 자신의 존재를 이 세션에서 확인하고 제어하며 다양한 방법으로 공격을 실행한다.

 

-SSL 스트리핑(SSL stripping)

SSL인증서는 암호화를 통해 온라인 통신을 안전하게 유지한다. 하지만 SSL 스트리핑 공격을 받은 경우, 공격자는 SSL 연결을 차단하여 프로토콜이 보안성이 있는 HTTPS에서 안전하지 않은 HTTP로 전환된다.

 

3) 중간자 공격으로부터 보호하지 위한 방법

  • 방문하는 웹사이트의 URL에 HTTPS가 있는지 확인하기
  • 웹사이트에서 SSL을 사용하는 경우, 불안정하거나 안전하지 않은 SSL 프로토콜을 사용하지 않도록 비활성화시켜야 한다
  • 출처가 불분명한 링크를 클릭하지 말기
  • 웹사이트 내 혼합 컨텐츠가 없게 만들기
  • 불법 복제된 컨텐츠를 다운로드 하지말기
  • 공용 와이파이 이용 시, 주요 데이터를 전송하거나 구매 및 결제 하지말기
  • 집/회사의 네트워크 보안을 확인하기
  • 이메일을 열기 전 반드시 발신자(보낸이)를 확인하기
  • 시스템에 적절한 보안 툴을 설치하기

 


5. 세션 하이재킹

 

1) 세션 하이재킹 공격(Session Hijacking Attack)

세션(session)은 사용자와 컴퓨터, 또는 두 대의 컴퓨터 간의 활성화된 상태를 말한다. 세션 하이재킹은 시스템 간 연결이 활성화된 상태, 즉 로그인(Login) 된 상태를 가로채는 것을 뜻한다.

세션 하이재킹은 시스템에 접근할 적법한 사용자의 아이다와 패스워드를 모를 경우 공격 대상이 이미 시스템에 접속되어 세션이 연결되어 있는 상태를 가로채기 하는 공격으로 아이디와 패스워드를 몰라도 시스템에 접근하여 자원이나 데이터를 사용할 수 있는 공격을 말한다.

즉, 세션 하이재킹은 두 시스템 간의 연결이 활성화된 상태 즉, 로그인된 상태를 가로채는 것을 말하는 것이다.

 

2) TCP 세션 하이재킹

TCP 세션 하이재키은 TCP의 고유한 취약점을 이용하여 정상적인 접속을 빼앗는 방법이다. 서버와 클라이언트에 각각 잘못된 시퀀스 넘버를 사용해서 연결된 세션에 잠시 혼란을 준 뒤 공격자가 끼어 들어가는 방법이다. 

 

3) 세션 하이재킹 공격 원리

클라이언트와 서버 사이의 패킷을 통제하고 ARP 스푸핑 등으로 통신 패킷 모두가 공격자를 지나가게 한다.

서버에 클라이언트 주소로 연결을 재설정하기 위한 RST reset 패킷을 보내며 서버는 패킷을 받아 클라이언트의 시퀀스 넘버가 재설정된 것으로 판단하고 다시 TCP3-웨이 핸드 셰이킹을 수행한다.

공격자는 클라이언트 대신 연결되어 있던 TCP 연결을 그대로 물려받게 된다.

 

4) 세션 하이재킹 공격 순서

공격자는 DoS 공격 또는 IP Spoofing을 통해 공격 대상의 클라이언트를 무력화한다.

공격 대상자와 서버 간의 TCP SYN Sequence number를 추론하여 서버와 TCP 연결을 수행한다.

세션 연결이 성공할 경우 공격자는 사용자 A(클라이언트)를 가장하여 데이터를 전송할 수 있다.

 


[실습]

1. [DOS 공격] Ping of Death

 

1) Ping of Death 공격 순서

  1. ping을 이용하여 ICMP (Internet Control Message Protocol) 패킷의 크기를 크게 키웁니다.
  2. 이러한 패킷은 네트워크를 통해 공격 네트워크에 도달하는 동안 작게 나누어집니다.(라우팅)
  3. 공격 대상은 조각화된 패킷을 모두 처리해야 하므로, 부하가 걸리게 됩니다.                                                                   - ICMP는 TCP/IP 계층 모델 프로토콜에서 3 계층인 Network 계층에 속합니다. (참고. 4 계층인 Transport에는 TCP, UDP가 있습니다.)

패킷을 빠른 속도로 서버로 전달한다.

공격을 시작하여 다른 컴퓨터에서 icmp패킷을 보내 서버 측에서 제대로 응답이 안되는 것을 확인한다.

 


2. [DOS 공격] SYN Flooding

빠른 속도로 SYN 요청 패킷을 보낸다.

 


3. [DOS 공격] Land 

hping3 -a 192.168.196.143 192.168.196.143 --icmp --flood 명령어를 이용해서 빠른 속도로 ICMP 패킷을 피해자 서버로 보낸다.

 


[출처]

https://hyess.tistory.com/250

 

스캐닝(Scanning)

스캐닝(SCAN) 1. 용어 풋프린팅(Footprinting) 대상을 선정해서 정보를 수집하는 과정(타겟팅 선정) 공격 대상의 정보를 모으는 방법(기술적인 해킹 공격, 신문, 게시판, 구글링등) 풋 프린팅에는 매우

hyess.tistory.com

https://lee-automation-lab.tistory.com/entry/IT-%EB%B3%B4%EC%95%88-%EB%AC%B4%EC%B0%A8%EB%B3%84-%EB%8C%80%EC%9E%85-Brute-Force-%EA%B3%B5%EA%B2%A9%EC%9D%B4%EB%9E%80

 

[IT보안] 무차별 대입 (Brute Force) 공격이란?

무차별 대입 공격이란? 무차별 대입(Brute Force) 공격은 인증 정보(사용자 이름과 비밀번호)를 알아내기 위해 공격자가 반복적으로, 체계적으로 매번 다른 사용자 이름과 비밀번호를 입력하는 방

lee-automation-lab.tistory.com

https://academy.binance.com/ko/articles/what-is-a-dos-attack

 

서비스 거부 공격(DoS)이란? | Binance Academy

서비스 거부 공격이란 특정 네트워크에 접근하지 못하도록 방해하는 것입니다. 이는 막대한 양의 트랙픽을 통해 웹 서버에 과부하를 일으킵니다.

academy.binance.com

https://blog.naver.com/PostView.nhn?blogId=ucert&logNo=221201640816&categoryNo=37&parentCategoryNo=0 

 

중간자 공격(Man-in-the-middle attack)이란? 그 대처방법은?

중간자 공격(Man-in-the-middle attack)으로부터 보호하고 사용자의 신뢰를 구축하여 HTTPS로 전환하...

blog.naver.com

https://onecoin-life.com/22

 

[해킹 공격 기법] 세션 하이재킹 공격(Session Hijacking Attack)개념과 공격 원리 및 순서 정리

목차 세션 하이재킹 공격 세션 하이재킹 공격(Session Hijacking Attack)이란? 세션(Session)은 사용자와 컴퓨터, 또는 두 대의 컴퓨터 간의 활성화된 상태를 말한다. 세션 하이재킹은 시스템 간

onecoin-life.com

 

'22-1학기 > 네트워크 보안(NETWORK SECURITY)' 카테고리의 다른 글

8주차 정리  (0) 2022.06.29
6주차 정리  (0) 2022.05.25
5주차 실습  (0) 2022.05.18
5주차 정리  (0) 2022.05.18
4주차 정리  (0) 2022.05.09