제미나이도 속인 보이지 않는 문자, ASCII 스머글링이란
눈으로 보기에는 평범한 단어지만 단어 사이에 보이지 않는 문자가 들어가면 보안 시스템은 이를 다르게 읽을 수 있다. 최근에는 AI 프롬프트 인젝션을 은폐하는 기법으로 알려진 ‘ASCII 스머글링(ASCII Smuggling)’이 스팸 이메일의 탐지 회피에도 활용되고 있다. 보이지 않는 유니코드 문자를 특정 단어 사이에 삽입해 보안 시스템의 텍스트 분석을 방해하는 방식이다. 눈에 보이지 않는 문자가 어떻게 탐지를 방해하는지, ASCII 스머글링의 원리를 살펴보자.

사람 눈에는 안 보이고 소프트웨어는 읽는 문자
ASCII 스머글링은 화면에 나타나지 않는 유니코드 문자를 이용해 사람이 보는 내용과 소프트웨어가 처리하는 내용 사이에 차이를 만드는 기법이다.
이 기법에서 주로 활용되는 것은 U+E0000부터 U+E007F까지의 유니코드 태그 블록이다. 이 영역은 원래 언어 문자나 텍스트에 언어 정보를 표시하기 위해 만들어졌으며, 인쇄 가능한 ASCII 문자에 대응하는 태그 문자를 포함하고 있다. 하지만 대부분의 글꼴이나 사용자 인터페이스에서는 화면에 표시되지 않는다는 특징이 있다.
태그 문자 자체는 사람의 눈에 보이지 않지만, 원본 텍스트를 처리하는 소프트웨어에는 그대로 남아 있을 수 있다. 이러한 특성은 AI 보안 연구에서 먼저 주목받았다. 웹페이지나 문서, 이메일 등에 태그 문자로 명령을 숨기면 사람은 이를 알아채지 못하지만, 원시 텍스트를 입력 받는 AI 모델은 숨겨진 문자를 처리해 지시로 해석할 수 있기 때문이다.
funding에 보이지 않는 문자를 넣으면?
최근 확인된 이메일 캠페인에서는 같은 문자의 특성이 다른 목적으로 활용됐다. AI에 전달할 명령 전체를 숨기는 대신, 탐지 신호가 될 만한 금융 관련 단어 사이에 보이지 않는 문자를 삽입한 것이다.
예를 들어 ‘funding’이라는 단어 가운데 유니코드 태그 문자 TAG SPACE(U+E0020)을 넣으면 실제 문자 구조는 다음과 같이 달라진다.
fun + [U+E0020] + ding
U+E0020은 화면에 나타나지 않기 때문에 수신자에게는 여전히 funding으로 보인다. 하지만 funding문자열을 그대로 찾는 탐지 방식에서는 중간에 다른 코드 포인트가 들어가면서 일치하지 않을 수 있다. 보이지 않는 문자를 고려하지 않는 정규식 역시 영향을 받을 수 있다.
머신러닝 기반 이메일 분류에서도 비슷한 문제가 생길 수 있다. 일부 시스템은 텍스트를 단어나 하위 단어 형태의 토큰으로 나눈 뒤 분석하는데, 예상하지 못한 문자가 중간에 들어가면 익숙한 토큰이 여러 조각으로 나뉘거나 드문 형태의 토큰으로 처리될 수 있다.
다만 모든 보안 시스템이 이러한 방식에 영향을 받는 것은 아니다. 분석 전에 보이지 않는 문자를 제거하거나 정규화하면 U+E0020이 사라지고 다시 원래 단어인 funding을 기준으로 탐지할 수 있다.
문자만 바뀐 오래된 회피 수법
보이지 않는 문자를 넣어 단어를 분리하는 발상 자체는 새로운 공격 기법이 아니다. 스팸과 피싱에서는 오래전부터 제로 폭 공백(Zero-width Space), 줄바꿈 없는 공백(Non-breaking Space), 소프트 하이픈이나 모양이 비슷한 문자 등을 섞어 단순 문자열 탐지를 방해하는 방법이 사용돼 왔다.
이번 사례에서 눈여겨볼 부분은 기존에 흔히 악용되던 문자가 아니라 AI 보안 연구를 통해 주목받은 유니코드 태그 블록이 이메일 필터 회피에 활용됐다는 점이다. 이 영역의 문자는 정상적인 이메일에서는 거의 나타나지 않기 때문에, 공격자가 탐지를 피하기 위해 삽입한 문자가 오히려 이상 징후를 찾아내는 단서가 될 수도 있다.
엄밀히 말하면 이번 캠페인에서 숨겨진 ASCII 메시지 전체가 태그 문자로 인코딩된 것은 아니다. 특정 단어 안에 ASCII 스머글링에 사용되는 태그 블록의 보이지 않는 문자를 삽입해 문자열 탐지를 방해하는 형태에 가깝다. 하지만 사람이 보는 텍스트와 시스템이 처리하는 텍스트 간 차이를 이용한다는 점에서는 ASCII 스머글링과 같은 특성을 활용한다.
ASCII 스머글링은 모든 탐지를 피할 수 있을까
ASCII 스머글링이 특정 문자열이나 일부 콘텐츠 분석에 영향을 줄 가능성이 있다고 해서 이메일 보안체계를 무조건 우회할 수 있다는 의미는 아니다.
마이크로스프트가 확인한 캠페인에서도 Office 365용 마이크로소프트 디펜더는 전체 메시지의 99% 이상을 태그 문자 자체를 직접 탐지하는 시그니처가 아닌 다른 탐지 계층에서 식별했다. 발신자와 IP, URL 및 도메인 평판을 비롯해 머신러닝 기반 스팸·피싱 분류, 브랜드 사칭 탐지, 인증 검사 등 다양한 신호가 함께 활용됐다.
또한 메시지를 이미지 형태로 랜더링한 뒤 광학문자인식(OCR)을 통해 화면에 보이는 텍스트를 다시 추출해 분석하는 방식도 문자 삽입에 따른 탐지 우회 효과를 줄이는 데 활용할 수 있다.
즉, ASCII 스머글링은 이메일 필터의 특정 처리 방식을 교란시킬 수는 있지만, 여러 신호를 종합적으로 분석하는 다계층 탐지 체계 전체를 무력화하는 만능 우회 수단은 아니다.
- AhnLab콘텐츠마케팅팀