{"id":4206,"date":"2023-01-26T01:55:00","date_gmt":"2023-01-26T01:55:00","guid":{"rendered":"\/cybersecurity-blog\/?p=4206"},"modified":"2023-03-02T07:50:10","modified_gmt":"2023-03-02T07:50:10","slug":"cryptbot-infostealer-malware-analysis","status":"publish","type":"post","link":"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/","title":{"rendered":"CryptBot Infostealer: Malware Analysis"},"content":{"rendered":"\n<p>We recently analyzed CryptBot, an infostealer detected by the <a href=\"https:\/\/any.run\/?utm_source=anyrunblog&amp;utm_medium=article&amp;utm_campaign=cryptbot&amp;utm_content=landing\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\">ANY.RUN online malware sandbox<\/a>.&nbsp;<br><\/p>\n\n\n\n<p>Through our research, we collected information about MITRE ATT&amp;CK techniques used by this malware. We also learned about how this infostealer stores and encrypts its configuration information, and we wrote a Python script to extract the configuration.&nbsp;<br><\/p>\n\n\n\n<p>Let\u2019s go over the whole process step-by-step.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Brief description of CryptBot malware&nbsp;<\/h2>\n\n\n\n<p>CryptBot is an infostealer targeting Windows operation systems that was first discovered in the wild in 2019. It is designed to steal sensitive information from infected computers, such as credentials for browsers, cryptocurrency wallets, browser cookies, credit card information, and screenshots of the infected system. It is distributed through phishing emails and cracked software.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"841\" height=\"587\" src=\"\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/CryptBot-infographic-1.png\" alt=\"CryptBot malware\" class=\"wp-image-4228\" srcset=\"https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/CryptBot-infographic-1.png 841w, https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/CryptBot-infographic-1-300x209.png 300w, https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/CryptBot-infographic-1-768x536.png 768w, https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/CryptBot-infographic-1-370x258.png 370w, https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/CryptBot-infographic-1-270x188.png 270w, https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/CryptBot-infographic-1-740x517.png 740w\" sizes=\"(max-width: 841px) 100vw, 841px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">CryptBot dynamic analysis in a malware sandbox<\/h2>\n\n\n\n<p>During the analysis we&#8217;ll take a look at the sample:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>MD5: 12d20a973f8cd9c6373929ae14efe123<br>URL: <a href=\"https:\/\/app.any.run\/tasks\/5c6e7021-f223-495c-a332-21ef1276e4cf?utm_source=anyrunblog&amp;utm_medium=article&amp;utm_campaign=cryptbot&amp;utm_content=task\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"https:\/\/app.any.run\/tasks\/5c6e7021-f223-495c-a332-21ef1276e4cf  (opens in a new tab)\">https:\/\/app.any.run\/tasks\/5c6e7021-f223-495c-a332-21ef1276e4cf <\/a><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>A single process (Fig. 1) is created when the malware starts, which actively uses the file system (15k+ events) and the registry (2k+ events).<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/gg_Gx6xpGY7LAx4NuyRQQbDZe8RqNoCkCal-tRTqon3-ol4s6R5lZEzhM7pDDJJM3-vSlHWNfj_tcxVl9cD4Ff1Efc38IGp7JmOK06v29cQaFeICXqsQOuUTuadVRa9hrp-KXJfYb4JaTJuf5Yb2W_DKPt9u1U6g1Q5-l0H-zmdUgoN6ybYwDCnNkCdH6Q\" alt=\"CryptBot\u2019s process \"\/><figcaption class=\"wp-element-caption\">Fig. 1 \u2014 CryptBot\u2019s process&nbsp;<\/figcaption><\/figure>\n\n\n\n<p>Ok, now that we got the basics out of the way, let\u2019s break down this malware and list all of the techniques it uses. We\u2019ll break sort the information by technique as we go from here.&nbsp;&nbsp;&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Credentials from password stores: credentials from web browsers (T1555.003)<\/h3>\n\n\n\n<p>CryptBot steals information from popular browsers \u2014 Chrome, Firefox, and Edge, as the &#8220;Actions looks like stealing of personal data&#8221; indicator (Fig. 2) and &#8220;Reads browser cookies&#8221; indicators tell us:<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/VVCRf7wtJF1fpCiSOnOi7EYH2U8aiTLBuXjFFn4BTrDSbpPJFAUYpql-kj8AJtrBoNH--OkxkdFMRCzFFJlF1mIoKx185qv5dZig0bPQfi-jlQd1eLXph8Afye4fySxsdc8IKpxerQzdKRrPyLQBGrs-m8AmbhfNtqBWrbrLlPaObXnyAeSK0AwLTe1PYA\" alt=\"CryptBot steals Firefox data\"\/><figcaption class=\"wp-element-caption\">Fig. 2 \u2014 CryptBot steals Firefox data<br><\/figcaption><\/figure>\n\n\n\n<p>To detect access to personal data stored in the browser, we can use the pseudo-signature:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>process_name NOT (\u201cchrome.exe\u201d, \u201dfirefox.exe\u201d, \u201cmsedge.exe\u201d, \u201copera.exe\u201d)\nAND\nfile_access (\n%LOCALAPPDATA%\\\\MICROSOFT\\\\EDGE\\\\USER DATA\\\\*,\n%APPDATA%\\\\Roaming\\\\Mozilla\\\\Firefox\\\\*,\n%LOCALAPPDATA%\\\\Local\\\\Google\\\\Chrome\\\\User Data\\\\*\n%LOCALAPPDATA%\\\\AppData\\\\Local\\\\Opera Software\\\\Opera Stable\\*\n)<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Software discovery (T1518)<\/h3>\n\n\n\n<p>CryptBot checks the presence of installed software in the system by going through the &#8220;Uninstall&#8221; registry tree (Fig. 3):<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/9b1kITRuQJv5F2IZvOFIwFb10TgSCm6EtnYhC0yfy7nENyRAE2QUKVgpwyJLsxa-kmlPAuFanIt59GrUD905qXqW22TgzN0-AchYBgzGjHgVzaA1IXrJxZwTKmHVpuksErqr7p3QymCZP5NprcXVGac2Z7GbQ8J1GaUrcMmXzgnvdK2aGkJQpD85zBi81A\" alt=\"CryptBot searches for installed software\"\/><figcaption class=\"wp-element-caption\">Fig. 3 \u2014 CryptBot searches for installed software<br><\/figcaption><\/figure>\n\n\n\n<p>To detect an attempt to access the list of installed software, we can use a pseudo-signature:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>reg_key is (\u201cHKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\u201d)\nAND\noperation read<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">System information discovery (T1082)<\/h3>\n\n\n\n<p>The malware collects system information, including operating system installation date, computer name, key, CPU information, and this behavior triggers the corresponding indicators (Fig. 4):<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/RHIhTireAKMy8bN0ypAyzjX6aG8QHb-qUAodh9qolY2emSKpvQtX8iwDB5r79X8TJP8jhYVALxeQKZ_L4tgdO2Acc7gvIWiLm7v3ZzyP9UxiSwhAH63JFrIHno43c4xR_6nV-A2K4oRDNY4wnJ4aKk6vay_RPyLuAUHMHQdZz1-tIsXiTSrCCxcUY69SeQ\" alt=\"CryptBot collects system information\"\/><figcaption class=\"wp-element-caption\">Fig. 4 \u2014 CryptBot collects system information<\/figcaption><\/figure>\n\n\n\n<p>It is possible to detect the collection of system configuration information by accessing certain registry keys. For example, reading the system installation date can be detected by the following pseudo-signature:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>reg_key is (\u201cHKLM\\SOFTWARE\\MICROSOFT\\WINDOWS NT\\CURRENTVERSION\u201d)\nAND\nreg_name is (\u201cINSTALLDATE\u201d)\nAND\noperation read<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Application layer protocol: web protocols (T1071.001)<\/h3>\n\n\n\n<p>CryptBot sends the collected OS information and personal data to the control server, which we can see in multiple connection attempts (see Figure 5):<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/S9soaaG9fpDWMGG4NP8NMabNv-_Eh4HRAzinEVnlqYEKCQUL5OqGEe8B7LqS40cdcbnyL7d0oRSwFSb3WI1P-6E8mQdSJmY-A7IXLSUuQbPZBFr_V_79YHnEsU7pisQIwyVZtY1P4u2AVNyn3_SGUZaX3GbxeX7sYDi9k1g2sxUXjI3C7DsvJFRATW2UGg\" alt=\"CryptBot attempts to send data to the control server\"\/><figcaption class=\"wp-element-caption\">Fig. 5 \u2014 CryptBot attempts to send data to the control server<br><\/figcaption><\/figure>\n\n\n\n<p>We can detect attempts to connect to the C2 server with the following pseudo-signature:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>network connect\nAND\n(\ndomains are (\u201csginiv12&#91;.]top\u201d or \u201cbytcox01&#91;.]top\u201d)\nOR (ip == \u201c23&#91;.]217.138.108\u201d and port==80)\n)<\/code><\/pre>\n\n\n\n<p>Additionally, we investigated the content of the network stream and detected that the data is sent through the HTTP protocol, using a POST request with an attached file (see Fig. 6). Having restarted the malware several times we found that the file name is most likely randomly generated. However, the request is always sent to the &#8220;gate.php&#8221; page.<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/FPbLz0AacaZUIUnD7MWm167nZXyKU-VaJ64KhnrFtb_x-SvmrjH7eOQ7PREiX7uO2Ld9SH3tNVz6y3eZNBkLJqN6UMa3Z8lDmNDZspyL6P3gET_NUXJoSKZZ9ebQH2fXKY30XGqOY6E58ebtlLavDw9eLrf6mofdlmRw-eUApxi2ftbgkSHCZe4f4RAeDg\" alt=\"Malware sends information to the control server\"\/><figcaption class=\"wp-element-caption\">Fig. 6 \u2014 Malware sends information to the control server<br><\/figcaption><\/figure>\n\n\n\n<p>Potentially malicious traffic is also detected in the results of the Suricata (see Fig. 7):<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/Fu3r7IEe2pGcm4pSaBYPzpIDcXGZJSq1ajTIZq6Y8d7K16zSIPuqvP4hfWXttJ8E9E1l7w-HUlU_ILnwMIY36SNV7995PFD9ld3_RtspjKddNVh3qekCazDqdZULCyfg7K2dZvTBag3z52bI4XPEnul-gpunQ-dGBO_QupwgEQow4AdNjvPHz0JteDn4pA\" alt=\"Potentially malicious traffic detected by the Surikata rules\"\/><figcaption class=\"wp-element-caption\">Fig. 7 \u2014 Potentially malicious traffic detected by the Suricata rules<\/figcaption><\/figure>\n\n\n\n<p>Let&#8217;s create a pseudo-signature to detect CryptBot in the traffic:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>network send\nAND\nhttp_verb is \u201cPOST\u201d AND location is \u201cgate.php\u201d\nAND\nhttp_content includes (\u201cform-data\u201d, \u201cname=\\\u201dfiles&#91;]\\\u201d\u201d, \u201cfilename\u201d)<\/code><\/pre>\n\n\n\n<p>Analyzing the contents of the transmitted file gives nothing of interest, since it is probably encrypted.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Data staged: local data staging (T1074.001)<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">1. Preventing re-runs<\/h4>\n\n\n\n<p>When we launch the malware for the first time in the &#8220;%APPDATA%&#8221; directory an empty directory-marker &#8220;0D445946B53E9551&#8221; is created (Figure 8). This directory allows the Malicious software to determine whether it has been launched before. If the CryptBot is restarted, it will stop working immediately.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"273\" src=\"\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/image21-1024x273.png\" alt=\"Marker-directory 0D445946B53E9551\" class=\"wp-image-4211\" srcset=\"https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/image21-1024x273.png 1024w, https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/image21-300x80.png 300w, https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/image21-768x205.png 768w, https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/image21-370x99.png 370w, https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/image21-270x72.png 270w, https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/image21-740x197.png 740w, https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/01\/image21.png 1418w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Fig. 8 \u2014 Marker-directory 0D445946B53E9551<br><\/figcaption><\/figure>\n\n\n\n<p>Let&#8217;s make a pseudo-signature to detect the creation of the marker directory:<br><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>action create_directory\nAND\ndirectory_name is (\u201c^%APPDATA%\\\\&#91;A-F0-9]{16}$\u201d)<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">2. Storing collected data<\/h4>\n\n\n\n<p>Collected information is stored in temporary files in various formats (sqlite, binary, text) in the %TEMP% directory (Fig. 9):<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/AwP9OovX0zC9ffoCObb6INzdtZZghv64aqiVd4PlmUzpWam17WR7XqlTv0MJUWWVsRuPgwwgY8mN_w7N5IUbiyplwt2QKt4yofzIHAU96kmaLhNBcuRj07RrKIPf__OxVc0kTkN9LRJp4S5-jfFr7KJsEchCjm1gUK3hMq9_HkHG2fF3jtin5jQzwZcu3g\" alt=\"Temporary files in the %TEMP% directory\"\/><figcaption class=\"wp-element-caption\">Fig. 9 \u2014 Temporary files in the %TEMP% directory<br><\/figcaption><\/figure>\n\n\n\n<p>For example, in Fig. 10 we see the content of one of the created temporary files, where information about the stolen logins and passwords is stored in Base64 format. Note that the data also includes a website to which each login-password pair corresponds:<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/5V6eeIzuUJOPz2aRlbm1rSy7KMa-LEA3ACBlO4N3iK0tnsfpdyDuzJTN5vB44F03lPYuT5JiJYPlJHeAvfcFPSjfm8gFVh11fQc1dNJhqt-0uuMKnnhwYG0A6GF1TXzGpdYT4JWiPnrDTf2gZWQajZiMQuPSebRdP5J7oXaJtKfepTpu5TuHFOq6kc55Ig\" alt=\"The contents of the files with the collected information\"\/><figcaption class=\"wp-element-caption\">Fig. 10 \u2014 The contents of the files with the collected information<br><\/figcaption><\/figure>\n\n\n\n<p>To detect the creation of temporary files with personal data, we can, for example, apply the following pseudo-signature:<br><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>process_name NOT (\u201cchrome.exe\u201d)\nAND\nfile_create (\u201c%TEMP\\\\*.tmp\u201d)\nAND\nfile_content includes (\n*username*,\n*password*\n)<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Indicator removal: file deletion (T1070.004)<\/h3>\n\n\n\n<p>When the malware is done running, it removes itself using CMD.EXE with a short delay to give the process time to finish and unblock the executable file (Fig. 11):<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/rg8N4XgdxeY73TURqPruOp8qfvVlV-s_LrPTWq5ysXFIPmmBYlbGdYrzXUHqdJ2vvd8CMos1Rn4QIYkNpy7fj3mUlL5P6YOLRiD2M3uNcSd85nbVquARUPIu0aiWBEBpQAkx4s-VMviIXLp_wLpkPMwxqvsJtxoQN3WiaM1K4BwFJ__lR2gBD8ZT06d7iw\" alt=\"The malware self-deletes\"\/><figcaption class=\"wp-element-caption\">Fig. 11 \u2014 The malware self-deletes<br><\/figcaption><\/figure>\n\n\n\n<p>We can use the following pseudo-signature in the command line for detection:&nbsp;<br><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>process_name is (\u201ccmd.exe\u201d)\nAND\ncommand_line includes (\u201ctimeout\u201d, \u201cdel\u201d)<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">CryptBot dynamic analysis using a debugger<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Static packer check<\/h3>\n\n\n\n<p>In general, it&#8217;s a best practice to check the file statically to figure out its type and if there\u2019s a packer present, before conducting the dynamic analysis. Once we do that with the DiE tool shows that the file is not packed (see fig.12):<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/r5YKP5ME0QmRco5olFD-s2FnPndzedNfMwBHXLZxSdSD-5SdOohJZbBJLOHVfMG4KPNP4SiAZnBUyMaZGaTgQCsROblfx4psPPQ0Y9jfpoiK1tD0juEmolMXLhHS1GWSAuvsKkVu5KSPZK0REOIY_u52c6vDjFImXq-3mGq9c73VIKvGekuZjRsFtrCMKw\" alt=\"Checking the malware file statically to detect a packer\"\/><figcaption class=\"wp-element-caption\">Fig. 12 \u2014 Checking the malware file statically to detect a packer<br><\/figcaption><\/figure>\n\n\n\n<p>In this case, even though we didn\u2019t find a packer during our static analysis, the dynamic analysis revealed that the malware uses a T1027.002 &#8211; software packing technique.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Obfuscated files or information: software packing (T1027.002)<\/h3>\n\n\n\n<p>By analyzing the memory of a running process using Process Hacker, we stumble upon an RWX region that is not normally found in legitimate programs. The beginning of the dump of this region allows you to see the header of the PE file (see Fig. 13):<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/qLlcKG64-_WiAPhuaYaPiXWPmptQR-fppelr7d7hTJmtHHMeM2RhpHLuDbrZT0M34rAuIIoh8X33uK9hM8rCWcHIxULreOCG7yhSd9iMIrYIxdsELq_cZxOCqL6LxDMGqUHlOKrCH2Vf8D6cuMDpDnBdYhxyvf_DCVbycZMGd1M3PxgIZTc8s75wcy4c7Q\" alt=\"CryptBot\u2019s memory dump of a running process\"\/><figcaption class=\"wp-element-caption\">Fig. 13 \u2014 CryptBot\u2019s memory dump of a running process<\/figcaption><\/figure>\n\n\n\n<p>On further analysis we discovered that the header of the PE file is also the beginning of the <strong>shellcode<\/strong> (see Fig. 14), which recovers the register value, gets the ImageBase and passes control to the EntryPoint:<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/I2ld2n_0eyM4PwxMxWV-ewokta3z5qqV8jrk8FFckD3fX2mgp3rudkfkd5-y1jUYFO3xhAVy6DI_GtS5FzEJvdzkiOhta-9LB68MR9OGnrSGwvpYbXuBr7IcNMG9lr2AUO3vMYDGa-RgwWmaiUOVm8AlFxduvml3zWB1vOl8OXHcrLsxX_A1UwDfYS3-wQ\" alt=\" Disassembling the PE header\"\/><figcaption class=\"wp-element-caption\">Figure 14 \u2014 Disassembling the PE header<\/figcaption><\/figure>\n\n\n\n<p>Using the x64dbg debugger we have determined that the executable memory region is allocated by the unpacker using the WinAPI\u2019s <strong>VirtualAlloc<\/strong> function. Next, the unpacker writes payload to it and decrypts it with an <strong>XOR<\/strong> operation (see Figure 15):<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/tGZip4mgUjwljCusBeWRL1RayU9H9Ae4QCrncPXYpvAVRzGz-dJ2xy-jjh4ljsogA1DCb89qudfGrCoLyezcppzAcLTKucfJp8uHSxYLVI29VIfNm7t44OyqFZocf1pPQ-4F6aMqRr6uLyiajQuPU18Tzm4AEhsVTrv3QwyP2xHfP6wbJaHHSmIFByYPuw\" alt=\"Decrypting payload using XOR\"\/><figcaption class=\"wp-element-caption\">Fig. 15 \u2014 Decrypting payload using XOR<\/figcaption><\/figure>\n\n\n\n<p>The <strong>key<\/strong> to decrypt the payload is in the &#8220;.rdata&#8221; section of the running executable:<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/KM_jKi-nM_jA4AUmFw14RXZG5R1QGDriFDMz9gW9877tgsvXjO9m1K6pHwyJNrTs1oI51eOoemMgMCMm_Pq1p7qd81aEa_cFXMj0loxafkQb4SfDbmBv8qH2l_mAd0GDoKbe7GSdODITQTRqdEBmEk6GpUvSNSSisGOyJNNgrOi-1JjuABklv1bji2NYYg\" alt=\"Key to decrypt the payload\"\/><figcaption class=\"wp-element-caption\">Fig. 16 \u2014 Key to decrypt the payload<br><\/figcaption><\/figure>\n\n\n\n<p>Thus, we can see that despite the absence of features of the payload in the static analysis, using the dynamic one <strong>we have identified the presence of a packer and determined the key and the encryption algorithm.<\/strong><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Writing YARA rules to detect CryptBot shellcode in memory<\/h3>\n\n\n\n<p>A YARA rule for detecting a CryptBot shellcode in OS memory could look like this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>rule CryptBot_ShellCode\n{\nmeta:\n    \tauthor = \"Any.Run\"\n    \tSHA256 = \"183f842ce161e8f0cce88d6451b59fb681ac86bd3221ab35bfd675cb42f056ac\"\n    \tdate = \"2023-01-19\"\n    \tdescription = \"Detect CryptBot shellcode in memory\"\n\nstrings:\n    \t$shellcode = { 4D 5A 45 52 E8 00 00 00 00 58 83 E8 09 50 05 &#91;4] FF D0 C3 }\n\ncondition:\n    \tuint16(0) != 0x5A4D and\n    \tuint16(0) &gt; 0 and\n    \t$shellcode in (0x20..0x50)\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Static analysis and configuration decoding<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Finding and deciphering the configuration<\/h3>\n\n\n\n<p>The static analysis of the payload code led us to the conclusion that the malware configuration is located in the &#8220;.data&#8221; section and encrypted with an XOR operation. Moreover, the decryption key lies in plaintext just before the encrypted data (see Figure 17):<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/FZgOPUQeNqf9AiZP9AeNlqeuLoltATExRAInPun9Td8tgpBZ5wZQdaMVgud-cD-dxtoxjNliAjDMnDTkNf9JqS0HmGRPW6aadA2znhJ93MSN1LLQLfJf5P724gCJ15tuKY2jedUMrjUUoVdMcwqRsJX5ZRq9NDieQ8quD36mOMJ17Udp0NH03neZuOO7Qg\" alt=\"Key and encrypted configuration\"\/><figcaption class=\"wp-element-caption\">Fig. 17 \u2014 Key and encrypted configuration<br><\/figcaption><\/figure>\n\n\n\n<p>The configuration is easily decrypted using CyberChef and the key &#8220;PU7GX2MZtl&#8221; (see Fig. 18):<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/JJhUtauxHl_hMuUnOqHKwcjyuDZxYm8ltCKcvEymlbeAjmZUdO1QWwVfL-tkRbSb_6lYtSxGytbXkukukcc3HqS1m2I8TGrAtq-ESPCt16TpW8aI-SxvlNG_5bnPyv_z9I25pAOIWTMHce-SirTJwkEx8YzQaFz6YfCRyL5uc2Jr_c-xW0EchqgZ3BGleA\" alt=\"CryptBot decrypted configuration\"\/><figcaption class=\"wp-element-caption\">Figure 18 \u2014 CryptBot decrypted configuration<br><\/figcaption><\/figure>\n\n\n\n<p>From the decrypted configuration it becomes clear what information should be stolen by CryptBot. For example, the screenshot variable tells the malware to take a screenshot, and ChromeExt \u2014 to steal data from Chrome extensions.<br><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Automating configuration decryption<\/h3>\n\n\n\n<p>We have automated the <a href=\"https:\/\/github.com\/anyrun\/blog-scripts\/blob\/main\/Extractors\/CryptBot\/CryptBot.py?utm_source=anyrunblog&amp;utm_medium=article&amp;utm_campaign=cryptbot&amp;utm_content=script\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\">CryptBot configuration extraction in Python<\/a> and made the script public. You can always find it in our Git repo. The result of the unpacked payload script is shown in Fig. 19:<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/9T9jm529CbA2mRZ6uSQ5hN8zcm7ZhynPVDoeDaqysQOYP3TuGLcnM1WQkzDhz0UPdrGCXbXEesbFCXLcLE7haep3WnrP04s2nSZDqHDKRLHcCXBKbwkbk94CCDr1-anFo3v1lH0B625xjAy-Fp6maWtwe_5A1gOT2FUiyLP-TfgZqyMCBJ5OxyU12GgcKw\" alt=\"The result of the configuration extraction script\"\/><figcaption class=\"wp-element-caption\">Fig. 19 \u2014 The result of the configuration extraction script<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Developing YARA Rules for detecting CryptBot configuration in memory<\/h3>\n\n\n\n<p>Some strings of the decrypted CryptBot configuration can be used as part of a YARA rule to detect it in memory:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>rule CryptBot_Config {\nmeta:\n    \tauthor = \"Any.Run\"\n    \tSHA256 = \"183f842ce161e8f0cce88d6451b59fb681ac86bd3221ab35bfd675cb42f056ac\"\n    \tdate = \"2022-01-19\"\n    \tdescription = \"Detect CryptBot configuration in memory\"\nstrings:\n    \t$s1 = \"CookiesEdge\"\n    \t$s2 = \"ChromeDB&lt;&gt;_&lt;&gt;\"\n    \t$s3 = \"EdgeDB&lt;&gt;_&lt;&gt;\"\n    \t$s4 = \"ChromeExt&lt;&gt;_&lt;&gt;\"\n    \t$s5 = \"HistoryChrome&lt;&gt;_&lt;&gt;\"\n    \t$s6 = \"EdgeExt&lt;&gt;_&lt;&gt;\"\n    \t$s7 = \"CookiesFirefox&lt;&gt;_&lt;&gt;\"\n    \t$s8 = \"HistoryOpera&lt;&gt;_&lt;&gt;\"\n    \t$s9 = \"CookiesOpera&lt;&gt;_&lt;&gt;\"\n    \t$s10 = \"FirefoxDB&lt;&gt;_&lt;&gt;\"\n    \t$s11 = \"CookiesChrome&lt;&gt;_&lt;&gt;\"\n    \t$s12 = \"HistoryFirefox&lt;&gt;_&lt;&gt;\"\n    \t$s13 = \"HistoryEdge&lt;&gt;_&lt;&gt;\"\n    \t$s14 = \"DesktopFolder&lt;&gt;_&lt;&gt;\"\n    \t$s15 = \"ChromeDBFolder&lt;&gt;_&lt;&gt;\"\n    \t$s16 = \"ExternalDownload&lt;&gt;_&lt;&gt;\"\n    \t$s17 = \"ScreenFile&lt;&gt;_&lt;&gt;\"\n    \t$s18 = \"MessageAfterEnd&lt;&gt;_&lt;&gt;\"\n    \t$s19 = \"HistoryFile&lt;&gt;_&lt;&gt;\"\n    \t$s20 = \"FirefoxDBFolder&lt;&gt;_&lt;&gt;\"\n    \t$s21 = \"PasswordFile&lt;&gt;_&lt;&gt;\"\n    \t$s22 = \"WalletFolder&lt;&gt;_&lt;&gt;\"\n    \t$s23 = \"DeleteAfterEnd&lt;&gt;_&lt;&gt;\"\n    \t$s24 = \"EdgeDBFolder&lt;&gt;_&lt;&gt;\"\n    \t$s25 = \"InfoFile&lt;&gt;_&lt;&gt;\"\n    \t$s26 = \"CookiesFile&lt;&gt;\"\n\ncondition:\n    \t7 of them\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Using ANY.RUN to efficiently analyze CryptBot<\/h2>\n\n\n\n<p>For your convenience, we have integrated automatic extraction of the CryptBot configuration into <a href=\"https:\/\/any.run\/?utm_source=anyrunblog&amp;utm_medium=article&amp;utm_campaign=cryptbot&amp;utm_content=landing\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\">ANY.RUN interactive sandbox<\/a> \u2014 just run the sample and get all the IOCs in seconds (Fig. 20):<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/BC9jtn88y4aCy1oB4sbIDjOjP7a9OoKkNSidxetA5rwDXT3CEu4K6Jggx_UYpqDeUOimMTI9kPVifZaXW9iB3bU_SyGxBkfkjT3COXw-80CjPBsq3i0dLv3iEgEje4WzFN1g4fqPBDxQ3uX3wIa-phWGqddeFupW-Lc82XTtOeGoVi3a9emUW8MNCtdbQg\" alt=\"Automatic CryptBot configuration extraction in ANY.RUN sandbox\"\/><figcaption class=\"wp-element-caption\">Fig. 20 &#8211; Automatic CryptBot configuration extraction in ANY.RUN sandbox<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>In this article, we looked into CryptBoT, its techniques and behavior when contained in the ANY.RUN sandbox. We also wrote <a href=\"https:\/\/github.com\/anyrun\/blog-scripts\/blob\/main\/Extractors\/CryptBot\/CryptBot.py?utm_source=anyrunblog&amp;utm_medium=article&amp;utm_campaign=cryptbot&amp;utm_content=script\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"a configuration extractor  (opens in a new tab)\">a configuration extractor <\/a>that you can use to gather and interpret the data.&nbsp;<br><\/p>\n\n\n\n<p>Fortunately, ANY.RUN is already set up to detect this malware automatically, making the relevant configuration details just a click away.<br><\/p>\n\n\n\n<p>If you want to read more content like this, check out our analysis of the <a rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\" href=\"https:\/\/any.run\/cybersecurity-blog\/raccoon-stealer-v2-malware-analysis\/\" target=\"_blank\">Raccoon Stealer<\/a>, or <a rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\" href=\"https:\/\/any.run\/cybersecurity-blog\/orcus-rat-malware-analysis\/\" target=\"_blank\">Orcus RAT<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Appendix<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Analyzed files<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Title<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><tr><td>Name<\/td><td>12d20a973f8cd9c6373929ae14efe123.exe<\/td><\/tr><tr><td>MD5<\/td><td>12d20a973f8cd9c6373929ae14efe123<\/td><\/tr><tr><td>SHA1<\/td><td>7f277f5f8f9c2831d40a2dc415566a089a820151<\/td><\/tr><tr><td>SHA256<\/td><td>183f842ce161e8f0cce88d6451b59fb681ac86bd3221ab35bfd675cb42f056ac<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Extracted URLs<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>http:\/\/sginiv12[.]top\/gate.php<\/li>\n\n\n\n<li>http:\/\/bytcox01[.]top\/gesell.dat<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">MITRE (ARMATTACK)<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Tactics<\/strong><\/td><td><strong>Techniques<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><tr><td>TA0005:<br>defence evasion<\/td><td>T1070.004:<br>Indicator Removal: <br>File Deletion&nbsp;<\/td><td>Self-deleting <br>after completion<\/td><\/tr><tr><td><br><\/td><td>T1027.002:<br>Obfuscated Files <br>or Information: <br>Software Packing<\/td><td>Malware is decrypted <br>into memory before <br>it starts working<\/td><\/tr><tr><td>TA0006:<br>Credential access<\/td><td>T1555.003:<br>Credentials from <br>Web Browsers<\/td><td>Steals data from <br>installed browsers<\/td><\/tr><tr><td>TA0007:<br>Software discovery<\/td><td>T1518:<br>Software Discovery<\/td><td>Searches for installed software<br> in the system <br>in the &#8220;Uninstall&#8221; key<\/td><\/tr><tr><td><br><\/td><td>T1082:<br>System Information<br>Discovery<\/td><td>Collects system data<\/td><\/tr><tr><td>TA0009:<br>Collection<\/td><td>T1113:<br>Screen capture<\/td><td>Has an option to take <br>a configuration screenshot<\/td><\/tr><tr><td><br><\/td><td>T1074:<br>Data Staged<\/td><td>Saving of gathered data <br>in a temporary directory <br>before sending; <br>prevention of relaunch<\/td><\/tr><tr><td>TA0011:<br>Command and Control<\/td><td>T1071:<br>Application Layer <br>Protocol<\/td><td>Sending collected data <br>to the control server<\/td><\/tr><\/tbody><\/table><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>We recently analyzed CryptBot, an infostealer detected by the ANY.RUN online malware sandbox.&nbsp; Through our research, we collected information about MITRE ATT&amp;CK techniques used by this malware. We also learned about how this infostealer stores and encrypts its configuration information, and we wrote a Python script to extract the configuration.&nbsp; Let\u2019s go over the whole [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":4213,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[34],"class_list":["post-4206","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-malware-analysis","tag-malware-analysis"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.10 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>CryptBot Infostealer: Malware Analysis - ANY.RUN&#039;s Cybersecurity Blog<\/title>\n<meta name=\"description\" content=\"Read CryptBot analysis: MITRE ATT&amp;CK techniques used by the infostealer, how it stores, encrypts the configuration data and how to extract the memory dump.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"khr0x\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/\"},\"author\":{\"name\":\"khr0x\",\"@id\":\"https:\/\/any.run\/\"},\"headline\":\"CryptBot Infostealer: Malware Analysis\",\"datePublished\":\"2023-01-26T01:55:00+00:00\",\"dateModified\":\"2023-03-02T07:50:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/\"},\"wordCount\":1593,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/any.run\/\"},\"keywords\":[\"malware analysis\"],\"articleSection\":[\"Malware Analysis\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/\",\"url\":\"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/\",\"name\":\"CryptBot Infostealer: Malware Analysis - ANY.RUN&#039;s Cybersecurity Blog\",\"isPartOf\":{\"@id\":\"https:\/\/any.run\/\"},\"datePublished\":\"2023-01-26T01:55:00+00:00\",\"dateModified\":\"2023-03-02T07:50:10+00:00\",\"description\":\"Read CryptBot analysis: MITRE ATT&CK techniques used by the infostealer, how it stores, encrypts the configuration data and how to extract the memory dump.\",\"breadcrumb\":{\"@id\":\"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/any.run\/cybersecurity-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Malware Analysis\",\"item\":\"https:\/\/any.run\/cybersecurity-blog\/category\/malware-analysis\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"CryptBot Infostealer: Malware Analysis\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/any.run\/\",\"url\":\"https:\/\/any.run\/\",\"name\":\"ANY.RUN&#039;s Cybersecurity Blog\",\"description\":\"Cybersecurity Blog covers topics for experienced professionals as well as for those new to it.\",\"publisher\":{\"@id\":\"https:\/\/any.run\/\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/any.run\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/any.run\/\",\"name\":\"ANY.RUN\",\"url\":\"https:\/\/any.run\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/any.run\/\",\"url\":\"https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2020\/08\/ANYRUN-Icon.svg\",\"contentUrl\":\"https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2020\/08\/ANYRUN-Icon.svg\",\"width\":1,\"height\":1,\"caption\":\"ANY.RUN\"},\"image\":{\"@id\":\"https:\/\/any.run\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/www.any.run\/\",\"https:\/\/twitter.com\/anyrun_app\",\"https:\/\/www.linkedin.com\/company\/30692044\",\"https:\/\/www.youtube.com\/channel\/UCOgCPho7lzmH7m6fPNlukrQ\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/any.run\/\",\"name\":\"khr0x\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/any.run\/\",\"url\":\"https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/03\/ghIpC7Xf4_I-1.jpg\",\"contentUrl\":\"https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/03\/ghIpC7Xf4_I-1.jpg\",\"caption\":\"khr0x\"},\"description\":\"I'm 21 years old and I work as a malware analyst for more than a year. I like finding out what kind of malware got on my computer. In my spare time I do sports and play video games.\",\"url\":\"#molongui-disabled-link\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"CryptBot Infostealer: Malware Analysis - ANY.RUN&#039;s Cybersecurity Blog","description":"Read CryptBot analysis: MITRE ATT&CK techniques used by the infostealer, how it stores, encrypts the configuration data and how to extract the memory dump.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/","twitter_misc":{"Written by":"khr0x","Est. reading time":"12 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/#article","isPartOf":{"@id":"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/"},"author":{"name":"khr0x","@id":"https:\/\/any.run\/"},"headline":"CryptBot Infostealer: Malware Analysis","datePublished":"2023-01-26T01:55:00+00:00","dateModified":"2023-03-02T07:50:10+00:00","mainEntityOfPage":{"@id":"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/"},"wordCount":1593,"commentCount":2,"publisher":{"@id":"https:\/\/any.run\/"},"keywords":["malware analysis"],"articleSection":["Malware Analysis"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/","url":"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/","name":"CryptBot Infostealer: Malware Analysis - ANY.RUN&#039;s Cybersecurity Blog","isPartOf":{"@id":"https:\/\/any.run\/"},"datePublished":"2023-01-26T01:55:00+00:00","dateModified":"2023-03-02T07:50:10+00:00","description":"Read CryptBot analysis: MITRE ATT&CK techniques used by the infostealer, how it stores, encrypts the configuration data and how to extract the memory dump.","breadcrumb":{"@id":"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/any.run\/cybersecurity-blog\/cryptbot-infostealer-malware-analysis\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/any.run\/cybersecurity-blog\/"},{"@type":"ListItem","position":2,"name":"Malware Analysis","item":"https:\/\/any.run\/cybersecurity-blog\/category\/malware-analysis\/"},{"@type":"ListItem","position":3,"name":"CryptBot Infostealer: Malware Analysis"}]},{"@type":"WebSite","@id":"https:\/\/any.run\/","url":"https:\/\/any.run\/","name":"ANY.RUN&#039;s Cybersecurity Blog","description":"Cybersecurity Blog covers topics for experienced professionals as well as for those new to it.","publisher":{"@id":"https:\/\/any.run\/"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/any.run\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/any.run\/","name":"ANY.RUN","url":"https:\/\/any.run\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/any.run\/","url":"https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2020\/08\/ANYRUN-Icon.svg","contentUrl":"https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2020\/08\/ANYRUN-Icon.svg","width":1,"height":1,"caption":"ANY.RUN"},"image":{"@id":"https:\/\/any.run\/"},"sameAs":["https:\/\/www.facebook.com\/www.any.run\/","https:\/\/twitter.com\/anyrun_app","https:\/\/www.linkedin.com\/company\/30692044","https:\/\/www.youtube.com\/channel\/UCOgCPho7lzmH7m6fPNlukrQ"]},{"@type":"Person","@id":"https:\/\/any.run\/","name":"khr0x","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/any.run\/","url":"https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/03\/ghIpC7Xf4_I-1.jpg","contentUrl":"https:\/\/any.run\/cybersecurity-blog\/wp-content\/uploads\/2023\/03\/ghIpC7Xf4_I-1.jpg","caption":"khr0x"},"description":"I'm 21 years old and I work as a malware analyst for more than a year. I like finding out what kind of malware got on my computer. In my spare time I do sports and play video games.","url":"#molongui-disabled-link"}]}},"_links":{"self":[{"href":"https:\/\/any.run\/cybersecurity-blog\/wp-json\/wp\/v2\/posts\/4206"}],"collection":[{"href":"https:\/\/any.run\/cybersecurity-blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/any.run\/cybersecurity-blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/any.run\/cybersecurity-blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/any.run\/cybersecurity-blog\/wp-json\/wp\/v2\/comments?post=4206"}],"version-history":[{"count":27,"href":"https:\/\/any.run\/cybersecurity-blog\/wp-json\/wp\/v2\/posts\/4206\/revisions"}],"predecessor-version":[{"id":4519,"href":"https:\/\/any.run\/cybersecurity-blog\/wp-json\/wp\/v2\/posts\/4206\/revisions\/4519"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/any.run\/cybersecurity-blog\/wp-json\/wp\/v2\/media\/4213"}],"wp:attachment":[{"href":"https:\/\/any.run\/cybersecurity-blog\/wp-json\/wp\/v2\/media?parent=4206"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/any.run\/cybersecurity-blog\/wp-json\/wp\/v2\/categories?post=4206"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/any.run\/cybersecurity-blog\/wp-json\/wp\/v2\/tags?post=4206"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}