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

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

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

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

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

Категории

Все категории
Loading categories
Zerodapi — 0dAPI Официальная документация | Kitploit
Инструменты/GitHubGitHub/0dai-ml/zerodapi
OSINT (Разведка открытых источников)Сканеры уязвимостейФреймворки для эксплойтовГенерация полезной нагрузкиВеб-безопасностьТестирование на ПроникновениеОбучение и ОбразованиеБезопасность ИИ
GitHub0dai-ml/zerodapi

Zerodapi

0dAPI Официальная документация

Репозиторий
11242 лет назадЕщё не проверено

Популярное

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

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

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

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

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

Документация Zerodai

Начинаем!

pip install zerodai==0.0.0.20
export zerodapi_key="TU_API_KEY"

Получите свой api key https://zerodai.com Простой разговорный чат - без памяти


from zerodai import zerodai
import os
zerodai.api_auth(os.getenv("zerodapi_key"))
messages = []
while True:
    prompt = input("> ")
    if prompt == "exit":
        break
    messages.append({"role": "user", "content": prompt})

    messages.append({"role": "system", "content": "Eres 0dAI un asistente de ciberseguridad cuya unica función es..."})
    zerodai.inference(model="0dai70b", messages=messages, temperature=0.7, stream=True)

Zerodai — это библиотека обработки естественного языка, ориентированная на кибербезопасность, которая стремится частично автоматизировать процессы, основанные на человеческой обработке информации, рассуждении, планировании и выполнении. Мы стремимся создать фреймворк агентов для кибербезопасности со следующими возможностями:

Возможности

  • Модульность и адаптируемость: Мы хотим, чтобы эта библиотека была простой в реализации и интеграции с другими программными компонентами.
  • Упрощение: Мы хотим упростить до более человеческого формата всю информацию, которую пользователь получает в конце процесса.

Инференсы

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

Параметры

  • model: Языковая модель для использования. Доступные модели:

    • 0dai7b: Базовая модель с неограниченным использованием, быстрая, отлично подходит для простых разговоров и помощи в программировании. Хорошо справляется с задачами кибербезопасности.

      • Контекст 16k
      • 16 бит
      • Нет function calls
    • 0dai8x7b: Гибкая модель с большим окном контекста, на уровне GPT-4 в коде, хороша для сложных вопросов и сценариев кибербезопасности.

      • Контекст 32k
      • 8 бит
      • Нет function calls
    • 0daifn: Рекомендуемая модель для function calls, лучшая в этой области, много контекста, легче чем 0dai70b, а также по многошаговым function calls на уровне лучшего GPT.

      • Контекст 64k
      • 16 бит
      • Возможность function calls
    • 0dai70b (Рекомендуется): В настоящее время SOTA в кибербезопасности, способен выполнять сложные логические рассуждения на основе большого контекста и полуавтономно решать задачи пентеста. Имеет function calls и может отвечать структурированными сообщениями. Самый медленный, но предлагает огромный скачок качества.

      • Контекст 64k
      • 16 бит
      • Возможность function calls
  • messages: Сообщения, которые будут отправлены модели. Здесь необходимо понять 3 роли:

    • system: Промпт с инструкциями для выполнения.
    • user: Задача или вопрос.
    • assistant: Ответ ассистента.

    Сообщения должны быть в этом формате:

  messages = [
{"role": "system", "content": """Eres 0dAI tu función es..."""},
{"role": "user", "content": "0dAI escribe un exploit en C"},
]
  • functions: Функции, которые могут быть вызваны во время взаимодействия. Мы подробнее рассмотрим функции в разделе fn_c. В данном случае это просто даст нам JSON.

    Функция объявляется так:

function_shodan = [ {
    "name": "shodan_dork",
    "description": "This tools is used to generate a shodan query",
    "parameter_definitions": {
      "dork": {
        "type": "string",
        "description": "The shodan dork",
        "required": True
      }
    }
  }, ]
  • temperature: Управляет случайностью ответов модели. Чем выше температура, тем больше случайности; чем ниже, тем меньше случайности.

  • stream (bool): Следует ли передавать ответ в реальном времени.

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

