Not Petya 라는 새로운 Ransomware가 발견되었습니다.
기존의 Petya Ransomware의 경우처럼 둘다 Boot drive마스터 부트 레코드(MBR)을 악의적인

로더로 대체하는 행동을 하기 때문에 원래 Petya 의 종류로 확인되었습니다.

 

그러나 이전의 WannaCry와 유사한 NSA EternalBlue Exploit을 사용하는 등 새로운 Petya Ransomware에는 Petya와 비교하여 여러가지 새로운 점이 있습니다.


오늘은 Not Petya 라는 Ransomware에 대해 포스팅 하도록 하겠습니다.

감염 방식은 다음과 같습니다.


1. 멀웨어 실행시 시스템 및 관련 작업 종료를 먼저 설정합니다.

 

 

2. 그런 다음 대상을 찾는 로컬 네트워크를 통과합니다.

 

 

3. 기존 IP는 SMB 서비스를 확인하고 가능한 경우 감염됩니다.

 

 

3.5. 다음 코드는 IP/ADMIN$ 경로가 검색된 로컬 컴퓨터로 전송되는 SMB 요청을 보여줍니다.

 

 

4. 설정된 시간이 지나면 MBR이 교체되고 시스템이 재부팅 됩니다.
아래는 이전의 Petya 버전과 유사한 가짜 시스템 복구 메시지를 보여줍니다.

 

 

5. 피해자는 암호 해독 비용을 지불해야 합니다.

 

 

5.5. Bitcoin의 주소가 멀웨어에 하드 코드 된 것으로 확인되었습니다.

 

 

6. 코드에 따라 WMIC(Windows Management Instrumentation Command-line) 인터페이스가
사용
되었습니다.

 

 

지불을 수락하는 비트 코인 주소가 Exploit에서 확인되었습니다.
총 34건의 거래가 8,600 달러 이상으로 나타났습니다.

추가 분석을 통해 악성코드가 MBR을 제외한 하드 드라이브의 시작 섹터를 Clear하여 시스템을 복구 할 수 없게 만듭니다.

그러나 시스템의 파일은 암호화되어 복구 가능하지만, 전문 지식을 갖춘 전문가만이 해독키를 사용하여 복구 할 수 있습니다.

● 전체 코드 단계별 내용

먼저 필요한 권한을 제공한 다음 실행중인 프로세스를 검사하여 키가 특정 값과 일치하면 나중에 수행하거나 수행하지 않을 키 (각 프로세스 이름에 xor 기반 알고리즘 사용)를 작성합니다.
수단은 발견된 경우 멀웨어가 일부 작업을 수행하지 못하게 하는 일부 프로세스 이름을 찾습니다.

 

다음으로 .dll 파일이 windows 폴더에 이미 설치되어 있는지 확인합니다.
설치된 경우 샘플은 더 이상 수행하지 않습니다.
다음으로 원시 디스크를 감염시킵니다.

 

디스크 감염 :

 

 

먼저 논리적 드라이브 C:\의 첫 섹터 뒤에 0x200 바이트를 덮어 씁니다.
이것은 Volumn Boot Record가 존재하는 곳으로, 1섹터 이상입니다.
따라서 VBR의 두 번째 섹터는 사라졌습니다.

 

시스템을 복구 할 수 없게 되었으며, 이전에 실행중인 프로세스의 결과에 따라 MBR을 감염시킵니다.
Crypto apis를 사용하여 60개의 임의의 바이트 버퍼를 만든 다음 각 바이트를 인덱스로 사용하여
하드 코딩 된 다른 문자 목록을 선택하여 감염된 MBR이 부팅 화면에 표시한 개인 설치 키를

생성합니다.

 

 

다음으로 MBR을 읽고 0x7로 xor를 읽습니다.
나중에 섹터 34에 이 xored MBR을 기록합니다.
또한 파티션의 LBA (디스크의 시작 위치)가 40 (0x28)보다 작은지 확인하여 자체 MBR 코드를 쓸 충분한 공간이 있는지 확인합니다.

 

