In a recent post I showed how you can enable web filtering with Defender for Endpoint using the built in blocked categories method.
Enabling web filtering with Microsoft Defender for Endpoint
The limits of this approach are that you can only use the categories that have been provided (i.e. Adult content, High bandwidth, Legal liability, Leisure and Uncategorized). An interesting omission, in my opinion, is the ability to block social networking (i.e. Twitter, Facebook, etc).
You can achieve custom web filtering with Microsoft Defender for Endpoint if you wish using the custom indicator approach.
You’ll first need to ensure that custom network indicators have been enabled in your environment. You do this by navigating to https://security.microsoft.com, scroll down the list on.the left hand side until you locate Settings, then select Endpoints.
From the menu that now appears, select Advanced features. Ensure that the Custom network indicators option is turned on as shown. Don’t forget to save any changes with the Save preferences button at the bottom of the page.
To enable a custom indicator, navigate to https://security.microsoft.com, scroll down the list on.the left hand side until you locate Settings, then select Indicators. On the right you can create an indicator as File hash, IP address, URL or Certificate. In this case, select URLs/Domains. Then select the option to Add item.
Enter the URL you wish to block and select whether you wish an expiry date for this indicator. Unfortunately, you can’t use wildcard characters here, it must be the direct URL. Press the Next button to continue.
Select the action you wish to take (Allow, Audit, Warn, Block execution). It is also recommended that you select the Generate Alert option so that information can be shared with other applications such as Azure Sentinel, which I’ll cover in an upcoming article. Also, give the alert a descriptive title (I suggest you mention the particular web site you are blocking here). Scroll down the page to continue.
Enter the Alert severity, Category as well as the Recommended actions and a Description as shown above. Press the Next button at the bottom of the page when complete.
View the summary that is now displayed and press the Save button at the bottom of the screen.
You should see your entry listed as shown above. You can edit this by simply clicking on it. You also delete the indicator once you edit it.
Also note the Import menu option that allows you to import a list of items from a CSV file.
Now according to the Microsoft documentation:
Create indicators for IPs and URLs/domains
– Classless Inter-Domain Routing (CIDR) notation for IP addresses is not supported.
– URL/IP allow and block relies on the Defender for Endpoint component Network Protection to be enabled in block mode.
– Supported on machines on Windows 10, version 1709 or later, Windows 11, Windows Server 2016, Windows Server 2012 R2, Windows Server 2019, and Windows Server 2022
– Only external IPs can be added to the indicator list. Indicators cannot be created for internal IPs.
– If there are conflicting URL indicator policies, the longer path is applied. That is, the more specific path.
– Only single IP addresses are supported (no CIDR blocks or IP ranges).
– Encrypted URLs (full path) can only be blocked on first party browsers (Internet Explorer, Edge)
Encrypted URLS (FQDN only) can be blocked outside of first party browsers (Internet Explorer, Edge)
– Full URL path blocks can be applied on the domain level and all unencrypted URLs
– There may be up to 2 hours of latency (usually less) between the time the action is taken, and the URL and IP being blocked. My personal experience is around 45 minutes.
Enforced result on Edge. If you use third party browsers, and the site is encrypted (i.e. uses https) it will not be blocked as mentioned above.
Adding indicators using the web and even importing using a CSV is somewhat time consuming and cumbersome, especially if you have a standard set you wish to block. I’ll show you how to add indicators using a script and API calls in an upcoming post. so stay tuned for that.
Remember, that you can use these indicators to not only block but also warn and audit if you wish. You can also have a number of different indicators and types. I’d also recommend you take a look at this article from Microsoft:
Best practices for optimizing custom indicators
when you start creating these custom indicators.