You are absolutely right to suspect a virtual mechanism. In modern IIS hacks, it is standard practice for attackers to avoid leaving physical files (like a real /blank/ folder) on the disk because they are too easy to find and delete.
Since the folder doesn't exist physically, the server is intercepting the request for /blank/ and processing it dynamically. On IIS, this is almost certainly happening in one of two ways:
1. The "Reverse Proxy" Hack (Most Likely)
This is the most common technique for the specific "cloaking" behavior described in the email. The hacker hasn't just created a fake page; they have turned your server into a gateway for their own server.
- How it works: The hacker modifies your
web.config file (located in the site's root directory). They add a URL Rewrite Rule.
- The Logic: The rule says, "If a user asks for
.../blank/..., do not look on the disk. Instead, secretly fetch the content from hacker-site.com and display it."
- Why it's invisible: The spam content (the stock trading text) lives on the hacker's server, not yours. Your server just relays it. To Google, it looks like the page belongs to you.
What to check:
Open your root web.config file and search for the <rewrite> section. Look for a rule that matches the pattern blank or generally redirects traffic to an external IP or domain.
It will look something like this:
<rule name="hacker_rule">
<match url="^blank/(.*)" />
<action type="Rewrite" url="http://malicious-external-site.com/{R:1}" />
</rule>
2. The "Malicious Handler" (Code Injection)
If they didn't use a rewrite rule, they may have injected code that tells IIS to "handle" any request starting with /blank/ using a specific piece of code rather than looking for a folder.
- How it works: They upload a compiled DLL file into your
/bin/ folder or modify the Global.asax file.
- The Logic: The code listens to every request.
If (Request.Url.StartsWith("/blank")) { Response.Write(SpamContent); }.
- Why it's invisible: The "folder" is purely code. It exists only in the server's memory while the application is running.
3. Database Injection (CMS Specific)
If you are running a CMS (like DotNetNuke, Umbraco, or a custom ASP.NET MVC app), the hacker might have injected these pages directly into your database.
- How it works: They use a SQL Injection vulnerability to add records to your "Pages" or "Articles" table with the slug
/blank/why-retail-traders....
- Why it's invisible: The CMS routing engine sees a valid database record and renders the page dynamically, effectively creating a virtual folder.