TGViewer
Codeby Codeby @codeby_sec · 37K subscribers
Post #10459 1.12K
Ваш терминал выполняет чужие команды — и вы этого не видите

Представьте: вы читаете логи на скомпрометированном хосте через less, и вдруг заголовок окна tmux меняется, часть вывода пропадает. Запускаете cat -v — а там россыпь ^[[ последовательностей, вшитых в user-agent строки. Кто-то заминировал логи ANSI escape-кодами. Звучит экзотично? На практике это рабочий вектор атаки, который эксплуатируется в дикой природе.

🔎Суть проблемы проста: терминальный эмулятор не различает легитимную и враждебную управляющую последовательность. Всё, что попадает в stdout или stderr, исполняется слепо. Логи, вывод git log, результат kubectl get events, сообщение от wall — любой текст может содержать инъекцию, которая скроет строки, подменит prompt или запишет payload в буфер обмена.

Три реальных CVE показывают масштаб:

CVE-2024-28085 — утилита wall из util-linux фильтровала escape-коды на stdin, но пропускала в аргументах командной строки. Атакующий рисовал фейковый prompt sudo в терминале жертвы, жертва вводила пароль, а он утекал через command-not-found и /proc/*/cmdline. Уязвимость просуществовала 11 лет незамеченной — с 2013 по 2024. Столько про «тысячи глаз» open source.

CVE-2021-25743 — kubectl не нейтрализует escape-коды в сырых данных. Атакующий с правами на создание Events в кластере подменял вывод так, что администратор видел «чистый» результат вместо реального. Принимаешь решения по экрану — а экран врёт.

CVE-2024-52005 (CVSS 7.5 HIGH) — Git при clone, fetch или push выводит sideband-сообщения от удалённого сервера без фильтрации. Атакующий контролирует git-сервер и отправляет произвольные escape-последовательности прямо в терминал разработчика. Никаких подтверждений, никаких предупреждений. Просто git clone — и ваш терминал уже скомпрометирован.

🎇Общий знаменатель всех трёх случаев: разработчики фильтровали escape-коды в одном канале ввода и забывали про другой. Классический CWE-150.

Что делать прямо сейчас? Прогоняйте любой текстовый вывод с чужих машин через xxd или cat -v перед тем, как читать его в интерактивном пейджере. Привычка простая, а спасает от неприятных сюрпризов.

А вы когда-нибудь сталкивались с подозрительным поведением терминала на чужом хосте?

Полный разбор техник — от подмены вывода до атак на LLM-инструменты разработчиков — читайте в статье на форуме.

https://codeby.net/threads/ataki-cherez-escape-posledovatel-nosti-terminala.95588/
  • 👍 3
  • 🔥 3
  • ❤ 2
More from @codeby_sec
  1. Sep 23, 2026Codeby pinned a photo
  2. Sep 23, 2026От теории к реальным задачам: как учат веб-пентесту в Codeby 🚗 Можно знать OWASP Top 10,…
  3. Sep 22, 2026Post #10458
  4. Sep 22, 2026https://youtube.com/shorts/B-JlepDLJP0?feature=share Идеальный курс по ИБ MS SQL, ADCS, AD…
  5. Sep 22, 2026PwnEye PwnEye - это относительно новый инструмент, который пока не получил должного вниман…
  6. Sep 21, 2026377 вакансий в ИБ. И всего 63 резюме. Это не опечатка, это текущий счёт на доске «Карьера…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →