Hacker News 의견
  • Unicode의 PUA(Private Use Area)는 내부 및 커스텀 용도로 사용되며 외부 시스템에 전달되지 않음

    • 대부분의 시스템과 라이브러리는 이를 그대로 통과시키도록 설계됨
    • 이는 잠재적인 데이터 유출 경로가 될 수 있음
    • 대부분의 개발자는 "국제화 문제를 피하기 위해 항상 Unicode를 사용하라"는 것 외에는 잘 모름
  • Unicode를 악용하는 것은 빙산의 일각에 불과함

    • Unicode 문자열을 수용하는 시스템에서 버퍼 오버플로우를 유발할 수 있음
    • 보통은 오류나 충돌을 일으키지만, 가끔은 예상치 못한 재미있는 결과를 초래할 수 있음
  • 과거 침투 테스트 경험에서 단순한 발음 구별 기호로 백엔드 웹 서버의 버퍼를 오버플로우 시킨 기억이 있음

    • 주로 서버를 충돌시키고 자동 재시작되었지만, 충분히 조작하면 특정 시스템이나 소프트웨어를 악용할 수 있음
  • Sanity는 Content Source Maps를 웹페이지의 실제 텍스트에 인코딩하는 데 이 기술을 사용함

    • 이는 편집자가 텍스트를 클릭하여 콘텐츠 구조를 쉽게 추적할 수 있게 함
    • 날짜, URL, ID 등 구문 분석이 필요한 항목에는 추가하지 않는 것이 좋음
  • LLM 출력 워터마킹에 이 기술을 사용하는 아이디어가 마음에 듦

    • 99%의 복사 붙여넣기 생성기를 쉽게 잡아낼 수 있음
    • 각 문자나 토큰에 얼마나 많은 정보를 삽입할지 궁금함
  • StegCloak은 AES-256-CTR을 통해 숨겨진 페이로드를 암호화하여 이 아이디어를 한 단계 더 발전시킴

  • LLM 출력 워터마킹 외에도 로그 확률 데이터를 패키징하는 데 사용할 수 있음

    • 생성 과정의 투명성을 제공하기 위해 각 토큰에 대한 확률 정보를 포함할 수 있음
    • OpenAI API 사양의 일부이며, 다른 엔진에서도 지원됨
  • 제목이 약간 오해의 소지가 있음

    • 기본 문자는 이모지가 아니어도 되며, 변형 선택자의 처리는 일반 문자와 동일함
    • 이모지와 함께 사용하면 더 재미있음
  • 토크나이저가 이를 잡아냄

  • 이전 직장에서 여러 악용 사례로 인해 사용자 닉네임 및 상태 메시지의 '문자'를 세기 위해 코드 포인터를 사용해야 했음

    • 다른 사용자를 탐색하는 데 9MB를 다운로드하고 싶지 않았음
  • Unicode 태그 문자는 ASCII를 반영하며 UI 요소에서 종종 보이지 않음

    • 일부 LLM은 숨겨진 텍스트를 ASCII로 해석하고 지시를 따르며, 심지어 이를 작성할 수도 있음
  • Microsoft가 Copilot에서 수정한 실제 악용 사례가 있음