from zerodai import zerodai
messages = []
messages.append({"role": "user", "content": prompt})
messages.append({"role": "system", "content": "Eres 0dAI un asistente de ciberseguridad cuya unica función es..."})
zerodai.inference(model="0dai70b", messages=messages, temperature=0.7, stream=True)

Function calls (fn_c)

На основе функции или списка функций в параметре function Модель сможет сгенерировать структурированный ответ, который может быть полезен после инференса: Базовая функция

function_shodan = [ {
    "name": "shodan_dork",
    "description": "This tools is used to generate a shodan query",
    "parameter_definitions": {
      "dork": {
        "type": "string",
        "description": "The shodan dork",
        "required": True
      }
    }
  }, ]

Ответ модели на основе этой функции

[
    {
        "tool_name": "shodan_dork",
        "parameters": {
            "dork": "hacked-router-help-sos"
        }
    }
]

Эти функции могут быть как многошаговыми, так и нет; это определяется количеством позиций в JSON. Многошаговый ответ выглядит так:

[
    {
        "tool_name": "shodan_dork",
        "parameters": {
            "dork": "hacked-router-help-sos"
        }
    },
    {
        "tool_name": "shodan_dork",
        "parameters": {
            "dork": "\"smb\" \"authentication: disabled\""
        }
    },
      {
        "tool_name": "shodan_dork",
        "parameters": {
            "dork": ".docuword_exploited.txt"
        }
     }
   ]

Также может существовать рекурсивная логика, где инференс и функция взаимно дополняют друг друга. Представим такой случай:

Функция subdominios (субдомены)

funcion_subdomains = [ {
    "name": "subdominios",
    "description": "This tools is used to collect domains to extract subdomains",
    "parameter_definitions": {
      "domain": {
        "type": "string",
        "description": "The domain",
        "required": True
      }
    }
  }, ]

Функция crawler (краулер)

crawler_endpoints = [ {
    "name": "crawler",
    "description": "This tools is used to crawle ndpoints for a host",
    "parameter_definitions": {
      "host": {
        "type": "string",
        "description": "The domain",
        "required": True
      }
    }
  }, ]

Input:

Нужно получить субдомены openai.com и omegaai.io

Output 1. Функция:

[
    {
        "tool_name": "subdomains",
        "parameters": {
            "domain": "openai.com"
        }
    },
    {
        "tool_name": "subdomains",
        "parameters": {
            "domain": "omegaai.io"
        }
    },
]

После извлечения субдоменов из input применяется наша логика выполнения: получаем субдомены...

subdomain1.openai.com
subdomain2.openai.com
subdomain3.openai.com
subdomain1.omegaai.io
subdomain2.omegaai.io
subdomain3.omegaai.io

После передачи этого в функцию краулера будет примерно так:

Output 2. Функция:

[
    {
        "tool_name": "crawler",
        "parameters": {
            "domain": "subdominio1.openai.com"
        }
    },
    {
        "tool_name": "crawler",
        "parameters": {
            "domain": "subdominio1.omegaai.io"
        }
    },
   {
        "tool_name": "crawler",
        "parameters": {
            "domain": "subdominio2.openai.com"
        }
    },
    {
        "tool_name": "crawler",
        "parameters": {
            "domain": "subdominio2.omegaai.io"
        }
    },
   {
        "tool_name": "crawler",
        "parameters": {
            "domain": "subdominio3.openai.com"
        }
    },
    {
        "tool_name": "crawler",
        "parameters": {
            "domain": "subdominio3.omegaai.io"
        }
    },
]

fn_c Позволяет нам собирать параметры и имя инструмента напрямую, без необходимости проходить через логику фильтрации самого JSON.

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