봇 트래픽은 웹사이트를 찾는, 인간이 아닌 트래픽입니다. 혜택이 있는 봇 트래픽도 있지만, 악성 봇 트래픽은 매우 파괴적일 수 있습니다.
이 글을 읽은 후에 다음을 할 수 있습니다:
관련 콘텐츠
인터넷에서 가장 인기 있는 인사이트를 한 달에 한 번 정리하는 Cloudflare의 월간 요약본 theNET를 구독하세요!
글 링크 복사
봇 트래픽은 인간이 아니면서 웹 사이트나 애플리케이션을 찾는 모든 트래픽을 말합니다. 봇 트래픽이라는 용어에는 부정적인 의미가 내포된 경우가 많지만, 실제로 봇 트래픽이 반드시 좋거나 나쁜 것은 아닙니다. 봇의 목적과 웹 사이트 운영자의 선호에 따라 모든 것이 달라집니다.
일부 봇은 검색 엔진이나 디지털 비서(예 : Siri, Alexa) 등의 유용한 서비스에 필수적입니다. 대부분의 회사는 사이트에 이러한 봇이 오는 것을 환영합니다.
하지만 악성 봇도 있으며, 자격 증명 스터핑 , 데이터 스크래핑 , DDoS 공격 시작을 위한 봇 등이 그 예입니다. 승인받지 않은 웹 크롤러 등의 보다 악의적인 '악성' 봇은 사이트 분석을 방해하고 클릭 사기를 일으킬 수 있기 때문에 골칫거리가 되기도 합니다.
모든 인터넷 트래픽의 40% 이상이 봇 트래픽으로 구성되어 있으며 그 중 상당 부분이 악성 봇으로 생각됩니다. 그래서 많은 조직이 사이트로 들어오는 봇 트래픽을 관리하는 방법을 찾고 있습니다.
웹 엔지니어는 사이트에 대한 네트워크 요청을 직접 보고 봇 트래픽일 가능성이 있는 트래픽을 식별할 수 있습니다. Google Analytics 또는 Heap 같은 통합 웹 분석 도구도 봇 트래픽 감지에 유용하게 이용할 수 있습니다.
분석 시 다음과 같은 비정상적 현상이 나타난다면, 이는 봇 트래픽의 특징입니다.
위에서 설명한 것처럼, 승인받지 않은 봇 트래픽은 페이지 조회 수, 이탈률, 세션 지속 시간, 사용자의 지리적 위치, 전환율 등의 분석 지표에 영향을 줄 수 있습니다. 이러한 지표의 편차는 사이트 소유자에게 큰 좌절을 야기할 수 있습니다. 사이트에 봇 활동이 많으면, 사이트의 성능을 측정하는 것이 매우 어렵습니다. A/B 테스트 및 전환율 최적화 등 사이트를 개선하려는 노력도 봇이 생성한 통계적 노이즈에 의해 저해됩니다.
Google Analytics에서는 "알려진 봇 및 스파이더(스파이더는 웹 페이지를 크롤링하는 검색 엔진 봇입니다)의 적중 제외" 옵션을 제공합니다. 사용자가 봇 트래픽의 출처를 식별할 수 있다면, Google Analytics에서 무시할 특정 IP 목록을 제공할 수도 있습니다.
이러한 조치로 일부 봇이 분석을 방해하는 것을 막을 수는 있지만, 모든 봇을 막지는 못합니다. 게다가, 대부분의 악성 봇은 트래픽 분석을 방해하는 것 외의 목표를 추구하고 있으며, 이러한 조치는 분석 데이터를 보존하는 것 이외의 유해한 봇 활동을 완화하기 위해 아무것도 하지 않습니다.
공격자가 DDoS 공격을 시작하는 가장 일반적인 방법은 대량의 봇 트래픽을 보내는 것입니다. DDoS 공격 중에 과도한 공격 트래픽을 보내므로, 원본 서버에 과부하가 걸려, 사이트가 합법적인 사용자에게 느려지거나 아예 제공되지 않기도 합니다.
악성 봇으로 인해 성능에는 영향을 받지 않더라도 재무적인 피해를 입는 웹사이트도 있습니다. 광고에 의존하는 사이트와 재고가 한정된 상품을 판매하는 사이트가 특히 취약합니다.
광고를 제공하는 사이트의 경우, 봇이 해당 사이트를 방문하여 페이지의 다양한 요소를 클릭하게 되면, 가짜 광고 클릭이 유발됩니다. 이를 클릭 사기라고 합니다. 처음에는 광고 매출이 증가할 수 있지만, 온라인 광고 네트워크에서는 봇 클릭을 아주 잘 감지합니다. 웹 사이트에서 클릭 사기가 행해진 것으로 의심되면, 이들은 조치를 취하는데, 대체로 해당 사이트와 사이트 소유자를 네트워크에서 차단하는 형태입니다. 그러므로, 광고를 호스팅하는 사이트의 소유자는 봇 클릭 사기에 대해 항상 주의를 기울여야 합니다.
재고가 한정된 사이트는 재고 사재기 봇의 공격 대상이 될 수 있습니다. 이름에서 알 수 있듯이 이 봇은 전자 상거래 사이트로 이동하여 수많은 상품을 장바구니에 쓸어담음으로써, 합법적인 쇼핑객이 해당 상품을 구매할 수 없게 만듭니다. 불필요하게 공급업체 또는 제조업체로부터 재고를 재입고해야 하는 경우도 있습니다. 재고 사재기 봇은 구매를 하지 않으면서, 그저 재고 가용성을 방해하도록 설계되었습니다.
많은 웹 사이트는 오리지널 콘텐츠 제작에 의존하여 사용자 트래픽을 유치하고 해당 트래픽으로 수익을 창출했습니다(때로는 광고를 통해). 2020년대에 AI 도구 사용이 급증하면서 이러한 비즈니스 모델에 부정적인 영향이 미쳤습니다. AI 도구는 웹의 원본 콘텐츠를 사용하여 기반이 되는 대규모 언어 모델(LLM)을 학습시키고, 이러한 모델과 관련하여 사용할 검색 색인을 구축하며, 사용자 프롬프트에 응답하여 실시간으로 콘텐츠를 검색합니다. LLM으로부터 응답을 받은 사용자는 응답의 기반이 된 콘텐츠의 웹 사이트를 방문하지 않을 수 있습니다. 원본 콘텐츠를 수집하는 AI 크롤러 봇은 웹 페이지에 많은 요청을 보내어 웹 사이트 운영자에게 직접적인 비용을 초래할 수 있습니다.
웹 사이트에 대한 봇 트래픽을 차단하거나 관리하는 첫 번째 단계는 웹 사이트 관리자가 robots.txt 파일에서 기본 설정을 선언하는 것입니다. robots.txt 파일은 봇에 페이지 크롤링 지침을 제공하며, 봇이 특정 웹 페이지를 방문하거나 웹 페이지와 상호작용하지 않도록 지시하도록 파일을 구성할 수 있습니다. 그러나 일부 봇만 robots.txt 파일의 규칙을 준수하므로, 해당 파일이 실제로 봇의 웹 사이트 크롤링을 막지는 못한다는 것을 유의해야 합니다. Cloudflare에서는 정교한 관리형 robots.txt 서비스를 제공하여 웹 사이트 관리자가 크롤러 운영자에게 자신의 기본 설정을 표시할 수 있도록 지원합니다.
AI 크롤러 봇의 트래픽을 감시하려면 웹 사이트 운영자는 Cloudflare의 AI Audit 같은 서비스를 사용해야 합니다. 이 서비스를 이용하면 웹 사이트 운영자가 AI 크롤러를 허용하거나 차단할 수 있습니다(차단은 AI 크롤러가 어떤 목적으로든 콘텐츠에 접근할 수 없음을 의미합니다). AI Audit의 크롤링당 결제 기능을 사용하면 웹 사이트 운영자가 원하는 경우 AI 봇 운영자에게 크롤링 비용을 청구할 수도 있습니다.
다른 여러 도구도 악의적인 봇 트래픽을 완화할 수 있습니다. Cloudflare의 WAF 제품과 같은 레이트 리미팅 솔루션은 단일 IP 주소에서 발생하는 대량의 악성 봇 트래픽을 감지하고 방지할 수 있습니다.
네트워크 엔지니어는 트래픽을 검토하여 여러 IP 주소에서 발생한 의심스러운 네트워크 요청과 해당 IP 주소에서 발생한 모든 요청을 수동으로 식별할 수 있습니다. 그러나 이는 매우 노동 집약적인 과정이며 웹 사이트에서 직면할 수 있는 대부분의 악성 봇 트래픽을 막을 가능성은 낮습니다.
레이트 리미팅 및 엔지니어의 직접 개입 이외에 가장 쉽고 효과적으로 악성 봇 트래픽을 막을 수 있는 방법은 봇 관리 솔루션을 이용하는 것입니다. 봇 관리 솔루션은 인텔리전스를 활용하고 행동 분석을 사용하여 악의적 봇이 웹 사이트에 도달하기 전에 막을 수 있습니다. 예를 들어, Cloudflare 봇 관리는 수백만 개 이상의 인터넷 자산에서 얻은 인텔리전스를 활용하고, 머신 러닝을 적용하여 봇 남용을 사전에 식별하고 차단합니다. Pro 요금제와 Business 요금제에서 사용할 수 있는 Super Bot Fight Mode에서는 봇 트래픽에 대하여 유사한 가시성과 제어 기능을 소규모 조직에 제공합니다.
봇 트래픽은 웹사이트나 애플리케이션에서 발생하는 모든 사람 이외의 활동을 의미합니다. 봇 트래픽은 본질적으로 좋거나 나쁜 것이 아니라, 봇의 목적에 따라 달라집니다. 검색 엔진과 같은 서비스에는 필수적인 봇도 있는 반면, 악성 봇도 존재합니다.
웹사이트 분석에서 이상 징후를 찾아봄으로써 봇 트래픽을 식별할 수 있습니다. 주요 징후로는 페이지 조회수나 이탈률이 비정상적으로 높거나, 세션 지속 시간이 갑자기 변하거나, 쓸모없는 전환이 급증하거나, 예상치 못한 지역에서 트래픽이 급증하는 경우가 있습니다.
일부 봇은 유익하며, 심지어 필수적이기도 합니다. 예를 들어, 검색 엔진 봇(스파이더나 크롤러라고도 불림)은 웹사이트가 색인화되어 검색 결과에 나타나기 위해 반드시 필요합니다. 반면, 악성 봇은 데이터를 긁어가거나, 사용자 인증 정보를 탈취하거나, DDoS 공격을 실행하는 등 해로운 행동을 할 수 있습니다.
악성 봇 트래픽은 여러 가지 방식으로 웹사이트에 피해를 줄 수 있습니다. 웹사이트 분석 수치를 왜곡하여 성과를 정확히 측정하기 어렵게 만들 수 있습니다. 악성 봇은 서버를 과부하시키면서 사이트 성능에도 악영향을 줄 수 있습니다. 기업의 경우, 봇이 광고 클릭 사기를 저지르거나 전자상거래 사이트에서 재고를 독점하여 매출을 방해할 수 있습니다.
첫 번째 단계로는 robots.txt 파일을 사용해 봇에게 지침을 제공할 수 있지만, 악성 봇은 이를 무시하기 때문에 완벽한 방법은 아닙니다. 더 효과적인 방법으로는 대량 트래픽을 차단하는 레이트 리미팅을 적용하거나, 머신러닝과 행동 분석을 활용해 유익한 봇과 악성 봇을 구분하는 전용 봇 관리 솔루션을 사용하는 것이 있습니다.
robots.txt 파일은 웹사이트를 방문하는 봇을 위한 지침 모음입니다. 이 파일에서는 봇이 크롤링할 수 없는 페이지와 같은 규칙을 지정할 수 있습니다. 유익한 봇은 이러한 규칙을 따르지만, 많은 악성 봇은 이를 무시합니다.