Skip to content

Commit 8428ad8

Browse files
update overview according to style guide
1 parent 70734e3 commit 8428ad8

File tree

6 files changed

+88
-49
lines changed

6 files changed

+88
-49
lines changed

src/content/docs/cloudflare-challenges/challenge-types/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
pcx_content_type: navigation
33
title: Challenge types
44
sidebar:
5-
order: 2
5+
order: 3
66
group:
77
hideIndex: true
88
---
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
---
2+
pcx_content_type: concept
3+
title: How challenges work
4+
sidebar:
5+
order: 1
6+
---
7+
8+
Challenges can be issued in three primary ways depending on which Cloudflare products or features are in use. Each method is designed to balance security with seamless visitor experience.
9+
10+
| Product | Challenge type(s) |
11+
| --- | --- |
12+
| [WAF](/waf/) ([custom rules](/waf/custom-rules/), [rate limiting rules](/waf/rate-limiting-rules/), [IP access rules](/waf/tools/ip-access-rules/)) | [Interstitial challenge page](#interstitial-challenge-pages) |
13+
| [Bot Management](/bots/get-started/bot-management/) | [JavaScript detection](/bots/additional-configurations/javascript-detections/) |
14+
| [Bot Fight Mode](/bots/get-started/bot-fight-mode/), [Super Bot Fight Mode](/bots/get-started/super-bot-fight-mode/) | [Interstitial challenge page](#interstitial-challenge-pages) |
15+
| [Turnstile](/turnstile/) | Embedded widget |
16+
| [HTTP DDoS attack protection](/ddos-protection/managed-rulesets/http/) | Any challenge |
17+
| [Under Attack Mode](/fundamentals/reference/under-attack-mode/) | [Managed challenge](/cloudflare-challenges/challenge-types/challenge-pages/#managed-challenge-recommended) |
18+
19+
### Turnstile
20+
21+
[Turnstile](/turnstile/) is Cloudflare’s CAPTCHA-alternative solution. You can embed Turnstile as a widget on your site, where it runs a challenge directly in the visitor’s browser.
22+
23+
Turnstile does not pause the request or interrupt the user’s experience. Instead, the widget runs a client-side challenge in the background. In most cases, nothing further is required from the visitor. When needed, Turnstile may display a simple checkbox that the visitor must click to proceed.
24+
25+
After the challenge passes, Turnstile issues a token that you must validate using the [siteverify API](/turnstile/get-started/server-side-validation/) before completing a sensitive action like login, sign up, or other form submissions.
26+
27+
### Interstitial challenge pages
28+
29+
When a challenge is triggered by a rule in the [Web Application Firewall (WAF)](/waf/), [Bot Management](/bots/), or [Rate Limiting](/waf/rate-limiting-rules/), Cloudflare presents a full-page interstitial challenge page. The request is paused while Cloudflare evaluates the browser environment. In some cases, the visitor may be asked to check a box for further probing.
30+
31+
If the challenge passes, the original request continues to your origin. If the challenge fails or cannot be completed, the visitor is presented with another interstitial challenge page.
32+
33+
### JavaScript detection in Bot Management
34+
35+
In Bot Management, [JavaScript detections](/bots/additional-configurations/javascript-detections/) run silently in the browser to validate that the visitor supports and executes standard browser JavaScript, and provides a lightweight and privacy-preserving way to distinguish between bots and real users without adding friction to the experience.
36+
37+
:::note
38+
If the check fails, the bot score is set to 1.
39+
:::
40+
41+
The script runs a short set of tasks and, if successful, sets a `cf_clearance` cookie indicating that the visitor passed the check. This is exposed as the `cf.bot_management.js_detection.passed` field that you can use in [WAF custom rules](/waf/custom-rules/) to take further action — such as issuing an interstitial challenge page.
42+
43+
If a visitor was unable to run JavaScript detection, the `cf.bot_management.js_detection.passed` field is set to `False`. Cloudflare advises that you should never block a request based on this field unless you are certain that the visitor has run JavaScript detections.
44+
45+
---
46+
47+
## Limitations
48+
49+
Cloudflare challenges cannot support the following:
50+
51+
- [Browser extensions](#browser-extensions) that modify the browser's `User-Agent` value or Web APIs such as `Canvas` and `WebGL`.
52+
- Implementations where a domain serves a challenge page originally requested for another domain.
53+
- Challenge pages cannot be embedded in cross-origin iframes.
54+
- Client software where the solve request of a Managed Challenge comes from a different IP than the original IP a challenge request was issued to. For example, if you receive the challenge from one IP and solve it using another IP, the solve is not valid and you may encounter a challenge loop.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
pcx_content_type: navigation
3+
title: Concepts
4+
sidebar:
5+
order: 2
6+
label: About
7+
group:
8+
hideIndex: true
9+
---

src/content/docs/cloudflare-challenges/index.mdx

Lines changed: 22 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -5,60 +5,36 @@ sidebar:
55
order: 1
66
---
77

8-
import { Render } from "~/components";
8+
import { Render, Description, Plan, RelatedProduct } from "~/components";
99

10-
A challenge is a security mechanism that Cloudflare uses to verify whether a visitor to your site is a real human and not a bot or automated script.
10+
<Description>
11+
Challenges are security mechanisms used by Cloudflare to verify whether a visitor to your site is a real human and not a bot or automated script.
12+
</Description>
13+
14+
<Plan type="all" />
1115

1216
When a challenge is issued, Cloudflare asks the browser to perform a series of checks that help confirm the visitor’s legitimacy. This process involves evaluating client side signals or asking a visitor to take minimal action such as checking a box. Challenges are designed to protect your application without introducing unnecessary friction. Most visitors will pass challenges automatically without interaction.
1317

1418
Cloudflare does not use CAPTCHA puzzles or visual tests like selecting objects or typing distorted characters. All challenge types are lightweight, privacy-preserving, and optimized for real-world traffic.
1519

16-
## How challenges work
17-
18-
Challenges can be issued in three primary ways depending on which Cloudflare products or features are in use. Each method is designed to balance security with seamless visitor experience.
19-
20-
| Product | Challenge type(s) |
21-
| --- | --- |
22-
| [WAF](/waf/) ([custom rules](/waf/custom-rules/), [rate limiting rules](/waf/rate-limiting-rules/), [IP access rules](/waf/tools/ip-access-rules/)) | [Interstitial challenge page](#interstitial-challenge-pages) |
23-
| [Bot Management](/bots/get-started/bot-management/) | [JavaScript detection](/bots/additional-configurations/javascript-detections/) |
24-
| [Bot Fight Mode](/bots/get-started/bot-fight-mode/), [Super Bot Fight Mode](/bots/get-started/super-bot-fight-mode/) | [Interstitial challenge page](#interstitial-challenge-pages) |
25-
| [Turnstile](/turnstile/) | Embedded widget |
26-
| [HTTP DDoS attack protection](/ddos-protection/managed-rulesets/http/) | Any challenge |
27-
| [Under Attack Mode](/fundamentals/reference/under-attack-mode/) | [Managed challenge](/cloudflare-challenges/challenge-types/challenge-pages/#managed-challenge-recommended) |
28-
29-
### Turnstile
30-
31-
[Turnstile](/turnstile/) is Cloudflare’s CAPTCHA-alternative solution. You can embed Turnstile as a widget on your site, where it runs a challenge directly in the visitor’s browser.
32-
33-
Turnstile does not pause the request or interrupt the user’s experience. Instead, the widget runs a client-side challenge in the background. In most cases, nothing further is required from the visitor. When needed, Turnstile may display a simple checkbox that the visitor must click to proceed.
34-
35-
After the challenge passes, Turnstile issues a token that you must validate using the [siteverify API](/turnstile/get-started/server-side-validation/) before completing a sensitive action like login, sign up, or other form submissions.
36-
37-
### Interstitial challenge pages
38-
39-
When a challenge is triggered by a rule in the [Web Application Firewall (WAF)](/waf/), [Bot Management](/bots/), or [Rate Limiting](/waf/rate-limiting-rules/), Cloudflare presents a full-page interstitial challenge page. The request is paused while Cloudflare evaluates the browser environment. In some cases, the visitor may be asked to check a box for further probing.
40-
41-
If the challenge passes, the original request continues to your origin. If the challenge fails or cannot be completed, the visitor is presented with another interstitial challenge page.
42-
43-
### JavaScript detection in Bot Management
44-
45-
In Bot Management, [JavaScript detections](/bots/additional-configurations/javascript-detections/) run silently in the browser to validate that the visitor supports and executes standard browser JavaScript, and provides a lightweight and privacy-preserving way to distinguish between bots and real users without adding friction to the experience.
46-
47-
:::note
48-
If the check fails, the bot score is set to 1.
49-
:::
50-
51-
The script runs a short set of tasks and, if successful, sets a `cf_clearance` cookie indicating that the visitor passed the check. This is exposed as the `cf.bot_management.js_detection.passed` field that you can use in [WAF custom rules](/waf/custom-rules/) to take further action — such as issuing an interstitial challenge page.
20+
---
5221

53-
If a visitor was unable to run JavaScript detection, the `cf.bot_management.js_detection.passed` field is set to `False`. Cloudflare advises that you should never block a request based on this field unless you are certain that the visitor has run JavaScript detections.
22+
## Related products
5423

55-
---
24+
<RelatedProduct header="Turnstile" href="/turnstile/" product="turnstile">
25+
Use Cloudflare's smart CAPTCHA alternative to run less intrusive challenges.
26+
</RelatedProduct>
5627

57-
## Limitations
28+
<RelatedProduct header="Bots" href="/bots/" product="bots">
29+
Cloudflare bot solutions identify and mitigate automated traffic to protect
30+
your domain from bad bots.
31+
</RelatedProduct>
5832

59-
Cloudflare challenges cannot support the following:
33+
<RelatedProduct header="WAF" href="/waf/" product="waf">
34+
Get automatic protection from vulnerabilities and the flexibility to create
35+
custom rules.
36+
</RelatedProduct>
6037

61-
- [Browser extensions](#browser-extensions) that modify the browser's `User-Agent` value or Web APIs such as `Canvas` and `WebGL`.
62-
- Implementations where a domain serves a challenge page originally requested for another domain.
63-
- Challenge pages cannot be embedded in cross-origin iframes.
64-
- Client software where the solve request of a Managed Challenge comes from a different IP than the original IP a challenge request was issued to. For example, if you receive the challenge from one IP and solve it using another IP, the solve is not valid and you may encounter a challenge loop.
38+
<RelatedProduct header="DDoS Protection" href="/ddos-protection/" product="ddos-protection">
39+
Detect and mitigate Distributed Denial of Service (DDoS) attacks using Cloudflare's Autonomous Edge.
40+
</RelatedProduct>

src/content/docs/cloudflare-challenges/reference/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
pcx_content_type: navigation
33
title: Reference
44
sidebar:
5-
order: 3
5+
order: 4
66
group:
77
hideIndex: true
88
---

src/content/docs/cloudflare-challenges/troubleshooting/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
pcx_content_type: troubleshooting
33
title: Troubleshooting
44
sidebar:
5-
order: 4
5+
order: 5
66
label: Common issues
77
---
88

0 commit comments

Comments
 (0)