π₯ "Automated Asset Collection System Powered by Asset Breeding Engine"
README | δΈζζζ‘£
Z-Sans is a powerful cybersecurity tool featuring an innovative Asset Breeding Engine that automates attack surface discovery and mapping. Starting with minimal seed assets (domains or URLs), Z-Sans systematically discovers and expands digital assets including domains, IPs, URLs, ports, and JavaScript resources while generating comprehensive asset reports.
- Multi-Asset Support: Domains, IPs, URLs, ports, and JS files
- Configurable Breeding Strategies: Priority-based scanning with depth customization
- Tool Integration: Supports subfinder, naabu, subfinder and other security tools
- Flexible Output Formats: JSON, CSV, GraphML and HTML reports
- Internationalization: Built-in Chinese and English support
- Detailed Logging: Multi-level logging for debugging
- Modular Architecture: Core engine decoupled from tool implementations
- Lightweight Design: Optimized for efficient resource usage
- Asset Breeding Engine: Automatically generates new assets from discovered relationships
Z-Sans/
βββ assets/ # External tool scripts
βββ core/ # Core engine
β βββ breeders/ # Breeding algorithms
β βββ tools/ # Tool integrations
β βββ i18n.py # Internationalization
β βββ output.py # Output handlers
β βββ zsans_engine.py # Breeding engine core
βββ i18n/ # Language resources
βββ output/ # Results directory
βββ templates/ # Report templates
βββ breeding-config.yaml # Configuration
βββ main.py # Entry point
βββ README.md # This documentation (English)
βββ README_CN.md # Chinese documentation
βββ requirements.txt # Dependencies
- Python 3.9+
- Supported OS: Windows, Linux, macOS
- Clone repository:
git clone https://github.com/sansjtw1/Z-Sans.git
cd Z-Sans- Install dependencies:
pip install -r requirements.txt- Configure external tools (Optional):
Edit
breeding-config.yamlto set paths for subfinder, naabu, etc.
Note: Large enterprises with extensive assets may require longer breeding cycles
# Run with domain seed
python main.py -d example.com
# Start from URL seed
python main.py -u https://example.com
# Custom configuration
python main.py -c your-config.yaml -d example.com
# Verbose output
python main.py -d example.com -v
# Custom output directory
python main.py -d example.com -o custom-output-c, --config Config file path (default: breeding-config.yaml)
-d, --domain Add domain seeds (multiple supported)
-u, --url Add URL seeds (multiple supported)
-o, --output Output directory (default: output)
-v, --verbose Verbose output mode
--init Create default configuration
--version Show version info
--depth Set maximum breeding depth
Configuration file breeding-config.yaml includes:
strategy: priority_based # Priority-based asset breedinglanguage:
default_language: en # Default language (en or zh_CN)
supported_languages: # Supported languages
- en
- zh_CN
locale_dir: i18n # Localization directoryasset_scope:
restrict_to_seed_domains: true # Limit to seed domains
restrict_to_seed_ip_ranges: false # Don't limit to seed IPs
include_subdomains: true # Include subdomains
include_ip_ranges: true # Include IP rangesconcurrency:
max_tasks: 20 # Max concurrent processes
tools: # Tool-specific concurrency
subfinder: 2 # Subdomain discovery
naabu: 2 # Port scanning
jsfinder: 2 # JS file discoveryresource_limits:
max_domains: 2000 # Maximum domains
max_ips: 2000 # Maximum IPs
max_urls: 5000 # Maximum URLs
max_ports: 5000 # Maximum ports
max_js: 2000 # Maximum JS filesResults include multiple formats in the output directory:
- JSON asset data
- CSV assets/relationships
- GraphML relationship diagrams
- HTML reports
Important:
- Authorized Use Only
Only operate on explicitly authorized targets - Legal Compliance
Users must comply with all applicable laws - Ethical Operation
Follow responsible disclosure practices - No Liability
Developers assume no liability for damages
We welcome contributions! Please follow these steps:
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Open a pull request
Licensed under MIT - See LICENSE for details.
Email: [email protected]
GitHub: https://github.com/sansjtw1
Telegram: https://t.me/sansjtw