{"id":84677,"date":"2017-08-11T12:04:51","date_gmt":"2017-08-11T06:34:51","guid":{"rendered":"https:\/\/blogs_admin.quickheal.com\/?p=84677"},"modified":"2017-08-11T12:24:19","modified_gmt":"2017-08-11T06:54:19","slug":"technical-analysis-globeimposter-ransomware-quick-heal-security-labs","status":"publish","type":"post","link":"https:\/\/www.quickheal.com\/blogs\/technical-analysis-globeimposter-ransomware-quick-heal-security-labs\/","title":{"rendered":"An analysis of GlobeImposter Ransomware by Quick Heal Security Labs"},"content":{"rendered":"<p><strong>GlobeImposter Ransomware<\/strong> has been increasingly active and observed recently to be appending different suffixes to files it encrypt. A few patterns observed are using 3 random numbers such as \u201c.492, .490, .725, .726, and .707\u201d, random alphanumeric words such as \u201c.p1crypt, .A1crypt, .BRT92, and .mtk118\u201d and suffixes like \u201c.OCEAN, .SEA, .ROSE, .ASTRA, and .DECODED\u201d.<\/p>\n<p>Earlier, GlobeImposter Ransomware used to employee RDP (Remote Desktop Connection) hack only, but for the last couple of weeks, we have been observing it to be using malspam campaigns.<\/p>\n<p>Most script files observed in previous malspam campaigns used multiple URLs as backup to download the payload through Windows Script Host (WSH) and\/or use of Powershell for evasion. The GlobeImposter propagation has been largely through Blank the Slate Malspam Campaign mostly featuring JS\/VBS script files.<\/p>\n<p>Read more on <a href=\"https:\/\/blogs.quickheal.com\/analysis-blank-slate-malspam-campaign-quick-heal-security-labs\/\">Blank Slate Malspam Campaign<\/a><\/p>\n<p>We have observed several domains being used for delivering the malicious payload through the script files received by Quick Heal Security Labs. The payload on the malicious domains has been observed to vary and also seems to encrypt files with different suffixes. The domains observed in the script files are either compromised or are newly registered for malicious purposes.<\/p>\n<p>We have debugged heavily obfuscated malicious JS files for understanding the malicious code which is being used for the payload delivery. Below is one of the script files \u201c<strong>31408.js\u201d<\/strong> received from the malspam campaign for our analysis.<\/p>\n<figure id=\"attachment_84682\" aria-describedby=\"caption-attachment-84682\" style=\"width: 558px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-84682\" src=\"https:\/\/blogs_admin.quickheal.com\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware1.png\" alt=\"Fig 1. Obfuscated JavaScript File\" width=\"558\" height=\"298\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware1.png 558w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware1-300x160.png 300w\" sizes=\"(max-width: 558px) 100vw, 558px\" \/><figcaption id=\"caption-attachment-84682\" class=\"wp-caption-text\">Fig 1. Obfuscated JavaScript File<\/figcaption><\/figure>\n<p>Interestingly, the script had a fail-safe &#8211; an \u201cException Handler\u201d. The script file initially used Windows Script Host to deliver the payload, however, in case if there was an exception due to uncertain reasons it will invoke the exception handler which executes PowerShell to deliver the ransomware payload.<\/p>\n<figure id=\"attachment_84683\" aria-describedby=\"caption-attachment-84683\" style=\"width: 800px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-84683\" src=\"https:\/\/blogs_admin.quickheal.com\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware2.png\" alt=\"Fig 2. De-obfuscated JavaScript Code\" width=\"800\" height=\"272\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware2.png 800w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware2-300x102.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware2-768x261.png 768w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware2-650x221.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware2-789x268.png 789w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-84683\" class=\"wp-caption-text\">Fig 2. De-obfuscated JavaScript Code<\/figcaption><\/figure>\n<p>The de-obfuscated code has a domain (marked in red as seen in figure 2) which is the same for both the main codes which used HTTP Get Request and the exception code which delivered the payload by PowerShell. <strong>Quick Heal Browsing Protection<\/strong> blocks the malicious URL and prevents the download of the payload.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-84684 aligncenter\" src=\"https:\/\/blogs_admin.quickheal.com\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware3.png\" alt=\"globeimposter-ransomware3\" width=\"392\" height=\"145\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware3.png 392w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware3-300x111.png 300w\" sizes=\"(max-width: 392px) 100vw, 392px\" \/><\/p>\n<p>The code for the WSH downloaded the payload to,<\/p>\n<p><strong>C:\\Users\\&lt;user&gt;\\AppData\\Roaming Microsoft\\Windows\\Templates\\{6_RandomNumbers}.exe, <\/strong>while in case the script file hits an exception the payload is downloaded to,<\/p>\n<p>C<strong>:\\Users\\&lt;user&gt;\\AppData\\Roamingrnd.exe<\/strong><\/p>\n<p>Furthermore, a minor mistake was observed in the PowerShell code. The code has a target download location \u2018<strong>%appdata%rnd.exe\u2019 <\/strong>which is supposed to be \u2018<strong>%appdata%\\rnd.exe\u2019. <\/strong>Thus, payload gets downloaded at \u201cC:\\Users\\&lt;user&gt;\\AppData\\<strong>Roamingrnd.exe<\/strong>\u201d instead of inside the Roaming Folder giving the payload its name as <strong>Roamingrnd.exe<\/strong> instead of <strong>rnd.exe.<\/strong><\/p>\n<p>When we executed the \u201c<strong>31408.js<\/strong>\u201d, the GlobeImposter payload was downloaded from <strong>\u201chxxp:\/\/foolerpolwer.info\/admin.php?f=3\u201d<\/strong><strong>. <\/strong>In our test environment, the downloaded file name was <strong>725947.exe. <\/strong>As seen from the image below, the script file put up an HTTP request to the malicious domain, which received a <strong>PE file<\/strong> (Executable) with the filename <strong>\u201c3\u201d.<\/strong> The file is further renamed and moved to the below location and the new file name is generated using Math.Random() function as seen in fig 2.<\/p>\n<figure id=\"attachment_84685\" aria-describedby=\"caption-attachment-84685\" style=\"width: 870px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-84685\" src=\"https:\/\/blogs_admin.quickheal.com\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware4.png\" alt=\"Fig. HTTP Request\/Response for Payload\" width=\"870\" height=\"430\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware4.png 870w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware4-300x148.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware4-768x380.png 768w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware4-650x321.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware4-789x390.png 789w\" sizes=\"(max-width: 870px) 100vw, 870px\" \/><figcaption id=\"caption-attachment-84685\" class=\"wp-caption-text\">Fig 4. HTTP Request\/Response for Payload<\/figcaption><\/figure>\n<p>When the dropped payload is executed, it de-obfuscates the malicious code inside memory from its resource section and is responsible for carrying out the ransomware activity. It further creates a child process with \u201cCREATE_SUSPENDED\u201d flag, does memory code injection with de-obfuscated code using \u2018WriteProcessMemory\u2019 and resumes the thread\/process.<\/p>\n<figure id=\"attachment_84686\" aria-describedby=\"caption-attachment-84686\" style=\"width: 624px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-84686\" src=\"https:\/\/blogs_admin.quickheal.com\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware5.png\" alt=\"Fig 5. Creation of child process with CREATE_SUSPENDED Flag.\" width=\"624\" height=\"187\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware5.png 624w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware5-300x90.png 300w\" sizes=\"(max-width: 624px) 100vw, 624px\" \/><figcaption id=\"caption-attachment-84686\" class=\"wp-caption-text\">Fig 5. Creation of child process with CREATE_SUSPENDED Flag.<\/figcaption><\/figure>\n<p>Before the encryption activity begins, the injected process executes a routine where it terminates the processes: outlook, ssms, postgre, 1c, SQL, excel, and word using taskkill.<\/p>\n<p>Terminating the above applications gives the payload access to more files as the files held by the processes are released.<\/p>\n<figure id=\"attachment_84687\" aria-describedby=\"caption-attachment-84687\" style=\"width: 624px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-84687\" src=\"https:\/\/blogs_admin.quickheal.com\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware6.png\" alt=\"Fig. De-Obfuscated PE File in Buffer address dump\" width=\"624\" height=\"182\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware6.png 624w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware6-300x88.png 300w\" sizes=\"(max-width: 624px) 100vw, 624px\" \/><figcaption id=\"caption-attachment-84687\" class=\"wp-caption-text\">Fig 6. De-Obfuscated PE File in Buffer address dump<\/figcaption><\/figure>\n<p>In order to explain the malware execution, we have put up a process tree for the GlobeImposter Ransomware payload after execution. As mentioned earlier, we can see that after the script downloads the payload which invokes a child process.<\/p>\n<figure id=\"attachment_84678\" aria-describedby=\"caption-attachment-84678\" style=\"width: 1096px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-84678\" src=\"https:\/\/blogs_admin.quickheal.com\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware7.png\" alt=\"Fig 7. GlobeImposter Execution Process Tree\" width=\"1096\" height=\"199\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware7.png 1096w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware7-300x54.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware7-768x139.png 768w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware7-650x118.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware7-789x143.png 789w\" sizes=\"(max-width: 1096px) 100vw, 1096px\" \/><figcaption id=\"caption-attachment-84678\" class=\"wp-caption-text\">Fig 7. GlobeImposter Execution Process Tree<\/figcaption><\/figure>\n<p>The child process also drops a batch file which is executed after the encryption activity is completed. The batch file observed in our test environment <strong>\u201c__t8D.tmp.bat\u201d <\/strong>is responsible for deleting Volume shadow copies, Remote Desktop information stored in system registries and the file present at <strong>%UserProfile%\\Documents\\Default.rdp. <\/strong>The batch file also removes all traces from the Event Viewer Logs using <strong>wevutil.exe.<\/strong><\/p>\n<figure id=\"attachment_84679\" aria-describedby=\"caption-attachment-84679\" style=\"width: 733px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-84679\" src=\"https:\/\/blogs_admin.quickheal.com\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware8.png\" alt=\"Fig 8. Dropped Batch File\" width=\"733\" height=\"206\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware8.png 733w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware8-300x84.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware8-650x183.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware8-304x84.png 304w\" sizes=\"(max-width: 733px) 100vw, 733px\" \/><figcaption id=\"caption-attachment-84679\" class=\"wp-caption-text\">Fig 8. Dropped Batch File<\/figcaption><\/figure>\n<p>Another change we observed in the GlobeImposter was the use of persistence. A registry was dropped in <strong>HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce <\/strong>so that on restart, the payload is executed again.<\/p>\n<p>This seems very odd as the ransomware used <strong>wevutil.exe<\/strong> to remove traces from event logs and further had a self-delete routine after completing the execution and keep the RunOnce AutoStart persistence.<\/p>\n<figure id=\"attachment_84680\" aria-describedby=\"caption-attachment-84680\" style=\"width: 497px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-84680\" src=\"https:\/\/blogs_admin.quickheal.com\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware9.png\" alt=\"Fig 9. Persistence Technique (Dropped Registry) \" width=\"497\" height=\"185\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware9.png 497w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware9-300x112.png 300w\" sizes=\"(max-width: 497px) 100vw, 497px\" \/><figcaption id=\"caption-attachment-84680\" class=\"wp-caption-text\">Fig 9. Persistence Technique (Dropped Registry)<\/figcaption><\/figure>\n<p>The files encrypted were appended <strong>\u201c.492\u201d<\/strong> as a suffix to the original file name and extension, however, during later hours, we observed a different payload with similar activity appending <strong>\u201c.astra\u201d<\/strong> as a suffix. The ransom note still had the name \u201c<strong>here_your_files!.html<\/strong>\u201d in both the variants. The malicious payload also seems to have a valid Digital Signature which might also help the malware evade detection by a few security products.<\/p>\n<figure id=\"attachment_84681\" aria-describedby=\"caption-attachment-84681\" style=\"width: 408px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-84681\" src=\"https:\/\/blogs_admin.quickheal.com\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware10.png\" alt=\"Fig 10. Digital Signature\" width=\"408\" height=\"96\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware10.png 408w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2017\/08\/GlobeImposter-Ransomware10-300x71.png 300w\" sizes=\"(max-width: 408px) 100vw, 408px\" \/><figcaption id=\"caption-attachment-84681\" class=\"wp-caption-text\">Fig 10. Digital Signature<\/figcaption><\/figure>\n<p>GlobeImposter seems to have evolved after it was previously observed only as an RDP Hack exclusive malware mainly because of its <strong>RAAS nature.<\/strong> Now the outbreak campaigns seem like it wants to be there with the other big ransomware such as Locky, Cerber, and Troldesh. Only time will tell if we could get our hands on with a decryptor as it has been the case with previous GlobeImposter variants.<\/p>\n<p><strong>Quick Heal Detection \u00a0<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/www.quickheal.co.in\/home-users\/quick-heal-total-security\" target=\"_blank\"><strong>Quick Heal Browsing Protection<\/strong><\/a> blocks malicious URLs as <strong>Harmful<\/strong><\/li>\n<li>Quick Heal Virus Protection has detection for the script file as<strong> \u201cJS.Ransom.T\u201d <\/strong>and the payload is detected as \u201c<strong>GlobImpost\u201d. <\/strong><\/li>\n<li>The malicious bat file is detected in Quick Heal Virus Protection as<strong> \u201cBAT.Agent.EP\u201d.<\/strong><\/li>\n<\/ul>\n<p><strong>IOCs<br \/>\nHashes<br \/>\nScript:<\/strong><\/p>\n<ul>\n<li>172fc1e1c84eeccaa2cc4f646ba929ff1177eda3a59f57b7aa4ac0c4083f1046<\/li>\n<\/ul>\n<p><strong>Payload:<\/strong><\/p>\n<ul>\n<li>1886123ec6ddd00b6fa46f7f76a27add6b0d90368a52b570ba67133717e50d9d<\/li>\n<li>2da51aaa81c4a93f272e9a57976abbd09b67efb3f9c533851f495ba7614792a1<\/li>\n<\/ul>\n<p><strong>Associated Files<\/strong><\/p>\n<ul>\n<li>here_your_files!.html<\/li>\n<li>tmp.bat<\/li>\n<\/ul>\n<p><strong>Network Connections<\/strong><\/p>\n<ul>\n<li>hxxp:\/\/foolerpolwer.info\/admin.php?f=3<\/li>\n<\/ul>\n<p><strong>\u00a0<\/strong><\/p>\n<p><strong>Acknowledgement<br \/>\n<\/strong><\/p>\n<ul>\n<li>Subject Matter Expert<br \/>\nNikhil Yeole, Prashant Tilekar, Shantanu Vichare | Quick Heal Security Labs<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>GlobeImposter Ransomware has been increasingly active and observed recently to be appending different suffixes to files it encrypt. A few patterns observed are using 3 random numbers such as \u201c.492, .490, .725, .726, and .707\u201d, random alphanumeric words such as \u201c.p1crypt, .A1crypt, .BRT92, and .mtk118\u201d and suffixes like \u201c.OCEAN, .SEA, .ROSE, .ASTRA, and .DECODED\u201d. Earlier, [&hellip;]<\/p>\n","protected":false},"author":29,"featured_media":84688,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[910],"tags":[1486],"class_list":["post-84677","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ransomware","tag-globeimposter-ransomware"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/posts\/84677"}],"collection":[{"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/users\/29"}],"replies":[{"embeddable":true,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/comments?post=84677"}],"version-history":[{"count":5,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/posts\/84677\/revisions"}],"predecessor-version":[{"id":84694,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/posts\/84677\/revisions\/84694"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/media\/84688"}],"wp:attachment":[{"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/media?parent=84677"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/categories?post=84677"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/tags?post=84677"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}