그러나 이 검사 코드는 오류가 있으며 마지막 파티션만 검사합니다.
그런 다음 0-24, 32, 33 및 34 섹터를 덮어 씁니다.
0-24 섹터는 MBR 코드를 포함하고, 32 비트 코인 주소와 임의의 개인 식별 키를 포함하며, 33 섹터는 0x7이 포함 된 모든 바이트를 포함하고 34 섹터는 원래의 MBR을 포함합니다.
어떻게든 MBR 감염이 실패하면 MBR에 쓰레기를 작성하려고 시도합니다.

 

Mimikatz 다음은 자체 임베디드 리소스에서 mimikatz를 검색하고 임시 디렉토리에 임시 파일

놓습니다.
GUID에서 NamedPipe를 만들고 파이프 이름을 매개 변수로 전달하여 다음에 만드는 Mimikatz 프로세스에 전달합니다.

 

 

Mimikatz는 다음과 같이 찾을 수 있는 모든 사용자 Username/Password 조합을 제공합니다.

 

 

여기에 Sagar와 SonicWall이 ‘:’로 구분된 사용자 이름과 암호가 있습니다.
이것은 명명된 파이프를 통해 수신된 후 ':'구분 기호를 검색하고 모든 사용자 이름과 암호를

기록합니다.

 

나중에 이러한 자격 증명을 사용하여 PSEXEC 및 WMI를 사용하여 네트워크를 통해 다른 시스템을

감염시킵니다.
그런 다음 임시 디렉터리에 있는 mimikatz를 null로 설정합니다.

그리고 Windows 디렉토리에 'dllhost.dat'로 포함 된 PSExec을 삭제합니다.


PSExec 및 WMI 사용 : 측면 전파의 경우 로컬 네트워크의 모든 IP 주소를 열거하며
mimikatz에서 찾은 사용자 이름, 암호를 사용하여 해당 원격 시스템에서 admin$ 공유에

액세스하려 시도합니다.

 

 

공유에 액세스 할 수 있으면 원격 컴퓨터의 Windows 디렉터리에 자체 복사본이 삭제됩니다.
그런 다음 먼저 복사본을 실행하려고 시도합니다.

 

 

먼저 PSExec를 시도합니다.
: C:\windows\dllhost.dat\\-accepteula -s -d C:\Windows\System32\rundll32.exe "C:\Windows \",#1

 

 

이것이 성공하지 못하면 wmic와 명령을 시도합니다 :
: C:\windows\wbem\wmic.exe / node : " " /사용자:" "/ password :" "프로세스 호출은"C:\Windows \System32\rundll32.exe "를 만듭니다. C:\Windows\" #1

 

위 코드 분석에 따르면 이 샘플의 코드는 원래 Petya ransomware의 모든 코드와 비슷하지 않습니다.
유일한 유사점은 MBR 감염 행위입니다.
따라서 이것이 ransomware의 Petya 계열과 관련된 사람들 이외의 다른 사람의 작업일 가능성이

있음을 결론 지을 수 있습니다.

 

이 멀웨어에 의한 공격으로부터 사전 예방을 하거나 피해를 완화하려면 다음을 수행하십시오.

 

1. 컴퓨터에 최신 패치를 적용하고 특히 Microsoft Windows 보안 업데이트 MS17-010을

적용하십시오.
2. 포트 135, 139 및 445로 들어오는 요청을 차단하도록 Windows 방화벽을 설정합니다.
3. Windows에서 SMBv1을 사용하지 않도록 설정.
4. 특히 회사 네트워크 환경에서 여러 네트워크 섹션으로 네트워크를 분류하십시오.
5. 손상을 줄이기 위해 가짜 CHKDSK 화면이 보이면 컴퓨터의 전원을 끄십시오.
6. 몸값을 지불하지 마십시오.
첫째, 전자 메일 공급자인 Posteo가 전자 메일을 차단했기 때문에 지불 메시지가 전달되지 않습니다.
두 번째로 추가 분석에 따르면 악용 코드는 컴퓨터를 복구 할 수 없습니다.

 

오늘은 Not Petya Ransomware 관련 이슈에 대한 포스팅을 하였습니다.
다음에도 유익한 자료 올릴 수 있도록 하겠습니다.
감사합니다.

 


 



 

Posted by 로버무트

댓글을 달아 주세요