클릭 한 번으로 반복 업무를 끝내주는 만능 자동화 도구, 셀레니움(Selenium). 같은 기술이 어떤 손에서는 생산성 혁신이 되고, 어떤 손에서는 매크로·크롤링 어뷰징이 됩니다. 도구는 죄가 없다지만, 사용 방식에 따라 완전히 다른 이야기가 되는 이유를 정리했습니다.
셀레니움은 웹 브라우저를 사람 대신 자동으로 조작하게 해주는 오픈소스 라이브러리입니다. 버튼 클릭, 폼 입력, 페이지 이동, 화면 검증까지 코드 몇 줄로 재현할 수 있어 개발자와 QA 엔지니어에게는 사실상 표준 도구로 자리 잡았습니다.
핵심은 WebDriver — 크롬, 파이어폭스 같은 실제 브라우저를 코드로 원격 조종하는 인터페이스입니다. 문제는 이 힘이 “정상적인 사용자처럼 보이는 자동 행동”을 아주 쉽게 만든다는 점이고, 바로 여기서 선의와 악의가 갈립니다.
본래 셀레니움이 만들어진 목적 그대로, 테스트와 반복 업무 자동화에 쓰일 때 진가를 발휘합니다.
배포 때마다 사람이 일일이 클릭해보던 시나리오를 스크립트화해 몇 분 만에 전체 화면을 검증합니다.
정기적으로 같은 사이트에 로그인해 데이터를 내려받는 등 사람이 지루해하는 반복 작업을 대신합니다.
크롬·파이어폭스·엣지 등 여러 브라우저에서 화면이 동일하게 보이는지 자동으로 비교합니다.
이용약관과 robots.txt를 준수하는 선에서, 공개된 정보를 리서치·아카이빙 목적으로 수집합니다.
스크린리더 흐름, 키보드 탐색 등 접근성 요소가 실제로 동작하는지 자동으로 확인합니다.
API가 없는 레거시 사내 시스템을 다른 자동화 도구와 이어주는 브리지 역할을 합니다.
같은 기능이 “정상 사용자처럼 위장하는 데” 쓰이는 순간, 서비스 운영자 입장에서는 심각한 위협이 됩니다. 아래는 실제로 자주 보고되는 악용 유형입니다.
핵심은 이겁니다 — 셀레니움은 실제 브라우저를 움직이기 때문에, 일반적인 API 스팸 요청보다 “사람처럼 보이는 트래픽”을 만들기가 훨씬 쉽습니다. 그래서 탐지가 어렵고, 피해 규모도 커지기 쉽습니다.
완벽한 차단은 없지만, 아래 방법들을 겹겹이 쌓으면 악용 비용을 크게 높일 수 있습니다.
navigator.webdriver 값, 비정상적으로 일정한 마우스 이동, 브라우저 지문(fingerprint) 등 자동화 도구 특유의 흔적을 서버·클라이언트 양쪽에서 확인합니다.
클릭 간격, 페이지 체류 시간, 요청 패턴 등 사람과 봇의 행동 차이를 학습한 모델로 실시간 이상 트래픽을 걸러냅니다.
IP·계정·세션 단위로 요청 빈도를 제한하고, 웹 애플리케이션 방화벽으로 알려진 봇 패턴을 실시간 차단합니다.
의심스러운 요청에만 CAPTCHA나 추가 인증을 요구해, 정상 사용자 경험은 유지하면서 자동화 스크립트의 통과를 어렵게 만듭니다.
크롤링·자동화 금지 조항을 명확히 하고 robots.txt를 정비해, 악용 발생 시 기술적 대응과 별개로 법적 대응 근거를 확보합니다.
봇 탐지는 창과 방패의 싸움입니다. 트래픽 로그를 주기적으로 분석하고 탐지 규칙을 계속 업데이트해야 효과가 유지됩니다.
반대로 셀레니움을 사용하는 개발자 입장이라면, 대상 사이트의 이용약관과 robots.txt를 반드시 확인하고, 과도한 요청 대신 충분한 딜레이를 두며, 가능하다면 공식 API를 우선 사용하는 것이 가장 안전하고 지속 가능한 방법입니다.
셀레니움 자체는 잘못이 없습니다. 다만 이 힘을 어떤 목적으로, 어떤 선을 지키며 쓰느냐가 생산성 도구와 위협 도구를 가르는 유일한 기준입니다.
| 애플 vs 오픈AI, 정면 소송전 시작 | IT 위클리 (2) | 2026.07.12 |
|---|---|
| 조용히 넘어간 임계점: 미국 AI 사용량의 30%가 중국산 | IT 위클리 (1) | 2026.07.12 |
| 1.6조 파라미터의 반란: LongCat-2.0 | IT 위클리 (2) | 2026.07.06 |
| 모델 전쟁에서 인프라 전쟁으로 | IT 위클리 (1) | 2026.07.05 |
| AI 트래픽 급증 시대, 우리 서버는 준비되어 있는가 (1) | 2026.07.05 |