groundy
Security

How to investigate bot traffic without country attribution

Bot traffic needs request evidence before country attribution. An IP-country label and a bot score do not identify an operator, their nationality, or their motive.

Published Updated 5 references
Three ivory ceramic envelopes with distinct embossed seals sit in a chipped forest-green sleeve bound by a black clamp, casting a hard shadow across a warm ivory surface.
On this page4 sections

Bot traffic needs request evidence before country attribution. An IP-country label and a bot score do not identify an operator, their nationality, or their motive.

For a site operator, the useful question is which requests are causing a problem and which response reduces that problem without blocking wanted traffic. A country label can describe a dataset’s classification of an address. It cannot, by itself, turn an unusual traffic pattern into a Chinese campaign, an AI-enabled botnet, or a DDoS incident.

How to investigate bot traffic without country attribution

Cloudflare documents a bot score from 1 to 99 as an estimate of whether a request is automated: lower values indicate stronger bot likelihood. Its documentation also distinguishes requests that were not scored, likely automated requests, likely human requests, and verified bots. A score is an input to a traffic rule, rather than an attribution result. Availability and detection features depend on the Cloudflare product and plan. (Cloudflare bot-score documentation)

Record the requested path, method, time, response, rate, and relevant security fields together. A repeated fetch of a public article poses a different operational question from repeated login attempts or expensive API requests. Cloudflare’s Bot Management guide describes using scores in targeted rules and inspecting analytics or logs to tune those rules. That supports an investigation based on endpoint behavior rather than one blanket verdict for every automated request. (Cloudflare Bot Management guide)

ObservationA reasonable useWhat it cannot establish alone
Low bot scoreInspect likely automation and evaluate a scoped ruleActor identity or malicious intent
Country or network labelGroup requests for investigationNationality, affiliation, or physical operator location
Repeated requests to a costly endpointMeasure application impact and test a responseWhether the same pattern is harmful on every endpoint
Verified-bot classificationApply the documented identity and behavior classificationAn unlimited entitlement to application resources

The limits in the final column follow from the difference between classifying a request and identifying the person or organization controlling it.

Check wanted automation before applying a rule

Cloudflare’s current verified-bot criteria cover honest identification and observed behavior. Its examples include search crawlers, monitoring services, and user-driven agents. The classification has a defined process and can change when behavior changes; it should not be replaced by trust in a self-declared user-agent string. (Cloudflare verified-bot documentation)

Use that classification alongside the endpoint’s purpose. A crawler may be welcome on public articles while an authenticated or expensive endpoint needs different controls. This is a policy choice for the application, not a conclusion that all bots should be allowed or all low scores should be blocked. The Bot Management documentation gives targeted actions as the mechanism for making that distinction. (Cloudflare Bot Management guide)

For a related application-policy discussion, see AI crawler controls. That topic does not establish that the requests under investigation are AI crawlers.

An address is not a unique person

Carrier-grade NAT is a concrete reason to avoid treating an address as an identity. RFC 6598 allocates shared address space for networks using CGN and describes the architecture in which provider-side address translation serves subscribers. The reserved internal range is not a public geolocation range; its relevance here is the shared-address architecture. (RFC 6598)

A rule aimed at a public egress address can therefore affect more than the request source you intended to constrain. This is an inference about a shared network boundary, not proof that any particular suspicious request used CGN, a proxy, or a compromised machine. Claims about a specific network require its actual records.

Test the response against the failure

Begin with the path and behavior producing the observed cost or abuse. Use available logs to inspect the proposed scope, then choose an action the application can tolerate. A browser challenge, for example, needs a different compatibility assessment for an API client than for a page expected to receive browser visits. Cloudflare’s guide describes targeted challenge rules and notes the intended JavaScript-capable client scope for JavaScript detections. (Cloudflare Bot Management guide)

Check rule ordering as well. Cloudflare documents the WAF phases separately, so an action taken earlier can affect what a later rule evaluates. A rule name in a dashboard is insufficient evidence that the intended requests reached it. (Cloudflare WAF phases)

After a change, compare the application’s error rate, latency, costly-request volume, and wanted traffic with the prior observation window. Keep a rollback criterion appropriate to the application. This is a proposed operating check, not a reported result from this site or a guarantee that a challenge will solve the problem.

Broader measurement questions appear in Is Cloudflare’s Bot Traffic Surge Real? The Measurement Dispute. A network-wide trend does not identify the actor behind a local request sample.

The reportable conclusion should match the evidence: a measured pattern of likely automated requests, the affected endpoints, the applied rule, and its observed effect. A claim about a country, organization, or AI evasion technique needs additional attribution evidence. Without it, the operator can still investigate and respond to the traffic while leaving the actor unknown.

References

Follow the links in the article for context. The supporting material is collected here for further reading.

  1. Cloudflare bot-score documentationdevelopers.cloudflare.com
  2. Cloudflare Bot Management guidedevelopers.cloudflare.com
  3. Cloudflare verified-bot documentationdevelopers.cloudflare.com
  4. RFC 6598rfc-editor.org
  5. Cloudflare WAF phasesdevelopers.cloudflare.com

Join the discussion

Share a useful perspective or ask a question about this article.

Discussion guidelinesComments privacy