Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2025-68664-LangGrinch-PoC — Тестовая среда для выявления и демонстрации уязвимостей десериализации в LangChain Core (версии <0.3.81). Только для образовательных целей. | Kitploit
Инструменты/GitHubGitHub/ak-cybe/cve-2025-68664-langgrinch-poc
Анализ уязвимостейАнализ КодаЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбнаружение СекретовОбучение и ОбразованиеРазработка Полезной НагрузкиБезопасность ИИ
GitHubak-cybe/cve-2025-68664-langgrinch-poc

CVE-2025-68664-LangGrinch-PoC

Тестовая среда для выявления и демонстрации уязвимостей десериализации в LangChain Core (версии <0.3.81). Только для образовательных целей.

Репозиторий
32229 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Header Banner

Typing SVG

Severity Type Codename Status CWE


📑 Содержание

  • 🎯 Исполнительное резюме
  • 📂 Структура проекта
  • 🚀 Быстрый старт
  • 🐛 Глубокое погружение в уязвимость
  • 🔬 Технический анализ первопричины
  • ⚔️ Методология цепочки атак
  • 💀 Арсенал полезных нагрузок (55+)
  • 🎮 Руководство по стратегии оператора
  • 🛡️ Смягчение и защита
  • 📚 Ссылки и благодарности

📂 Структура проекта```

LangGrinch-PoC/ │ ├── README.md # Main documentation & writeup ├── PAYLOADS.md # Complete payload arsenal (55+) ├── langgrinch_fuzzer.py # Python payload generator & tester ├── requirements.txt # Python dependencies └── LICENSE # MIT License

## 🚀 Быстрый старт

### Установка```bash
# Clone the repository
git clone https://github.com/Ak-cybe/LangGrinch-PoC.git
cd LangGrinch-PoC

# Install dependencies
pip install -r requirements.txt

Использование```bash

List all available payloads

python langgrinch_fuzzer.py --list

Show payloads by category

python langgrinch_fuzzer.py --category recon python langgrinch_fuzzer.py --category ssrf python langgrinch_fuzzer.py --category rce

Generate custom secret extraction payload

python langgrinch_fuzzer.py --secret MY_API_KEY

Generate custom SSRF payload

python langgrinch_fuzzer.py --ssrf http://your-webhook.com/

Export all payloads to JSON

python langgrinch_fuzzer.py --export payloads.json

---

<p align="center">
  <img src="https://assets.kitploit.com/production/public/readmes/15055/a59cc259070b0a6930250b423ecf6befeab7fd75694091738ff5f8d2899b56ad.gif" width="200" alt="Гифка хакера"/>
  <img src="https://assets.kitploit.com/production/public/readmes/15055/0751965da24039c9facbe6006461ec38a66ff560b42dc590d1964f43f7f9853d.gif" width="200" alt="Гифка безопасности"/>
  Гифка Матрицы
</p>

---

## 🎯 Краткое резюме

**CVE-2025-68664 (кодовое имя: LangGrinch)** — это критическая **уязвимость внедрения сериализации**, обнаруженная в пакете **LangChain Core Python**. Эта уязвимость позволяет злоумышленникам внедрять вредоносные маркеры `lc` через выходные данные LLM или словари, контролируемые пользователем, что даёт возможность:

1. 🔑 **Извлечения секретов окружения** (ключи API, пароли БД)
2. 🌐 **SSRF-атак** (обращение к внутренним сервисам)
3. 💀 **Удаленного выполнения кода** (через цепочку Jinja2 SSTI)
4. 📂 **Доступа к файловой системе** (чтение конфиденциальных файлов)

<table align="center">
<tr>
<td>

### ⚡ Быстрая статистика

| 🔥 Метрика | 📊 Значение |
|-----------|----------|
| **ID CVE** | CVE-2025-68664 |
| **Кодовое имя** | LangGrinch |
| **Тип атаки** | Внедрение десериализации |
| **Требуется аутентификация** | Нет (внедрение промптов) |
| **Сложность** | НИЗКАЯ |

</td>
<td>

### 🎯 Затронутые версии

| 📌 Свойство | 📝 Значение |
|-------------|----------|
| **Пакет** | langchain-core |
| **Уязвимые версии** | < 0.3.81, >= 1.0.0 < 1.2.5 |
| **Исправленные версии** | 0.3.81+, 1.2.5+ |
| **Воздействие** | Секреты + RCE |
| **CWE** | CWE-502 |

</td>
</tr>
</table>

---

## 🐛 Глубокое погружение в уязвимость

<p align="center">
  <img src="https://assets.kitploit.com/production/public/readmes/15055/fb07ef9946fd69ee29be7a85737fa8b18fa02c8ec40293de8a4994d5e8419a6a.gif" width="300" alt="Баг GIF"/>
</p>

### 📋 Технический обзор

| Свойство | Значение |
|----------|-------|
| 🆔 **ID CVE** | CVE-2025-68664 |
| 🏷️ **Кодовое имя** | LangGrinch |
| 📊 **Серьезность** | КРИТИЧЕСКАЯ 🔴 |
| 🔗 **CWE** | CWE-502 (Десериализация недоверенных данных) |
| 📦 **Затронутый пакет** | `langchain-core` |
| ⚠️ **Уязвимые версии** | `< 0.3.81` AND `>= 1.0.0, < 1.2.5` |
| ✅ **Исправленные версии** | `0.3.81+`, `1.2.5+` |

### 🤖 Что такое LangChain?

LangChain — это популярный фреймворк Python, используемый для создания приложений с **большими языковыми моделями (LLM)**. Он широко распространен в различных отраслях:

| 🏢 Сценарий использования | 📝 Описание |
|-------------|----------------|
| 🤖 **ИИ-чатботы** | Обслуживание клиентов, агенты поддержки |
| 🔍 **RAG-системы** | Генерация с дополнением поиска |
| 🔧 **ИИ-агенты** | Автономное выполнение задач |
| 📊 **Обработка данных** | Анализ документов, суммаризация |
| 🔄 **Автоматизация рабочих процессов** | Конвейеры на основе ИИ |

### 🔧 Техническая первопричина

Внутренний формат сериализации LangChain использует специальный маркер — **ключ `lc`**. Когда словарь содержит ключ `lc`, десериализатор LangChain обрабатывает его как "доверенный сериализованный объект LangChain".

**Ошибка заключается в:**
- Функции `dumps()` / `dumpd()` НЕ экранируют/нейтрализуют ключ `lc` в словарях, контролируемых пользователем/LLM
- При восстановлении через `load()` / `loads()` внедренная структура обрабатывается как **внутренний объект**```
🔓 VULNERABILITY CHAIN:
┌─────────────────────────────────────────────────────────────────┐
│  📝 User/LLM Input → Dictionary with malicious "lc" marker     │
│                           ↓                                     │
│  💾 Application serializes data (dumps/dumpd)                   │
│                           ↓                                     │
│  ⚠️  "lc" key NOT escaped - remains in serialized form          │
│                           ↓                                     │
│  🔄 Later: Data deserialized (load/loads)                       │
│                           ↓                                     │
│  🎯 Deserializer sees "lc" → Treats as LangChain object!        │
│                           ↓                                     │
│  💀 Secret resolution / Object instantiation triggered          │
│                           ↓                                     │
│  💥 SECRETS LEAKED / SSRF / RCE                                 │
└─────────────────────────────────────────────────────────────────┘

🔬 Технический анализ первопричины

🎯 Проблема маркера "lc"

Скачать инструмент