Settle a problem:10
An administrator is attempting to block all web access to URLs that contain the keywords “game” or “games” for users protected by the Cisco Umbrella Roaming Client. The initial approach involved creating a custom Destination List within a DNS Policy and adding wildcard entries such as *game*
and *games*
. This method proved ineffective, as users were still able to access websites like www.crazygames.com
and other game-related URLs. The core issue stems from a misunderstanding of the capabilities and limitations of Cisco Umbrella’s DNS-layer security versus its Secure Web Gateway (SWG) functionality.
The fundamental reason the initial attempt failed is that DNS-layer security operates exclusively on fully qualified domain names (FQDNs). When a user’s device makes a DNS query for www.crazygames.com
, the Umbrella DNS resolvers only see that specific domain. They do not have visibility into the full URL path, such as https://www.example.com/path/to/a/page.html?query=string
.
Limitations of DNS-Layer Security for Keyword Blocking:
www.example.com/games/new-game
based on the /games/
path.*
) are only supported at the beginning of a domain to block subdomains (e.g., *.example.com
). They are not supported for matching substrings in the middle or at the end of a domain (e.g., *game*.com
is an invalid entry and will not function as intended).To achieve granular control based on keywords or patterns within the full URL, it is necessary to use a full web proxy that can perform deep packet inspection of HTTP/S traffic. In Cisco Umbrella, this functionality is provided by the Secure Web Gateway (SWG), which is configured via Web Policies.
Capabilities of the Secure Web Gateway (SWG):
Therefore, the correct solution is to leverage the SWG and a Web Policy to implement the desired keyword-based blocking.
Before implementing the solution, ensure the following prerequisites are met:
The user in the source post was using the Roaming Client, which is a valid method for steering traffic to the SWG.
Follow these steps to create and apply a Web Policy rule that blocks URLs containing “game” or “games”.
Step 1: Create a URL Destination List with Regular Expressions
Log in to your Cisco Umbrella dashboard.
Navigate to Policies > Policy Components > URL Destination Lists.
Click Add in the top right corner.
Provide a descriptive List Name, for example, Block URLs - Game Keywords
.
Under “Add URLs,” select the Regular Expression option from the dropdown menu. This is critical for pattern matching.
Enter the regular expression to match the desired keywords. Here are a few effective options:
.*games?.*
s?
makes the ‘s’ optional)..*\b(game|games)\b.*
\b
represents a word boundary, which prevents the rule from blocking legitimate URLs that happen to contain “game” as part of another word (e.g., www.videogamer.com
would be matched by the simple pattern but not this one, though in this use case that may be desirable. Conversely, it prevents blocking words like “megabyte” or “ingame” if they were part of a URL path). The (game|games)
part matches either “game” or “games”.Click the plus (+) icon to add the expression to the list.
Click Save.
Step 2: Apply the URL Destination List to a Web Policy Rule
Block URLs - Game Keywords
).https://www.crazygames.com
or https://www.puzzles-games.net
.By following this solution, you will effectively use the full capabilities of the Cisco Umbrella Secure Web Gateway to enforce content policies based on specific keywords within URLs, providing more granular and powerful control than DNS-layer filtering alone can offer.