Tutorial práctico para identificar, mitigar y prevenir ataques DDoS de capa 7
netstat -an | Select-String ":80 " | Group-Object { $_ -replace '^[^:]*:[^:]*:(\d+\.\d+\.\d+\.\d+):\d+.*$', '$1' } | Sort-Object Count -Descending
Esto agrupa las conexiones por IP y muestra las que más se repiten.
perfmon.exeWeb Service -> Current ConnectionsHTTP Service Request Queues -> CurrentQueueSizeProcessor -> % Processor TimeSi CurrentQueueSize es alto y Current Connections está en miles, es probable un HTTP Flood.
C:\inetpub\logs\LogFiles\W3SVC1)
Get-Content .\u_ex220101.log | Select-String "GET|POST" | Group-Object { ($_ -split ' ')[1] } | Sort-Object Count -Descending | Select -First 10
Esto mostrará las 10 IPs con más requests.
New-NetFirewallRule -DisplayName "Block_DDoS_IP" -Direction Inbound -RemoteAddress 192.168.1.100,203.0.113.50 -Action Block -Protocol TCP -LocalPort 80,443
Bloqueará las IPs en puertos HTTP/HTTPS.
queueLength: Reducir a 1000 (por defecto es 65535)connectionTimeout: Reducir a 00:00:30 (30 segundos)Restart-WebAppPool -Name "DefaultAppPool"
Set-WebConfigurationProperty -Filter "system.webServer/staticContent" -Name clientCache -Value "max-age=3600"
<rule name="Block_DDoS_UserAgent" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTP_USER_AGENT}" pattern="evil-bot|DDOSTool" />
</conditions>
<action type="CustomResponse" statusCode="403" statusReason="Forbidden" />
</rule>
resmon.exe): Verificar red, CPU y memoria
while ($true) {
Get-NetTCPConnection -State Established | Where-Object { $_.RemotePort -eq 80 } |
Group-Object RemoteAddress | Sort-Object Count -Descending | Select -First 5;
Start-Sleep -Seconds 2
}
logparser.exe -i:IISW3C "SELECT TOP 10 c-ip, COUNT(*) AS Requests FROM ex*.log GROUP BY c-IP ORDER BY Requests DESC"
Un ataque HTTP Flood puede ser devastador, pero con una respuesta rápida y las herramientas adecuadas (Firewall, IIS tuning, WAF), puedes mitigarlo efectivamente. La combinación de soluciones nativas de Windows Server y servicios externos (como CDN) proporciona la mejor defensa.
¿Necesitas ayuda? Si necesitas ayuda con la implementación de algún paso específico, no dudes en contactar a tu administrador de sistemas o buscar asistencia especializada.