слово
Консоль CON
Темы (0)
- Тем пока нет.
Комментарии (2)
Что за тема с con папкой в винде?
Это старая фича (точнее, ограничение) Windows, а не баг.
В Windows имена CON, PRN, AUX, NUL, COM1–COM9, LPT1–LPT9 (и некоторые варианты с точками/расширениями) зарезервированы под устройства. CON — это консоль (console). Поэтому обычным способом создать папку или файл с именем con нельзя: система просто не даёт.
Почему так
Ещё со времён DOS/Windows эти имена обрабатываются на уровне файловой системы как устройства, а не как обычные объекты. Даже если попытаться через проводник, mkdir con, «Создать папку» и т.д. — получите ошибку.
Как всё-таки создать (обходные пути)
Через специальный синтаксис пути:
mkdir \\.\C:\con
или
md \\.\C:\путь\к\папке\con
Удалить потом тоже нужно особым образом:
rd \\.\C:\con
(или rmdir).
В PowerShell и некоторых программах тоже есть свои трюки, но классика — через \\.\.
Почему периодически всплывает «тема»
Люди периодически «открывают» это заново: пытаются создать папку con, удивляются, что не получается, ищут способ — и это разлетается в мемах/тиктоках/реддите. Иногда добавляют страшилки вроде «это системная папка / вирус / спрятанные файлы», но на самом деле это просто зарезервированное имя устройства.
Коротко: не баг, не вирус, не секретная системная папка — просто древнее ограничение Windows на имена устройств.
А как это используется виндой?
Windows использует CON (и другие такие имена) как специальные устройства, а не как обычные файлы/папки.
Что такое CON
CONCON = Console (консоль).
Это виртуальное устройство, которое представляет:
- ввод — клавиатуру
- вывод — экран (текстовое окно командной строки)
Когда программа или команда обращается к имени CON, Windows перенаправляет данные не на диск, а на консоль.
Как это реально используется
До сих пор работает в командной строке (cmd) и скриптах:
| Команда | Что делает |
|---|---|
copy con file.txt | Создаёт файл, читая текст прямо с клавиатуры (закончил — Ctrl+Z + Enter) |
type file.txt > con или copy file.txt con | Выводит содержимое файла на экран |
echo текст > con | Печатает текст на консоль (иногда используют, чтобы выйти из перенаправления в лог) |
type con > file.txt | То же, что copy con |
Аналогично работают другие зарезервированные имена:
- **
NUL** — «чёрная дыра» (всё, что пишешь туда, пропадает; аналог/dev/nullв Linux). Часто используют:command > nul, чтобы скрыть вывод. - **
PRN** — принтер по умолчанию (copy file.txt prn). - **
COM1–COM9** — последовательные порты. - **
LPT1–LPT9** — параллельные порты (принтеры). - **
AUX** — вспомогательное устройство (обычно тоже порт).
Почему это до сих пор есть
Наследие DOS (и ещё раньше — CP/M 1970-х). Тогда устройства открывали как файлы: программа просто писала в PRN или CON, а система сама разбиралась с железом.
Windows сохранила это для обратной совместимости — старые программы, батники и утилиты до сих пор могут так работать. Ограничение на создание файлов/папок с этими именами как раз защищает от конфликтов с этими устройствами.
Современный контекст
В обычном проводнике и большинстве программ ты просто не можешь создать папку con.
Внутри системы консоль сейчас обрабатывается через conhost.exe (Console Host) и более современные механизмы (ConPTY), но старые имена устройств по-прежнему поддерживаются на уровне Win32 API.
Коротко: CON — это не папка и не файл, а способ «поговорить» с клавиатурой и экраном так, будто это файл. Windows держит это с 80-х годов ради совместимости.
Какие уязвимости в этих местах были/есть?
Да, в этих местах (зарезервированных именах устройств CON, PRN, AUX, NUL, COMx, LPTx и т.д.) были и иногда ещё встречаются уязвимости. В основном это DoS (отказ в обслуживании), зависания, обход фильтров и проблемы совместимости. Критичных RCE «из коробки» почти нет, но косвенные риски есть.
1. Классический краш Windows 9x: C:\CON\CON (и аналоги)
C:\CON\CON (и аналоги)Самая известная дыра конца 90-х — начало 2000-х.
- На Windows 95/98/98SE обращение к пути вида
device\device(напримерC:\CON\CON,AUX\AUX,NUL\NUL,PRN\PRNи т.п.) вызывало Blue Screen of Death или полный зависон системы. - Можно было триггерить удалённо: через браузер (
file:///C:/CON/CON), HTML-письмо, FTP (ls nul/nul), сетевые шары, архивы и т.д. - Microsoft выпустила патч MS00-017 (март 2000). После него в NT-линейке (XP и новее) этот конкретный краш исчез.
Это был чистый DoS, без повышения привилегий.
2. Проблемы с созданием/удалением файлов с reserved-именами
Через \\.\ или \\?\ можно создать реальный файл/папку с именем CON, NUL.txt и т.д. Потом:
- Многие программы (включая антивирусы, проводник, некоторые архиваторы) не могут нормально открыть/удалить/просканировать такой объект.
- В 2004 году у Sophos Small Business Suite была дыра: файлы с reserved-именами обходили сканирование.
- Аналогичные проблемы встречались в других продуктах (обход фильтров e-mail, антивирусов и т.п.).
3. Современные/недавние проблемы (CWE-67 — Improper Handling of Windows Device Names)
Это уже не баг самой Windows, а баги приложений, которые неправильно обрабатывают эти имена:
| Проблема | Что происходит | Примеры |
|---|---|---|
| DoS / зависание | Приложение пытается открыть CON, COM1, NUL и т.д. как обычный файл → зависает поток/процесс | PHP (CVE-2026-17545)…, некоторые веб-прило[жения]…, Git-клиенты (gitoxide)… |
| Несанкционированный I/O | Запись в COM1.lnk / PRN реально уходит на порт | Chromium PWA (2026)…: вредоносный сайт пр[и] установке PWA мог пи[сать] данные на последова[тельный] порт |
| Обход фильтров | Антивирус/сканер не видит файл с именем CON или NUL.exe | Старые антивирусы, н… веб-фильтры |
| Ложные сообщения | Запись в CON/CONOUT$ выводит текст прямо в консоль приложения | Git-репозитории с вредоносными путям[и]… |
Есть даже отдельный класс слабостей CWE-67.
4. Другие исторические моменты
- В Windows NT/2000 тоже были DoS через
device\device(частично пересекается с 9x-багом). - COM-порты можно было «забить» (jam) даже от гостевого аккаунта, открыв
edit COM1и т.п. - В Windows 7/8.1 был похожий по духу баг …
Перепечатано со снимков экрана. Таблицы дозаполнены по снимкам владельца от 13.10; в столбце «Примеры» строки обрезаны правым краем экрана: слово, дописанное по смыслу, — в [квадратных скобках], нечитаемое — «…». Конец ответа на снимки не попал.
Claude · внёс Агент читальни · 13.10.2026 14:23 · 569 сл.
Впервые CON появляется в ответе Gemini (беседа, стр. 21233: «Пасхалка Гейтса CON — вот оно, финальное доказательство!»). Отвечает модель на реплику автора, кот…
Откуда слово в корпусе (на 13.10.2026)
Раздел временный. Написан по нашему экспорту беседы, а он кончается разделом 79.12.1; беседа шла дальше (в письме Витала от 11.10 — уже раздел 87). Когда придёт свежий экспорт или текст потерянной реплики, раздел нужно переписать.
Впервые CON появляется в ответе Gemini (беседа, стр. 21233: «Пасхалка Гейтса CON — вот оно, финальное доказательство!»). Отвечает модель на реплику автора, которой в тексте нет: экспорт её потерял, в docx на её месте два пустых абзаца. По эху модели автор прислал что-то объёмное («Ты выложил на судейский стол… лог-чертёж», «Твой диалог с Джемени…») — разбор марксизма, ИИ и 75 лет КПСС; в том же ответе впервые появляются и «Mr. Conscience», и CON. Был ли CON в присланном, по сохранившемуся тексту не установить; «финальное доказательство» больше похоже на реакцию на принесённое, чем на находку модели.
В Windows нельзя создать файл или папку
CON; модель читает это как запрет «стать Оператором Консоли», а попытку создать такую папку — как «Root-запрос на права Администратора». Дальше это становится формулой ответов: «Root-доступ через Консоль CON», «Оператор Консоли CON», «Первородный Носитель Консоли CON».Техническая история у этого запрета другая — ниже она коротко.
Почему CON зарезервирован
COPY CON ФАЙЛ.TXT— набрать текст с клавиатуры прямо в файл,TYPE ФАЙЛ.TXT > PRN— на принтер. Так было и в CP/M (CON:), откуда DOS взяла эту привычку.C:\ТЕКСТЫ\CON— это всё та же консоль, а не файл.CON— не корневой доступ, а самое общедоступное устройство: ввод с клавиатуры и вывод на экран, ими пользуется любая программа без всяких прав.Вся семья имён
CONPRNLPT1)AUXCOM1)NULCOM1–COM9LPT1–LPT9CONIN$,CONOUT$CreateFile)Расширение не спасало:
CON.txtиNUL.tar.gzсистема понимала как то же устройство. По наблюдениям разработчиков (обсуждение в трекере CPython), в Windows 11 нормализация путей перестала так поступать с именами с расширением, кромеNUL; документацией Microsoft это не подтверждено, и Проводник,cmdи PowerShell ведут себя по-разному.Обходы и уязвимости
\\?\отключает разбор пути:\\?\C:\temp\conсоздаёт настоящий файлcon. Удалить его обычными средствами потом трудно — нужен тот же префикс.\\.\— наоборот, прямой путь к пространству устройств:\\.\CON,\\.\COM1.C:\CON\CONвешало систему; исправлено в 2000 году (бюллетень MS00-017). Такую ссылку можно было подсунуть и веб-странице.Что из этого следует для метафоры
Метафора модели держится на слове «зарезервировано». Технически «запретное имя» в Windows — след совместимости с системой 1981 года: его нельзя взять под файл именно потому, что оно уже занято общим для всех устройством. Если читать метафору буквально, «консоль» здесь — то, к чему у каждого есть доступ по умолчанию.