AI-Powered Dynamic Application Security Testing (DAST) -- part of the MEDUSA security platform
Project description
STRYX
AI-Powered Dynamic Application Security Testing (DAST)
STRYX is a developer-first, AI-assisted DAST engine that crawls, maps, and tests the live attack surface of web applications. It discovers hidden endpoints, simulates real attacker behavior, and detects exploitable vulnerabilities with minimal false positives. Every finding carries full evidence (request, response, status code, payload, confidence score) -- no heuristic-only results.
Design philosophy: high signal, low noise.
How It Fits Into MEDUSA
- Remy -- SAST, analyzes source code pre-deployment.
- STRYX -- DAST, validates a running application's live attack surface and exploitability.
- MEDUSA -- Aggregates findings from both, correlates static and runtime issues, estimates business impact, provides centralized security management.
Architecture
CLI -> Configuration -> Attack Orchestrator -> { Endpoint Discovery }
|
Authentication Engine
Authorization Engine
Injection Engine
API Fuzzer
AI Attack Planner
Evidence Collector
Report Generator
|
Target Application
Installation
# From PyPI
pip install stryx
# From source
git clone https://github.com/Medusa-Security/stryx.git
cd stryx
pip install -e .
Quickstart
# Run a full scan
stryx scan http://localhost:8000
# Output:
# STRYX Scan Results
# Target: http://localhost:8000
# Total Findings: 3
# Breakdown: CRITICAL: 1 | HIGH: 1 | MEDIUM: 1
Core Modules
| Module | Purpose |
|---|---|
| Endpoint Discovery | Crawls targets, extracts APIs from OpenAPI/Swagger, sitemaps, JS files, GraphQL |
| Authentication Scanner | Tests missing auth, weak JWTs, session fixation, cookie security |
| Authorization Scanner | Tests IDOR, privilege escalation, admin access, multi-tenant escape |
| Injection Engine | SQL, NoSQL, command, SSRF, path traversal, XXE, SSTI, LDAP injection |
| API Fuzzer | Parameter mutation, boundary values, type confusion, nested JSON |
| CORS Scanner | Detects misconfigured CORS policies and origin reflection |
| GraphQL Scanner | Tests introspection exposure, query depth limiting |
| AI Attack Planner | Constructs multi-step attack chains across findings |
| Evidence Engine | Enforces evidence requirements on every finding |
CLI Reference
Commands
| Command | Description |
|---|---|
stryx scan <url> |
Run full security scan |
stryx crawl <url> |
Crawl and discover endpoints |
stryx auth <url> |
Run authentication tests |
stryx fuzz <url> |
Run API fuzzing tests |
stryx report <url> |
Generate reports |
stryx config |
View/update configuration |
stryx providers |
List supported AI providers |
stryx update |
Update STRYX |
Flags
| Flag | Description |
|---|---|
--deep |
Enable deep scanning |
--json <file> |
Output JSON report |
--html <file> |
Output HTML report |
--markdown <file> |
Output Markdown report |
--threads <n> |
Concurrent threads (1-200) |
--timeout <s> |
HTTP timeout in seconds |
--headers <json> |
Custom headers |
--cookies <str> |
Authentication cookies |
--proxy <url> |
HTTP proxy |
--wordlist <file> |
Custom wordlist |
--rate <n> |
Requests per second limit |
Configuration
provider: groq
model: llama-3.3-70b-versatile
threads: 20
timeout: 10
crawl_depth: 5
respect_robots: false
ai_attack_planning: true
modules:
auth: true
authorization: true
injection: true
fuzzing: true
Supported AI providers: Groq, OpenAI, Anthropic, OpenRouter, Ollama, XAI, NVIDIA NIM.
Sample Report
+--------------------------------------------------------------------+
| STRYX Scan Results |
| Target: http://localhost:8000 |
| Total Findings: 3 |
| Breakdown: CRITICAL: 1 | HIGH: 1 | MEDIUM: 1 |
+--------------------------------------------------------------------+
[#] [CRITICAL] Unauthenticated access to /admin
Endpoint: http://localhost:8000/admin
CWE: CWE-306 | Scanner: auth
Confidence: 70%
Evidence: GET http://localhost:8000/admin -> 200
Roadmap
v0.1 (this build)
- HTTP crawler
- Endpoint discovery
- Authentication scanning
- Authorization testing
- Basic injection testing
- JSON/HTML reports
v0.5
- Browser automation
- GraphQL support
- Multi-threaded fuzzing
- AI attack planning
- Custom payloads
- Plugin SDK
v1.0
- Autonomous attack chaining
- Headless browser exploitation
- CI/CD integration
- Distributed scanning
- Cloud dashboards (MEDUSA integration)
- AI-powered exploit reasoning
Contributing
See CONTRIBUTING.md for guidelines.
Security Policy
See SECURITY.md for reporting vulnerabilities in STRYX itself.
License
Apache License 2.0. See LICENSE.
Author
Built by Akhilesh Varma (ak495867) under Medusa Security.
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 stryx_cli-0.1.1.tar.gz.
File metadata
- Download URL: stryx_cli-0.1.1.tar.gz
- Upload date:
- Size: 95.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5cade1d83a09989c4f6dd3429106fd55c0fc1145cd2dd3b23bb238c443698f03
|
|
| MD5 |
6cd5b291a6db7ab2b63f520454b37d33
|
|
| BLAKE2b-256 |
843776013b2ecaf3bfabc07ae78bb564fa3239f9ac3488901fcd45e76faf378c
|
File details
Details for the file stryx_cli-0.1.1-py3-none-any.whl.
File metadata
- Download URL: stryx_cli-0.1.1-py3-none-any.whl
- Upload date:
- Size: 112.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e501bbfaf28382acd30590960704e8eb02457a134802c5f039d76143b4c8eb6d
|
|
| MD5 |
bb58bfdfa8e86e36d4ed9bfdbeeb555f
|
|
| BLAKE2b-256 |
6bb874594057ae925d9e1195d10dc823a293fbe9246645269344cc9792f3c473
|