🛡️ ExecSentry — Arbitrary Binary Execution Vulnerability Scanner.
ExecSentry is a professional-grade, rule-based security scanner designed to detect Arbitrary Binary Execution (ABE) vulnerabilities in: Web applications, Backend microservices, Local software components, CI/CD pipelines, Plugin-based systems, Script runners and scheduled tasks
Instagram page
.
Youtube chanel
.
Twitter page
.
Telegram chanel
Unlike anomaly-based or AI-driven security tools, ExecSentry uses purely deterministic, signature-based, and rule-driven analysis—ensuring transparency, reproducibility, and zero false “AI hallucinations.”
ExecSentry detects multiple execution vectors with no ML, no heuristics:
File upload → execution vulnerabilities
Path-based execution (/run?file=…)
Unsafe subprocess calls (system(), popen(), exec())
Unvalidated script runners
Unsafe plugin loading (.dll, .so)
DLL / SO hijacking and path confusion
Untrusted executable search paths
Execution inside CI/CD configs
Cron, job runners, pipeline triggers
Detects upload endpoints
Tests execution behavior with benign stub files
Scans API endpoints for execution-related parameter names
Identifies response patterns suggesting execution
Scans for plugin directories
Identifies untrusted binary load paths
Detects scripts or binaries executed from user-controlled locations
ExecSentry uses stub binaries, dummy scripts, and no real executable code, ensuring safe, non-malicious testing.
Supports scanning:
Dockerfile
gitlab-ci.yml, github/workflows/*.yml
Makefile
package.json scripts
crontab
Custom config formats
ExecSentry detects execution instructions referencing external or untrusted user-controlled files.
Exports results to:
JSON
TXT
Console summaries
Each finding includes:
Type of vulnerability
Severity
Evidence
Attack path
Recommended fix
Simple and powerful:
execsentry --url http://target.com --output report.json
execsentry --scan-local /var/www/app
execsentry --scan-configs config/
- Clone the Repository
git clone https://github.com/errorfiathck/execsentry
cd execsentry
- Install dependencies
pip install -r requirements.txt
Scan a Web Application
python3 execsentry.py --url http://localhost:5005
Scan Local Filesystem
python3 execsentry.py --scan-local ./myproject
Scan Configuration Files Only
python3 execsentry.py --scan-configs ./configs
Full Scan (Recommended)
python3 execsentry.py --url http://localhost:5005 --scan-local . --scan-configs .
Output to JSON + TXT
python3 execsentry.py --url http://localhost:5005 --out-json report.json --out-txt report.txt
execsentry/
│
├── execsentry.py # CLI entry point
├── core/
│ ├── http_scanner.py # Upload & execution vector detection
│ ├── fs_scanner.py # Local filesystem + plugin path scanning
│ ├── config_scanner.py # CI/CD & config analysis
│ ├── rules.py # Rule definitions
│ ├── reporter.py # JSON/TXT reporting
│ └── logger.py # Logging system
│
├── examples/
│ └── vulnerable_app.py # Intentionally vulnerable Flask app
│
└── README.md
ExecSentry uses explicit rule signatures such as:
Detect upload endpoints by scanning form fields and routes
Upload harmless stub binary
If server attempts execution → Vulnerable
Scan for routes containing keywords:
run, exec, execute, trigger, load, module, script, process, binary
Query the endpoint with dummy filenames—check for:
Execution error messages
Stack traces
"not executable"
"permission denied executing"
Static code scanning identifies:
os.system()
subprocess.call()
Popen() with unvalidated user input
Detect directories containing .so / .dll that are writable or untrusted.
Parse CI configs for:
run:
- ./file
- custom_binary
or:
steps:
- name: execute
run: user_script.sh
Deterministic detection only
No machine learning
No LLM classification
No exploitation — safe probing only
No malware generation
Full transparency and reproducibility
ExecSentry is built for:
Security researchers
Penetration testers
DevSecOps teams
CI/CD security pipelines
Security education and research
Contributions are welcome!
Feel free to submit:
New rule signatures
Additional config parsers
Plugin path detection improvements
Test cases
Bug fixes
MIT License — Free to use, modify, and distribute.
If you like ExecSentry, consider giving the repo a star ⭐ Your support helps keep the project growing.
