AI-assisted security testing framework with SAST, DAST, business logic testing, Active Directory, OSINT, and FP reduction
Project description
AIPTX is a security testing framework that uses LLMs to assist with vulnerability scanning, analysis, and reporting. It integrates with common security tools and provides SAST, DAST, and business logic testing capabilities.
What It Does
- Scan Orchestration — Coordinates multiple security tools (nuclei, nikto, sqlmap, etc.)
- LLM-Assisted Analysis — Uses AI to help analyze findings and suggest attack paths
- SAST — Static analysis for Python, JavaScript, Java, and Go with 90+ security rules
- DAST — Dynamic testing with WebSocket, SPA, and GraphQL scanner support
- Business Logic Testing — 29 test patterns for race conditions, IDOR, price manipulation
- CI/CD Integration — SARIF output for GitHub Security tab, PR blocking support
- Reporting — HTML and JSON reports with findings
What It Doesn't Do
- It's not fully autonomous — requires configuration and human judgment
- It won't replace manual penetration testing
- AI suggestions need verification before acting on them
- Enterprise scanner integration (Acunetix, Burp, Nessus) requires separate licenses
Installation
# Basic installation
pip install aiptx
# With SPA/WebSocket testing (requires playwright)
pip install aiptx[modern]
# Full installation
pip install aiptx[full]
Setup
# Configure LLM API key and preferences
aiptx setup
# Verify configuration
aiptx status
Usage
# Basic scan
aiptx scan example.com
# Quick scan (skip enterprise scanners)
aiptx scan example.com --quick
# With AI assistance
aiptx scan example.com --ai
# SAST analysis on local code
aiptx scan ./my-project --sast
# Output SARIF for CI/CD
aiptx scan example.com --format sarif --output results.sarif
# Fail CI if high severity findings
aiptx scan example.com --format sarif --fail-on-severity high
v4.0 Features
SAST (Static Analysis)
- Python, JavaScript/TypeScript, Java, Go support
- 90+ security rules (SQL injection, XSS, command injection, secrets)
- GitHub repository scanning
Modern App Testing
- WebSocket Scanner — Injection testing, CSWSH, replay attacks
- SPA Scanner — Browser-based testing with Playwright, DOM XSS detection
- GraphQL Scanner — Mutations, subscriptions, complexity attacks, schema analysis
Business Logic Testing
- Race conditions (double-spend, TOCTOU)
- Price/amount manipulation
- Workflow bypass
- Access control (IDOR, privilege escalation)
- Rate limit bypass
CI/CD Integration
- SARIF 2.1.0 output for GitHub Code Scanning
- GitHub Action available
- Exit codes based on finding severity
Configuration
LLM Provider
AIPTX uses LiteLLM and supports multiple providers:
# Anthropic (recommended)
export ANTHROPIC_API_KEY="your-key"
# OpenAI
export OPENAI_API_KEY="your-key"
# Local (Ollama)
export OLLAMA_API_BASE="http://localhost:11434"
export AIPT_LLM__MODEL="ollama/llama3"
Enterprise Scanners (Optional)
Requires separate licenses:
# Acunetix
export ACUNETIX_URL="https://your-acunetix:3443"
export ACUNETIX_API_KEY="your-api-key"
# Burp Suite Enterprise
export BURP_URL="http://your-burp:1337/v0.1/"
export BURP_API_KEY="your-api-key"
GitHub Action
- name: AIPTX Security Scan
run: |
pip install aiptx
aiptx scan . --sast --format sarif --output results.sarif --fail-on-severity high
- name: Upload SARIF
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: results.sarif
Architecture
┌────────────────────────────────────────────────────────────┐
│ AIPTX v4.0 │
├────────────────────────────────────────────────────────────┤
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌──────────────┐ │
│ │ SAST │ │ DAST │ │ Business│ │ GraphQL/ │ │
│ │ Engine │ │ Scanner │ │ Logic │ │ WebSocket │ │
│ └────┬────┘ └────┬────┘ └────┬────┘ └──────┬───────┘ │
│ └────────────┴────────────┴───────────────┘ │
│ │ │
│ ┌──────▼──────┐ │
│ │ Findings │ │
│ │ Repository │ │
│ └──────┬──────┘ │
│ │ │
│ ┌────────────┼────────────┐ │
│ ▼ ▼ ▼ │
│ ┌────────┐ ┌──────────┐ ┌────────┐ │
│ │ HTML │ │ JSON │ │ SARIF │ │
│ │ Report │ │ Export │ │ Output │ │
│ └────────┘ └──────────┘ └────────┘ │
└────────────────────────────────────────────────────────────┘
Output Formats
| Format | Use Case |
|---|---|
--format text |
Terminal output (default) |
--format json |
Programmatic processing |
--format sarif |
GitHub Security tab |
--format html |
Shareable reports |
Integrated Tools
AIPTX can orchestrate these tools (must be installed separately):
| Category | Tools |
|---|---|
| Recon | subfinder, httpx, katana, waybackurls |
| Scanning | nuclei, nikto, ffuf |
| Exploitation | sqlmap, commix |
| Secrets | gitleaks, trufflehog |
Requirements
- Python 3.9+
- LLM API key (Anthropic, OpenAI, or local)
- Optional: Security tools for full scanning
- Optional: Playwright for SPA testing (
pip install aiptx[modern])
Limitations
- AI analysis quality depends on the LLM used
- Some features require additional tools to be installed
- Enterprise scanner integration requires separate licenses
- Business logic tests may produce false positives
- WebSocket/SPA scanning requires
playwright install
License
MIT License — See LICENSE for details.
Links
- PyPI: pypi.org/project/aiptx
- GitHub: github.com/aiptx/aiptx
- Issues: GitHub Issues
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aiptx-5.2.14.tar.gz.
File metadata
- Download URL: aiptx-5.2.14.tar.gz
- Upload date:
- Size: 1.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dd9bfcbd84e4b808e317f79f5c5c9a6ab55892b602ce08c3251e4cf6606a8003
|
|
| MD5 |
8c947d087417c0b07af007eeae1195dd
|
|
| BLAKE2b-256 |
7acf85ac608711e666ff86a23ef31b0811223a7a119b204dd2033f318fa279fb
|
File details
Details for the file aiptx-5.2.14-py3-none-any.whl.
File metadata
- Download URL: aiptx-5.2.14-py3-none-any.whl
- Upload date:
- Size: 1.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1b58d2cf785831746e39b698185c51ea99f2f8997f008d366c927a1cac613e08
|
|
| MD5 |
cd2bcdfc5f60e7c03e8db42584768a43
|
|
| BLAKE2b-256 |
571102e56cfb9d86bb936dde501ebf546ded449fe570fcf89f89da163ec1eb7d
|