Перейти к содержимому
-
Subscribe to our newsletter & never miss our best posts. Subscribe Now!
Детский университет

Развитие и обучение детей: практические материалы для родителей и педагогов

Детский университет

Развитие и обучение детей: практические материалы для родителей и педагогов

  • Главная
  • Контакты
  • О проекте
  • Политика конфиденциальности
  • Главная
  • Контакты
  • О проекте
  • Политика конфиденциальности
Закрыть

Поиск

  • https://www.facebook.com/
  • https://twitter.com/
  • https://t.me/
  • https://www.instagram.com/
  • https://youtube.com/
Subscribe
Блог

Исследователь смог превратить «cat readme.txt» в выполнение произвольного кода в iTerm2

3 Минут чтения
0
Исследователь смог превратить «cat readme.txt» в выполнение произвольного кода в iTerm2

Исследователь показал, как он преобразовал команду "cat readme.txt" для выполнения произвольного кода в эмуляторе iTerm2. Он показал, как iTerm2 работает с легитимной функцией, как он использует псевдотерминал (PTY) и что происходит, когда вывод терминала может имитировать одну из сторон протокола этой функции. Команда cat readme.txt в операционных системах Linux, macOS и других Unix-подобных используется для вывода содержимого текстового файла readme.txt на экран или в терминал.

Это вам поможет
  1. Курс "Оторвите школьника от гаджетов"
  2. Онлайн-школа для детей с 1 по 11 класс (ТОП)
  3. Курсы подготовки к ЕГЭ по русскому языку
  4. Посетите учебный день онлайн-школы
  5. Марафон "Как сделать телефона меньше, а оценки лучше"

iTerm2 — это популярный бесплатный эмулятор терминала с открытым исходным кодом для macOS, работающий на macOS 12.4 или новее. Он считается продвинутой заменой стандартному Terminal.app, предлагая разработчикам и системным администраторам улучшенный интерфейс, высокую производительность, разделение экрана, поиск и широкие возможности кастомизации (темы, прозрачность, горячие клавиши). Исследователь отметил, что он сотрудничал с OpenAI в этом проекте. По его словам, iTerm2 имеет функцию интеграции с SSH, которая позволяет лучше понимать удалённые сессии. Для этого он не просто «вслепую вводит команды» в удалённую оболочку, а запускает небольшой вспомогательный скрипт на удалённой стороне, называемый «дирижёром». Примерная модель выглядит следующим образом: iTerm2 запускает интеграцию SSH, обычно через it2ssh; iTerm2 отправляет удалённый скрипт начальной загрузки, «кондуктор», через существующую сессию SSH; скрипт становится одноранговым узлом протокола для iTerm2; iTerm2 и удалённый скрипт обмениваются управляющими последовательностями терминала для координации таких действий, как обнаружение оболочки входа в систему, проверка наличия Python, смена каталогов, загрузка файлов и выполнение команд. Исследователь отмечает, что отдельной сетевой службы нет. Эмулятор терминала, такой как iTerm2, работает как программная версия, отображает экран, принимает ввод с клавиатуры и интерпретирует управляющие последовательности терминала. При этом оболочка и другие программы командной строки по-прежнему ожидают взаимодействия с подобием настоящего терминального устройства. Именно поэтому ОС предоставляет PTY, или псевдотерминал. PTY — это программный аналог старого аппаратного терминала, и он находится между эмулятором терминала и процессом переднего плана. ssh пересылает эти байты на удаленную машину; удалённый контроллер считывает их из стандартного ввода. Таким образом, когда iTerm2 хочет отправить команду удалённому скрипту, он фактически локально записывает байты в PTY. Протокол интеграции SSH использует управляющие последовательности терминала в качестве транспортного протокола. DCS 2000p используется для перехвата SSH-проводника; OSC 135 используется для сообщений проводника до кадра. На уровне исходного кода DCS 2000p заставляет iTerm2 создать экземпляр парсера проводника. Затем парсер принимает сообщения OSC 135, такие как: Таким образом, легитимный удалённый проводник может взаимодействовать с iTerm2 исключительно через вывод терминала. Ошибка заключается в нарушении доверия, когда iTerm2 принимает протокол SSH-проводника из вывода терминала, который на самом деле не исходит от доверенной, реальной сессии. Другими словами, ненадёжный вывод терминала может имитировать удалённого проводника. Это означает, что вредоносный файл, ответ сервера, баннер или MOTD могут вывести: Тогда iTerm2 начнет вести себя так, как будто он находится в процессе реального обмена данными через SSH. Файл эксплойта содержит поддельную стенограмму Conductor. Когда жертва запускает "cat readme.txt", iTerm2 отображает файл, но тот содержит не просто текст, а поддельную строку DCS 2000p, объявляющую о сеансе Conductor, и поддельные сообщения OSC 135, отвечающие на запросы iTerm2. Как только хук принят, iTerm2 запускает свой обычный рабочий процесс Conductor. В исходном коде Conductor.start() немедленно отправляет getshell(), а после успешного выполнения этого вызова отправляет pythonversion(). Таким образом, эксплойту не нужно…

Источник: habr.com — habr.com/ru/news/1027016/

Метки:

произвольного
Автор

admin

Подпишись на меня
Другие статьи
Назад

Устенко нецензурно отреагировал на их с Мироновой прокат произвольного танца в Японии

Чемпионат России 2026, танцы на льду: онлайн-трансляция произвольного танца
Далее

Чемпионат России 2026, танцы на льду: онлайн-трансляция произвольного танца

Нет комментариев! Будьте первым.

Добавить комментарий Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Свежие записи

  • Как организовать онлайн-конференцию для обучения и повышения вовлеченности сотрудников
  • Работа на удаленке: как организовать рабочее место
  • Как организовать книжный клуб: инструкция из 6 шагов для тех, кто хочет читать и общаться
  • «Фишка обалденная!» Кожевников предложил организовать матч России с США или Канадой
  • В России могут организовать платные парковки для СИМ

Свежие комментарии

Нет комментариев для просмотра.

Архивы

  • Ноябрь 2026

Рубрики

  • Блог
Copyright 2026 — Детский университет. All rights reserved. Blogsy WordPress Theme
О проекте  ·  Контакты  ·  Политика конфиденциальности