{"id":1583,"date":"2024-09-24T10:43:48","date_gmt":"2024-09-24T10:43:48","guid":{"rendered":"https:\/\/xdr-mdr.lmntrix.com\/main_web\/?p=1583"},"modified":"2025-07-29T07:17:49","modified_gmt":"2025-07-29T07:17:49","slug":"analysis-of-strrat-campaign","status":"publish","type":"post","link":"https:\/\/lmntrix.com\/blog\/analysis-of-strrat-campaign\/","title":{"rendered":"Analysis of STRRAT Campaign"},"content":{"rendered":"<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1213\" height=\"730\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/strrat-featimg-072023.webp\" alt=\"\" class=\"wp-image-1745\"\/><\/figure>\n<\/div>\n\n\n<p><strong>STRRAT is a multi-functional Java-based Remote Administration Trojan (RAT)<\/strong> which is capable of stealing login credentials saved on browsers, logging keystrokes, and remotely controlling infected systems running on Windows platform. Also, it has the capability of servicing ransomware attacks which render files stored on victims&#8217; computers inaccessible. The sample we examined attempts to target German user base predominantly.<\/p>\n\n\n\n<p>Targeted OS \u2013 MS Windows Platform<\/p>\n\n\n\n<p>Target Geography: Austria, Canada, Germany, Spain, UK, USA<\/p>\n\n\n\n<p>Languages used by the authors \u2013 Java, VBS (Visual Basic) &amp; Powershell<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Static Analysis of STRRAT (JAR) sample<\/strong><\/h2>\n\n\n\n<p>Java Version Details of sample examined<br>MD5 Hash &#8211; 5f4dcc3b5aa765d61d8327deb882cf99<br>SHA256 \u2013 c7ed1cec47b5f8d575e739d4c77d86a6222a64539e5870229fc4488bb0b50b05<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"975\" height=\"223\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/1-15.webp\" alt=\"\" class=\"wp-image-1584\"\/><\/figure>\n\n\n\n<p><strong>Here are additional insights about this campaign after examining the source code:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The attackers behind this campaign used compromised email accounts to send out spam messages, including an image that was portrayed as a PDF attachment or any blurred images.<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>When an unsuspecting recipient opens the image, the malicious code makes a connection to a domain for downloading STRRAT payload on the victim&#8217;s machine.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"836\" height=\"351\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/2-15.webp\" alt=\"\" class=\"wp-image-1585\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>From the image below, it can be inferred that a &#8216;remote&#8217; command&nbsp;is used to initiate a&nbsp;&#8216;RDP&#8217; connection to the system and enable remote&nbsp;control of the&nbsp;mouse and keyboard input.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"825\" height=\"526\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/3-15.webp\" alt=\"\" class=\"wp-image-1586\" srcset=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/3-15.webp 825w, https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/3-15-280x180.webp 280w\" sizes=\"(max-width: 825px) 100vw, 825px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>&nbsp;The latest version of STRRAT (v1.5) is more obfuscated and modular than the previous one. It supports various features such as logging keystrokes, collecting browser passwords, and running remote commands and PowerShell.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"823\" height=\"531\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/4-16.webp\" alt=\"\" class=\"wp-image-1587\" srcset=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/4-16.webp 823w, https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/4-16-280x180.webp 280w\" sizes=\"(max-width: 823px) 100vw, 823px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The RAT focuses on stealing credentials of browsers (IE, Chrome, Firefox) and email clients (Outlook, Thunderbird, Foxmail).<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"389\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/5-16.webp\" alt=\"\" class=\"wp-image-1588\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Dynamic Analysis of STRRAT (JAR) sample<\/strong><\/h2>\n\n\n\n<p><strong>Infection Chain<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"975\" height=\"380\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/6-16.webp\" alt=\"\" class=\"wp-image-1589\"\/><\/figure>\n\n\n\n<p><strong>Sample Information<\/strong><\/p>\n\n\n\n<p>Threat Name: STRRAT | Classification: Dropper| Category: Dropper \/ Remote Administration Tool<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"975\" height=\"281\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/7-16.webp\" alt=\"\" class=\"wp-image-1590\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Technical Analysis of JAR file<\/strong>;<\/h3>\n\n\n\n<p>JAR (aka Java Archive) is a file format that aggregates several files into one file. Let\u2019s begin with our sample.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"975\" height=\"695\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/8-14.webp\" alt=\"\" class=\"wp-image-1591\"\/><figcaption class=\"wp-element-caption\">JAR &#8211; Main Content<\/figcaption><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>This Java environment differs from other programming environments in that the Java compiler does not generate machine code for a hardware-specific instruction set. Instead, the Java compiler converts Java source code into Java virtual machine instructions, which Java class files store. Basically, we can use JAR files to store class files. The class file does not target a specific hardware platform, but instead targets the Java virtual machine architecture.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"975\" height=\"289\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/9-12.webp\" alt=\"\" class=\"wp-image-1592\"\/><figcaption class=\"wp-element-caption\">Structure of JAR<\/figcaption><\/figure>\n\n\n\n<p><strong>Java Class files<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"880\" height=\"714\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/10-12.webp\" alt=\"\" class=\"wp-image-1593\"\/><\/figure>\n\n\n\n<p><strong>Importance of Class files<\/strong><\/p>\n\n\n\n<p>Java class files are stream files that are produced when a source file is compiled by the Java compiler. The class file contains tables that describe each field and method of the class. The file also contains the byte-codes for each method, static data, and descriptions that are used to represent Java objects.<\/p>\n\n\n\n<p><strong>Manifest &#8211; JAR File info<\/strong><\/p>\n\n\n\n<p>Manifest is an important one where any executable JAR file that contains a stand-alone application, a Main-Class attribute should exist that provides the name of the first piece of code for the Java Runtime Environment (JRE) to invoke when the application is run.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"975\" height=\"242\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/11-5.webp\" alt=\"\" class=\"wp-image-1594\"\/><\/figure>\n\n\n\n<p><strong>Suspicious Strings<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"975\" height=\"400\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/12-5.webp\" alt=\"\" class=\"wp-image-1595\"\/><\/figure>\n\n\n\n<p><strong>Process Tree for STRRAT<\/strong><\/p>\n\n\n<div class=\"wp-block-image is-resized\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"638\" height=\"550\" src=\"https:\/\/lmntrix.com\/blog\/wp-content\/uploads\/2024\/09\/13-5.webp\" alt=\"\" class=\"wp-image-1596\"\/><\/figure>\n<\/div>\n\n\n<p><strong>Once the system is infected, here are few activities carried out by STRRAT<\/strong>,<\/p>\n\n\n\n<p>STRRAT gathers the following information, upon execution,<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Username<\/li>\n\n\n\n<li>System OS Version<\/li>\n\n\n\n<li>System Architecture<\/li>\n\n\n\n<li>Presence of antivirus software<\/li>\n\n\n\n<li>Version of STRRAT installed\/used<\/li>\n\n\n\n<li>Geolocation of the victim (i.e.; Country)<\/li>\n\n\n\n<li>Whether STRRAT is already installed or not? <\/li>\n\n\n\n<li>Check the Browsing History &amp; System idle time<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Appendix A \u2013 Commands gleaned from deobfuscated java source code of STRRAT<\/strong><\/h3>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Remote Commands &#8211; STRRAT<\/strong><\/td><td><strong>Description of Command<\/strong><\/td><\/tr><tr><td>reboot<\/td><td>Reboot the device<\/td><\/tr><tr><td>shutdown<\/td><td>Shutdown the device<\/td><\/tr><tr><td>uninstall<\/td><td>Remove the malware from the device<\/td><\/tr><tr><td>disconnect<\/td><td>Disconnect the device from the C2 server<\/td><\/tr><tr><td>down-n-exec<\/td><td>Download a file from a URL and execute it<\/td><\/tr><tr><td>update<\/td><td>Update the malware<\/td><\/tr><tr><td>up-n-exec<\/td><td>Upload a file directly to the device from the C2 server and then execute it<\/td><\/tr><tr><td>remote-cmd<\/td><td>Remote command prompt<\/td><\/tr><tr><td>power-shell<\/td><td>Remote PowerShell prompt<\/td><\/tr><tr><td>file-manager<\/td><td>View files on the device<\/td><\/tr><tr><td>processes<\/td><td>Lists running processes on the device<\/td><\/tr><tr><td>startup-list<\/td><td>Lists startup items enabled on the device<\/td><\/tr><tr><td>remote-screen<\/td><td>Remotely view the device screen<\/td><\/tr><tr><td>rev-proxy<\/td><td>Use the device as a reverse proxy server<\/td><\/tr><tr><td>hrdp-new<\/td><td>Utilize a Hidden RDP, enable a Remote Desktop client<\/td><\/tr><tr><td>hrdp-res<\/td><td>Utilize a Hidden RDP while taking argument<\/td><\/tr><tr><td><\/td><td><\/td><\/tr><tr><td><strong>Keylogging<\/strong><\/td><td><strong>Description of Command<\/strong><\/td><\/tr><tr><td>keylogger<\/td><td>Start keylogging on the device, send logs to the C2 server<\/td><\/tr><tr><td>o-keylogger<\/td><td>Start offline keylogging on the device, save the logs to the disk<\/td><\/tr><tr><td><\/td><td><\/td><\/tr><tr><td><strong>Credential Stealer<\/strong><\/td><td><strong>Description of Command<\/strong><\/td><\/tr><tr><td>chrome-pass<\/td><td>Extract Chrome passwords from device and send to C2<\/td><\/tr><tr><td>foxmail-pass<\/td><td>Extract Fox mail passwords from device and send to C2<\/td><\/tr><tr><td>outlook-pass<\/td><td>Extract Outlook passwords from device and send to C2<\/td><\/tr><tr><td>fox-pass<\/td><td>Extract Firefox passwords from device and send to C2<\/td><\/tr><tr><td>tb-pass<\/td><td>Extract Thunderbird passwords from device and send to C2<\/td><\/tr><tr><td>ie-pass<\/td><td>Extract Internet Explorer passwords from device and send to C2<\/td><\/tr><tr><td>all-pass<\/td><td>Extract all passwords from device and send to command and C2<\/td><\/tr><\/tbody><\/table><\/figure>\n<\/div><\/div>\n<\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Appendix B &#8211; Indicators of Compromise for STRRAT<\/strong><\/h3>\n\n\n\n<p><strong>Network Indicators<\/strong><\/p>\n\n\n\n<p>hxxp[:\/\/]wshsoft[.]company\/jre7[.]zip<\/p>\n\n\n\n<p>hxxps[:\/\/]pastebin[.]com\/raw\/Jdnx8jdg<\/p>\n\n\n\n<p>hxxps[:\/\/]pastebin[.]com\/u\/wshsoft<\/p>\n\n\n\n<p>pluginserver[.]duckdns[.]org<\/p>\n\n\n\n<p>hxxp[:\/\/]str-master[.]pw\/strigoi\/server\/ping[.]php?lid=<\/p>\n\n\n\n<p>moregrace[.]duckdns[.]org<\/p>\n\n\n\n<p>hxxp[:\/\/]jbfrost[.]live\/strigoi\/server\/?hwid=1&amp;lid=m&amp;ht=5<\/p>\n\n\n\n<p>palaintermine[.]duckdns[.]org<\/p>\n\n\n\n<p>ip-api[.]com\/json\/<\/p>\n\n\n\n<p>hxxp[:\/\/]wshsoft[.]company\/multrdp[.]jpg<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Host Indicators<\/strong><\/p>\n\n\n\n<p>HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run\\ntfsmgr<\/p>\n\n\n\n<p>64578lock.file<\/p>\n\n\n\n<p>3219lock.file<\/p>\n\n\n\n<p>Scheduled Task &#8211; &#8220;Skype&#8221;<\/p>\n\n\n\n<p>HKLM\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System \/v dontdisplaylastusername = 1<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>STRRAT JAR IOC<\/strong><\/p>\n\n\n\n<p>hXXp:\/\/jbfrost[.]live\/strigoi\/server\/?hwid=1&amp;lid=m&amp;ht=5<\/p>\n\n\n\n<p>carLambo<\/p>\n\n\n\n<p>HBrowserNativeApis<\/p>\n\n\n\n<p>config.txt<\/p>\n\n\n\n<p>loorqhustq<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>MITRE ATT&amp;CK Tactics &amp; Techniques for STRRAT<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>ID<\/td><td>Tactic<\/td><td>Technique<\/td><\/tr><tr><td>TA0001<\/td><td>Initial Access<\/td><td>Spearphishing Attachment<\/td><\/tr><tr><td>TA0002<\/td><td>Execution<\/td><td>Windows Scripting &#8211; JAR Exploitation for Client Execution<\/td><\/tr><tr><td>TA0003<\/td><td>Persistence<\/td><td>Services File Permissions Weakness Registry Run Keys \/ Startup Folder<\/td><\/tr><tr><td>TA0004<\/td><td>Privilege Escalation<\/td><td>Scheduled Task<\/td><\/tr><tr><td>TA0005<\/td><td>Defense Evasion<\/td><td>Modify Registry Obfuscated Files or Information Virtualization Evasion Technique<\/td><\/tr><tr><td>TA0006<\/td><td>Credential Access<\/td><td>Credentials in Registry Credentials in Files Credential Dumping<\/td><\/tr><tr><td>TA0007<\/td><td>Discovery<\/td><td>System Network Configuration Discovery Process Discovery File and Directory Discovery Query Registry<\/td><\/tr><tr><td>TA0008<\/td><td>Lateral Movement<\/td><td>Remote file copy<\/td><\/tr><tr><td>TA0009<\/td><td>Collection<\/td><td>Archive Collected Data Data from Local System<\/td><\/tr><tr><td>TA0011<\/td><td>C&amp;C Server<\/td><td>Encrypted Channels Web Protocols Standard Application Layer Protocol Standard Cryptographic Protocol etc.,<\/td><\/tr><\/tbody><\/table><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>STRRAT is a multi-functional Java-based Remote Administration Trojan (RAT) which is capable of stealing login credentials saved on browsers, logging keystrokes, and remotely controlling infected systems running on Windows platform. Also, it has the capability of servicing ransomware attacks which render files stored on victims&rsquo; computers inaccessible. The sample we examined attempts to target German [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1745,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[21],"tags":[],"class_list":["post-1583","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-labs"],"_links":{"self":[{"href":"https:\/\/lmntrix.com\/blog\/wp-json\/wp\/v2\/posts\/1583","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lmntrix.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lmntrix.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lmntrix.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lmntrix.com\/blog\/wp-json\/wp\/v2\/comments?post=1583"}],"version-history":[{"count":3,"href":"https:\/\/lmntrix.com\/blog\/wp-json\/wp\/v2\/posts\/1583\/revisions"}],"predecessor-version":[{"id":4401,"href":"https:\/\/lmntrix.com\/blog\/wp-json\/wp\/v2\/posts\/1583\/revisions\/4401"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/lmntrix.com\/blog\/wp-json\/wp\/v2\/media\/1745"}],"wp:attachment":[{"href":"https:\/\/lmntrix.com\/blog\/wp-json\/wp\/v2\/media?parent=1583"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lmntrix.com\/blog\/wp-json\/wp\/v2\/categories?post=1583"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lmntrix.com\/blog\/wp-json\/wp\/v2\/tags?post=1583"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}