DruxAI
← New search
TechnologyBeta — synthesis improving

My website gets more attacks than human visitors

3 modelsComplete
Single VoiceOnly one model responded — no consensus data. Answer reflects a single voice.estimated
0%
consensus
Single response
How much the models agreed on this answer

Models strongly disagree — this question has no single right answer. Explore the responses below.

Models agree on

  • Using a CDN/WAF (like Cloudflare) with bot management is a primary and immediate defense for edge protection.
  • Implementing rate limiting on sensitive endpoints (e.g., login pages) is crucial to prevent brute-force and credential-stuffing attacks.
  • CAPTCHA or similar challenge mechanisms (like reCAPTCHA or hCaptcha) are effective for distinguishing humans from bots on forms.
  • Monitoring logs for suspicious patterns, IP addresses, and User-Agents is a fundamental diagnostic and ongoing security practice.

When your website receives more automated or malicious requests than genuine human visitors, it's a common symptom of being publicly accessible online rather than a sign of failure. This situation typically arises from several sources:

Why “attacks > human visitors” Happens

Typical causeWhat it looks like in the logsWhy it inflates the “attack” count
Automated scanners (search-engine crawlers, vulnerability scanners, botnets)Repeated requests to /admin, /login, /wp-admin, /phpmyadmin, or to obscure URLs; same User-Agent string over many IPsScanners probe every site they can find; a single scan can generate thousands of requests in seconds.
Credential-stuffing / brute-force login attemptsMany POSTs to /login with different username/password combos; often from a short list of IPs or a cloud-provider rangeAttackers try known credential leaks; each attempt is counted as a “failed login” or “attack”.
DDoS / traffic-spike botsHigh request rate from many IPs, often with short or missing User-Agent; spikes in bandwidth usageThe goal is to overwhelm the service, not to reach a human user.
Content-scraping botsGETs for every article/page in rapid succession, often with generic User-Agent (“Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)”) but from non-Google IPsScrapers mimic browsers to avoid blocks, creating a flood of “non-human” traffic.
Misconfigured monitoring or health-check servicesRegular “ping” requests from internal IPs or cloud-provider health-check endpoints that are logged as “GET /health”They are benign but still appear as traffic that isn’t a real visitor.

Immediate Diagnostic Steps

Before implementing solutions, it's crucial to understand the nature of the traffic:

  1. ·

    Collect baseline metrics:

    • ·Compare unique human visitors (e.g., Google Analytics, Matomo, Plausible) to total HTTP requests.
    • ·Analyze requests per IP and requests per User-Agent for recent periods (last 24h, 7d, 30d).
  2. ·

    Identify the “attack” signatures:

    • ·Look for patterns in your logs: repeated requests to the same endpoint, query string, or referrer, especially those resulting in 403/404/500 response codes.
    • ·Use tools like goaccess, awk, or the Elastic Stack to aggregate data by IP, User-Agent, and URL.
  3. ·

    Separate legitimate bots from malicious ones:

    • ·Legitimate bots (Google, Bing, Yandex) use verified IP ranges and adhere to robots.txt rules.
    • ·Malicious bots often employ random or spoofed User-Agents and originate from data-center IP blocks (AWS, Azure, OVH, etc.).
  4. ·

    Check against known bad IPs / CIDR blocks:

    • ·Cross-reference your logs with threat intelligence feeds such as Spamhaus, AbuseIPDB, or Project Honeypot.
  5. ·

    Measure impact:

    • ·Correlate CPU, memory, and bandwidth spikes with attack bursts.
    • ·Monitor increases in error rates (5xx) and latency.

Concrete Mitigation Blueprint

Here’s a multi-layered approach to address and mitigate unwanted traffic:

