{"id":2038,"date":"2018-02-26T16:06:06","date_gmt":"2018-02-26T16:06:06","guid":{"rendered":"https:\/\/blog.gridinsoft.com\/?p=2038"},"modified":"2022-07-03T20:18:27","modified_gmt":"2022-07-03T20:18:27","slug":"coin-miner-investigation","status":"publish","type":"post","link":"https:\/\/gridinsoft.com\/blogs\/coin-miner-investigation\/","title":{"rendered":"Coin Miner Investigation: When, Why, For What"},"content":{"rendered":"<h2>1. Coin Miner malware gains its popularity<\/h2>\n<p>Due to rising cost of cryptocurrency recently, Bitcoin particularly (BTC) to 20000 USD, our Analysts Team noticed an increased amount of malicious programs, especially those who focused on the secret mining of cryptocurrency. <a href=\"\/antimalware\">GridinSoft Anti-malware<\/a> detect them as <a href=\"https:\/\/howtofix.guide\/trojan-coin-miner\/\" target=\"_blank\" rel=\"noopener nofollow\">Trojan.CoinMiner\/Risk.CoinMiner<\/a>.<\/p>\n<p>For few recent months CoinMiner is one of the top 20 the most popular threats among with Adware, that were super popular once.<\/p>\n<figure id=\"attachment_2039\" aria-describedby=\"caption-attachment-2039\" style=\"width: 171px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2039\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/1.png\" alt=\"Most popular malware families for the last 30 days\" width=\"171\" height=\"323\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/1.png 171w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/1-159x300.png 159w\" sizes=\"auto, (max-width: 171px) 100vw, 171px\" \/><figcaption id=\"caption-attachment-2039\" class=\"wp-caption-text\">Most popular malware families for the last 30 days<\/figcaption><\/figure>\n<p>Analyzing the dynamics of detection such type of threats, we predict that coinminers will at least keep its positions in the near future, and even get more distribution.<\/p>\n<figure id=\"attachment_2043\" aria-describedby=\"caption-attachment-2043\" style=\"width: 848px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-2043\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/2-1-1024x331.png\" alt=\"CoinMiner malware family distribution\" width=\"848\" height=\"274\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/2-1-1024x331.png 1024w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/2-1-300x97.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/2-1-768x248.png 768w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/2-1.png 1274w\" sizes=\"auto, (max-width: 848px) 100vw, 848px\" \/><figcaption id=\"caption-attachment-2043\" class=\"wp-caption-text\">CoinMiner malware family distribution<\/figcaption><\/figure>\n<h2>2. Coin Miner wanna be WannaCry<\/h2>\n<p>Cyber-criminals create many complicated ways to infect users\u2019 systems. The most popular method of infection is called Bundled Software.<\/p>\n<p>While unsuspecting user installs legitimate software, one or several (usually malicious) programs are silently installed alongside. The same method is now actively used by the authors of CoinMiner.<\/p>\n<p> Often, installed mining programs are copies of utilities for mining xmrig, gplyra, or slightly modified versions. This distribution method is straightforward, but you can only infect one computer per installation. The authors of Trojan.CoinMiner began to look for other ways of infection.<\/p>\n<p>The unprecedented success of the WannaCry (WannaCrypt) ransomware family showed the authors of malicious software an easy way to infect computers over the network. Moreover, they discovered that most a computer users don\u2019t work on the latest version of Windows OS, which makes them easy money in the hands of skillful cybercriminals.<\/p>\n<p>Of course, the authors of CoinMiner took advantage of this opportunity. After all, it is enough to infect somehow one computer in the network to distribute the miner to all the others. And this is a noticeable increase in the mining bot-net.<\/p>\n<p>And that is exactly what happened. Some time ago, all the major antivirus vendors reported using the exploit EnernalBlue in conjunction with the miners. We also noticed the presence of exploits from the hacker group ShadowBrokers in conjunction with CoinMiner on users\u2019 systems. GridinSoft detects such utilities as Virtool.ShadowBrokers.<\/p>\n<figure id=\"attachment_2053\" aria-describedby=\"caption-attachment-2053\" style=\"width: 848px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-2053\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/3-1024x452.png\" alt=\"System infected with Trojan.CoinMiner (SecUpdateHost.exe) along with EternalBlue exploit (spoolsv.exe)\" width=\"848\" height=\"374\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/3-1024x452.png 1024w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/3-300x132.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/3-768x339.png 768w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/3.png 1138w\" sizes=\"auto, (max-width: 848px) 100vw, 848px\" \/><figcaption id=\"caption-attachment-2053\" class=\"wp-caption-text\">System infected with Trojan.CoinMiner (SecUpdateHost.exe) along with EternalBlue exploit (spoolsv.exe)<\/figcaption><\/figure>\n<figure id=\"attachment_2054\" aria-describedby=\"caption-attachment-2054\" style=\"width: 848px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-2054\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/4-1024x588.png\" alt=\"SecUpdateHost.exe detections on virustotal.com\" width=\"848\" height=\"487\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/4-1024x588.png 1024w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/4-300x172.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/4-768x441.png 768w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/4.png 1137w\" sizes=\"auto, (max-width: 848px) 100vw, 848px\" \/><figcaption id=\"caption-attachment-2054\" class=\"wp-caption-text\">SecUpdateHost.exe detections on virustotal.com<\/figcaption><\/figure>\n<p><a href=\"https:\/\/www.virustotal.com\/gui\/file\/20d850701cb61a69a56bf76ab8c1641e181f8aa711558ecb888fbcd7d9b1228d\/detection\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Link for the full report<\/a><\/p>\n<figure id=\"attachment_2056\" aria-describedby=\"caption-attachment-2056\" style=\"width: 848px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-2056\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/5-1024x716.png\" alt=\"spoolsv.exe detections on virustotal.com\" width=\"848\" height=\"593\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/5-1024x716.png 1024w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/5-300x210.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/5-768x537.png 768w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/5.png 1125w\" sizes=\"auto, (max-width: 848px) 100vw, 848px\" \/><figcaption id=\"caption-attachment-2056\" class=\"wp-caption-text\">spoolsv.exe detections on virustotal.com<\/figcaption><\/figure>\n<p>Let&#8217;s remind you that the exploit EnernalBlue allows you to remotely execute code in kernel mode on a networked computer using vulnerabilities in the SMB v1 protocol. Together with the latest Windows updates, Microsoft forcibly turns off this protocol.<\/p>\n<figure id=\"attachment_2057\" aria-describedby=\"caption-attachment-2057\" style=\"width: 848px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-2057\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/6-1024x246.png\" alt=\"Microsoft disables SMBv1\" width=\"848\" height=\"204\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/6-1024x246.png 1024w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/6-300x72.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/6-768x184.png 768w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/6.png 1117w\" sizes=\"auto, (max-width: 848px) 100vw, 848px\" \/><figcaption id=\"caption-attachment-2057\" class=\"wp-caption-text\">Microsoft disables SMBv1<\/figcaption><\/figure>\n<h2>3. Coin Miner software bundled with your browser. Really?<\/h2>\n<p>Our analysts analyze the state of users&#8217; systems daily to identify new threats. This time, during the research, a suspicious file was found in the browser WebFreer. We made further analysis that you can find below.<\/p>\n<figure id=\"attachment_2058\" aria-describedby=\"caption-attachment-2058\" style=\"width: 1007px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2058\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/7.png\" alt=\"Suspicious file found along with WebFreer browser\" width=\"1007\" height=\"273\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/7.png 1007w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/7-300x81.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/7-768x208.png 768w\" sizes=\"auto, (max-width: 1007px) 100vw, 1007px\" \/><figcaption id=\"caption-attachment-2058\" class=\"wp-caption-text\">Suspicious file found along with WebFreer browser<\/figcaption><\/figure>\n<p>The browser has its official website (hXXps:\/\/www.webfreer.com), where WebFreer is advertised as a safe, convenient and fast browser.<\/p>\n<figure id=\"attachment_2059\" aria-describedby=\"caption-attachment-2059\" style=\"width: 848px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-2059\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/8-1024x804.png\" alt=\"Official WebFreer web site\" width=\"848\" height=\"666\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/8-1024x804.png 1024w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/8-300x236.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/8-768x603.png 768w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/8.png 1034w\" sizes=\"auto, (max-width: 848px) 100vw, 848px\" \/><figcaption id=\"caption-attachment-2059\" class=\"wp-caption-text\">Official WebFreer web site<\/figcaption><\/figure>\n<p>Let\u2019s look on the site in details. Specifically &#8211; at the home page code.<\/p>\n<figure id=\"attachment_2060\" aria-describedby=\"caption-attachment-2060\" style=\"width: 848px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-2060\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/29-1024x804.png\" alt=\"Oops! We got Monero miner\" width=\"848\" height=\"666\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/29-1024x804.png 1024w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/29-300x236.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/29-768x603.png 768w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/29.png 1034w\" sizes=\"auto, (max-width: 848px) 100vw, 848px\" \/><figcaption id=\"caption-attachment-2060\" class=\"wp-caption-text\">Oops! We got Monero miner<\/figcaption><\/figure>\n<p>Indeed, the page&#8217;s code is worth a look. On the main page of the WebFreer website, a 3malicious script is built-in that executes the cryptocurrency mining when your browser is just open. The latest versions of popular browsers block content that is sent from unsafe HTTP protocol, so in our case, the script was blocked by the Chrome browser. If you are using an older browser version, you may be at risk.<\/p>\n<p>By clicking on the download button, the WebFreer installer starts downloading. The file named WebFreer_Setup_1.3.2.0 is an NSIS installer of 53.7 MB size. Interestingly, the file is not signed by any digital signature, making it impossible to verify its authenticity. So, anyone who has access to WebFreer servers can modify the browser without users&#8217; notice.<\/p>\n<figure id=\"attachment_2061\" aria-describedby=\"caption-attachment-2061\" style=\"width: 377px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2061\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/9.png\" alt=\"Setup file is not digitally signed\" width=\"377\" height=\"515\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/9.png 377w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/9-220x300.png 220w\" sizes=\"auto, (max-width: 377px) 100vw, 377px\" \/><figcaption id=\"caption-attachment-2061\" class=\"wp-caption-text\">Setup file is not digitally signed<\/figcaption><\/figure>\n<p>Downloaded version 1.3.2.0 is the latest one at the moment. The installation process is standard.<\/p>\n<ul>\n<li>creates directory % ProgramFiles% \\ WebFreer. This is the main browser directory;<\/li>\n<li>creates directory %LocalAppData%\\Web Freer. It stores user data;<\/li>\n<li>creates file %SystemDir%\\WebClientService.exe. This file is malicious;<\/li>\n<li>creates file %SystemDir%\\webproxy.exe. This file is malicious;<\/li>\n<li>to autostart the browser while system startup it creates a registry key HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run\\Web Freer, that refers to file %ProgramFiles%\\WebFreer\\webfreer.exe;<\/li>\n<li><a href=\"https:\/\/howtofix.guide\/system-interrupts-what-is-this-process\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">for work of malicious process<\/a> creates service WebClientService, that refers to file %System%\\WebClientService.exe;<\/li>\n<li>to provide network access, it creates Windows Firewall rules that allow incoming TCP and UDP connections for %ProgramFiles%\\WebFreer\\webfreer.exe;<\/li>\n<li>creates registry keys HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\WebFreer and HKCU\\Software\\WebFreer, that aren\u2019t malicious.<\/li>\n<\/ul>\n<figure id=\"attachment_2064\" aria-describedby=\"caption-attachment-2064\" style=\"width: 848px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-2064\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/10-1024x332.png\" alt=\"Firewall rules added by WebFreer installer\" width=\"848\" height=\"275\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/10-1024x332.png 1024w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/10-300x97.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/10-768x249.png 768w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/10.png 1339w\" sizes=\"auto, (max-width: 848px) 100vw, 848px\" \/><figcaption id=\"caption-attachment-2064\" class=\"wp-caption-text\">Firewall rules added by WebFreer installer<\/figcaption><\/figure>\n<h3>3.1 Digging deeper<\/h3>\n<p>Let&#8217;s analyze in details these files.<\/p>\n<h4>WebClientService.exe<\/h4>\n<p>As was mentioned before, the launch of this executable file occurs via the WebClientService service created during the installation of the browser. It is obvious that authors of malware tried to hide using similar name with a legitimate WebClient service. A usual user won\u2019t notice a dirty trick, even if he decides to see the list of processes manually.<\/p>\n<p>Static analysis leads us to conclude that the file was written by C ++. Obviously, the application does not have a graphical interface.<\/p>\n<figure id=\"attachment_2077\" aria-describedby=\"caption-attachment-2077\" style=\"width: 418px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2077\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/11.png\" alt=\"WebClientService.exe written in C++\" width=\"418\" height=\"238\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/11.png 418w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/11-300x171.png 300w\" sizes=\"auto, (max-width: 418px) 100vw, 418px\" \/><figcaption id=\"caption-attachment-2077\" class=\"wp-caption-text\">WebClientService.exe written in C++<\/figcaption><\/figure>\n<p>It is worth paying attention to the import of functions. In addition to the standard ones, the use of the curl library is obvious. Obviously, in the future we will see the interaction of service with the Internet.<\/p>\n<figure id=\"attachment_2078\" aria-describedby=\"caption-attachment-2078\" style=\"width: 472px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2078\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/23.png\" alt=\"Service uses curllib\" width=\"472\" height=\"209\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/23.png 472w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/23-300x133.png 300w\" sizes=\"auto, (max-width: 472px) 100vw, 472px\" \/><figcaption id=\"caption-attachment-2078\" class=\"wp-caption-text\">Service uses curllib<\/figcaption><\/figure>\n<p>In the further analysis, some variables and functions have been renamed for easier perception. They, as well as comments, are listed in the screenshots below.<\/p>\n<p>Further analysis shows that file has standard main function, in which the internal function is associated with the WebClientService service by WinAPI\u2019s StartServiceCtrlDispatcher function.<\/p>\n<figure id=\"attachment_2079\" aria-describedby=\"caption-attachment-2079\" style=\"width: 711px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2079\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/12.png\" alt=\"Service\u2019s start function is standard \" width=\"711\" height=\"470\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/12.png 711w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/12-300x198.png 300w\" sizes=\"auto, (max-width: 711px) 100vw, 711px\" \/><figcaption id=\"caption-attachment-2079\" class=\"wp-caption-text\">Service\u2019s start function is standard<\/figcaption><\/figure>\n<p>Let&#8217;s take a closer look at the function that is executed in conjunction with the service. We immediately see the registration of the control handler function (via RegisterServiceCtrlHandler), as it should be.<\/p>\n<figure id=\"attachment_2080\" aria-describedby=\"caption-attachment-2080\" style=\"width: 848px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-2080\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/14-1024x449.png\" alt=\"Service\u2019s main function\" width=\"848\" height=\"372\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/14-1024x449.png 1024w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/14-300x132.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/14-768x337.png 768w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/14.png 1342w\" sizes=\"auto, (max-width: 848px) 100vw, 848px\" \/><figcaption id=\"caption-attachment-2080\" class=\"wp-caption-text\">Service\u2019s main function<\/figcaption><\/figure>\n<p>Let&#8217;s not rush things and analyze the function of processing control code. The control codes processing function itself is of no interest and can only accept SERVICE_CONTROL_STOP code. Accordingly, service can\u2019t be suspended.<\/p>\n<p>An interesting point is that in the case of receiving the SERVICE_CONTROL_STOP code, the processing function returns in response to SERVICE_STOP_PENDING, and the service execution does not stop immediately (but the service will be forcibly terminated by SCM after the expiration of the time limit). Malware authors don\u2019t specify the parameter dwWaitHint, which should be passed in case of the return of code SERVICE_STOP_PENDING. Though it doesn\u2019t affect the main functionality of the malicious service.<\/p>\n<figure id=\"attachment_2082\" aria-describedby=\"caption-attachment-2082\" style=\"width: 530px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2082\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/13.png\" alt=\"Service\u2019s control handler function\" width=\"530\" height=\"201\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/13.png 530w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/13-300x114.png 300w\" sizes=\"auto, (max-width: 530px) 100vw, 530px\" \/><figcaption id=\"caption-attachment-2082\" class=\"wp-caption-text\">Service\u2019s control handler function<\/figcaption><\/figure>\n<p>After registering the handler of the control codes, we see the standard preparation for the launch of service. After creating the service completion event, you can notice an interesting function that for convenience of analysis was called by us GetHedgeCoinData. It runs twice: if the first start was unsuccessful, the malicious one waits for 60 seconds (Sleep (60000)), then makes a second attempt.<\/p>\n<p>Let&#8217;s look at the function itself to understand what functions it is doing.<\/p>\n<figure id=\"attachment_2083\" aria-describedby=\"caption-attachment-2083\" style=\"width: 575px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2083\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/15.png\" alt=\"GetHedgeCoinData function is small yet interesting\" width=\"575\" height=\"345\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/15.png 575w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/15-300x180.png 300w\" sizes=\"auto, (max-width: 575px) 100vw, 575px\" \/><figcaption id=\"caption-attachment-2083\" class=\"wp-caption-text\">GetHedgeCoinData function is small yet interesting<\/figcaption><\/figure>\n<figure id=\"attachment_2084\" aria-describedby=\"caption-attachment-2084\" style=\"width: 530px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2084\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/16.png\" alt=\"Nested CheckAvailability function uses curl library\" width=\"530\" height=\"297\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/16.png 530w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/16-300x168.png 300w\" sizes=\"auto, (max-width: 530px) 100vw, 530px\" \/><figcaption id=\"caption-attachment-2084\" class=\"wp-caption-text\">Nested CheckAvailability function uses curl library<\/figcaption><\/figure>\n<p>Malware uses the curl library to connect to the URL hXXps: \/\/sites.google.com\/site\/hedgecoin. After the request was made, the response code and return data are checked. The GetHedgeCoinData function succeeds if the query was executed.<\/p>\n<p>As you can see, the site is disabled by Google right now, so it is not possible to retrieve the data that was on this domain.<\/p>\n<figure id=\"attachment_2085\" aria-describedby=\"caption-attachment-2085\" style=\"width: 700px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2085\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/17.png\" alt=\"Google disables malicious site. Nice job!\" width=\"700\" height=\"171\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/17.png 700w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/17-300x73.png 300w\" sizes=\"auto, (max-width: 700px) 100vw, 700px\" \/><figcaption id=\"caption-attachment-2085\" class=\"wp-caption-text\">Google disables malicious site. Nice job!<\/figcaption><\/figure>\n<p>However, as we didn\u2019t get information from the specified web address, the malware uses the predefined (hardcoded) parameters:<br \/>\n-a cryptonight -o stratum+tcp:\/\/mine.anybt.com:1111 -u 478WNYwHN4SQs8j89P8QJY4DKm2c6JhCQizi5ucjooKuFQirbtEsafJinSXLwZcysnN1L98r2vocKjGjKoXRrEiRGpmyErc -p x -t 1<\/p>\n<p>Obviously, these parameters are used for cryptocurrency mining. Specifically, the algorithm cryptonight and the domain mine.anybt.com, located on the hosting GoDaddy.com (based on whois information) is in use.<\/p>\n<figure id=\"attachment_2086\" aria-describedby=\"caption-attachment-2086\" style=\"width: 712px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2086\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/22.png\" alt=\"WhoIs information about anybt.com domain\" width=\"712\" height=\"358\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/22.png 712w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/22-300x151.png 300w\" sizes=\"auto, (max-width: 712px) 100vw, 712px\" \/><figcaption id=\"caption-attachment-2086\" class=\"wp-caption-text\">WhoIs information about anybt.com domain<\/figcaption><\/figure>\n<p>Remember these settings, they will be used below. The next function we named CheckWebProxyFiles , that processed files used by malware.<\/p>\n<figure id=\"attachment_2087\" aria-describedby=\"caption-attachment-2087\" style=\"width: 875px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2087\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/18.png\" alt=\"Checking files and copying them\" width=\"875\" height=\"631\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/18.png 875w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/18-300x216.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/18-768x554.png 768w\" sizes=\"auto, (max-width: 875px) 100vw, 875px\" \/><figcaption id=\"caption-attachment-2087\" class=\"wp-caption-text\">Checking files and copying them<\/figcaption><\/figure>\n<p>As you can see from the code, there can be 3 identical malicious files on the user&#8217;s system:<\/p>\n<ol>\n<li>%commonappdata%\\_iocache_.dat<\/li>\n<li>%system%\\webproxy.exe<\/li>\n<li>%programfiles%\\WebFreer\\webproxy.exe<\/li>\n<\/ol>\n<p>If any of the last two files will be removed, service will restore from a copy in %commonappdata%\\_iocache_.dat.<\/p>\n<p>Let&#8217;s return to the main function. After the above operations with files, the following function is executed, that is intended for launching webproxy.exe.<\/p>\n<figure id=\"attachment_2089\" aria-describedby=\"caption-attachment-2089\" style=\"width: 894px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2089\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/19.png\" alt=\"Finally launching webproxy.exe with needed parameters\" width=\"894\" height=\"712\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/19.png 894w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/19-300x239.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/19-768x612.png 768w\" sizes=\"auto, (max-width: 894px) 100vw, 894px\" \/><figcaption id=\"caption-attachment-2089\" class=\"wp-caption-text\">Finally launching webproxy.exe with needed parameters<\/figcaption><\/figure>\n<p>The service checks the presence of %system%\\webproxy.exe or %programfiles%\\WebFreer\\webproxy.exe file (it\u2019s enough at least one of them), and then generates the startup parameters (the ones we saw above). After that it creates the process, saving its ProcessID. The constant bCreateProtectedProcess, hidden into the application code, attracts attention. If its value is 76 (0x4C), then the process is started as a protected one. In the sample analyzed by us this value was equal to 76.<\/p>\n<p>The further behavior of the service depends on the success of launching the webproxy.exe process. If the process couldn\u2019t be started, the service is shut down.<\/p>\n<figure id=\"attachment_2090\" aria-describedby=\"caption-attachment-2090\" style=\"width: 455px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2090\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/20.png\" alt=\"Further behavior depends on process start\u2019s result\" width=\"455\" height=\"323\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/20.png 455w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/20-300x213.png 300w\" sizes=\"auto, (max-width: 455px) 100vw, 455px\" \/><figcaption id=\"caption-attachment-2090\" class=\"wp-caption-text\">Further behavior depends on process start\u2019s result<\/figcaption><\/figure>\n<p>If the webproxy.exe process is successfully launched, the service is marked as started and it creates an endless stream, in which the integrity of the files (CheckWebProxyFiles) is checked and the process of webproxy.exe is restarted, if necessary.<\/p>\n<figure id=\"attachment_2091\" aria-describedby=\"caption-attachment-2091\" style=\"width: 586px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2091\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/21.png\" alt=\"Every 5 seconds service keeps an eye on webproxy process\" width=\"586\" height=\"511\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/21.png 586w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/21-300x262.png 300w\" sizes=\"auto, (max-width: 586px) 100vw, 586px\" \/><figcaption id=\"caption-attachment-2091\" class=\"wp-caption-text\">Every 5 seconds service keeps an eye on webproxy process<\/figcaption><\/figure>\n<p>So, it&#8217;s time to sum up.<\/p>\n<p>Service WebClientService:<\/p>\n<ol>\n<li>refers to a file %system%\\WebClientService.exe;<\/li>\n<li>starts automatically when the system starts up;<\/li>\n<li>executes a request to the URL hXXps:\/\/sites.google.com\/site\/hedgecoin;<\/li>\n<li>has built-in parameters for mining (but does not do mining itself);<\/li>\n<li>It starts a protected process at startup %system%\\webproxy.exe or %programfiles%\\WebFreer\\webproxy.exe;<\/li>\n<li>performs file copying operations %commonappdata%\\_iocache_.dat, %system%\\webproxy.exe and %programfiles%\\WebFreer\\webproxy.exe;<\/li>\n<li>after startup it monitors every 5 seconds the status of the webproxy.exe process and, if necessary, starts it again;<\/li>\n<li>after startup it monitors every 5 seconds the presence of %commonappdata%\\_iocache_.dat, %system%\\webproxy.exe and %programfiles%\\WebFreer\\webproxy.exe. If necessary, restores them from copies.<\/li>\n<\/ol>\n<h4>webproxy.exe<\/h4>\n<p>When parsing the WebClientService service, we repeatedly encountered the mention of another malicious file &#8211; webproxy.exe. Due to information already received, we can safely assume that this file is a coin miner. Let\u2019s check this hypothesis.<\/p>\n<figure id=\"attachment_2093\" aria-describedby=\"caption-attachment-2093\" style=\"width: 584px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2093\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/24.png\" alt=\"PE Header tells us it is a 64-bit EXE\" width=\"584\" height=\"495\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/24.png 584w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/24-300x254.png 300w\" sizes=\"auto, (max-width: 584px) 100vw, 584px\" \/><figcaption id=\"caption-attachment-2093\" class=\"wp-caption-text\">PE Header tells us it is a 64-bit EXE<\/figcaption><\/figure>\n<p>Information from the PE header tells us that this file is executed on 64-bit systems. It is very strange for a malware, because this can potentially reduce the number of infected systems, although most computers in the world work on modern OS with 64-bit width. At least Windows x86 users can sleep peacefully, this coin miner won\u2019t even launch on their systems.<\/p>\n<figure id=\"attachment_2094\" aria-describedby=\"caption-attachment-2094\" style=\"width: 428px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2094\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/25.png\" alt=\"Packed with UPX. Boring\" width=\"428\" height=\"376\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/25.png 428w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/25-300x264.png 300w\" sizes=\"auto, (max-width: 428px) 100vw, 428px\" \/><figcaption id=\"caption-attachment-2094\" class=\"wp-caption-text\">Packed with UPX. Boring<\/figcaption><\/figure>\n<p>Data about the sections in the PE header tells us that we face a packed UPX file in front of us.<\/p>\n<p>After the routine unpacking procedure, we get the usual executable console file written in C.<\/p>\n<figure id=\"attachment_2095\" aria-describedby=\"caption-attachment-2095\" style=\"width: 518px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2095\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/26.png\" alt=\"We got non-packed 64-bit executable\" width=\"518\" height=\"255\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/26.png 518w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/26-300x148.png 300w\" sizes=\"auto, (max-width: 518px) 100vw, 518px\" \/><figcaption id=\"caption-attachment-2095\" class=\"wp-caption-text\">We got non-packed 64-bit executable<\/figcaption><\/figure>\n<p>Let&#8217;s check the string constants in the file and, perhaps, we will find something interesting.<\/p>\n<figure id=\"attachment_2096\" aria-describedby=\"caption-attachment-2096\" style=\"width: 771px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2096\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/27.png\" alt=\"Yep. CPUMiner-Multi is used\" width=\"771\" height=\"167\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/27.png 771w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/27-300x65.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/27-768x166.png 768w\" sizes=\"auto, (max-width: 771px) 100vw, 771px\" \/><figcaption id=\"caption-attachment-2096\" class=\"wp-caption-text\">Yep. CPUMiner-Multi is used<\/figcaption><\/figure>\n<p>Indeed, we have found an interesting fact. Let&#8217;s allow the proposition that we are dealing with the original cpuminer-multi. The malware authors did not remove the string constants from the file, so we even got the GitHub of the coin miner&#8217;s author (not a malicious program, but the legitimate utility for mining &#8211; cpuminer-multi). We found cpuminer-multi-version 1.3.1 on GitHub without problems. The only thing left to do is just to compare our files with those found.<\/p>\n<figure id=\"attachment_2097\" aria-describedby=\"caption-attachment-2097\" style=\"width: 740px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2097\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/28.png\" alt=\"So, webproxy.exe is actually cpuminer-gw64-core2.exe\" width=\"740\" height=\"629\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/28.png 740w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/28-300x255.png 300w\" sizes=\"auto, (max-width: 740px) 100vw, 740px\" \/><figcaption id=\"caption-attachment-2097\" class=\"wp-caption-text\">So, webproxy.exe is actually cpuminer-gw64-core2.exe<\/figcaption><\/figure>\n<p>Now it is clear why webproxy.exe is a 64-bit application, regardless of the OS bitness on which WebFreer is installed: cpuminer-multi version 1.3.1 exists only in 64-bit version.<\/p>\n<figure id=\"attachment_2098\" aria-describedby=\"caption-attachment-2098\" style=\"width: 614px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2098\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/30.png\" alt=\"Mining process is in progress\u2026\" width=\"614\" height=\"706\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/30.png 614w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/30-261x300.png 261w\" sizes=\"auto, (max-width: 614px) 100vw, 614px\" \/><figcaption id=\"caption-attachment-2098\" class=\"wp-caption-text\">Mining process is in progress\u2026<\/figcaption><\/figure>\n<p>In total, webproxy.exe is not of much interest for analysis, since it is a copy of the common utility for mining cpuminer-gw64-core2.exe.<\/p>\n<h3>3.2 Was WebFreer always be so?<\/h3>\n<p>We decided to check whether users of the previous version of the WebFreer browser are at risk. To do this, we downloaded the previous browser version &#8211; 1.3.1.0, and compared the contents of the installers.<\/p>\n<figure id=\"attachment_2102\" aria-describedby=\"caption-attachment-2102\" style=\"width: 865px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2102\" src=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/31.png\" alt=\"Not webproxy.exe neither webclientserver.exe are present\" width=\"865\" height=\"733\" title=\"\" srcset=\"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/31.png 865w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/31-300x254.png 300w, https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/31-768x651.png 768w\" sizes=\"auto, (max-width: 865px) 100vw, 865px\" \/><figcaption id=\"caption-attachment-2102\" class=\"wp-caption-text\">Not webproxy.exe neither webclientserver.exe are present<\/figcaption><\/figure>\n<p>As it turned out, the previous version of the browser WebFreer did not contain any malicious elements, namely &#8211; hidden coin miners.<\/p>\n<h2>4.Conclusion<\/h2>\n<p>Together with you, we have found and analyzed the WebFreer browser, which is installed in a system along with malicious elements. They carry out crypto-currency mining causing harm to your system and computer. Your computer is busy solving the mining tasks. As a result, its performance and speed are reduced, and there may be a problem of a high noise level of cooling systems, overheating, and even breakdown of the computer.<\/p>\n<p>Whether the malicious minor was included in the WebFreer browser purposefully by its authors or whether a cyberattack was performed on their server, it is impossible to say for sure because there is no digital signature.<\/p>\n<p> At the end of our analysis, we would like to give you some tips on how to protect yourself and your loved ones.<\/p>\n<ul>\n<li>Use only the latest versions of the software.<\/li>\n<li>Install operating system updates in a timely manner. Most infections can be avoided simply by installing OS updates.<\/li>\n<li>Use only trusted browsers.<\/li>\n<li>Do not install unknown software from suspicious sources.<\/li>\n<li>Check the presence of a digital signature in the programs that you use. This will not be the 100% solution against infection, but it will significantly reduce it.<\/li>\n<li>If you notice a slowdown or worsening of your PC performance, scan your system.<\/li>\n<\/ul>\n<p>Coin miners gain popularity, so dozens of new viruses appear every hour, and usual antiviruses can\u2019t effectively fight them. GridinSoft Anti-Malware updates the virus database hourly, so you can be sure that you have the strongest protection.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>1. Coin Miner malware gains its popularity Due to rising cost of cryptocurrency recently, Bitcoin particularly (BTC) to 20000 USD, our Analysts Team noticed an increased amount of malicious programs, especially those who focused on the secret mining of cryptocurrency. GridinSoft Anti-malware detect them as Trojan.CoinMiner\/Risk.CoinMiner. For few recent months CoinMiner is one of the [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":7080,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"content-type":"","_sitemap_exclude":false,"_sitemap_priority":"","_sitemap_frequency":"","footnotes":""},"categories":[17],"tags":[23,24],"class_list":{"0":"post-2038","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-labs","8":"tag-coin-miner","9":"tag-trojan"},"featured_image_src":"https:\/\/gridinsoft.com\/blogs\/wp-content\/uploads\/2018\/02\/Coin-Miner-Investigation.jpg","author_info":{"display_name":"Vladislav Baglay","author_link":"https:\/\/gridinsoft.com\/blogs\/author\/baglay\/"},"_links":{"self":[{"href":"https:\/\/gridinsoft.com\/blogs\/wp-json\/wp\/v2\/posts\/2038","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gridinsoft.com\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gridinsoft.com\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gridinsoft.com\/blogs\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/gridinsoft.com\/blogs\/wp-json\/wp\/v2\/comments?post=2038"}],"version-history":[{"count":6,"href":"https:\/\/gridinsoft.com\/blogs\/wp-json\/wp\/v2\/posts\/2038\/revisions"}],"predecessor-version":[{"id":9106,"href":"https:\/\/gridinsoft.com\/blogs\/wp-json\/wp\/v2\/posts\/2038\/revisions\/9106"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/gridinsoft.com\/blogs\/wp-json\/wp\/v2\/media\/7080"}],"wp:attachment":[{"href":"https:\/\/gridinsoft.com\/blogs\/wp-json\/wp\/v2\/media?parent=2038"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gridinsoft.com\/blogs\/wp-json\/wp\/v2\/categories?post=2038"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gridinsoft.com\/blogs\/wp-json\/wp\/v2\/tags?post=2038"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}