의견.png

"미라이 봇넷"의 두 판 사이의 차이

해시넷
이동: 둘러보기, 검색
(특징)
10번째 줄: 10번째 줄:
  
 
;감염 대상  
 
;감염 대상  
 +
loT 장비(셋탑박스, 공유기 등) 제조사마다 다양한 CPU를 사용하고 있고, CPU 환경에 적합한 리눅스 운영체제를 적용하고 있다. [[리눅스]] 운영체제를 기반으로 제작된 소스코드는 [[크로스 컴파일]]을 통해 다양한 CPU환경에서 실행가능하도록 만들어진다. 이 때문에 거의 대부분의 IoT 기기가 공격의 대상이 된다.
  
loT 장비(셋탑박스, 공유기 등) 제조사마다 다양한 CPU를 사용하고 있고, CPU환경에 적합한 리눅스 운영체제를 적용하고 있다. 리눅스 운영체제를 기반으로 제작된 소스코드는 [[크로스 컴파일]]을 통해 다양한 CPU환경에서 실행가능하도록 만들어진다. 이 때문에 거의 대부분의 IoT 기기가 공격의 대상이 된다.
+
* [[크로스 컴파일]] : 소스코드를 CPU 별로 실행 가능한 형태로 바꿔주는 행위
  
* 크로스 컴파일 : 소스코드를 CPU 별로 실행 가능한 형태로 바꿔주는 행위
 
  
;동작 원리
+
;미라이 봇넷 공격 순서
관리자 계정설정이 취약한 임베디드 기기(CCTV, NAS 등) 스캐닝˙접속→악성코드 전파 및 감염→취약한 기기 감염으로 좀비 PC 확보→봇넷 구성→ 봇넷을 이용한 디도스 공격  
+
관리자 계정설정이 취약한 임베디드 기기(CCTV, NAS 등) 스캐닝˙접속→악성코드 전파 및 감염→취약한 기기 감염으로 좀비 PC 확보→봇넷 구성→ 봇넷을 이용한 디도스 공격
  
+
 
 +
;감염대상
 +
IoT 장비(NAS, IP 카메라, 인터넷 공유기, 셋탑박스 등)는 제조사마다 다양한 CPU(ARM, MIPS, PowerPC, SuperH 등)를 사용하고 있지만 리눅스 운영체제을 사용한다. 리눅스 운영체제에서 동작 가능한 소스코드는 [[크로스 컴파일]]을 통해서 여러 CPU 환경에서 동작하는 바이너리를 쉽게 만들수 있다. 이 때문에 리눅스 운영체제를 채용한 거의 대부분의 IoT 장비가 공격의 대상이 된다.
 +
 
 +
 
 +
;스캔 기능
 +
미라이는 최초 실행 시 네트워크 스캔기능을 수행하는데 랜덤 IP 주소를 생성하여 23번 포트(Telnet)로 약 60여개의 공장 출하시 설정된 아이디와 패스워드 값을 미리 사전에 등록하여 설정을 변경하지 않은 IoT 장비에 60여개의 아이디와 패스워드를 차례대로 시도한다.
 +
 
 +
 
 +
;좀비 네트워크(봇넷) 구성
 +
IoT 기기에 접속을 성공하면 미라이 악성코드를 주입하고 실행하는 과정을 반복해 감염 장비를 확보해 거대한 봇넷을 형성한다. 악성코드를 주입할 때 IoT 장비에서 제공하는 명령어가 부족하여 다운로드에 실패할 수 있는데, 이런 경우에는 다양한 명령어를 보유한 새로운 [[Busybox]](리눅스 기반 명령어 모음도구) 를 주입하고 Busybox의 w g e t * *명령어를 이용하여 미라이 악성코드를 다운로드 받아 실행함으로써 전파를 완료한다.
 +
 
 +
 
 +
;디도스 공격
 +
이렇게 형성한 봇넷은 C&C(Command and Conquer) 에 접속하여 명령을 기다리고 있다가 공격 명령이 떨어지면 일제히 DDoS 공격을 감행한다. 공격 방식은 HTTP(GET, POST, HEAD), TCP(SYN, RST, FIN, ACK, PSH), UDP(DNS, ICMP) Flooding(홍수) 등의 공격방법을 선택한다.
 +
 
 +
 
 +
;재부팅 방지 기능
 +
IoT 장비가 동작 도중에 멈추거나 서비스가 중지되는 것을 방지하기 위해 자동 재부팅 기능(Watchdog)이 존재한다. 이 기능이 필요한 이유는 미라이 악성코드는 감염 시 메모리에만 상주하고 디스크에서 파일을 삭제하기 때문에 재부팅 시 메모리에 상주한 악성코드가 사라져 동작이 중지된다. 이를 막기 위해서 재부팅 기능을 무력화하는 기능이 악성코드 내에 포함하고 있다.
 +
 
 +
 
 +
;미라이 악성코드 변종 발견
 +
미라이 악성코드는 최근 더 많은 장치를 감염시키기 위해 윈도우용으로도 만들어져 확산되고 있으며, 라우터 및 DVR과 CCTV 시스템 등을 겨냥하고 있다.
  
 
==구성==
 
==구성==

2019년 9월 19일 (목) 18:46 판

미라이 봇넷(Mirai Botnet)이란, 일본어로 '미라이'(Mirai)는 '미래'를 뜻하는 단어로, 사물인터넷(IoT) 기기를 좀비로 만들어 네트워크상에서 해커가 마음대로 제어할 수 있게 하는 봇넷(Botnet)의 일종으로 알려져 있다. (여기서 '미라이'라는 이름은 해커 본인이 좋아했던 애니메이션 주인공의 이름을 따서 붙였다고 한다.)[1]


