{"id":609002,"date":"2023-02-17T07:49:03","date_gmt":"2023-02-17T13:49:03","guid":{"rendered":"https:\/\/news.sellorbuyhomefast.com\/index.php\/2023\/02\/17\/new-malware-abuses-microsoft-iis-feature-to-establish-backdoor\/"},"modified":"2023-02-17T07:49:03","modified_gmt":"2023-02-17T13:49:03","slug":"new-malware-abuses-microsoft-iis-feature-to-establish-backdoor","status":"publish","type":"post","link":"https:\/\/newsycanuse.com\/index.php\/2023\/02\/17\/new-malware-abuses-microsoft-iis-feature-to-establish-backdoor\/","title":{"rendered":"New Malware Abuses Microsoft IIS Feature to Establish Backdoor"},"content":{"rendered":"<div><main role=\"main\"><a id=\"main-content\"><\/a><\/p>\n<article role=\"article\">\n<div><app-author _nghost-sc74><\/p>\n<figure _ngcontent-sc74 app-picture><picture><source  media=\"(min-width: 420px)\"><img decoding=\"async\" src=\"https:\/\/symantec-enterprise-blogs.security.com\/sites\/default\/files\/styles\/blogs_author_avatar_small\/public\/2017-10\/author-profile-default.jpg.webp?h=6386ac74&#038;itok=yMcB1DYB\" alt><\/picture><\/figure>\n<p><span _ngcontent-sc74>Threat Hunter Team<\/span><span _ngcontent-sc74>Symantec<\/span><\/p>\n<p><\/app-author><\/div>\n<div>\n<p><span><app-paragraph-rte _nghost-sc84><\/p>\n<div _ngcontent-sc84>\n<p>Symantec, by <a href=\"https:\/\/software.broadcom.com\/\">Broadcom Software<\/a>, has observed a new malware that abuses a feature of Microsoft\u2019s Internet Information Services (IIS) to deploy a backdoor onto targeted systems.<\/p>\n<p>The malware, dubbed Frebniis (Backdoor.Frebniis), was used by a currently unknown threat actor against targets in Taiwan.<\/p>\n<p>The technique used by Frebniis involves injecting malicious code into the memory of a DLL file (iisfreb.dll) related to an IIS feature used to troubleshoot and analyze failed web page requests. This allows the malware to stealthily monitor all HTTP requests and recognize specially formatted HTTP requests sent by the attacker, allowing for remote code execution. In order to use this technique, an attacker needs to gain access to the Windows system running the IIS server by some other means. In this particular case, it is unclear how this access was achieved.<\/p>\n<h2>Failed Request Event Buffering<\/h2>\n<p>IIS is a general-purpose web server that runs on Windows systems to serve requested HTML pages or files. An IIS web server accepts requests from remote client computers and returns the appropriate response. IIS has a feature known as Failed Request Event Buffering (FREB) that collects data and details about requests, such as originating IP address and port, HTTP headers with cookies, etc.<\/p>\n<p>A feature called Failed Request Tracing can be used to troubleshoot IIS failed requests. Failed Request Tracing buffers the trace events for a request and flushes them to disk if the request meets the definition of \u201cfail\u201d set by the user. Failed request tracing can, for example, be used to learn why requests are returning a specific HTTP status code (401 or 404, etc.), or why a request is taking too long to process, or is not responding.<\/p>\n<h2>Stealth Code Hijacking of IIS<\/h2>\n<p>Frebniis ensures Failed Request Tracing is enabled and then accesses w3wp.exe (IIS) process memory, obtaining the address of where the Failed Request Event Buffering code (iisfreb.dll) is loaded.\u00a0 With this code start address, Frebniis searches from there for a function pointer table to hijack code execution.<\/p>\n<p>The authors of Frebniis have determined that a particular function pointer within iisfreb.dll is called by iiscore.dll whenever any HTTP request is made to IIS from a web client. This function normally checks if the content of the HTTP request matches the Failed Request Tracing rules.\u00a0<\/p>\n<\/div>\n<p><\/app-paragraph-rte><\/span><span><app-paragraph-image-inline _nghost-sc91><\/p>\n<div _ngcontent-sc91>\n<figure _ngcontent-sc91 app-picture><picture><source  media=\"(min-width: 720px)\"><source  media=\"(min-width: 420px)\"><img decoding=\"async\" src=\"https:\/\/symantec-enterprise-blogs.security.com\/sites\/default\/files\/styles\/blogs_inline_small\/public\/2023-02\/Fig1.png.webp?itok=5uJTheUm\" alt=\"Figure 1. Function pointer table used to hijack execution\"><\/picture><figcaption>Figure 1. Function pointer table used to hijack execution<\/figcaption><\/figure>\n<\/div>\n<p><\/app-paragraph-image-inline><\/span><span><app-paragraph-rte _nghost-sc84><\/p>\n<p>Frebniis hijacks this function by injecting its own malicious code into IIS process memory and then replacing this function pointer with the address of its own malicious code. This hijack point allows Frebniis to stealthily receive and inspect every HTTP request to the IIS server before returning to the original function.<\/p>\n<p><\/app-paragraph-rte><\/span><span><app-paragraph-image-inline _nghost-sc91><\/p>\n<div _ngcontent-sc91>\n<figure _ngcontent-sc91 app-picture><picture><source  media=\"(min-width: 720px)\"><source  media=\"(min-width: 420px)\"><img decoding=\"async\" src=\"https:\/\/symantec-enterprise-blogs.security.com\/sites\/default\/files\/styles\/blogs_inline_small\/public\/2023-02\/Fig2.png.webp?itok=Vu8LIGQ3\" alt=\"Figure 2. After running its own malicious code, Frebniis jumps back to the original function\"><\/picture><figcaption>Figure 2. After running its own malicious code, Frebniis jumps back to the original function<\/figcaption><\/figure>\n<\/div>\n<p><\/app-paragraph-image-inline><\/span><span><app-paragraph-rte _nghost-sc84><\/p>\n<div _ngcontent-sc84>\n<p>The Frebniis malicious injected code parses all received HTTP POST requests for \/logon.aspx or \/default.aspx along with a parameter password set to \u20187ux4398!\u2019. If the password matches, Frebniis decrypts and executes a section of the injected code, which is .NET executable code consisting of the main backdoor functionality. No executables are saved to disk in this process, keeping the backdoor completely stealthy.<\/p>\n<p>The .NET code provides proxying functionality and remote code execution controlled by a provided second HTTP parameter that is a Base64 encoded string.<\/p>\n<p>To enable the proxy, the encoded string is Base64 decoded and then decrypted (xor 0x08), with the first character representing a proxy command followed by expected parameters. The proxy is used to send and receive Base64 encoded data from other computer systems. This allows the attackers to communicate with internal resources that may normally be blocked from the internet via the compromised IIS server.<\/p>\n<\/div>\n<p><\/app-paragraph-rte><\/span><span><app-paragraph-table _nghost-sc97><\/p>\n<div _ngcontent-sc97>\n<table _ngcontent-sc97 role=\"table\" readabilityDataTable=\"1\">\n<caption _ngcontent-sc97>Table 1. Frebniis commands \u2013 the function names have been misspelled by the malware author <\/caption>\n<thead _ngcontent-sc97 role=\"rowgroup\">\n<tr _ngcontent-sc97 role=\"row\">\n<th _ngcontent-sc97 role=\"columnheader\" data-label=\"Command\">Command<\/th>\n<th _ngcontent-sc97 role=\"columnheader\" data-label=\" Function name\"> Function name<\/th>\n<th _ngcontent-sc97 role=\"columnheader\" data-label=\" Parameter\"> Parameter<\/th>\n<th _ngcontent-sc97 role=\"columnheader\" data-label=\" Description\"> Description<\/th>\n<\/tr>\n<\/thead>\n<tbody _ngcontent-sc97 role=\"rowgroup\">\n<tr _ngcontent-sc97 role=\"row\">\n<td _ngcontent-sc97 role=\"cell\" data-label=\"Command\"> 1 <\/td>\n<td _ngcontent-sc97 role=\"cell\" data-label=\" Function name\"> \tCreateConnect <\/td>\n<td _ngcontent-sc97 role=\"cell\" data-label=\" Parameter\"> \tHost:Port <\/td>\n<td _ngcontent-sc97 role=\"cell\" data-label=\" Description\"> Connect to a remote system for proxying, returns a UUID representing the remote system <\/td>\n<\/tr>\n<tr _ngcontent-sc97 role=\"row\">\n<td _ngcontent-sc97 role=\"cell\" data-label=\"Command\"> 2 <\/td>\n<td _ngcontent-sc97 role=\"cell\" data-label=\" Function name\"> \tReadScoket <\/td>\n<td _ngcontent-sc97 role=\"cell\" data-label=\" Parameter\"> \tUuid <\/td>\n<td _ngcontent-sc97 role=\"cell\" data-label=\" Description\"> \tRead a Base64 string from a remote system <\/td>\n<\/tr>\n<tr _ngcontent-sc97 role=\"row\">\n<td _ngcontent-sc97 role=\"cell\" data-label=\"Command\"> 3 <\/td>\n<td _ngcontent-sc97 role=\"cell\" data-label=\" Function name\"> \tWritescoket <\/td>\n<td _ngcontent-sc97 role=\"cell\" data-label=\" Parameter\"> Uuid, Base64 string <\/td>\n<td _ngcontent-sc97 role=\"cell\" data-label=\" Description\"> \tWrite a Base64 string to a remote system <\/td>\n<\/tr>\n<tr _ngcontent-sc97 role=\"row\">\n<td _ngcontent-sc97 role=\"cell\" data-label=\"Command\"> 4 <\/td>\n<td _ngcontent-sc97 role=\"cell\" data-label=\" Function name\"> \tCloseScoket <\/td>\n<td _ngcontent-sc97 role=\"cell\" data-label=\" Parameter\"> \tUuid <\/td>\n<td _ngcontent-sc97 role=\"cell\" data-label=\" Description\"> \tClose the connection <\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p><\/app-paragraph-table><\/span><span><app-paragraph-rte _nghost-sc84><\/p>\n<p>The .NET backdoor code also supports remote execution. If an HTTP call to logon.aspx or default.aspx is received without the password parameter, but with the Base64 string, the Base64 string is assumed to be C# code that will be executed straight in memory. The Base64 string is decoded and then decrypted (xor 0x08) and is expected to be an XML document with the C# code to be executed in the \u2018\/doc\u2019 node under the \u2018data\u2019 attribute (E.g. <doc data=C# code>).\u00a0 The C# code is extracted and executed. This allows Frebniis to stealthily execute arbitrary code on the system.<\/p>\n<p><\/app-paragraph-rte><\/span><span><app-paragraph-image-inline _nghost-sc91><\/p>\n<div _ngcontent-sc91>\n<figure _ngcontent-sc91 app-picture><picture><source  media=\"(min-width: 720px)\"><source  media=\"(min-width: 420px)\"><img decoding=\"async\" src=\"https:\/\/symantec-enterprise-blogs.security.com\/sites\/default\/files\/styles\/blogs_inline_small\/public\/2023-02\/Fig3.png.webp?itok=vlOnREHw\" alt=\"Figure 3. Example of how Frebniis is used\"><\/picture><figcaption>Figure 3. Example of how Frebniis is used<\/figcaption><\/figure>\n<\/div>\n<p><\/app-paragraph-image-inline><\/span><span><app-paragraph-rte _nghost-sc84><\/p>\n<div _ngcontent-sc84>\n<p>By hijacking and modifying IIS web server code, Frebniis is able to intercept the regular flow of HTTP request handling and look for specially formatted HTTP requests. These requests allow remote code execution and proxying to internal systems in a stealthy manner. No files or suspicious processes will be running on the system, making Frebniis a relatively unique and rare type of HTTP backdoor seen in the wild.<\/p>\n<h2>Protection\/Mitigation<\/h2>\n<p>For the latest protection updates, please visit the <a href=\"https:\/\/www.broadcom.com\/support\/security-center\/protection-bulletin\">Symantec Protection Bulletin<\/a>.<\/p>\n<h2>Indicators of Compromise<\/h2>\n<p>If an IOC is malicious and the file available to us, Symantec Endpoint products will detect and block that file.<\/p>\n<p>6464f9a5da26aa53fb2221255e908fd4da8edf0633f94051beee74a14b9b001c \u2013 Backdoor.Frebniis<\/p>\n<p>b81c177c440e84635f22dc97b0411de93a24a983a41af676ffbbb4439487aaef \u2013 Backdoor.Frebniis<\/p>\n<\/div>\n<p><\/app-paragraph-rte><\/span><\/p>\n<div><app-blog-author _nghost-sc101><\/p>\n<div _ngcontent-sc101>\n<div _ngcontent-sc101 app-picture><picture><source  media=\"(min-width: 1020px)\"><source  media=\"(min-width: 420px)\"><img decoding=\"async\" src=\"https:\/\/symantec-enterprise-blogs.security.com\/sites\/default\/files\/styles\/blogs_author_bio_small\/public\/2017-10\/author-profile-default.jpg.webp?h=6386ac74&#038;itok=w8Rg1PQZ\" alt><\/picture><\/div>\n<div _ngcontent-sc101>\n<header _ngcontent-sc101>\n<h2 _ngcontent-sc101>About the Author<\/h2>\n<h3 _ngcontent-sc101>Threat Hunter Team<\/h3>\n<h4 _ngcontent-sc101>Symantec<\/h4>\n<\/header>\n<p _ngcontent-sc101>The Threat Hunter Team is a group of security experts within Symantec whose mission is to investigate targeted attacks, drive enhanced protection in Symantec products, and offer analysis that helps customers respond to attacks.<\/p>\n<\/div>\n<\/div>\n<p><\/app-blog-author><\/div>\n<\/div>\n<p><\/main><\/div>\n<p><a href=\"https:\/\/symantec-enterprise-blogs.security.com\/blogs\/threat-intelligence\/frebniis-malware-iis\" class=\"button purchase\" rel=\"nofollow noopener\" target=\"_blank\">Read More<\/a><br \/>\n Tomi Kucera<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Threat Hunter TeamSymantecSymantec, by Broadcom Software, has observed a new malware that abuses a feature of Microsoft\u2019s Internet Information Services (IIS) to deploy a backdoor onto targeted systems. The malware, dubbed Frebniis (Backdoor.Frebniis), was used by a currently unknown threat actor against targets in Taiwan. The technique used by Frebniis involves injecting malicious code into<\/p>\n","protected":false},"author":1,"featured_media":609003,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[37355,4551,46],"tags":[],"class_list":{"0":"post-609002","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-abuses","8":"category-malware","9":"category-technology"},"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/posts\/609002","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/comments?post=609002"}],"version-history":[{"count":0,"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/posts\/609002\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/media\/609003"}],"wp:attachment":[{"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/media?parent=609002"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/categories?post=609002"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/tags?post=609002"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}