34.169.137.52

Blocked Persistent Toolkit

Blocked since UTC, no end date. Our servers refuse it, web requests included, and it is in feed.txt.

Record

Score
43/100each request counts half as much after 30 days
Worst level
Persistent
Attack-shaped requests
268all time
Active days
1UTC days
First seen
Last seen
Servers hit
2
Targets
1site
Times blocked
0by the evidence rules

First seen on UTC, most recently active on UTC.

Recorded 268 attack-shaped requests across 1 separate day.

Its traffic requested a .env file, hoping to find API keys or database credentials (148 requests); it also used a directory-traversal segment (literal or percent-encoded ../) in the request path to try to escape the web root (39); it also requested a common cloud/app secrets or credentials filename (AWS, GCP, Firebase, Kubernetes service-account token, SSH, master key) from a wordlist, hoping one was left in the webroot (19).

Seen by our edge and web sensors, against odor-ex.com.

Scored into the "Persistent" level, its highest so far. Badge: Toolkit.

Its busiest hour on record began UTC, with 268 requests.

Routed via AS396982 (Google LLC), a cloud network.

Surfaces: web-app. Attack types: fake crawlers, known exploits, injection, scanning, hunting for secrets. Seen by: edge, web.

Activity, last 90 days

Active on 1 of the last 90 UTC days. Current block: , with no end date.

Daily counts
Attack requests per UTC day, days with activity only
Day (UTC)Requests
268
  • At least 199 requests a minute at its peak ( UTC; identical requests in the same second are stored once).
  • Methods: GET 334, POST 16.
  • The servers we watch answered: 404 238, 403 33 (totals only, from our web servers).

Evidence

Newest first, the latest 50 stored requests grouped into runs. Times are UTC. The user agent is shown as its family only.

Evidence, newest first, grouped by UTC day
TimeSiteWhat happenedRequestUser agentSeen by
odor-ex.com3× made a request that matched no known pattern (3 distinct paths)GET /icecoder/lib/file-control.phpdeclared botedge
odor-ex.com2× requested a .env file, hoping to find API keys or database credentials (2 distinct paths)GET /.env.bakdeclared botedge
odor-ex.com2× made a request that matched no known pattern (2 distinct paths)GET /service_account.jsondeclared botedge
odor-ex.comused a directory-traversal segment (literal or percent-encoded ../) in the request path to try to escape the web rootGET /static../.envdeclared botedge
odor-ex.com3× made a request that matched no known pattern (3 distinct paths)GET /.aws/configdeclared botedge
odor-ex.comrequested .htaccess or .htpasswd, which can leak access rules or password hashesGET /.htpasswddeclared botedge
odor-ex.comused Vite dev server's @fs/ path to try to read arbitrary files outside the project rootGET /@fs/var/run/secrets/kubernetes.io/serviceaccount/ca.crtdeclared botedge
odor-ex.com2× requested a .env file, hoping to find API keys or database credentials (2 distinct paths)GET /backend/.envdeclared botedge
odor-ex.com2× made a request that matched no known pattern (2 distinct paths)GET /.zshrcdeclared botedge
odor-ex.comrequested a .env file, hoping to find API keys or database credentialsGET /@fs/proc/self/cwd/.envdeclared botedge
odor-ex.com2× made a request that matched no known pattern (2 distinct paths)GET /firebase-adminsdk.jsondeclared botedge
odor-ex.comrequested an AWS credentials file left in a web-accessible path by mistakeGET /@fs/home/ec2-user/.aws/credentialsdeclared botedge
odor-ex.comrequested a .env file, hoping to find API keys or database credentialsGET /.env.localdeclared botedge
odor-ex.commade a request that matched no known patternGET /.github/workflows/deploy.ymldeclared botedge
odor-ex.comrequested a .env file, hoping to find API keys or database credentialsGET /.env.developmentdeclared botedge
odor-ex.comprobed for an exposed .git directory to download the site's source history and configGET /.git/HEADdeclared botedge
odor-ex.comrequested a .env file, hoping to find API keys or database credentialsGET /.env.backupdeclared botedge
odor-ex.com2× made a request that matched no known pattern (2 distinct paths)GET /netlify.tomldeclared botedge
odor-ex.comused a directory-traversal segment (literal or percent-encoded ../) in the request path to try to escape the web rootGET /css../.envdeclared botedge
odor-ex.commade a request that matched no known patternGET /id_ecdsadeclared botedge
odor-ex.com2× requested a .env file, hoping to find API keys or database credentials (2 distinct paths)GET /api%2F.envdeclared botedge
odor-ex.commade a request that matched no known patternGET /.vscode/launch.jsondeclared botedge
odor-ex.com2× requested a .env file, hoping to find API keys or database credentials (2 distinct paths)GET /etc/.envdeclared botedge
odor-ex.com2× made a request that matched no known pattern (2 distinct paths)GET /.ssh/known_hostsdeclared botedge
odor-ex.com4× requested a .env file, hoping to find API keys or database credentials (4 distinct paths)GET /static/..;/..;/.envdeclared botedge
odor-ex.comprobed for an exposed .svn directory to read the site's version-control metadataGET /.svn/entriesdeclared botedge
odor-ex.commade a request that matched no known patternGET /.dev.vars.productiondeclared botedge
odor-ex.comrequested a .env file, hoping to find API keys or database credentialsGET /api/system/fileViewdeclared botedge
odor-ex.comrequested a private SSH key file by its conventional nameGET /id_dsadeclared botedge
odor-ex.comtried to read /proc/self/environ to dump process environment variables, usually via a traversal or inclusion flawGET /api/proc/self/environdeclared botedge
odor-ex.commade a request that matched no known patternGET /.botodeclared botedge
odor-ex.com2× requested a .env file, hoping to find API keys or database credentials (2 distinct paths)GET /.env.smtpdeclared botedge
odor-ex.commade a request that matched no known patternGET /host.keydeclared botedge

Network

ASN
AS396982 Google LLC
Network type
cloud
Reverse DNS
52.137.169.34.bc.googleusercontent.com
Country
United States US
Flags
cloud range (GCP)
Abuse contact
not found
Checked

Elsewhere: GreyNoise, Shodan, AbuseIPDB.

Your verdict

What readers make of this address. Verdicts are opinions of signed-in Academy members. They never change blocking or reporting.

No verdicts yet.

Every listing carries its evidence on its page, and blocks are lifted only by us; if you were blocked and have fixed the cause, write to abuse-reports@abuse.servbg.com.