
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/">
    <channel>
        <title><![CDATA[ The Cloudflare Blog ]]></title>
        <description><![CDATA[ Get the latest news on how products at Cloudflare are built, technologies used, and join the teams helping to build a better Internet. ]]></description>
        <link>https://blog.cloudflare.com</link>
        <atom:link href="https://blog.cloudflare.com/" rel="self" type="application/rss+xml"/>
        <language>en-us</language>
        <image>
            <url>https://blog.cloudflare.com/favicon.png</url>
            <title>The Cloudflare Blog</title>
            <link>https://blog.cloudflare.com</link>
        </image>
        <lastBuildDate>Wed, 15 Apr 2026 19:35:00 GMT</lastBuildDate>
        <item>
            <title><![CDATA[Automating threat analysis and response with Cloudy ]]></title>
            <link>https://blog.cloudflare.com/automating-threat-analysis-and-response-with-cloudy/</link>
            <pubDate>Fri, 29 Aug 2025 14:05:00 GMT</pubDate>
            <description><![CDATA[ Cloudy now supercharges analytics investigations and Cloudforce One threat intelligence! Get instant insights from threat events and APIs on APTs, DDoS, cybercrime & more - powered by Workers AI. ]]></description>
            <content:encoded><![CDATA[ <p>Security professionals everywhere face a paradox: while more data provides the visibility needed to catch threats, it also makes it harder for humans to process it all and find what's important. When there’s a sudden spike in suspicious traffic, every second counts. But for many security teams — especially lean ones — it’s hard to quickly figure out what’s going on. Finding a root cause means diving into dashboards, filtering logs, and cross-referencing threat feeds. All the data tracking that has happened can be the very thing that slows you down — or worse yet, what buries the threat that you’re looking for. </p><p>Today, we’re excited to announce that we’ve solved that problem. We’ve integrated <a href="https://blog.cloudflare.com/introducing-ai-agent/"><u>Cloudy</u></a> — Cloudflare’s first <a href="https://www.cloudflare.com/learning/ai/what-is-agentic-ai/"><u>AI agent</u></a> — with our security analytics functionality, and we’ve also built a new, conversational interface that Cloudflare users can use to ask questions, refine investigations, and get answers.  With these changes, Cloudy can now help Cloudflare users find the needle in the digital haystack, making security analysis faster and more accessible than ever before.  </p><p>Since Cloudy’s launch in March of this year, its adoption has been exciting to watch. Over <b>54,000</b> users have tried Cloudy for <a href="https://developers.cloudflare.com/waf/custom-rules/"><u>custom rule</u></a> creation, and <b>31%</b> of them have deployed a rule suggested by the agent. For our log explainers in <a href="https://www.cloudflare.com/zero-trust/products/gateway/"><u>Cloudflare Gateway</u></a>, Cloudy has been loaded over <b>30,000 </b> times in just the last month, with <b>80%</b> of the feedback we received confirming the summaries were insightful. We are excited to empower our users to do even more.</p>
    <div>
      <h2>Talk to your traffic: a new conversational interface for faster RCA and mitigation</h2>
      <a href="#talk-to-your-traffic-a-new-conversational-interface-for-faster-rca-and-mitigation">
        
      </a>
    </div>
    <p>Security analytics dashboards are powerful, but they often require you to know exactly what you're looking for — and the right queries to get there. The new Cloudy chat interface changes this. It is designed for faster root cause analysis (RCA) of traffic anomalies, helping you get from “something’s wrong” to “here’s the fix” in minutes. You can now start with a broad question and narrow it down, just like you would with a human analyst.</p><p>For example, you can start an investigation by asking Cloudy to look into a recommendation from Security Analytics.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1P7YDzX9JoHmmKLPwGw0z8/aa3675b36492ea13e2cba4d1ba13dce4/image4.png" />
          </figure>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6Nort6ZEZUUkYQc8PTiLgo/33a92121c4c161290f50e792d77c1e16/image1.png" />
          </figure><p>From there, you can ask follow-up questions to dig deeper:</p><ul><li><p>"Focus on login endpoints only."</p></li><li><p>"What are the top 5 IP addresses involved?"</p></li><li><p>"Are any of these IPs known to be malicious?"</p></li></ul><p>This is just the beginning of how Cloudy is transforming security. You can <a href="http://blog.cloudflare.com/cloudy-driven-email-security-summaries/"><u>read more</u></a> about how we’re using Cloudy to bring clarity to another critical security challenge: automating summaries of email detections. This is the same core mission — translating complex security data into clear, actionable insights — but applied to the constant stream of email threats that security teams face every day.</p>
    <div>
      <h2>Use Cloudy to understand, prioritize, and act on threats</h2>
      <a href="#use-cloudy-to-understand-prioritize-and-act-on-threats">
        
      </a>
    </div>
    <p>Analyzing your own logs is powerful — but it only shows part of the picture. What if Cloudy could look beyond your own data and into Cloudflare’s global network to identify emerging threats? This is where Cloudforce One's <a href="https://blog.cloudflare.com/threat-events-platform/"><u>Threat Events platform</u></a> comes in.</p><p>Cloudforce One translates the high-volume attack data observed on the Cloudflare network into real-time, attacker-attributed events relevant to your organization. This platform helps you track adversary activity at scale — including APT infrastructure, cybercrime groups, compromised devices, and volumetric DDoS activity. Threat events provide detailed, context-rich events, including interactive timelines and mappings to attacker TTPs, regions, and targeted verticals. </p><p>We have spent the last few months making Cloudy more powerful by integrating it with the Cloudforce One Threat Events platform.  Cloudy now can offer contextual data about the threats we observe and mitigate across Cloudflare's global network, spanning everything from APT activity and residential proxies to ACH fraud, DDoS attacks, WAF exploits, cybercrime, and compromised devices. This integration empowers our users to quickly understand, prioritize, and act on <a href="https://www.cloudflare.com/learning/security/what-are-indicators-of-compromise/"><u>indicators of compromise (IOCs)</u></a> based on a vast ocean of real-time threat data. </p><p>Cloudy lets you query this global dataset in a natural language and receive clear, concise answers. For example, imagine asking these questions and getting immediate actionable answers:</p><ul><li><p>Who is targeting my industry vertical or country?</p></li><li><p>What are the most relevant indicators (IPs, JA3/4 hashes, ASNs, domains, URLs, SHA fingerprints) to block right now?</p></li><li><p>How has a specific adversary progressed across the cyber kill chain over time?</p></li><li><p>What novel new threats are threat actors using that might be used against your network next, and what insights do Cloudflare analysts know about them?</p></li></ul><p>Simply interact with Cloudy in the Cloudflare Dashboard &gt; Security Center &gt; Threat Intelligence, providing your queries in natural language. It can walk you from a single indicator (like an IP address or domain) to the specific threat event Cloudflare observed, and then pivot to other related data — other attacks, related threats, or even other activity from the same actor. </p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4WE42KXmWzejXpk8CsG05h/2fe63d5f86fe78642a341d645844ab56/image2.png" />
          </figure><p>This cuts through the noise, so you can quickly understand an adversary's actions across the cyber kill chain and MITRE ATT&amp;CK framework, and then block attacks with precise, actionable intelligence. The threat events platform is like an evidence board on the wall that helps you understand threats; Cloudy is like your sidekick that will run down every lead.</p>
    <div>
      <h2>How it works: Agents SDK and Workers AI</h2>
      <a href="#how-it-works-agents-sdk-and-workers-ai">
        
      </a>
    </div>
    <p>Developing this advanced capability for Cloudy was a testament to the agility of Cloudflare's AI ecosystem. We leveraged our <a href="https://developers.cloudflare.com/agents/"><u>Agents SDK</u></a> running on <a href="https://developers.cloudflare.com/workers-ai/"><u>Workers AI</u></a>. This allowed for rapid iteration and deployment, ensuring Cloudy could quickly grasp the nuances of threat intelligence and provide highly accurate, contextualized insights. The combination of our massive network telemetry, purpose-built LLM prompts, and the flexibility of Workers AI means Cloudy is not just fast, but also remarkably precise.</p><p>And a quick word on what we didn’t do when developing Cloudy: We did not train Cloudy on any Cloudflare customer data. Instead, Cloudy relies on models made publicly available through <a href="https://developers.cloudflare.com/workers-ai/models/"><u>Workers AI</u></a>. For more information on Cloudflare’s approach to responsible AI, please see <a href="https://www.cloudflare.com/trust-hub/responsible-ai/"><u>these FAQs</u></a>.</p>
    <div>
      <h2>What's next for Cloudy</h2>
      <a href="#whats-next-for-cloudy">
        
      </a>
    </div>
    <p>This is just the next step in Cloudy’s journey. We're working on expanding Cloudy's abilities across the board. This includes intelligent debugging for WAF rules and deeper integrations with Alerts to give you more actionable, contextual notifications. At the same time, we are continuously enriching our threat events datasets and exploring ways for Cloudy to help you visualize complex attacker timelines, campaign overviews, and intricate attack graphs. Our goal remains the same: make Cloudy an indispensable partner in understanding and reacting to the security landscape.</p><p>The new chat interface is now available on all plans, and the threat intelligence capabilities are live for Cloudforce One customers. Learn more about Cloudforce One <a href="https://www.cloudflare.com/application-services/products/cloudforceone/"><u>here</u></a> and reach out for a <a href="https://www.cloudflare.com/plans/enterprise/contact/?utm_medium=referral&amp;utm_source=blog&amp;utm_campaign=2025-q3-acq-gbl-connectivity-ge-ge-general-ai_week_blog"><u>consultation</u></a> if you want to go deeper with our experts.</p><div>
  
</div><p></p> ]]></content:encoded>
            <category><![CDATA[AI Week]]></category>
            <category><![CDATA[Cloudy]]></category>
            <category><![CDATA[Cloudforce One]]></category>
            <category><![CDATA[Threat Intelligence]]></category>
            <category><![CDATA[Security]]></category>
            <category><![CDATA[Workers AI]]></category>
            <guid isPermaLink="false">26RGd07uODP8AQ5WaxcjnF</guid>
            <dc:creator>Alexandra Moraru</dc:creator>
            <dc:creator>Harsh Saxena</dc:creator>
            <dc:creator>Steve James</dc:creator>
            <dc:creator>Nick Downie</dc:creator>
            <dc:creator>Levi Kipke</dc:creator>
        </item>
        <item>
            <title><![CDATA[Account Security Analytics and Events: better visibility over all domains]]></title>
            <link>https://blog.cloudflare.com/account-security-analytics-and-events/</link>
            <pubDate>Sat, 18 Mar 2023 17:00:00 GMT</pubDate>
            <description><![CDATA[ Revealing Account Security Analytics and Events, new eyes on your account in Cloudflare dashboard to give holistic visibility. No matter how many zones you manage, they are all there! ]]></description>
            <content:encoded><![CDATA[ <p></p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/hkEsUWDVJmPQ7DAieHQCS/6571ab358294597bd14e95b5f1feb5ed/Account-level-Security-Analytics-and-Security-Events_-better-visibility-and-control-over-all-account-zones-at-once.png" />
            
            </figure><p>Cloudflare offers many security features like <a href="https://developers.cloudflare.com/waf/">WAF</a>, <a href="https://developers.cloudflare.com/bots/">Bot management</a>, <a href="https://developers.cloudflare.com/ddos-protection/">DDoS</a>, <a href="https://developers.cloudflare.com/cloudflare-one/">Zero Trust</a>, and more! This suite of products are offered in the form of rules to give basic protection against common vulnerability attacks. These rules are usually configured and monitored per domain, which is very simple when we talk about one, two, maybe three domains (or what we call in Cloudflare’s terms, “zones”).</p>
    <div>
      <h3>The zone-level overview sometimes is not time efficient</h3>
      <a href="#the-zone-level-overview-sometimes-is-not-time-efficient">
        
      </a>
    </div>
    <p>If you’re a Cloudflare customer with tens, hundreds, or even thousands of domains under your control, you’d spend hours going through these domains one by one, monitoring and configuring all security features. We know that’s a pain, especially for our Enterprise customers. That’s why last September we announced the <a href="/account-waf/">Account WAF</a>, where you can create one security rule and have it applied to the configuration of all your zones at once!</p><p>Account WAF makes it easy to deploy security configurations. Following the same philosophy, we want to empower our customers by providing visibility over these configurations, or even better, visibility on all HTTP traffic.</p><p>Today, Cloudflare is offering holistic views on the security suite by launching Account Security Analytics and Account Security Events. Now, across all your domains, you can monitor traffic, get insights quicker, and save hours of your time.</p>
    <div>
      <h3>How do customers get visibility over security traffic today?</h3>
      <a href="#how-do-customers-get-visibility-over-security-traffic-today">
        
      </a>
    </div>
    <p>Before today, to view account analytics or events, customers either used to access each zone individually to check the events and analytics dashboards, or used zone <a href="https://developers.cloudflare.com/analytics/graphql-api/">GraphQL Analytics API</a> or logs to collect data and send them to their preferred storage provider where they could collect, aggregate, and plot graphs to get insights for all zones under their account — in case ready-made dashboards were not provided.</p>
    <div>
      <h3>Introducing Account Security Analytics and Events</h3>
      <a href="#introducing-account-security-analytics-and-events">
        
      </a>
    </div>
    
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6gWJhl65y6sUNRHNaZjwqt/d2a107ab79c0a3da65c4721a1b48fa74/Screenshot-2023-03-17-at-9.57.13-AM.png" />
            
            </figure><p>The new views are security focused, data-driven dashboards — similar to zone-level views, both have  similar data like: sampled logs and the top filters over many source dimensions (for example, IP addresses, Host, Country, ASN, etc.).</p><p>The main difference between them is that Account Security Events focuses on the current configurations on every zone you have, which makes reviewing mitigated requests (rule matches) easy. This step is essential in distinguishing between actual threats from false positives, along with maintaining optimal security configuration.</p><p>Part of the Security Events power is showing Events “by service” listing the security-related activity per security feature (for example, <a href="https://www.cloudflare.com/learning/ddos/glossary/web-application-firewall-waf/">WAF</a>, Firewall Rules, API Shield) and Events “by Action” (for example, allow, block, challenge).</p><p>On the other hand, Account Security Analytics view shows a wider angle with all HTTP traffic on all zones under the account, whether this traffic is mitigated, i.e., the security configurations took an action to prevent the request from reaching your zone, or not mitigated. This is essential in fine-tuning your security configuration, finding possible false negatives, or onboarding new zones.</p><p>The view also provides quick filters or insights of what we think are interesting cases worth exploring for ease of use. Many of the view components are similar to zone level <a href="/security-analytics/">Security Analytics</a> that we introduced recently.</p><p>To get to know the components and how they interact, let’s have a look at an actual example.</p>
    <div>
      <h3>Analytics walk-through when investigating a spike in traffic</h3>
      <a href="#analytics-walk-through-when-investigating-a-spike-in-traffic">
        
      </a>
    </div>
    <p>Traffic spikes happen to many customers’ accounts; to investigate the reason behind them, and check what’s missing from the configurations, we recommend starting from Analytics as it shows mitigated and non-mitigated traffic, and to revise the mitigated requests to double check any false positives then Security Events is the go to place. That’s what we’ll do in this walk-through starting with the Analytics, finding a spike, and checking if we need further mitigation action.</p><p><b>Step 1:</b> To navigate to the new views, sign into the Cloudflare dashboard and select the account you want to monitor. You will find <b>Security Analytics</b> and <b>Security Events</b> in the sidebar under <b>Security Center.</b></p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6GQ2Z3yAa1OehelJegPHZU/ffc7db3bde4a6976ed94e6eab597458c/pasted-image-0--8--2.png" />
            
            </figure><p><b>Step 2:</b> In the Analytics dashboard, if you had a big spike in the traffic compared to the usual, there’s a big chance it's a layer 7 DDoS attack. Once you spot one, zoom into the time interval in the graph.</p><div></div>
<i>Zooming into a traffic spike on the timeseries scale</i><br /><p>By Expanding the top-Ns on top of the analytics page we can see here many observations:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5XDngTA5PHz7hc0O8f7RJ8/5bfe5659e3eafa42689d998f2de886a3/pasted-image-0--9--1.png" />
            
            </figure><p>We can confirm it’s a DDoS attack as the peak of traffic does not come from one single IP address, It’s distributed over multiple source IPs. The “edge status code” indicates that there’s a rate limiting rule applied on this attack and it’s a GET method over HTTP/2.</p><p>Looking at the right hand side of the analytics we can see “Attack Analysis” indicating that these requests were clean from <a href="https://www.cloudflare.com/learning/security/how-to-prevent-xss-attacks/">XSS</a>, SQLi, and common RCE attacks. The Bot Analysis indicates it’s an automated traffic in the Bot Scores distribution; these two products add another layer of intelligence to the investigation process. We can easily deduce here that the attacker is sending clean requests through high volumetric attack from multiple IPs to take the web application down.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3mBN0yDIQo4aK0HAXCO5Yb/98fe973514f449147b3171e579c2dbce/pasted-image-0--10--1.png" />
            
            </figure><p><b>Step 3:</b> For this attack we can see we have rules in place to mitigate it, with the visibility we get the freedom to fine tune our configurations to have better security posture, if needed. we can filter on this attack fingerprint, for instance: add a filter on the referer `<a href="http://www.example.com`">www.example.com`</a> which is receiving big bulk of the attack requests, add filter on path equals `/`, HTTP method, query string, and a filter on the automated traffic with Bot score, we will see the following:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6bI1AAaTSFbA7nPxvx4lZn/2f8197708c7dc3ac8d842ff2c003b4eb/pasted-image-0--11-.png" />
            
            </figure><p><b>Step 4:</b> Jumping to Security Events to zoom in on our mitigation actions in this case, spike fingerprint is mitigated using two actions: Managed Challenge and Block.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6JuvFbzYoI01oHDIrCh7ze/3e21d9d444699434a28e25eea8422423/pasted-image-0--12-.png" />
            
            </figure><p>The mitigation happened on: Firewall rules and DDoS configurations, the exact rules are shown in the top events.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/20ANCsBgB0TowOniXpMl0E/1e4445f96e05af157c3174314422513b/pasted-image-0--13-.png" />
            
            </figure>
    <div>
      <h3>Who gets the new views?</h3>
      <a href="#who-gets-the-new-views">
        
      </a>
    </div>
    <p>Starting this week all our customers on Enterprise plans will have access to Account Security Analytics and Security Events. We recommend having Account Bot Management, WAF Attack Score, and Account WAF to have access to the full visibility and actions.</p>
    <div>
      <h3>What’s next?</h3>
      <a href="#whats-next">
        
      </a>
    </div>
    <p>The new Account Security Analytics and Events encompass metadata generated by the Cloudflare network for all domains in one place. In the upcoming period we will be providing a better experience to save our customers' time in a simple way. We're currently in beta, log into the dashboard, check out the views, and let us know your feedback.</p> ]]></content:encoded>
            <category><![CDATA[Security Week]]></category>
            <category><![CDATA[Security]]></category>
            <category><![CDATA[Dashboard]]></category>
            <category><![CDATA[Analytics]]></category>
            <category><![CDATA[Product News]]></category>
            <guid isPermaLink="false">7lBffZk4kfTbrZ48l1NMo8</guid>
            <dc:creator>Radwa Radwan</dc:creator>
            <dc:creator>Zhiyuan Zheng</dc:creator>
            <dc:creator>Nick Downie</dc:creator>
        </item>
        <item>
            <title><![CDATA[New! Security Analytics provides a comprehensive view across all your traffic]]></title>
            <link>https://blog.cloudflare.com/security-analytics/</link>
            <pubDate>Fri, 09 Dec 2022 14:00:00 GMT</pubDate>
            <description><![CDATA[ Security Analytics gives you a security lens across all of your HTTP traffic, not only mitigated requests, allowing you to focus on what matters most: traffic deemed malicious but potentially not mitigated. ]]></description>
            <content:encoded><![CDATA[ <p><i></i></p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/fqA2JqcTEUftqWAiKfPHt/14eaa1a9b78a1785a3bd449a776eb204/unnamed-1.png" />
            
            </figure><p>An application proxying traffic through Cloudflare benefits from a wide range of easy to use security features including <a href="https://www.cloudflare.com/learning/ddos/glossary/web-application-firewall-waf/">WAF</a>, Bot Management and DDoS mitigation. To understand if traffic has been blocked by Cloudflare we have built a powerful <a href="/new-firewall-tab-and-analytics/">Security Events</a> dashboard that allows you to examine any mitigation events. Application owners often wonder though what happened to the rest of their traffic. Did they block all traffic that was detected as malicious?</p><p>Today, along with our announcement of the <a href="/stop-attacks-before-they-are-known-making-the-cloudflare-waf-smarter/">WAF Attack Score</a>, we are also launching our new Security Analytics.</p><p>Security Analytics gives you a security lens across all of your HTTP traffic, not only mitigated requests, allowing you to focus on what matters most: traffic deemed malicious but potentially not mitigated.</p>
    <div>
      <h2>Detect then mitigate</h2>
      <a href="#detect-then-mitigate">
        
      </a>
    </div>
    <p>Imagine you just onboarded your application to Cloudflare and without any additional effort, each HTTP request is analyzed by the Cloudflare network. Analytics are therefore enriched with attack analysis, bot analysis and any other security signal provided by Cloudflare.</p><p>Right away, without any risk of causing false positives, you can view the entirety of your traffic to explore what is happening, when and where.</p><p>This allows you to dive straight into analyzing the results of these signals, shortening the time taken to deploy active blocking mitigations and boosting your confidence in making decisions.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2gYype09S9vHFehn1Ltvln/a333ca9cdf3dd7397e9a012dbd758134/image6-1.png" />
            
            </figure><p>We are calling this approach “<i>detect then mitigate”</i> and we have already received very positive feedback from early access customers.</p><p>In fact, Cloudflare’s Bot Management has been <a href="/introducing-bot-analytics/">using this model</a> for the past two years. We constantly hear feedback from our customers that with greater visibility, they have a high confidence in our bot scoring solution. To further support this new way of securing your web applications and bringing together all our intelligent signals, we have designed and developed the new Security Analytics which starts bringing signals from the WAF and other security products to follow this model.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4GSZTeBSY0shIKt5dTE66k/fd166416500386e0549c6e7ad460bc8d/image4-6.png" />
            
            </figure>
    <div>
      <h2>New Security Analytics</h2>
      <a href="#new-security-analytics">
        
      </a>
    </div>
    <p>Built on top of the success of our analytics experiences, the new Security Analytics employs existing components such as top statistics, in-context quick filters, with a new page layout allowing for rapid exploration and validation. Following sections will break down this new page layout forming a high level workflow.</p><p>The key difference between Security Analytics and Security Events, is that the former is based on HTTP requests which covers visibility of your entire site’s traffic, while Security Events uses a different dataset that visualizes whenever there is a match with any active security rule.</p>
    <div>
      <h3>Define a focus</h3>
      <a href="#define-a-focus">
        
      </a>
    </div>
    <p>The new Security Analytics visualizes the dataset of sampled HTTP requests based on your entire application, same as <a href="/introducing-bot-analytics/">bots analytics</a>. When validating the “<i>detect then mitigate”</i> model with selected customers, a common behavior observed is to use the top N statistics to quickly narrow down to either obvious anomalies or certain parts of the application. Based on this insight, the page starts with selected top N statistics covering both request sources and request destinations, allowing expanding to view all the statistics available. Questions like “How well is my application admin’s area protected?” lands at one or two quick filter clicks in this area.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/eVviZy7T8NtFwd5igw3Y7/a573e8bc96b2d8bc788ff483c1dc4189/image2-8.png" />
            
            </figure>
    <div>
      <h3>Spot anomalies in trends</h3>
      <a href="#spot-anomalies-in-trends">
        
      </a>
    </div>
    <p>After a preliminary focus is defined, the core of the interface is dedicated to plotting trends over time. The time series chart has proven to be a powerful tool to help spot traffic anomalies, also allowing plotting based on different criteria. Whenever there is a spike, it is likely an attack or attack attempt has happened.</p><p>As mentioned above, different from <a href="/new-firewall-tab-and-analytics/">Security Events</a>, the dataset used in this page is HTTP requests which includes both mitigated and not mitigated requests. By <a href="/application-security/#definitions">mitigated requests</a> here, we mean “any HTTP request that had a ‘terminating’ action applied by the Cloudflare platform”. The rest of the requests that have not been mitigated are either served by Cloudflare’s cache or reaching the origin. In the case such as a spike in not mitigated requests but flat in mitigated requests, an assumption could be that there was an attack that did not match any active WAF rule. In this example, you can one click to filter on not mitigated requests right in the chart which will update all the data visualized on this page supporting further investigations.</p><p>In addition to the default plotting of not mitigated and mitigated requests, you can also choose to plot trends of either attack analysis or bot analysis allowing you to spot anomalies for attack or bot behaviors.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/68ZPoNtii7Si5DF06pxVVY/cec0589f2c78dc23cc9501cdb070bfa2/image7-2.png" />
            
            </figure>
    <div>
      <h3>Zoom in with analysis signals</h3>
      <a href="#zoom-in-with-analysis-signals">
        
      </a>
    </div>
    <p>One of the most loved and trusted analysis signals by our customers is the bot score. With the latest addition of <a href="/stop-attacks-before-they-are-known-making-the-cloudflare-waf-smarter/">WAF Attack Score</a> and <a href="https://developers.cloudflare.com/waf/about/content-scanning/">content scanning</a>, we are bringing them together into one analytics page, helping you further zoom into your traffic based on some of these signals. The combination of these signals enables you to find answers to scenarios not possible until now:</p><ul><li><p>Attack requests made by (definite) automated sources</p></li><li><p>Likely attack requests made by humans</p></li><li><p>Content uploaded with/without malicious content made by bots</p></li></ul><p>Once a scenario is filtered on, the data visualization of the entire page including the top N statistics, HTTP requests trend and sampled log will be updated, allowing you to spot any anomalies among either one of the top N statistics or the time based HTTP requests trend.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6L7LxXT1BLhWp71Im6heox/d8e9155a5e0e81f1bf0236a272509d0a/image3-3.png" />
            
            </figure>
    <div>
      <h3>Review sampled logs</h3>
      <a href="#review-sampled-logs">
        
      </a>
    </div>
    <p>After zooming into a specific part of your traffic that may be an anomaly, sampled logs provide a detailed view to verify your finding per HTTP request. This is a crucial step in a security study workflow backed by the high engagement rate when examining the usage data of such logs viewed in Security Events. While we are adding more data into each log entry, the expanded log view becomes less readable over time. We have therefore redesigned the expanded view, starting with how Cloudflare responded to a request, followed by our analysis signals, lastly the key components of the raw request itself. By reviewing these details, you validate your hypothesis of an anomaly, and if any mitigation action is required.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3gJjGLYzonj0aPVZLIKC6S/9cc34a61775198999e4f1eb8c4dd90f6/image5-3.png" />
            
            </figure>
    <div>
      <h3>Handy insights to get started</h3>
      <a href="#handy-insights-to-get-started">
        
      </a>
    </div>
    <p>When testing the prototype of this analytics dashboard internally, we learnt that the power of flexibility yields the learning curve upwards. To help you get started mastering the flexibility, a handy <i>insights</i> panel is designed. These insights are crafted to highlight specific perspectives into your total traffic. By a simple click on any one of the insights, a preset of filters is applied zooming directly onto the portion of your traffic that you are interested in. From here, you can review the sampled logs or further fine tune any of the applied filters. This approach has been proven with further internal studies of a highly efficient workflow that in many cases will be your starting point of using this dashboard.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1l8PBc150OLKligyn93h76/bc692e61e0f0d8c11ec1719c3195a169/image1-11.png" />
            
            </figure>
    <div>
      <h2>How can I get it?</h2>
      <a href="#how-can-i-get-it">
        
      </a>
    </div>
    <p>The new Security Analytics is being gradually rolled out to all Enterprise customers who have purchased the new Application Security Core or Advanced Bundles. We plan to roll this out to all other customers in the near future. This new view will be alongside the existing Security Events dashboard.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/Q5OP1vAN2KM82LN4vBqp2/b7944b44d8d7bb03baa8b39909c72f16/image8-2.png" />
            
            </figure>
    <div>
      <h2>What’s next</h2>
      <a href="#whats-next">
        
      </a>
    </div>
    <p>We are still at an early stage moving towards the “<i>detect then mitigate”</i> model, empowering you with greater visibility and intelligence to better protect your web applications. While we are working on enabling more detection capabilities, please share your thoughts and feedback with us to help us improve the experience. If you want to get access sooner, reach out to your account team to get started!</p> ]]></content:encoded>
            <category><![CDATA[Application Services]]></category>
            <category><![CDATA[Analytics]]></category>
            <guid isPermaLink="false">38y228bpRNFVIIfHyptrzx</guid>
            <dc:creator>Zhiyuan Zheng</dc:creator>
            <dc:creator>Nick Downie</dc:creator>
            <dc:creator>Radwa Radwan</dc:creator>
        </item>
        <item>
            <title><![CDATA[How we used our new GraphQL Analytics API to build Firewall Analytics]]></title>
            <link>https://blog.cloudflare.com/how-we-used-our-new-graphql-api-to-build-firewall-analytics/</link>
            <pubDate>Thu, 12 Dec 2019 15:41:20 GMT</pubDate>
            <description><![CDATA[ Firewall Analytics is the first product in the Cloudflare dashboard to utilize the new GraphQL API. All Cloudflare dashboard products are built using the same public APIs that we provide to our customers, allowing us to understand the challenges they face when interfacing with our APIs. ]]></description>
            <content:encoded><![CDATA[ <p></p><p>Firewall Analytics is the first product in the Cloudflare dashboard to utilize the new GraphQL Analytics API. All Cloudflare dashboard products are built using the same public APIs that we provide to our customers, allowing us to understand the challenges they face when interfacing with our APIs. This parity helps us build and shape our products, most recently the new GraphQL Analytics API that we’re thrilled to release today.</p><p>By defining the data we want, along with the response format, our GraphQL Analytics API has enabled us to prototype new functionality and iterate quickly from our beta user feedback. It is helping us deliver more insightful analytics tools within the Cloudflare dashboard to our customers.</p><p>Our user research and testing for <a href="/new-firewall-tab-and-analytics/#new-firewall-analytics-for-analysing-events-and-maintaining-optimal-configurations">Firewall Analytics</a> surfaced common use cases in our customers' workflow:</p><ul><li><p>Identifying spikes in firewall activity over time</p></li><li><p>Understanding the common attributes of threats</p></li><li><p>Drilling down into granular details of an individual event to identify potential false positives</p></li></ul><p>We can address all of these use cases using our new GraphQL Analytics API.</p>
    <div>
      <h3>GraphQL Basics</h3>
      <a href="#graphql-basics">
        
      </a>
    </div>
    <p>Before we look into how to address each of these use cases, let's take a look at the format of a GraphQL query and how our schema is structured.</p><p>A GraphQL query is comprised of a structured set of fields, for which the server provides corresponding values in its response. The schema defines which fields are available and their type. You can find more information about the GraphQL query syntax and format in the <a href="https://graphql.org/learn/queries/">official GraphQL documentation</a>.</p><p>To run some GraphQL queries, we recommend downloading a GraphQL client, such as <a href="https://electronjs.org/apps/graphiql">GraphiQL</a>, to explore our schema and run some queries. You can find documentation on getting started with this in our <a href="https://developers.cloudflare.com/analytics/graphql-api/getting-started/">developer docs</a>.</p><p>At the top level of the schema is the <code>viewer</code> field. This represents the top level node of the user running the query. Within this, we can query the <code>zones</code> field to find zones the current user has access to, providing a <code>filter</code> argument, with a <code>zoneTag</code> of the identifier of the zone we'd like narrow down to.</p>
            <pre><code>{
  viewer {
    zones(filter: { zoneTag: "YOUR_ZONE_ID" }) {
      # Here is where we'll query our firewall events
    }
  }
}</code></pre>
            <p>Now that we have a query that finds our zone, we can start querying the firewall events which have occurred in that zone, to help solve some of the use cases we’ve identified.</p>
    <div>
      <h3>Visualising spikes in firewall activity</h3>
      <a href="#visualising-spikes-in-firewall-activity">
        
      </a>
    </div>
    <p>It's important for customers to be able to visualise and understand anomalies and spikes in their firewall activity, as these could indicate an attack or be the result of a misconfiguration.</p><p>Plotting events in a timeseries chart, by their respective action, provides users with a visual overview of the trend of their firewall events.</p><p>Within the <code>zones</code> field in the query we’ve created earlier, we can query our firewall event aggregates using the <code>firewallEventsAdaptiveGroups</code> field, providing arguments to limit the count of groups, a filter for the date range we're looking for (combined with any user-entered filters), and a list of fields to order by; in this case, just the <code>datetimeHour</code> field that we're grouping by.</p><p>Within the <code>zones</code> field in the query we created earlier, we can further query our firewall event aggregates using the <code>firewallEventsAdaptiveGroups</code> field and providing arguments for:</p><ul><li><p>A <code>limit</code> for the count of groups</p></li><li><p>A <code>filter</code> for the date range we're looking for (combined with any user-entered filters)</p></li><li><p>A list of fields to <code>orderBy</code> (in this case, just the <code>datetimeHour</code> field that we're grouping by).</p></li></ul><p>By adding the <code>dimensions</code> field, we're querying for groups of firewall events, aggregated by the fields nested within <code>dimensions</code>. In this case, our query includes the <code>action</code> and <code>datetimeHour</code> fields, meaning the response will be groups of firewall events which share the same action, and fall within the same hour. We also add a <code>count</code> field, to get a numeric count of how many events fall within each group.</p>
            <pre><code>query FirewallEventsByTime($zoneTag: string, $filter: FirewallEventsAdaptiveGroupsFilter_InputObject) {
  viewer {
    zones(filter: { zoneTag: $zoneTag }) {
      firewallEventsAdaptiveGroups(
        limit: 576
        filter: $filter
        orderBy: [datetimeHour_DESC]
      ) {
        count
        dimensions {
          action
          datetimeHour
        }
      }
    }
  }
}</code></pre>
            <p><i>Note - Each of our groups queries require a limit to be set. A firewall event can have one of 8 possible actions, and we are querying over a 72 hour period. At most, we’ll end up with 567 groups, so we can set that as the limit for our query.</i></p><p>This query would return a response in the following format:</p>
            <pre><code>{
  "viewer": {
    "zones": [
      {
        "firewallEventsAdaptiveGroups": [
          {
            "count": 5,
            "dimensions": {
              "action": "jschallenge",
              "datetimeHour": "2019-09-12T18:00:00Z"
            }
          }
          ...
        ]
      }
    ]
  }
}</code></pre>
            <p>We can then take these groups and plot each as a point on a time series chart. Mapping over the <code>firewallEventsAdaptiveGroups</code> array, we can use the group’s <code>count</code> property on the y-axis for our chart, then use the nested fields within the <code>dimensions</code> object, using <code>action</code> as unique series and the <code>datetimeHour</code> as the time stamp on the x-axis.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4RH0u6Cc6dIk9ztyZ3E0Ag/21256377669133e2416150a4b1798e85/pasted-image-0--1--3.png" />
            
            </figure>
    <div>
      <h3>Top Ns</h3>
      <a href="#top-ns">
        
      </a>
    </div>
    <p>After identifying a spike in activity, our next step is to highlight events with commonality in their attributes. For example, if a certain IP address or individual user agent is causing many firewall events, this could be a sign of an individual attacker, or could be surfacing a false positive.</p><p>Similarly to before, we can query aggregate groups of firewall events using the <code>firewallEventsAdaptiveGroups</code> field. However, in this case, instead of supplying <code>action</code> and <code>datetimeHour</code> to the group’s <code>dimensions</code>, we can add individual fields that we want to find common groups of.</p><p>By ordering by descending count, we’ll retrieve groups with the highest commonality first, limiting to the top 5 of each. We can add a single field nested within <code>dimensions</code> to group by it. For example, adding <code>clientIP</code> will give five groups with the IP addresses causing the most events.</p><p>We can also add a <code>firewallEventsAdaptiveGroups</code> field with no nested <code>dimensions</code>. This will create a single group which allows us to find the total count of events matching our filter.</p>
            <pre><code>query FirewallEventsTopNs($zoneTag: string, $filter: FirewallEventsAdaptiveGroupsFilter_InputObject) {
  viewer {
    zones(filter: { zoneTag: $zoneTag }) {
      topIPs: firewallEventsAdaptiveGroups(
        limit: 5
        filter: $filter
        orderBy: [count_DESC]
      ) {
        count
        dimensions {
          clientIP
        }
      }
      topUserAgents: firewallEventsAdaptiveGroups(
        limit: 5
        filter: $filter
        orderBy: [count_DESC]
      ) {
        count
        dimensions {
          userAgent
        }
      }
      total: firewallEventsAdaptiveGroups(
        limit: 1
        filter: $filter
      ) {
        count
      }
    }
  }
}</code></pre>
            <p><i>Note - we can add the </i><code><i>firewallEventsAdaptiveGroups</i></code><i> field multiple times within a single query, each aliased differently. This allows us to fetch multiple different groupings by different fields, or with no groupings at all. In this case, getting a list of top IP addresses, top user agents, and the total events.</i></p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/48ybDlyb9qiOXRcqbxYMBT/ef8646776579eae9468db6b0e34dd7cc/pasted-image-0--2--1.png" />
            
            </figure><p>We can then reference each of these aliases in the UI, mapping over their respective groups to render each row with its count, and a bar which represents the proportion of total events, showing the proportion of all events each row equates to.</p>
    <div>
      <h3>Are these firewall events false positives?</h3>
      <a href="#are-these-firewall-events-false-positives">
        
      </a>
    </div>
    <p>After users have identified spikes, anomalies and common attributes, we wanted to surface more information as to whether these have been caused by malicious traffic, or are false positives.</p><p>To do this, we wanted to provide additional context on the events themselves, rather than just counts. We can do this by querying the <code>firewallEventsAdaptive</code> field for these events.</p><p>Our GraphQL schema uses the same filter format for both the aggregate <code>firewallEventsAdaptiveGroups</code> field and the raw <code>firewallEventsAdaptive</code> field. This allows us to use the same filters to fetch the individual events which summate to the counts and aggregates in the visualisations above.</p>
            <pre><code>query FirewallEventsList($zoneTag: string, $filter: FirewallEventsAdaptiveFilter_InputObject) {
  viewer {
    zones(filter: { zoneTag: $zoneTag }) {
      firewallEventsAdaptive(
        filter: $filter
        limit: 10
        orderBy: [datetime_DESC]
      ) {
        action
        clientAsn
        clientCountryName
        clientIP
        clientRequestPath
        clientRequestQuery
        datetime
        rayName
        source
        userAgent
      }
    }
  }
}</code></pre>
            
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5BmadcWdFvLxALf8fO3MbW/3d8878f086b962e671162b6d62e4fc7f/pasted-image-0--3--1.png" />
            
            </figure><p>Once we have our individual events, we can render all of the individual fields we’ve requested, providing users the additional context on event they need to determine whether this is a false positive or not.</p><p>That’s how we used our new GraphQL Analytics API to build Firewall Analytics, helping solve some of our customers most common security workflow use cases. We’re excited to see what you build with it, and the problems you can help tackle.</p><p>You can find out how to get started querying our GraphQL Analytics API using GraphiQL in our <a href="https://developers.cloudflare.com/analytics/graphql-api/getting-started/">developer documentation</a>, or learn more about writing GraphQL queries on the official GraphQL Foundation <a href="https://graphql.org/learn/queries/">documentation</a>.</p> ]]></content:encoded>
            <category><![CDATA[Product News]]></category>
            <category><![CDATA[Analytics]]></category>
            <category><![CDATA[API]]></category>
            <category><![CDATA[GraphQL]]></category>
            <guid isPermaLink="false">3I5BKE6KqU328LA4QoiQQX</guid>
            <dc:creator>Nick Downie</dc:creator>
        </item>
    </channel>
</rss>