<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Peakhour.IO - Risk Scoring</title><link href="https://www.peakhour.io/" rel="alternate"></link><link href="https://www.peakhour.io/feeds/tag/risk-scoring.atom.xml" rel="self"></link><id>https://www.peakhour.io/</id><updated>2026-08-01T11:00:00+10:00</updated><entry><title>A Proxy Flag Is Not a Security Policy</title><link href="https://www.peakhour.io/blog/proxy-flag-is-not-a-security-policy/" rel="alternate"></link><published>2026-08-01T11:00:00+10:00</published><updated>2026-08-01T11:00:00+10:00</updated><author><name>AC</name></author><id>tag:www.peakhour.io,2026-08-01:/blog/proxy-flag-is-not-a-security-policy/</id><summary type="html">&lt;p&gt;Residential proxy detection is useful evidence. The security decision still has to account for the route, credentials, client history, behaviour, and cost of getting the action wrong.&lt;/p&gt;</summary><content type="html">&lt;p&gt;At Peakhour, a residential proxy match changes how much trust we place in a request. It never selects the action on its own.&lt;/p&gt;
&lt;p&gt;The match tells us that the network presenting the traffic may not be where the operator is sitting. Whether that matters depends on what the request is trying to do, what else is known about the client, and the cost of getting the action wrong. Treating a proxy label as policy collapses those questions into one bit. The rule becomes easy to configure and hard to operate.&lt;/p&gt;
&lt;p&gt;&lt;a href="/products/residential-proxy-detection/"&gt;Residential proxy detection&lt;/a&gt; therefore sits inside the live request decision beside IP reputation, credentials, device history, network fingerprints, behaviour, route sensitivity, and recent outcomes. It changes the level of evidence we require.&lt;/p&gt;
&lt;h2&gt;The Same Signal Means Different Things on Different Routes&lt;/h2&gt;
&lt;p&gt;Consider three requests from the same residential proxy exit:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A visitor opens a cached product page.&lt;/li&gt;
&lt;li&gt;A client tries one password against 200 accounts.&lt;/li&gt;
&lt;li&gt;An authenticated user changes the recovery email on a high-value account.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The network fact is identical. The consequences are not.&lt;/p&gt;
&lt;p&gt;The first request may need no action beyond logging. The second has a pattern consistent with credential stuffing and needs a shared limit or block. The third may justify step-up verification because the action can transfer control of an account. A site-wide proxy deny rule misses those distinctions.&lt;/p&gt;
&lt;p&gt;This is also why a global risk score can be frustrating in production. A score can help rank events, but the operator still needs to know what raised it and which action is proportionate. Peakhour's concern is where that context meets enforcement: on the request path, before origin work and account state changes occur.&lt;/p&gt;
&lt;h2&gt;Residential Does Not Mean One Person&lt;/h2&gt;
&lt;p&gt;Public IP addresses are weak identity keys even when no proxy is involved. Carrier-grade NAT allows many subscribers to share address space; &lt;a href="https://www.rfc-editor.org/rfc/rfc6598"&gt;RFC 6598&lt;/a&gt; reserves a shared range specifically for that purpose. Households, offices, mobile networks, privacy services, and public Wi-Fi also put unrelated users behind common addresses.&lt;/p&gt;
&lt;p&gt;A residential proxy complicates the picture further. The address belongs to a real consumer network, but the request may have originated elsewhere. A clean reputation may mean the exit is new. A poor reputation may reflect one abusive user while ordinary subscribers share the same public address.&lt;/p&gt;
&lt;p&gt;This cuts both ways:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Absence from a proxy list is not proof that the request is direct.&lt;/li&gt;
&lt;li&gt;Presence on a proxy list is not proof that the request is malicious.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Google's 2026 disruption of the IPIDEA network showed the scale of the timing problem. Google identified hundreds of Android applications and thousands of Windows binaries connected with the proxy infrastructure, and observed many tracked threat groups using its exits. The investigation also found multiple SDK brands and reseller relationships feeding shared infrastructure. The details are in Google's &lt;a href="https://cloud.google.com/blog/topics/threat-intelligence/disrupting-largest-residential-proxy-network"&gt;IPIDEA disruption report&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A provider label or yesterday's reputation cannot carry the whole decision.&lt;/p&gt;
&lt;h2&gt;Build the Decision from the Request Outward&lt;/h2&gt;
&lt;p&gt;A workable policy starts with the route.&lt;/p&gt;
&lt;p&gt;For each protected route, record:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;what the request can read, change, or spend;&lt;/li&gt;
&lt;li&gt;whether it creates expensive application or database work;&lt;/li&gt;
&lt;li&gt;which identity is available, such as account, session, API key, or none;&lt;/li&gt;
&lt;li&gt;whether an interactive challenge is possible;&lt;/li&gt;
&lt;li&gt;what a false block would cost the user and the business;&lt;/li&gt;
&lt;li&gt;which recent outcomes make repetition suspicious.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Then add the network and client evidence. A residential proxy result becomes more useful when it agrees with other observations: a breached credential, an unseen device, a fingerprint shared across rotating IPs, failed outcomes across many accounts, an invalid route sequence, or an abnormal request rate.&lt;/p&gt;
&lt;p&gt;The policy can then choose among real actions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Allow&lt;/strong&gt; when the route is low risk and the session is otherwise consistent.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Log&lt;/strong&gt; when the signal is new or the cost of intervention is higher than the current evidence supports.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Challenge&lt;/strong&gt; when the client can provide more evidence and there is a safe recovery path.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rate limit&lt;/strong&gt; when repeated behaviour is the problem, especially across accounts, fingerprints, API credentials, or costly operations.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Block&lt;/strong&gt; when the evidence is strong, harm is current, and narrower controls cannot protect the route.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Peakhour evaluates that context in the request path. Browser signals can add evidence when a browser is present, while API traffic can still be assessed without requiring JavaScript. The selected action and its inputs remain part of the decision record rather than disappearing into a standalone lookup.&lt;/p&gt;
&lt;h2&gt;Scores Need Reasons and Actions Need Owners&lt;/h2&gt;
&lt;p&gt;A security team should be able to answer three questions after a request is challenged or blocked:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Which observations changed the decision?&lt;/li&gt;
&lt;li&gt;Which policy revision selected the action?&lt;/li&gt;
&lt;li&gt;Did the action protect the route without breaking legitimate completion?&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If the only retained field is &lt;code&gt;risk_score: 87&lt;/code&gt;, review becomes guesswork. Keep the useful components: route, proxy result, IP category, fingerprint provenance, account or token state, recent failures, threshold state, action, policy revision, and origin outcome.&lt;/p&gt;
&lt;p&gt;Every enforcement rule also needs an owner and an expiry condition. Proxy networks change. Client populations change. A rule created during an incident should not become permanent merely because nobody knows why it exists.&lt;/p&gt;
&lt;p&gt;Start in observation mode on one sensitive route. Measure ordinary variation, proxy prevalence, successful completion, challenge outcomes, and false positives. Move to enforcement when the evidence supports a specific action. Roll back when the customer cost exceeds the risk reduction.&lt;/p&gt;
&lt;p&gt;On a sensitive route, the proxy match may justify corroborating evidence or a reversible action. On a low-risk route, logging may be enough. In both cases, the team should be able to show which facts changed the decision and what happened afterwards. That is how proxy intelligence becomes an operable control rather than another label in a feed.&lt;/p&gt;</content><category term="Security"></category><category term="Residential Proxies"></category><category term="Bot Management"></category><category term="Account Protection"></category><category term="Risk Scoring"></category><category term="Edge Security"></category></entry></feed>