<h6>The initial vector is an malicious document using a macro. The metadata of the maldoc is particulary interesting due to this prove that the maldoc isn't recently edited and is reused for dropped Neutrino many times.</h6>
<table>
<tr>
<td>Creator</td>
<td>Aga</td>
</tr>
<tr>
<td>Last Modified By</td>
<td>Dell</td>
</tr>
<tr>
<td>Creation Date</td>
<td>2016-04-19 09:21:00</td>
</tr>
<tr>
<td>Modified Date</td>
<td>2016-06-06 11:33:00</td>
</tr>
</table>
<h6>As the first look, we can note some constant variables can be replace and deletefor improvement the reading of the code.</h6>
<h6> We can see the both functions for auto-open the macro in the reading of the document for the Word and Excel document. This is for a common code for the both vectors or for reduce the rate of the detection, hard to say it.</h6>
<h6> The first two functions used by the macro are for encoded and decode in base 64 in using multiples interations of the data. This code can be seen in a post of a code forum seven years ago (cf links).</h6>
<h6>The next function is for delete the existing content.</h6>
``` VBA
Public Sub Wipedir(path As String)
Dim ScriptingObj
Set ScriptingObj = CreateObject("Scripting.FileSystemObject")
If ScriptingObj.folderexists(path) Then
ScriptingObj.deletefolder path
Else
End
End If
End Sub
```
<h6>The last functions are the main function and that allow to execute the macro. This xor the content of the data by 76 (0x4C), write in on the all users location and execute the loader.</h6>
<h6>The loader creates a mutex with a name that is hardcoded in the binary:"Z0BAZwxx" ,we can note too that the loader add two rules in the firewall on the victim.</h6>
<h6>The implant use multiples method for anti-VM and sandbox :</h6>
<ul>
<li><h6>Use the couple of functions {CreateToolhelp32Snapshot – Process32First– Process32Next} for list the processs and compare to a blacklist. In addition this check the list with checksum </h6></li>
``` asm
0xB1CBC652
0x46EE4F10
0x583EB7E8
0xC03EAA65
0x6D3E6FDD
0x47000343
0xC608982D
0x6169078A
0xF6EC4B30
```
<li><h6>Use the couple of functions {CreateToolhelp32Snapshot – Process32First– Process32Next} for list of the modules of the processs and compare to another blacklist.</h6></li>
``` asm
0xAC12B9FB
0x5B747561
0x53309C85
0xE53ED522
0xC106E17B
0x5608BCC4
0x6512F9D0
0xC604D52A
0x4D0651A5
0x1C669D6A
0xC2F56A18
```
<li><h6>Check if the VboxGuest is present in using QueryDosDevices</h6></li>
<li><h6>Check if the debugger is present by the couple of function {IsDebuggerPresent - CheckRemoteDebuggerPresent}</h6></li>
<li><h6>Check the delta of the time by {GetTickCount – Sleep – GetTickCount}</h6></li>
<li><h6>Use GetClassName of each result of EnumWindows (Enumate all windows in the screen) for check the blacklist class</h6></li>
``` asm
0xCF388E01
0xD486D951
0x39177889
0x6689BB92
0x3C5FF312
0xFE9EA0D5
0x6D3FA1CA
0x9B5A88D9
0x4B4576B5
0xAED304FC
0x225FD98F
```
</ul>
<h6>The list of the IP to contact are hardcoded in base64.</h6>
<h6>This can perform the following actions :</h6>
<ul>
<li><h6>Take screenshot</h6></li>
<li><h6>Capture keystrokes</h6></li>
<li><h6>Download and execute additionnal payload</h6></li>
<h6> The IOC can be exported in <ahref="https://github.com/StrangerealIntel/CyberThreatIntel/blob/master/Additional%20Analysis/Neutrino/Json/IOC.json">JSON</a></h6>
|Execution|Command-Line Interface<br>Execution through API<br>User Execution|https://attack.mitre.org/techniques/T1059/<br>https://attack.mitre.org/techniques/T1106/<br>https://attack.mitre.org/techniques/T1204/|
|Persistence|Registry Run Keys / Startup Folder|https://attack.mitre.org/techniques/T1060/|
<h6> This can be exported as <ahref="https://github.com/StrangerealIntel/CyberThreatIntel/blob/master/Additional%20Analysis/Neutrino/Json/TTPs.json">JSON</a></h6>
<h6> YARA Rules are available <ahref="https://github.com/StrangerealIntel/CyberThreatIntel/blob/master/Additional%20Analysis/Neutrino/Yara/Yara_Neutrino.yar">here</a></h6>
* [Encode64 / Decode64 in VB.NET](https://stackoverflow.com/questions/12879661/encode64-decode64-in-vb-net)
* [New Neutrino Bot comes in a protective loader](https://blog.malwarebytes.com/threat-analysis/2017/02/new-neutrino-bot-comes-in-a-protective-loader/)
* [VB2019 paper: Rich Headers: leveraging this mysterious artifact of the PE format](https://www.virusbulletin.com/virusbulletin/2020/01/vb2019-paper-rich-headers-leveraging-mysterious-artifact-pe-format/)