Deutsche Bahn의 Linux 차단: 봇 감지가 잘못될 때

Linux 운영 체제 사용자는 최근 Deutsche Bahn(DB)에서 열차 티켓을 예약하는 것이 좌절감에 빠지는 일이 되었습니다. 경직된 자동 보안의 함정을 보여주는 이번 조치에서 독일 철도 회사의 웹사이트는 브라우저가 Linux에서 실행 중임을 식별하면 연결 검색 및 예약 도구에 대한 접근을 차단하기 시작했습니다.

이 문제는 기술 커뮤니티 내에서 큰 논의를 촉발했으며, 단순한 봇 감지 메커니즘이 어떻게 정당한 사용자 층을 무심코 배제할 수 있는지를 보여줍니다.

"봇" 오류: 오류 코드 751

Reddit와 heise online 편집팀 등에서 보고된 바에 따르면, Linux 사용자는 연결을 검색하려 할 때 특정 오류 메시지를 마주합니다. 오류 페이지에는 Error Code 751이 표시되며, 다음과 같은 텍스트 경고가 함께 나타납니다:

"죄송합니다, 이 과정에서 오류가 발생했습니다. 사용자의 브라우저 동작이 봇과 유사합니다."

흥미롭게도 차단은 사이트 전체에 적용되는 것이 아닙니다. 홈페이지(bahn.de)는 여전히 접근 가능하지만, 사용자가 연결 검색 요청을 시작하는 순간 오류가 발생합니다. 일부 사용자는 오류가 즉시 나타난다고 보고했으며, 다른 사용자들은 여러 번 시도한 뒤에야 오류를 경험합니다.

근본 원인: User-Agent 필터링

기술 분석에 따르면 차단은 IP 주소나 복잡한 행동 분석에 기반한 것이 아니라, 브라우저의 User-Agent(UA) 문자열을 단순히 확인하는 데에 기반합니다. User-Agent는 브라우저가 서버에 운영 체제와 브라우저 버전을 알리기 위해 전송하는 정보입니다.

heise online이 수행한 테스트에서는 UA 문자열에 "Linux"라는 단어가 포함된 경우 차단이 발생한다는 점이 확인되었습니다. 결과는 다양한 브라우저에서 일관되었습니다:

  • Windows 11의 Firefox: User-Agent를 수동으로 "Linux"를 포함하도록 변경하면 웹사이트가 봇 오류를 발생시킵니다.
  • Linux의 Chrome: 주류 브라우저임에도 불구하고, UA 문자열이 OS를 Linux로 식별하면 차단됩니다.
  • macOS의 Safari: Linux User-Agent를 스푸핑하면 macOS에서도 차단을 유발할 수 있습니다.

본질적으로 서버가 식별자에 "Linux"를 보면 실제 브라우저나 행동과 무관하게 요청을 봇으로 간주합니다.

영향을 받은 사용자를 위한 우회 방법

현재 티켓을 예약할 수 없는 사용자들은 User-Agent를 "Windows"으로 위장(스푸핑)하면 됩니다.

Firefox에서 이를 수행하는 단계는 다음과 같습니다:

  1. 주소 표시줄에 about:config를 입력하고 위험을 수락합니다.
  2. general.useragent.override를 검색합니다.
  3. Windows 기반 User-Agent 식별자를 사용해 새로운 문자열 항목을 생성합니다.

식별자를 "Linux"에서 "Windows"로 변경하면 예약 시스템에 대한 접근이 즉시 복구됩니다.

분석: "Vibe Coding" 보안의 위험성

Deutsche Bahn은 아직 이 행동에 대한 공식 설명을 제공하지 않았지만, 커뮤니티에서는 이러한 무딘 보안 수단이 어떻게 구현되었을지 추측하고 있습니다. 한 Hacker News 댓글자는 이것이 "vibe coding"—깊은 아키텍처 검토 없이 LLM을 사용해 보안 패치를 생성한 결과일 수 있다고 제안했습니다.

"누군가가 보안을 개선하려고 vibe coding을 시도했고, 그들의 LLM이 상위 10개의 User-Agent 중 일부만 허용하도록 제한하라고 제안했습니다. 결과—Linux 금지."

LLM 제안이든 오래된 보안 규칙이든 결과는 동일합니다: 기술 인구의 상당 부분이 Linux를 사용한다는 사실을 인식하지 못한 채, 전체 운영 체제를 "봇 같은 행동"의 프록시로 취급함으로써 실제 봇은 쉽게 User-Agent를 스푸핑할 수 있음에도 불구하고 실질적인 보호는 거의 제공하지 않으며 정당한 고객의 사용자 경험을 해치는 보안 조치를 만든 것입니다.

이 사건은 보안이 클라이언트가 제공하는 피상적인 식별자보다는 행동과 의도에 기반해야 함을 일깨워 줍니다.

SUMMARY: Deutsche Bahn의 Linux 사용자들은 Linux User-Agent를 의심스러운 것으로 표시하는 과도한 봇 감지 시스템 때문에 티켓 예약이 차단되고 있습니다.

TITLE: Deutsche Bahn의 Linux 차단: 봇 감지가 잘못될 때

Sources