ZeroTool Workbench

제로 폭 문자 감지기

제로 폭 문자, BOM, 양방향 제어 문자, 태그 문자 등 비가시 Unicode 감지 및 제거. ChatGPT 수정 기록, Trojan-Source 검출. 100% 클라이언트 실행.

100% 클라이언트 사이드 데이터가 브라우저 밖으로 나가지 않습니다 무료 · 회원가입 불필요
샘플:
보이지 않는 문자가 감지되지 않았습니다.
 
제거 범위:

제로 폭 문자 감지기 개요

제로 폭 문자 감지기는 텍스트에서 화면에 표시되지 않는 Unicode 문자를 찾아 하이라이트 처리하고 제거하는 도구입니다. 복사-붙여넣기 오염, AI 생성 텍스트의 숨겨진 메타데이터, 공급망 공격 시도를 조사할 때 사용합니다.

텍스트를 붙여넣으면 모든 비가시 문자가 색상으로 구분되어 표시되며, 문자 종류별로 통계를 제공합니다. 한 번의 클릭으로 모든 비가시 문자를 제거하거나, 특정 범주(제로 폭만, 양방향만, 태그만)만 선택적으로 정제할 수 있습니다.

감지 범위

  • 제로 폭 공백(ZWSP, U+200B) — 너비가 없는 공백, 복사-붙여넣기 추적에 사용
  • 제로 폭 비결합자(ZWNJ, U+200C) — 문자 결합을 방지하며 주로 아랍어·힌디 텍스트 처리
  • 제로 폭 결합자(ZWJ, U+200D) — 문자 결합을 강제하며 이모지 변형 제어
  • 바이트 순서 표시(BOM, U+FEFF) — UTF-8/UTF-16 파일의 바이트 순서 마커, 대부분 불필요
  • Word Joiner(U+2060) — 제로 폭이지만 줄 바꿈을 방지하는 특수 공백
  • 양방향 제어 문자(U+200E, U+200F, U+202A-E, U+2066-2069) — 텍스트 방향성을 제어하며 Trojan-Source 공격의 핵심 벡터
  • 소프트 하이픈(U+00AD) — 선택적 줄 바꿈 위치 표시, 주로 인쇄 용도
  • 변형 선택자(U+FE00-FE0F, U+E0100-E01EF) — 문자 모양 변형 제어, 이모지와 CJK 문자에서 사용
  • 태그 문자(U+E0000-E007F) — 메타데이터 인코딩 용도, ChatGPT 및 기타 LLM의 숨겨진 워터마크 범위

사용 방법

  1. 도구의 입력창에 텍스트를 붙여넣습니다.
  2. 모든 비가시 문자가 색상 코드로 하이라이트되며, 아래에 감지된 문자의 종류와 개수가 표시됩니다.
  3. 정제 모드를 선택합니다:
    • 모두 제거 — 모든 비가시 문자 삭제
    • 제로 폭만 — ZWSP, ZWNJ, ZWJ, Word Joiner, 소프트 하이픈만 제거
    • 양방향만 — U+200E, U+200F, U+202A-E, U+2066-2069만 제거
    • 태그만 — U+E0000-E007F 태그 문자만 제거
    • 변형만 — 변형 선택자만 제거
  4. 정제 버튼을 클릭하면 선택된 범주의 비가시 문자가 제거됩니다.
  5. 복사로 결과를 클립보드에 복사하거나 .txt 다운로드로 파일을 저장합니다.

주요 시나리오

AI 생성 텍스트 검증

ChatGPT, Claude, Gemini 등의 모델은 탐지 회피 목적으로 생성 텍스트에 태그 문자를 숨기는 것으로 알려져 있습니다. 이 도구로 태그 문자(U+E0000-E007F)를 스캔하면 의도된 워터마크나 숨겨진 수정 기록을 감지할 수 있습니다.

공급망 코드 리뷰

소스 코드에 양방향 제어 문자(특히 U+202E RLO)가 숨겨져 있으면, 렌더링된 코드와 실제 실행 흐름이 달라지는 Trojan-Source 공격이 가능합니다(CVE-2021-42574). Pull Request 검토 시 이 도구로 미리 스캔하면 위험한 문자를 조기에 발견할 수 있습니다.

