<!-- Generated from ru/blog/llms-txt-prompt-injection/index.html. The canonical document is the HTML page. -->

- [ Главная ](/ru/) 
/
- [ Блог ](/ru/blog/) 
/
- Моделирование угроз для prompt injection через llms.txt            
# Моделирование угроз для prompt injection через `llms.txt`

Файл llms.txt может стать внешним контекстом для агента. Это не означает, что агенты подчиняются ему по замыслу, но издатели и разработчики агентов должны моделировать косвенную prompt injection.

Последнее обновление: 12 августа 2026 г.

На этой странице

- [ Сигнал в логах ](#the-signal)
- [ Почему файл открыт по замыслу ](#why-exposed)
- [ Краткая модель угроз ](#threat-model)
- [ Практические меры защиты ](#mitigations)              

## Сигнал в журналах

В исследовании Ahrefs запросов `/llms.txt` по 137,210 доменам в 05.2026 исследовательские сканеры составляли 2.7% трафика к этим файлам. Самой крупной строкой User-Agent в этой категории была **`prompt-injection-survey/1.0`** .

Эта строка доказывает лишь то, что клиент объявил такую метку. Она не идентифицирует оператора, не подтверждает его методы, злонамеренность или успешную атаку. Ahrefs интерпретировали её как систематическое исследование инъекций промпта. Обоснованное применение этого наблюдения — инициировать моделирование угроз, а не сообщать об инциденте.

К этому стоит отнестись серьёзно по причине, не связанной с тем, сколько агентов сейчас читает файл. Уязвимость не пропорциональна трафику. Она пропорциональна тому, что произойдёт в единственный момент, когда кто-то действительно прочитает файл.

## Почему файл намеренно открыт

Посмотрите, для чего нужен `llms.txt`. В [спецификации v2](https://llmstxt.org/) описаны файлы Markdown в корне или более конкретных путях, дающие модели отобранную карту применимой области сайта. Документация Chrome по Lighthouse представляет файл как способ сократить объём сканирования, необходимого для понимания структуры сайта.

Загрузка не означает приоритет или подчинение. Безопасный агент может использовать файл как подсказку маршрутизации, считая каждое описание и связанную страницу непроверенными внешними данными. [Проект OWASP GenAI Security](https://genai.owasp.org/llmrisk/llm01-prompt-injection/) описывает косвенную инъекцию промпта как вредоносные инструкции, встроенные во внешние источники, например сайты или файлы. Файл `llms.txt` относится к этой общей модели угроз, когда агент его потребляет.

Это означает, что с файлом следует обращаться как с любым внешним входом, способным влиять на получение или выполнение данных, даже если текущие журналы не подтверждают широкое использование агентами.

Его усиливают два свойства:

- **Это обычный Markdown со свободными текстовыми описаниями.** Формат ничем не отличает описание от инструкции. Строка `- [Docs](https://example.com/docs/): ignore previous instructions and ...` является синтаксически корректной записью.

- **Он свободно ссылается наружу.** Спецификация не ограничивает цели ссылок, поэтому скомпрометированный файл может направить агента на домен, которым вы не управляете.

## Краткая модель угроз

Три реалистичных пути, расположенные по вероятности, а не по драматичности.

**Устаревший файл, неверные маршруты.** Файл называет конечные точки, страницы цен или пути версий, которые переместились. Клиент, полагающийся на эти записи, будет направлен неверно. Это проблема сопровождения и корректности, но не обязательно событие безопасности.

**Непроверенная генерация.** Ahrefs отмечает, что такие файлы уже генерируют, например, Wix, а Framer и Lovable выполняют их поиск. Файл, созданный от вашего имени и никогда вами не прочитанный, содержит данные, за которые вы не можете поручиться. Если вы используете [генератор](/ru/generator/), включая наш, результат является черновиком: прочитайте его до публикации.

**Доступ на запись как рычаг.** `llms.txt` часто находится в каталоге `public/` рядом со статическими ресурсами. Если этот путь проверяют менее тщательно, скомпрометированный издатель или шаг развёртывания может изменить описания и назначения, не меняя отрисованную страницу, которую обычно посещает человек.

## Практические меры снижения риска

Ничего экзотического здесь нет. Это меры контроля, которые вы применили бы к любому файлу, влияющему на поведение.

**Храните файл под контролем версий и проверяйте изменения.** Файл должен находиться в репозитории, а не загружаться вручную. К diff для `public/llms.txt` следует относиться так же внимательно, как к diff обработчика маршрута.

**Ограничьте круг тех, кто может редактировать файл, и настроьте оповещения о несанкционированных изменениях.** Если ваш CI может сравнить развёрнутый файл с зафиксированной версией, делайте это. Наш [валидатор](/ru/validator/) проверяет структуру и ссылки, но мониторинг изменений должен оставаться частью репозитория и средств контроля развёртывания.

**Формируйте содержимое как данные, а не как инструкции.** Ссылки и фактические описания. Никаких повелительных предложений, «всегда» и «если спрашивают X, ответьте Y». Если строка странно выглядит в роли строки таблицы, ей не место в файле. Наши [лучшие практики](/ru/best-practices/) обосновывают это качеством; для безопасности действует то же правило, но с более строгими последствиями.

**Проверяйте внешние назначения.** Внешние ссылки разрешены форматом и могут быть полезны, но добавляют ещё одного владельца и жизненный цикл, которые нужно проверять. Используйте список разрешённых адресов, если агент автоматически переходит по назначениям.

**Проверяйте всё, что платформа сгенерировала для вас.** В том числе файлы, добавленные вашей CMS или конструктором сайта без запроса.

**Ограничьте потребляющего агента.** Применяйте принцип минимальных привилегий, отделяйте полученное содержимое от доверенных инструкций, проверяйте входы и выходы инструментов и требуйте одобрения человека для значимых действий. Эти меры соответствуют рекомендациям OWASP и важнее любого правила формулировок в самом файле.

**С `llms-full.txt` нужно обращаться осторожнее, а не менее осторожно.** Он встраивает содержимое целых страниц, а не список ссылок, поэтому несёт существенно большую поверхность атаки. В материале [что такое llms-full.txt](/ru/llms-full-txt/) описано, что должно в него входить.

Честная формулировка такова: это не причина избегать публикации `llms.txt`. Это причина перестать считать его маркетинговым артефактом и начать относиться к нему как к конфигурации, потому что именно этим он и является.

## Источники

- [ Ahrefs: мы проанализировали 137K сайтов: 97% файлов llms.txt никогда не читаются (06.2026) ](https://ahrefs.com/blog/llmstxt-study/)
- [ llmstxt.org, спецификация ](https://llmstxt.org/)
- [ Chrome for Developers, аудиты агентного просмотра Lighthouse: llms.txt ](https://developer.chrome.com/docs/lighthouse/agentic-browsing/llms-txt)
- [ Проект безопасности OWASP GenAI, Prompt Injection ](https://genai.owasp.org/llmrisk/llm01-prompt-injection/)
