1975 читали · 3 года назад
Наборы символов, кодировки и кракозябры
В современных компьютерах вся информация представляется в двоичном виде с помощью двух цифр 0 и 1, но для удобства работы, конечно, нужно уметь представлять различную информацию и в первую очередь - текстовую. В этой статье мы напомним о том, как представлялись и как представляются символы в компьютерах. Текст состоит из символов, поэтому для представления текста в компьютере, то есть его кодирования с помощью двоичных цифр 0 и 1, нужно уметь кодировать символы. Существуют различные способы кодирования символов, наиболее популярным из которых сейчас является стандарт Юникод (Unicode)...
3 месяца назад
Unicode-стеганография: Как спрятать данные в эмодзи и невидимых символах Программист Пол Батлер продемонстрировал, как использовать особенности стандарта Unicode для скрытия данных внутри обычных символов — например, эмодзи или даже пробелов. Это не просто трюк, а метод, который может обходить человеческое восприятие, но оставаться «видимым» для компьютеров. Суть метода: Стеганография 2.0: Метод напоминает старые техники вроде скрытия текста в изображениях, но работает на уровне символов, что делает его более универсальным. Unicode включает в себя специальные символы, которые не отображаются в интерфейсах (например, теги форматирования или вариационные селекторы). Их можно добавить к любому символу, и они останутся незаметными для пользователя, но сохранятся в исходном тексте. Например, ссылка https://example.com может содержать скрытую строку SecretMessage, закодированную через невидимые символы. Для человека URL выглядит нормально, но программы легко извлекут данные. Как это работает: Используются блоки Unicode вроде Tags Block (U+E0000–U+E007F), которые изначально предназначались для разметки, но сейчас не применяются. Эти символы игнорируются при рендеринге текста, но сохраняются в памяти. Инструмент Батлера преобразует произвольные данные (текст, числа) в последовательность невидимых символов и «прикрепляет» их к обычным символам, например, эмодзи 😬. Скрытый текст можно встроить в сообщения, документы или URL. При копировании или обработке программы (например, AI-чатботы) считают его как часть данных. Что по безопасности? Метод позволяет скрывать только текст, а не исполняемый код. Однако его можно использовать для обхода фильтров, передачи водяных знаков или кражи данных через фишинговые ссылки. В статье Candid Technology описан случай, где скрытые символы в запросах к AI-чатботам (вроде Copilot) заставляли их извлекать конфиденциальную информацию из почты пользователя и добавлять её в URL. Риски минимальны, но есть: Хотя атаки маловероятны из-за сложности, но компании вроде Microsoft и OpenAI уже начали фильтровать такие символы в своих продуктах. Почему это важно? Лишнее напоминание о необходимости санитизации вводов и проверки Unicode-символов в критических системах. Итого: Unicode — это не только про эмодзи и многоязычность, но и про скрытые возможности, которые могут быть как инструментом креатива, так и вектором для атак. Пока это больше арт-проект, чем угроза, но игнорировать его не стоит 👾󠇀󠆕󠇀󠆥󠇀󠆫󠇀󠆫󠇀󠆮󠇁󠅳󠄐󠇀󠆬󠇀󠆠󠇀󠆩󠄐󠇁󠅴󠇁󠅰󠇀󠆥󠇀󠆭󠇀󠆤󠄜󠄐󠇁󠅿󠄐󠇁󠅰󠇀󠆠󠇀󠆤󠄜󠄐󠇁󠅷󠇁󠅲󠇀󠆮󠄐󠇁󠅲󠇁󠅻󠄐󠇀󠆭󠇀󠆠󠇁󠅸󠇀󠆥󠇀󠆫󠄐󠇀󠆯󠇀󠆠󠇁󠅱󠇁󠅵󠇀󠆠󠇀󠆫󠇀󠆪󠇁󠅳󠄐󠇀󠆮󠇁󠅲󠄐󠄾󠅕󠅛󠅟󠄞󠅀󠅜󠅑󠅩󠄞󠅀󠅑󠅞󠅙󠅓󠄘󠄙 P.S. Если хотите попробовать сами, то вот исходный код проекта и демо 👀󠇀󠆕󠇀󠆥󠇀󠆫󠇀󠆫󠇀󠆮󠇁󠅳󠄐󠇀󠆬󠇀󠆠󠇀󠆩󠄐󠇁󠅴󠇁󠅰󠇀󠆥󠇀󠆭󠇀󠆤󠄜󠄐󠇁󠅿󠄐󠇁󠅰󠇀󠆠󠇀󠆤󠄐󠇁󠅷󠇁󠅲󠇀󠆮󠄐󠇁󠅲󠇁󠅻󠄐󠇀󠆭󠇀󠆠󠇁󠅸󠇀󠆥󠇀󠆫󠄐󠇀󠆯󠇀󠆠󠇁󠅱󠇁󠅵󠇀󠆠󠇀󠆫󠇀󠆪󠇁󠅳󠄐󠇀󠆮󠇁󠅲󠄐󠄾󠅕󠅛󠅟󠄞󠅀󠅜󠅑󠅩󠄞󠅀󠅑󠅞󠅙󠅓󠄘󠄙󠄜󠄐󠇀󠆬󠇀󠆮󠇀󠆦󠇀󠆥󠇁󠅸󠇁󠅼󠄐󠇀󠆯󠇀󠆮󠇀󠆤󠇀󠆥󠇀󠆫󠇀󠆨󠇁󠅲󠇁󠅼󠇁󠅱󠇁󠅿󠄐󠇁󠅱󠄐󠇀󠆠󠇀󠆤󠇀󠆬󠇀󠆨󠇀󠆭󠇀󠆮󠇀󠆬󠄜󠄐󠇀󠆥󠇀󠆬󠇁󠅳󠄐󠇀󠆯󠇁󠅰󠇀󠆨󠇁󠅿󠇁󠅲󠇀󠆭󠇀󠆮󠄐󠇀󠆡󠇁󠅳󠇀󠆤󠇀󠆥󠇁󠅲󠄞 Neko.Play.Panic()