피드로 돌아가기
I hid an entire webpage inside a cat face
Dev.toDev.to
Frontend

Unicode Variation Selectors를 이용한 Invisible JS 페이로드 은닉 기술

I hid an entire webpage inside a cat face

gen2026년 5월 18일1advanced

Context

텍스트 기반 통신 채널에서 코드 실행을 위해 가시적인 데이터 전송 없이 로직을 숨겨야 하는 제약 상황 발생. 일반적인 인코딩 방식은 가독성을 해치거나 플랫폼 필터링에 의해 차단되는 한계 존재.

Technical Solution

  • Unicode Variation Selectors(U+FE00–FE0F, U+E0100–E01EF)의 특성을 활용한 데이터 매핑 구조 설계
  • 256 Byte 값과 1:1 대응하는 Unicode VS 시퀀스를 통해 JavaScript 소스코드를 invisible 텍스트로 변환
  • 이모지(=・ω・=) 뒤에 보이지 않는 Unicode 제어 문자를 부착하여 사용자에게는 단순 텍스트로 보이게 구현
  • Slack, X, LINE 등 다양한 플랫폼의 텍스트 복사-붙여넣기 과정에서도 데이터 손실 없이 전달되는 지속성 확보
  • 런타임 시 은닉된 Unicode 시퀀스를 다시 바이트 배열로 복원하여 실행하는 디코딩 로직 적용

1. 플랫폼 간 텍스트 렌더링 표준(Unicode)의 특성을 활용한 데이터 스테가노그래피 가능성 검토

2. 보이지 않는 제어 문자를 통한 XSS(Cross-Site Scripting) 또는 악성 페이로드 유입 경로 보안 점검

3. 텍스트 필터링 시스템 구축 시 단순 문자열 매칭이 아닌 Unicode 정규화 및 제어 문자 분석 단계 포함 여부 확인

원문 읽기