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.40.tar.gz (97.9 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.40-py3-none-any.whl (137.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: detectiq-0.1.40.tar.gz
  • Upload date:
  • Size: 97.9 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.40.tar.gz
Algorithm Hash digest
SHA256 0421da446f42d6fbfe4bc810a29341d72d5358979de2b876dea011518f7001f4
MD5 f9d940849eea431e01bf23bcd90d4e1d
BLAKE2b-256 b7a40d5dc21a0fc562e34312c55621331a9aaa9b1cef64d959f8e5e532c4b374

See more details on using hashes here.

File details

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

File metadata

  • Download URL: detectiq-0.1.40-py3-none-any.whl
  • Upload date:
  • Size: 137.9 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.40-py3-none-any.whl
Algorithm Hash digest
SHA256 c083a07d69ee0474743c40861a1e60c6567acba50a8a250d2e9942edc5dd6faa
MD5 457f0545f6add96a5429f2fe29225ef3
BLAKE2b-256 a48fed0e186474b5b38c455cb6616cf80a08e8cf77d1929b21192115615dc39a

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