피싱 메일 조사

정교한 피싱 메일은 제로 폭 문자를 사용하여 표시 주소와 실제 링크를 가릴 수 있습니다. 의심스러운 이메일의 헤더나 본문을 분석하면 숨겨진 문자 조작을 감지할 수 있습니다.

붙여넣기 정리

Word, Google Docs, 블로그 플랫폼에서 복사한 텍스트는 종종 포매팅 유물(제로 폭 공백, 소프트 하이픈)을 포함합니다. 이 도구로 한 번에 정제하면 깔끔한 평문을 얻을 수 있습니다.

텍스트 누출 조사

특정 조직이 배포하는 민감한 문서(NDA, 기술 사양)에는 추적 목적으로 제로 폭 공백이 삽입되기도 합니다. 수신자가 누출자를 특정할 수 없도록 제거하기 위해 사용할 수 있습니다.

클라이언트 사이드 이유

이 도구는 순전히 클라이언트 사이드에서 실행되므로 다음과 같은 이점이 있습니다:

  • 개인정보 보호 — 민감한 코드, 비밀번호, 개인정보가 포함된 텍스트를 안전하게 분석할 수 있습니다. 텍스트는 브라우저를 벗어나지 않습니다.
  • Trojan-Source 샘플 안전 — CVE-2021-42574 공격 샘플(양방향 제어 문자)을 포함한 코드를 로컬에서 안전하게 검사할 수 있으며, 악의적 실행 위험이 없습니다.
  • 오프라인 사용 — 인터넷 연결이 없어도 도구를 사용할 수 있습니다.
  • 성능 — 네트워크 요청이 없어 즉각적인 결과를 얻습니다.

관련 도구

FAQ

비가시 문자(invisible character)란 무엇인가요?

비가시 문자는 화면에 표시되지 않지만 텍스트에 포함된 Unicode 문자입니다. 제로 폭 간격(U+200B), 바이트 순서 표시(U+FEFF), 양방향 제어(U+202E 등), 태그 문자(U+E0000~U+E007F), 변형 선택자(U+FE00~U+FE0F) 등이 있습니다. 이들은 텍스트 렌더링을 방해하거나 공급망 공격에 사용될 수 있습니다.

일반 텍스트에 비가시 문자가 왜 포함될까요?

주요 원인은 다음과 같습니다: 리치 에디터(Word, Google Docs)에서 복사한 텍스트의 포맷팅 유물, AI 생성 텍스트의 숨겨진 워터마크 또는 수정 기록(예: OpenAI 모델), 디바이스 간 텍스트 공유 중 인코딩 오류, 폰트 렌더링 보조 문자, Trojan-Source 공격(의도적 삽입).

ChatGPT나 AI 워터마크를 감지하나요?

네. 태그 문자 범위(U+E0000~U+E007F)를 포함하여 감지합니다. OpenAI, Anthropic, Google 등 여러 LLM이 생성 텍스트에 비가시 워터마크를 시도했습니다. 다만 각 모델의 워터마크 방식은 계속 진화하므로, 이 도구는 알려진 비가시 Unicode 카테고리 전체를 기반으로 합니다.

데이터가 서버로 전송되나요?

아니요. 모든 감지 및 정제 작업은 JavaScript로 브라우저에서 완전히 실행됩니다. 텍스트는 어떤 서버에도 전송되지 않습니다. 민감한 코드, 개인정보, 비밀 정보를 안전하게 분석할 수 있습니다.

Trojan-Source 공격(CVE-2021-42574)을 감지하나요?

네. 핵심 공격 벡터인 양방향 오버라이드(U+202E), 우측에서 좌측 표시(U+202D), 우측에서 좌측 임베드(U+202B) 등 모든 양방향 제어 문자를 감지합니다. 소스 코드 리뷰 시 코드의 시각적 흐름과 실제 실행 흐름이 달라지는 상황을 방지합니다.