{"id":1379,"date":"2026-09-06T17:52:12","date_gmt":"2026-09-06T17:52:12","guid":{"rendered":"https:\/\/www.freethought.uk\/help\/using-ultra-clouds-application-firewall-waf\/"},"modified":"2026-09-06T17:52:31","modified_gmt":"2026-09-06T17:52:31","slug":"using-ultra-clouds-application-firewall-waf","status":"publish","type":"post","link":"https:\/\/www.freethought.uk\/help\/using-ultra-clouds-application-firewall-waf\/","title":{"rendered":"Using ULTRA Cloud&#8216;s application firewall (WAF)"},"content":{"rendered":"\n<p>The Application Firewall adds an extra layer of protection to your website by checking incoming requests for patterns commonly associated with attacks. You choose which rules should block matching requests, so you stay in control of what gets filtered.<\/p>\n\n\n\n<p>Think of it as another layer of defence alongside keeping your applications updated and using secure passwords, not a guarantee that every attack will be stopped. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"enabling-the-firewall\">Enabling the firewall<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Open your website&#8217;s security settings in ULTRA Cloud.<\/li>\n\n\n\n<li>Enable <strong>Application Firewall<\/strong>.<\/li>\n\n\n\n<li>Select <strong>Manage settings.<\/strong><\/li>\n\n\n\n<li>Enable the rules you want to use, or select <strong>Enable all<\/strong>.<\/li>\n\n\n\n<li>Select <strong>Save changes.<\/strong><\/li>\n<\/ol>\n\n\n\n<p>The main <strong>Application Firewall <\/strong>switch controls the whole feature. Each rule has its own <strong>Enabled<\/strong> switch that decides whether it blocks matching requests.<\/p>\n\n\n\n<p>New rules start with blocking switched off, so turning on the firewall alone doesn&#8217;t enable every protection automatically. The card shows how many rules are currently enabled.<\/p>\n\n\n\n<p><strong>Enable all<\/strong> and <strong>Disable all<\/strong> affect every rule, even ones hidden by a search. Changes you make inside the settings window only take effect once you select <strong>Save changes<\/strong>, closing or cancelling discards them.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-to-expect\">What to expect<\/h2>\n\n\n\n<p>When the firewall blocks a request, the visitor sees a friendly access-denied page instead of your website content. Requests from trusted IP addresses bypass the firewall entirely.<\/p>\n\n\n\n<p>Some legitimate requests can resemble attack patterns, so it&#8217;s worth testing your website after enabling a rule to make sure everything still works as expected. Take particular care with rules that check remote URLs or file paths, as these are more likely to affect normal activity on some websites.<\/p>\n\n\n\n<p>Enable all switches on every available rule at once, which may not suit every website. It&#8217;s often safer to enable rules individually and test as you go.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"available-rules\">Available rules<\/h2>\n\n\n\n<p>The table below lists each rule by name, so you can find it in ULTRA Cloud, along with a plain-language description of what it looks for.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Rule name<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><tr><td><strong>Magento GraphQL styles parameter<\/strong><\/td><td>Detects suspicious use of a styles parameter on GraphQL routes, helping filter requests associated with Magento exploit attempts.<\/td><\/tr><tr><td><strong>Magento PayPal response PHP opener<\/strong><\/td><td>Detects PHP code markers in requests to Magento&#8217;s PayPal response route, helping block attempts to inject code.<\/td><\/tr><tr><td><strong>SQL UNION SELECT function<\/strong><\/td><td>Detects a database-query pattern that may be used to retrieve information an attacker should not access.<\/td><\/tr><tr><td><strong>SQL UNION ALL SELECT<\/strong><\/td><td>Detects another database-query pattern commonly used in attempts to extract information.<\/td><\/tr><tr><td><strong>SQL CONCAT function<\/strong><\/td><td>Detects a database function that can be used to assemble information during an injection attack.<\/td><\/tr><tr><td><strong>Remote URL parameter<\/strong><\/td><td>Detects external web addresses passed as request values, which may be used to make vulnerable applications load remote content. Legitimate links can also match.<\/td><\/tr><tr><td><strong>Relative file path parameter<\/strong><\/td><td>Detects request values that point up through folders, potentially attempting to access files outside the intended location.<\/td><\/tr><tr><td><strong>Absolute file path parameter<\/strong><\/td><td>Detects request values that directly reference server file paths, potentially attempting to read local files.<\/td><\/tr><tr><td><strong>Script tags in parameters<\/strong><\/td><td>Detects JavaScript tags in request values, helping filter attempts to inject scripts into website pages.<\/td><\/tr><tr><td><strong>PHP GLOBALS parameter<\/strong><\/td><td>Detects attempts to supply PHP global-variable parameters, which may manipulate vulnerable application behaviour.<\/td><\/tr><tr><td><strong>PHP REQUEST parameter<\/strong><\/td><td>Detects attempts to manipulate PHP request-variable structures used by vulnerable applications.<\/td><\/tr><tr><td><strong>Process environment access<\/strong><\/td><td>Detects references to a server process information file that could expose sensitive settings.<\/td><\/tr><tr><td><strong>Joomla configuration parameter<\/strong><\/td><td>Detects older Joomla configuration parameters associated with attempts to alter application behaviour.<\/td><\/tr><tr><td><strong>Base64 function expression<\/strong><\/td><td>Detects encoding or decoding function expressions that may be used to disguise malicious instructions.<\/td><\/tr><tr><td><strong>Encoded SQL UNION patterns<\/strong><\/td><td>Detects SQL injection patterns using encoded spacing or separators to disguise database commands.<\/td><\/tr><tr><td><strong>Encoded script tags<\/strong><\/td><td>Detects script tags, including encoded forms, that may be used to inject JavaScript into pages.<\/td><\/tr><tr><td><strong>Shell command sequences<\/strong><\/td><td>Detects patterns that attempt to run server commands through a vulnerable application.<\/td><\/tr><tr><td><strong>PHP stream wrappers<\/strong><\/td><td>Detects special PHP resource references that may be abused to read files or execute code.<\/td><\/tr><tr><td><strong>Directory traversal sequences<\/strong><\/td><td>Detects attempts to move outside the intended folder through the requested address or its parameters.<\/td><\/tr><tr><td><strong>Sensitive configuration paths<\/strong><\/td><td>Detects requests for sensitive files, such as environment settings, source-control information and password files.<\/td><\/tr><tr><td><strong>TRACE and TRACK methods<\/strong><\/td><td>Detects diagnostic request types that ordinary website browsing generally does not need and that may expose request information.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"troubleshooting\">Troubleshooting<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>If a normal action on your website is blocked after enabling a rule, disable that rule, save your changes and try again. If you need help, contact support with the affected page, the approximate time and what you were trying to do.<\/p>\n<\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>The Application Firewall adds an extra layer of protection to your website by checking incoming requests for patterns commonly associated with attacks. You choose which rules should block matching requests, so you stay in control of what gets filtered. Think of it as another layer of defence alongside keeping your&hellip;<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15,17,16],"tags":[],"class_list":["post-1379","post","type-post","status-publish","format-standard","hentry","category-our-control-panel","category-advanced-techniques","category-security"],"_links":{"self":[{"href":"https:\/\/www.freethought.uk\/help\/wp-json\/wp\/v2\/posts\/1379","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.freethought.uk\/help\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.freethought.uk\/help\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.freethought.uk\/help\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/www.freethought.uk\/help\/wp-json\/wp\/v2\/comments?post=1379"}],"version-history":[{"count":1,"href":"https:\/\/www.freethought.uk\/help\/wp-json\/wp\/v2\/posts\/1379\/revisions"}],"predecessor-version":[{"id":1380,"href":"https:\/\/www.freethought.uk\/help\/wp-json\/wp\/v2\/posts\/1379\/revisions\/1380"}],"wp:attachment":[{"href":"https:\/\/www.freethought.uk\/help\/wp-json\/wp\/v2\/media?parent=1379"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.freethought.uk\/help\/wp-json\/wp\/v2\/categories?post=1379"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.freethought.uk\/help\/wp-json\/wp\/v2\/tags?post=1379"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}