개요

2016년 10월, 도메인 주소 조회 (DNS, Domain Name Service) 서비스 제공업체인 Dyn이 대규모 디도스 공격을 받았다. 이로인해 Dyn이 맡고 있는 트위터, 넷플릭스, 뉴욕타임즈 등 총 1,200개가 넘는 사이트가 일제히 마비되었다. 브라이언 크랩스 블로그(KrebsonSecurity) 분석결과에 따르면 이번 디도스 공격 원인은 보안에 취약한 IoT 기기가 미라이 악성코드에 감염되어 해커의 명령을 받아 디도스 공격을 발생시킨 것으로 확인되었다. [2]


특징

감염 대상

loT 장비(셋탑박스, 공유기 등) 제조사마다 다양한 CPU를 사용하고 있고, CPU 환경에 적합한 리눅스 운영체제를 적용하고 있다. 리눅스 운영체제를 기반으로 제작된 소스코드는 크로스 컴파일을 통해 다양한 CPU환경에서 실행가능하도록 만들어진다. 이 때문에 거의 대부분의 IoT 기기가 공격의 대상이 된다.

  • 크로스 컴파일 : 소스코드를 CPU 별로 실행 가능한 형태로 바꿔주는 행위


미라이 봇넷 공격 순서

관리자 계정설정이 취약한 임베디드 기기(CCTV, NAS 등) 스캐닝˙접속→악성코드 전파 및 감염→취약한 기기 감염으로 좀비 PC 확보→봇넷 구성→ 봇넷을 이용한 디도스 공격


감염대상

IoT 장비(NAS, IP 카메라, 인터넷 공유기, 셋탑박스 등)는 제조사마다 다양한 CPU(ARM, MIPS, PowerPC, SuperH 등)를 사용하고 있지만 리눅스 운영체제을 사용한다. 리눅스 운영체제에서 동작 가능한 소스코드는 크로스 컴파일을 통해서 여러 CPU 환경에서 동작하는 바이너리를 쉽게 만들수 있다. 이 때문에 리눅스 운영체제를 채용한 거의 대부분의 IoT 장비가 공격의 대상이 된다.


스캔 기능

미라이는 최초 실행 시 네트워크 스캔기능을 수행하는데 랜덤 IP 주소를 생성하여 23번 포트(Telnet)로 약 60여개의 공장 출하시 설정된 아이디와 패스워드 값을 미리 사전에 등록하여 설정을 변경하지 않은 IoT 장비에 60여개의 아이디와 패스워드를 차례대로 시도한다.


좀비 네트워크(봇넷) 구성

IoT 기기에 접속을 성공하면 미라이 악성코드를 주입하고 실행하는 과정을 반복해 감염 장비를 확보해 거대한 봇넷을 형성한다. 악성코드를 주입할 때 IoT 장비에서 제공하는 명령어가 부족하여 다운로드에 실패할 수 있는데, 이런 경우에는 다양한 명령어를 보유한 새로운 Busybox(리눅스 기반 명령어 모음도구) 를 주입하고 Busybox의 w g e t * *명령어를 이용하여 미라이 악성코드를 다운로드 받아 실행함으로써 전파를 완료한다.


디도스 공격

이렇게 형성한 봇넷은 C&C(Command and Conquer) 에 접속하여 명령을 기다리고 있다가 공격 명령이 떨어지면 일제히 DDoS 공격을 감행한다. 공격 방식은 HTTP(GET, POST, HEAD), TCP(SYN, RST, FIN, ACK, PSH), UDP(DNS, ICMP) Flooding(홍수) 등의 공격방법을 선택한다.


재부팅 방지 기능

IoT 장비가 동작 도중에 멈추거나 서비스가 중지되는 것을 방지하기 위해 자동 재부팅 기능(Watchdog)이 존재한다. 이 기능이 필요한 이유는 미라이 악성코드는 감염 시 메모리에만 상주하고 디스크에서 파일을 삭제하기 때문에 재부팅 시 메모리에 상주한 악성코드가 사라져 동작이 중지된다. 이를 막기 위해서 재부팅 기능을 무력화하는 기능이 악성코드 내에 포함하고 있다.


미라이 악성코드 변종 발견

미라이 악성코드는 최근 더 많은 장치를 감염시키기 위해 윈도우용으로도 만들어져 확산되고 있으며, 라우터 및 DVR과 CCTV 시스템 등을 겨냥하고 있다.

구성

예방 및 대응

  • 네트워크 연결을 차단한다.
  • 네트워크와 인터넷이 끊기면 재부팅한다. 미라이 악성코드는 동적 메모리에서 동작하기에 재부팅하여 메모리를 초기화하여 해결한다.
  • 재부팅을 마치면 장치에 접근할 때 사용하는 암호를 강력한 암호로 변경한다.
  • 주기적으로 사물인터넷(IoT)기기의 보안 업데이트를 실시한다.
  • 원격 터미널을 사용하는 사물인터넷 기기에 접근할 때 자주 사용하는 포트를 모니터링한다.
  • 의심스러운 트래픽을 발견하는 즉시, 대응 방안을 통해 악성코드를 제거한다.


각주

  1. dlsghl92, 〈미라이봇넷〉, 《velog》개인 블로그, 2019-09-02
  2. , Tim Greene〈Dyn을 침몰시킨 DDoS 공격의 전개 방법…서브도메인 공격이 결정타〉, 《IT WORLD 》, 2016-10-24


참고자료

같이 보기


  의견.png 이 미라이 봇넷 문서는 보안에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.