핵심 인사이트 (3줄 요약)

  • 연결 지속 공격: HTTP 헤더를 의도적으로 천천히 전송하여 서버의 가용 연결(Connection)을 장시간 점유하는 공격임.
  • 저대역폭 공격: 대량의 트래픽을 보내지 않고도 소수의 세션만으로 아파치(Apache) 등 특정 웹 서버를 마비시킬 수 있음.
  • 프로토콜 빈틈 활용: HTTP 요청의 끝을 알리는 빈 라인(\r\n\r\n)을 보내지 않고 계속 기다리게 만드는 심리전적 공격임.

Ⅰ. 개요 (Context & Background)

Slowloris는 2009년 로버트 'RSnake' 한센에 의해 공개된 공격 기법으로, "천천히(Slow)" 서버를 말려 죽이는 특성 때문에 독특한 이름을 가졌다. 전통적인 DDoS가 '망치'로 서버를 때리는 방식이라면, Slowloris는 '빨대'로 서버의 숨통을 조이는 방식이다. 주로 스레드(Thread) 기반의 웹 서버 아키텍처 취약점을 공략한다.

Ⅱ. 아키텍처 및 핵심 원리 (Deep Dive)

공격자는 서버와 TCP 연결을 맺은 후, HTTP 헤더의 일부분만 전송하고 나머지 부분은 아주 느린 간격으로 조금씩 보낸다. 서버는 요청이 아직 끝나지 않았다고 판단하여 타임아웃(Timeout)이 발생할 때까지 해당 연결을 유지한다.

[ Slowloris Attack Logic - Slowloris 공격 로직 ]

   [ Attacker ]                              [ Target Web Server ]
        |                                             |
        |--- SYN ------------------------------------>| (Listen)
        |<-- SYN/ACK ---------------------------------|
        |--- ACK ------------------------------------>| (Connection Est.)
        |                                             |
        |--- "GET / HTTP/1.1\r\n" ------------------->| (Keep Connection Open)
        |--- "Host: target.com\r\n" ----------------->| (Wait for more headers)
        |--- (Wait 20 seconds...) ------------------->| (Wait...)
        |--- "X-a: b\r\n" --------------------------->| (Wait...)
        |                                             |
        | (Repeat for all MaxConnections)             | [ No more slots for users ]

핵심 특징:

  1. 헤더 미완성: \r\n\r\n을 보내지 않음으로써 요청이 "진행 중"임을 위장함.
  2. 저자원 소모: 공격자는 매우 적은 패킷만 보내면 되므로 탐지가 매우 어려움.
  3. 아키텍처 영향: 아파치(Apache), IIS 등 요청마다 스레드를 할당하는 서버에 치명적이며, Nginx와 같은 이벤트 기반 서버에는 상대적으로 강하다.

Ⅲ. 융합 비교 및 다각도 분석 (Comparison & Synergy)

비교 항목SlowlorisHTTP Flood
트래픽 양매우 낮음 (Low Rate)매우 높음 (Volumetric)
공격 대상웹 서버 커넥션 슬롯서버 처리 성능 (CPU/DB)
연결 방식장시간 유지 (Keep-alive 악용)단시간 대량 반복
방어 전략타임아웃 단축, 최소 전송속도 제한임계치 기반 차단, WAF

Ⅳ. 실무 적용 및 기술사적 판단 (Strategy & Decision)

  • 타임아웃 설정: 서버 설정에서 KeepAliveTimeoutRequestReadTimeout을 타이트하게 조정한다.
  • 기술사적 판단: 단순 서버 튜닝만으로는 부족하며, 아키텍처 관점에서 Nginx나 HAProxy와 같은 **역방향 프록시(Reverse Proxy)**를 전면에 배치하여 완벽한 요청이 들어올 때까지 백엔드 서버를 보호하는 완충 지대를 구축해야 한다.

Ⅴ. 기대효과 및 결론 (Future & Standard)

Slowloris는 고대역폭 네트워크 시대에도 여전히 위협적이다. 특히 자원이 한정된 IoT 기기나 임베디드 웹 서버를 공격할 때 매우 효과적이다. 현대의 지능형 방화벽은 패킷의 전송 속도와 헤더 완성 여부를 실시간 감시하는 능력을 필수 표준으로 채택하고 있다.

📌 관련 개념 맵 (Knowledge Graph)

  • 상위: 서비스 거부 공격 (DoS/DDoS), 웹 보안
  • 하위: Slow HTTP POST (R-U-Dead-Yet), Slow Read DoS
  • 연관: Apache vs Nginx, Reverse Proxy, Connection Pool

👶 어린이를 위한 3줄 비유 설명

  1. 주문이 아주 많은 햄버거 가게에 가서 "치즈 버거... 음... 패티는... 음..." 하고 주문을 안 끝내는 거예요.
  2. 뒷사람들은 기다리다 지쳐서 그냥 가버리고, 점원은 계속 이 손님 주문만 기다리고 있게 되죠.
  3. 아주 적은 수의 친구들이 모든 주문 창구를 이렇게 차지해버리면 가게 전체가 마비된답니다.