🇰🇷 한글 설명
Delphi로 작성된 Win32용 웹 서버인 TinyWeb 2.02 미만 버전에서 Slowloris 방식의 서비스 거부(DoS) 공격에 취약합니다. 서버가 연결 수 제한이나 타임아웃 없이 매 연결마다 새로운 OS 스레드를 생성하기 때문에, 공격자가 매우 느린 속도로 연결을 유지하면 서버의 자원이 고갈될 수 있습니다.
💡 쉬운 설명
공격자가 서버에 아주 느린 속도로 가짜 요청을 계속 보내서 서버의 처리 능력을 바닥나게 만드는 공격입니다. 이로 인해 일반 사용자가 웹사이트에 접속하지 못하게 됩니다.
🇺🇸 원문 (English)
TinyWeb is a web server (HTTP, HTTPS) written in Delphi for Win32. Versions prior to version 2.02 are vulnerable to a Denial of Service (DoS) attack known as Slowloris. The server spawns a new OS thread for every incoming connection without enforcing a maximum concurrency limit or an appropriate request timeout. An unauthenticated remote attacker can exhaust server concurrency limits and memory by opening numerous connections and sending data exceptionally slowly (e.g. 1 byte every few minutes). Anyone hosting services using TinyWeb is impacted. Version 2.02 fixes the issue. The patch introduces a `CMaxConnections` limit (set to 512) and a `CConnectionTimeoutSecs` idle timeout (set to 30 seconds). As a temporary workaround if upgrading is not immediately possible, consider placing the server behind a robust reverse proxy or Web Application Firewall (WAF) such as nginx, HAProxy, or Cloudflare, configured to buffer incomplete requests and aggressively enforce connection limits and timeouts.
📍 영향받는 시스템
TinyWeb version prior to 2.02
⚔️ 공격 벡터
Unauthenticated remote attacker sending exceptionally slow HTTP requests (Slowloris)
🛡️ 대응 방법
TinyWeb 2.02 버전으로 업그레이드하거나, nginx/HAProxy/Cloudflare와 같은 리버스 프록시 또는 WAF를 사용하여 연결 제한 및 타임아웃을 설정하십시오.
🔧 검증 코드
명령어 결과에 TinyWeb 2.02 미만 버전이 나타나면 취약한 상태입니다.
curl -s http://<target_ip>/version_info | grep -E 'TinyWeb [0-1]\.[0-9]{2}'