"웹은 망가졌다" - 내 기기가 남을 공격하는 Botnet이 된다면? AI 크롤링과 숨겨진 프록시 생태계
(jan.wildeboer.net)- 일부 AI 기업들이 데이터 수집을 위해 '봇넷화된 P2P 프록시 SDK'를 앱에 삽입하여, 사용자도 모르게 이들의 웹 크롤링 인프라에 편입됨
- 이 SDK는 사용자의 네트워크 대역폭 일부(120~150kbps)을 무단으로 '판매' 하여 개발자에게 수익(1명당 18센트)을 제공 하고, 크롤링·메일 서버 브루트포싱 등 비정상 행위를 수행
- 이 봇넷은 수만 개의 주거용/모바일 IP를 활용해 탐지 회피, IP당 하루 1회만 공격 시도하여 fail2ban 등 보안시스템을 우회
- 대표 사례로 Infatica SDK 등이 있으며, 이를 포함한 앱 개발자는 사실상 사용자를 봇넷에 감염시키는 셈
- '주거용 프록시(residential proxy)' 시장이 AI 크롤링 수요로 급성장 중이며, 이는 사실상 비인가 크롤링 인프라임
- 이러한 봇넷 구조는 신종 형태의 스텔스 사이버 공격이며, 앱 개발자가 이 생태계에 가담하고 있음
- 글쓴이는 웹 크롤링 자체를 '웹의 기반을 공격하는 행위'로 규정하며, 개발자와 플랫폼 기업의 책임을 요구하며 모든 크롤링을 차단해야 한다고 주장
스텔스 봇넷, 그 정체: 봇넷 Part 1
개인 메일 서버를 향한 봇넷의 공격
- 글쓴이의 메일 서버가 지속적으로 SMTP 브루트포스 공격을 받음
- 공격 목적: 계정을 탈취하여 스팸 메일 발송 시도
- 대부분은 실패하지만, 시도 자체가 지속적이고 집요함
봇넷의 정체: SDK를 통한 기기 감염
-
앱 개발자에게 SDK 삽입 대가로 금전 제공
- 예: 사용자 1인당 월 18센트
- 이 SDK는 사용자의 트래픽 일부(120~150kbps)를 대여
- "P2P 프록시" 또는 "residential proxy"로 포장, 실제로는 사용자의 기기를 봇넷 노드로 활용
공격의 방식: 탐지 회피형 분산 공격
- 하루에 IP당 한 번만 로그인 시도 → fail2ban, UFW 등의 자동 탐지 우회
- 하지만 수만 개의 IP를 보유하여 공격을 지속적이고 분산적으로 실행
- 글쓴이는 이 방식이 표준적인 보안 도구를 무력화한다고 지적
ASN 기준 차단의 비효율성
- 과연 IP가 특정 통신사(ASN)에서 집중되는지 분석
- 결과: ASN당 평균 4개 미만의 공격 IP → ASN 전체 차단은 효과 없음
- 현재는 매일 로그 분석 → 새로운 IP 차단 명령어 이메일 전송 → 수동 차단 방식 유지
대응 방식과 철학
- 자동화도 가능하지만, 직접 보고 대응함으로써 패턴을 파악하고 감시 의식을 유지
- 공격자 IP 수: 현재 약 5만 개 이상 차단 중
- 대부분은 IPv4이며, IPv6 공격은 아직 드문 상황
봇넷 생태계의 현실
- "SDK 포함 → 수익 공유"라는 합법처럼 보이는 유통 구조
- 실제로는 사용자 트래픽을 동의 없이 활용하여 스팸, 공격, 크롤링 등에 사용
- 이런 봇넷은 일반적인 백신이나 보안 시스템에 탐지되지 않음
결론
- 앱 개발자가 이런 SDK를 포함하면, 사실상 봇넷 제작에 가담하는 것
- 일반 사용자는 이러한 SDK 포함 여부를 알 수 없으며, 자동으로 봇넷에 참여
- 글쓴이는 이러한 문제의식을 바탕으로 웹 생태계의 무너짐을 경고
"나는 이게 '정상적인 SDK'라고 주장하는 기업들을 전혀 신뢰하지 않는다. 이건 봇넷이다."
— Jan Wildeboer, 2025년 2월
# 웹은 고장났다: 봇넷 Part 2
웹 크롤러의 급증, 그 배경
- 최근 AI 모델 훈련을 위한 대규모 데이터 수집 수요 증가
- AI 기업들이 침묵 속에 모든 웹 콘텐츠를 긁어가며, 트래픽 과부하 유발
- 일반 웹마스터와 서버 운영자들은 크롤러에 시달리고 있으나, 누가 그 크롤러를 운영하는지 모르는 경우가 많음
봇넷의 새로운 형태: SDK를 통한 사용자 감염
- 일부 기업은 앱 개발자들에게 'SDK 삽입 대가'로 금전 제공
- 해당 SDK를 포함한 앱을 설치한 일반 사용자는 모르게 그들의 트래픽을 AI 크롤러용으로 사용 당함
- 이러한 SDK는 iOS, Android, MacOS, Windows 앱에 삽입 가능
대표 사례: Infatica
- 웹사이트: https://infatica.io
- 개발자 대상 설명 페이지에 "사용자의 네트워크를 통해 크롤링 가능"하다고 홍보
- 수백만 개의 회전형(residential/mobile) IP를 제공한다고 주장
왜 이것이 문제인가?
- Infatica와 같은 기업은, 자신의 고객(크롤링 목적 AI 기업 등)이 어떤 명령을 실행하는지 감시한다고 주장하지만, 실질적으로 책임 회피 구조
- Trend Micro의 2023년 리포트에서도 유사 사례 확인됨
- 일부는 공짜 소프트웨어에 SDK를 은밀히 심어 배포, 사용자 동의 없이 설치
피해: 개인 사용자와 소규모 서버 모두
- 앱 개발자: 금전적 유혹에 SDK 포함 → 사실상 악성코드 유포자
- 사용자: 내 기기와 네트워크가 웹 크롤링 및 DDoS에 사용됨
- 서버 운영자: 나도 모르게 과도한 요청을 받는 대상이 됨
- 예: 글쓴이의
Forgejo
인스턴스도 봇 트래픽 과다로 비공개 전환
- 예: 글쓴이의
'주거용 프록시'라는 포장
- 사용자 기기를 거점으로 활용한 프록시를 "residential IP" 라 부름
- Proxy 서비스 리뷰 사이트 예시:
https://proxyway.com/reviews - 표면상은 '합법적인 인프라'처럼 보이나, 실제로는 무단 전파·프록시화 구조
결론: 웹 크롤링은 이제 남용 수준
- 글쓴이는 모든 형태의 웹 크롤링을 악의적 행위로 간주해야 한다고 주장
- 웹 크롤러들이 웹의 토대를 공격하고 있다고 봄
- AI가 이 구조의 핵심 동인이며, 이것이 ‘합법적’이라는 주장에 강하게 반발
제언 및 문제의식
- SDK를 포함한 앱 개발자들은 책임져야 함
- Apple, Google, Microsoft 등 플랫폼 운영사들이 이 시장을 제재해야 함
- 일반 사용자가 이를 식별하거나 차단하는 건 거의 불가능
- 웹 운영자들은 크롤러를 기술적으로 막아보려 하지만 한계 존재
“AI 덕분에 웹은 더 이상 믿을 수 없는 공간이 되어가고 있다. 고맙다, AI.”
– Jan Wildeboer, 2025년 4월
Hacker News 의견
-
앱 개발자가 수익을 위해 3rd party SDK를 포함하는 것은 문제의 일부이며, 사용자에게 악성 소프트웨어를 제공한 책임을 져야 한다고 생각함
- 많은 SDK가 이러한 문제를 가지고 있다고 의심함
- 개인적으로 의존성에 대한 중독을 피하고 직접 개발하는 것을 선호함
- 악의적인 행위자들이 현대 개발자의 의존성 중독을 이용해 함정을 설치함
-
iOS, Android, MacOS, Windows에서 앱 개발자에게 라이브러리를 포함시켜 사용자 네트워크 대역폭을 판매하는 시장이 존재함
- Cloudflare와 Google이 CAPTCHA를 요구하는 이유와 관련이 있음
- Play Protect, MS Defender, Apple의 안티바이러스가 이러한 악성 소프트웨어를 탐지하지 않는 것이 이해되지 않음
- SDK 라이브러리가 사용자의 기기를 봇넷의 일부로 만드는 것은 트로이 목마의 명백한 예시임
-
웹의 문제는 데이터가 읽기 가능하게 유지되기 위해 특정 시스템 관리자가 서버를 유지해야 한다는 것임
- 콘텐츠 주소 모델을 사용하면 고유성 제약을 없앨 수 있음
- AI 스크래퍼들이 데이터를 서로 공유하고 원본 소스에 부담을 주지 않음
-
네트워크 공유 소프트웨어는 원치 않는 애플리케이션으로 분류되어야 함
- 사용자가 설치하고 싶었던 것에 함께 설치되어 자원을 남용함
- Wireshark를 사용해 의심스러운 활동을 확인하고 싶음
- 이러한 행동을 하는 앱의 공개 저장소가 필요함
-
악성 소프트웨어를 포함한 앱을 즉시 격리해야 함
- 직접적인 피해를 주지 않더라도 악성 소프트웨어임
-
웹 스크래핑은 남용으로 간주되어야 하며 웹 서버는 이를 차단해야 함
- Youtube와 같은 플랫폼은 이에 동의할 가능성이 높음
-
이러한 라이브러리를 사용하는 소프트웨어 목록을 컴파일한 사람이 있는지 궁금함
- 피해야 할 앱을 알 수 있으면 좋겠음
-
주거 IP 프록시는 IP 주소가 자주 변경되는 약점이 있음
- 같은 프록시 제공자로부터 오는 IP는 쉽게 탐지될 수 있음
- 오픈 소스 사기 방지 플랫폼을 개발 중이며, 주거 프록시에서 오는 가짜 사용자 탐지가 사용 사례 중 하나임
-
현재까지 명확한 증거는 없지만, 이러한 행동은 쉽게 탐지될 수 있음
- iOS는 앱의 연결을 확인할 수 있는 기능이 있음
- Android는 이러한 기능이 없지만 pcapdroid와 같은 서드파티 방화벽을 사용할 수 있음
- MacOS는 Little Snitch, Windows는 Fort Firewall을 사용할 수 있음
- 이러한 앱을 사용하는 사람은 많지 않지만, 기기를 봇넷으로 사용하는 앱을 보고할 가능성이 높음
-
Pihole 등에 추가할 수 있는 c&c 서버 목록이 있는지 궁금함