LayerActionWhy it worksQuick-start tip
Network edgeDeploy a CDN/WAF (Cloudflare, Fastly, Akamai) with Bot Management enabled.Off-loads traffic, blocks known bad IPs, challenges suspicious clients before they hit your origin.Turn on “I’m Under Attack” mode for a few minutes, then fine-tune the challenge threshold.
Rate limitingPer-IP/Per-User-Agent request caps on sensitive endpoints (/login, /admin, /api/*).Stops brute-force and credential-stuffing bursts.5 req/s for login, 10 req/s for API, with exponential back-off.
CAPTCHA / ChallengeAdd reCAPTCHA v3 (score-based) or hCaptcha on login, signup, comment forms.Gives a low-friction way to separate humans from bots.Use the “invisible” version to keep UX smooth; only trigger when score < 0.5.
Honeypot URLsCreate hidden endpoints (/admin-login-secret) that only bots discover.Any request to these URLs is a clear bot signal → block the source.Return 404 but log the IP for immediate blacklist.
Web-application firewall rulesBlock common attack patterns: SELECT * FROM, ../, <?php, eval( in query strings or POST bodies.Stops injection scans before they reach your app.Use OWASP CRS ruleset as a baseline, then add custom regexes for your app.
Authentication hardeningEnforce multi-factor authentication (MFA) for admin accounts, and password-rate-limit (e.g., 5 attempts per hour).Reduces value of credential-stuffing.Enable MFA via Authy/Google Authenticator; lock account after 5 failures for 15 min.
Log & alertSet up SIEM alerts for spikes > X req/min from a single IP or > Y failed logins per minute.Early detection → quick response.Use Elastic Stack or Splunk; webhook to Slack/PagerDuty.
Infrastructure scalingAuto-scale backend pods/instances based on CPU/network metrics.Guarantees service remains available even under attack.In Kubernetes, configure HPA with CPU target 70 % and request-rate metric.
Legal / abuse reportingReport persistent abusive IP ranges to your ISP or cloud provider.Some providers will take down the offending nodes.Use abuse contact emails from the IP’s WHOIS record.

Prioritization Checklist (first 48h)

To quickly address the issue, focus on these critical actions:

  1. ·Enable a CDN/WAF with default bot protection – this provides immediate traffic reduction.
  2. ·Add rate limiting to login & admin endpoints – this effectively stops credential-stuffing.
  3. ·Deploy a CAPTCHA on any form that triggers a POST – a cost-effective, high-impact solution.
  4. ·Set up alerts for > 100 req/min from a single IP – ensures early warning of potential attacks.
  5. ·Review logs for “unknown” User-Agents and add them to a temporary blocklist.

If the attack volume remains overwhelming, consider advanced solutions like layer-4 DDoS mitigation (e.g., Cloudflare Spectrum, AWS Shield Advanced) and traffic scrubbing services.

Long-Term Hardening Practices

For ongoing security and resilience:

  • ·Keep software up-to-date (CMS, plugins, server stack).
  • ·Implement CSP (Content Security Policy) and HSTS to reduce the exploitation surface.
  • ·Regularly audit your public-facing endpoints with tools like Nikto, OWASP ZAP, or Qualys.
  • ·Adopt “Zero-Trust” network architecture: no IP is trusted by default; every request is authenticated/authorized.
  • ·Conduct periodic penetration testing (internal + external) to discover new attack vectors.

Quick “What-to-Do-Now” Script (Linux/NGINX example)

bash

1. Install fail2ban (blocks IPs after N failed logins)

sudo apt-get install fail2ban cat <<EOF | sudo tee /etc/fail2ban/jail.d/nginx-login.conf [nginx-login] enabled = true filter = nginx-login logpath = /var/log/nginx/access.log maxretry = 5 bantime = 3600 EOF sudo systemctl restart fail2ban

2. NGINX rate limit for /login

cat <<EOF | sudo tee /etc/nginx/conf.d/rate_limit.conf limit_req_zone $binary_remote_addr zone=login:10m rate=5r/s; server { location /login { limit_req zone=login burst=10 nodelay; # your usual config … } } EOF sudo nginx -s reload

Adjust the rate and bantime to fit your traffic profile.

Bottom Line

Automated traffic often far exceeds human visits on publicly accessible websites; this is a common occurrence, not a sign of failure. The key is to identify the traffic patterns and apply a layered defense strategy, starting with edge protection, moving to rate limiting, then challenges, and finally continuous monitoring. It's an iterative process; each mitigation may shift attacker tactics, so maintain tight alerting and regularly update your blocklists. Implementing the quick-start steps immediately should lead to a significant reduction in unwanted traffic while maintaining a smooth experience for genuine users.

Follow-ups

You just saw open-source models answer

Want GPT-5, Claude, Gemini & more on the same question?

Sign in free to run any question against frontier models — side by side, same synthesis, honest comparison.

GPT-5Claude SonnetGemini 2.5 ProGrokDeepSeek R1Perplexity Sonar
Free models only · sign in for premium