Skip to main content

A detection engineering workbench with LLM capabilities, including SigmaIQ features

Project description

DetectIQ

Python 3.9+ License: LGPL v2.1 Status: Alpha

DetectIQ is an AI-powered security rule management library. It helps create, analyze, and optimize detection rules for various security platforms.

⚠️ IMPORTANT DISCLAIMER This project is a Proof of Concept and under active development. Expect bugs, breaking changes, and incomplete documentation. Not recommended for production use. Use at your own risk.

Quickstart

  1. Clone: git clone https://github.com/AttackIQ/DetectIQ.git && cd DetectIQ
  2. Configure: Copy .env.example to .env and add your API keys (e.g., OPENAI_API_KEY).
  3. Install: poetry install --all-extras (recommended) or pip install .
  4. Explore: See the examples/ directory and the detailed documentation.

Key Features

  • AI-powered rule creation and optimization (OpenAI).
  • Integration with rule repositories (SigmaHQ, YARA-Forge, Snort3).
  • Static analysis of samples (malware, PCAPs) for rule generation context.
  • Multi-platform SIEM query translation.

For more details, see documentation.

Road Map

Key areas of future development include support for custom/local LLMs, more SIEM integrations, and enhanced rule validation. See issues for more.

Using as a Package

Install from PyPI: pip install detectiq

DetectIQ is primarily used as a Python library. For detailed usage patterns and code examples, please refer to the examples/ directory and the main documentation.

Environment Configuration

Configure via environment variables. Copy .env.example to .env and set your API keys. For full details, see the documentation.

Development

This project uses a Makefile for common development tasks.

  • Install development dependencies: poetry install --all-extras (includes dev dependencies if pyproject.toml is configured for it, or use a specific group e.g. poetry install --with dev). Check your Makefile or pyproject.toml for the exact command for dev dependencies.
  • View available commands: make help
  • Format code: make format
  • Run tests: make test

For publishing information, see PUBLISHING.md.

Contributing

  1. Fork the repository.
  2. Create a feature branch.
  3. Commit your changes.
  4. Push to the branch.
  5. Create a Pull Request.

License

This project uses multiple licenses. The core project is licensed under LGPL v2.1. See the LICENSE file and notes on licenses for bundled rule sets within the documentation.

Support & Community

Acknowledgments

  • SigmaHQ Community
  • YARA-Forge Contributors
  • Snort Community
  • OpenAI

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

detectiq-0.1.42.tar.gz (99.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

detectiq-0.1.42-py3-none-any.whl (139.5 kB view details)

Uploaded Python 3

File details

Details for the file detectiq-0.1.42.tar.gz.

File metadata

  • Download URL: detectiq-0.1.42.tar.gz
  • Upload date:
  • Size: 99.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.2 Linux/5.15.167.4-microsoft-standard-WSL2

File hashes

Hashes for detectiq-0.1.42.tar.gz
Algorithm Hash digest
SHA256 a938504aa42554b27f2effc6fd03fe41e00bc0cbf48df0adc879d564fb84dd0f
MD5 5e67b379197e0f8da64886280702c9ec
BLAKE2b-256 cb9cb82fcff912e2b2fb011523204b8b9387aa9cb2e9ee1fe19bf0db76f93c3a

See more details on using hashes here.

File details

Details for the file detectiq-0.1.42-py3-none-any.whl.

File metadata

  • Download URL: detectiq-0.1.42-py3-none-any.whl
  • Upload date:
  • Size: 139.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.2 Linux/5.15.167.4-microsoft-standard-WSL2

File hashes

Hashes for detectiq-0.1.42-py3-none-any.whl
Algorithm Hash digest
SHA256 466607c35c0358687c4a953343730a6dbdc7cd8e2ef16f26d2613c86c07c91c9
MD5 10ed1d1e0b768844a003629a386c3367
BLAKE2b-256 1365e5859f5361e3891b9f579c1a15693e8b60ffeaa03bf0bcea87ca61ea0e28

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page