A. 랜섬웨어 정의
1) 랜섬웨어는 몸값을 요구하여 협박하는 Ransom과 제품을 의미하는 Ware의 합성어
- 몸값을 요구하기 위한 다양한 방법을 사용
-> 암호학을 이용
-> 비암호학을 이용
- 보통 Locker로 분류 ( MBR, 스크린세이버 등 락을 걸어 협박)
- 게임 시간이나 점수를 만족해야 풀어주는 랜섬웨어도 등장
.
B. 랜섬웨어 역사
1) 암호학을 이용한 랜섬웨어의 발전은 2013년부터 시작
- 암호학의 발전 -> 초기에 암호키 관리 미흡으로 쉽게 대응 가능
- 추적이 어려운 디지털 화폐의 발생
- 다양한 언어로 다양한 플랫폼에 적용 가능
- 배포, 제작이 서비스 형태로 제작 -> X-as-a-Service
- 기존의 고급 공격 기법과 좋바이 쉬움 -> APT + Ransomware
C. 랜섬웨어 특징
1) 하이브리드 암호 시스템
- 대칭키를 비대칭키로 암호화하는 형태
-> 파일을 빠르게 암호화하기 위해 대칭키를 사용
-> AES 나 RC4 알고리즘 사용
-> 난수 발생기로 키를 생성 ( PRNG )
- 암호화할 때 사용한 대칭키를 비대칭키로 암호 후 전송
-> RSA 사용
- 점점 암호 비트가 증가
-> 해제하기 어려움
2) 용어
- 랜섬 노트
-> 감염 후 피해자에게 협박하기 위한 메시지 / 랜섬웨어의 특징을 포함함
- 랜섬 웹
-> 웹 서버가 랜섬웨어에 감염 / 웹 사이트 방문 시 랜섬 노트를 볼 수 있음
D. 랜섬웨어 종류
1) Crypt0L0CKER
- 요구 금액 : 1.8 ~ 3.6 비트코인
- 발견일 : 2013년 9월
- 감염 경로 : 스팸 메일, Angler EK
-> 주로 스팸 메일을 통해 유통 / ZeuS 봇넷이 운영하는 스팸 메일을 이용
-> 드라이브-바이 다운로드로 클리앙에서 유표 / 최초 한글로 랜섬 노트를 제공
2) Locky
- 요구 금액 : 0.5 ~ 1 비트코인
- 발견일 : 2016년 1월
- 감염 경로 : 스팸 메일, Nuclear EK, Neutrion EK
-> 주로 스팸 메일을 통해 유통 / Dridex 봇넷이 운영하는 스팸 메일을 이용
-> Rockloader라는 다운로더를 이용 / 변종의 Zepto 랜섬웨어가 만들어짐
3) CryptXXX
- 요구 금액 : $500
- 발견일 : 2016년 4월
- 감염 경로 : Angler EK, Neutrino EK
-> 주로 드라이브-바이 다운로드로 유포 / 즉각적으로 랜섬웨어 유포하지 않음
-> Downloader를 먼저 유포한 후 CryptXXX를 유포
-> 뽐뿌에서 유포했던 랜섬웨어
E. 랜섬웨어 감염 경로
1) 악성 이메일
- 봇넷을 임대하여 진행
- 메일 서버를 탈취하여 진행
- 메일에 랜섬웨어 감염 파일을 첨부해 전달
-> 다운로더(Downloader) 형태의 파일을 전달
> 실행하면 랜섬웨어를 다운로드하고 실행
> 마이크로 오피스에서 사용하는 매크로 기능을 자주 이용
> JavaScript(js)나 Windows Script File(wsf)을 이용하기도 함
-> 첨부파일 자체가 랜섬웨어인 경우도 있음
> "고소장. doc.lnk" 바로가기와 함께 PE 파일로 구성된 "증거사진. jpg" 파일을 실행
> "고소장.doc.lnk > C:/Windows/systems32/cmd.exe /c 증거사진.jpg
-> 메일에 링크를 포함하여 드라이브-바이 다운로드 구성
2) 드라이브-바이 다운로드
- 웹 사이트 방문만으로 악성코드 감염되는 프로세스
- 소프트웨어 취약성을 이용
-> 주로 브라우저와 관련 있는 응용 프로그램을 이용
- 드라이브-바이 다운로드 종류
-> 워터링 홀 공격 ( Watering Hole Attack )
-> 멀버타이징 ( Malvertising )
3) 기업 침투(Penetration)
- 최근 랜섬웨어의 안정적인(추적이 어려운) 수익성이 높아짐
-> 기업 VS 사용자 비중이 비슷해짐
-> 기업에 침투하기 위해 고급 공격 기술을 이용
-> 기업의 자산 & 기업 구성원 대상
- 소프트웨어 취약성을 이용
-> 서버에서 서비스로 운영하는 응용 프로그램 ex) 더티카우
-> 웹 서비스 취약점을 이용 ex) 파일 업로드 & 실행 취약점
- 암호화를 정교하게 하기 위해 권한 상승 필요
ex) 아파치 스트럿츠 취약성 + 로컬 권한 상승
- 공격자가 선호하는 기업
-> 서비스 업종 > 온라인 사용자에게 서비스 제공 업종 ( 뉴스, 블로그, 호스팅 등 )
-> 생산 업종 > 온라인을 타기업과 협업하는 기업 (정보/재물- 생산에 있어 특허 / 기밀 파일, 기자재, 무역 업체 등 )
4) 복합적인 감염 경로
- 윔 유포 + 취약성 : 워너크라이(WannaCry) 사태(2017)
-> 공인 IP를 스캔하여, 취약한 SMB 프로토콜 이용하는 서비스를 감염
-> 감염된 PC에서 내부망 네트워크를 스캔하여 SMB 취약성을 이용
-> SMB 취약성은 NSA의 이터널블루(EternalBlue)를 사용
-> 킬 스위치가 존재, 확산 방지 역할
-> 피해 : 하루사이에 150개국 23만 대 컴퓨터를 감염
- 이메일 + 침투 : 페트야(Petya) 사태 (2017)
-> 스팸 메일을 통해 1차 감염
-> 내부망 네트워크를 스캔하여 SMB 취약성을 이용
-> NSA의 이터널블루(EternalBlue)를 사용 - 워너 크라이와 같은 취약성
F. Hidden-tear 실습
1) 교육을 위해 오픈소스로 제작된 랜섬웨어
- 지속적으로 이 도구를 이용하여 랜섬웨어 제작 및 유포
2) 환경 ( VMware Workstation)
- 가상 머신 이름 : 192.168.0.6 - Hidden-tear_WIn7x64
- 아이피 : 192.168.0.6
3) 실습 방법
- 바탕화면의 hidden-tear_Virgula0 폴더에 hidden-tear에 접근
- hidden-tear.sin을 실행하여 비주얼 스튜디오를 실행
- Form1.cs를 클릭하고 F7 단축키로 랜섬웨어 코드를 확인할 수 있음
[용어/개념] ISMS-P : 정보보호 및 개인정보보호 관리체계
[Algorithm] 삽입 정렬 (Insert Sort)
[Linux] nohup 명령어 사용법 - 세션 연결이 끊어지더라도 지속적으로 동작