SentinelScan is a modern, full-stack cybersecurity application designed to perform rapid, concurrent reconnaissance on internet-facing domains. It automates the discovery of attack surfaces and leverages Large Language Models (LLMs) to synthesize raw telemetry into actionable, executive-ready vulnerability reports.
This project was built to solve a critical bottleneck in penetration testing: the significant time spent manually correlating raw scanning tool outputs into digestible business risk.
SentinelScan employs a monorepo architecture specifically optimized for serverless deployment environments (Vercel).
- Framework: FastAPI
- The Challenge: Traditional scanning tools are synchronous and slow. A modern web dashboard requires near-instantaneous feedback.
- The Solution: Engineered a custom Python reconnaissance engine utilizing
asyncioandaiohttp. Instead of blocking on HTTP probes. The engine fires hundreds of concurrent networking checks. - Micro-Scanners Implemented:
- DNS & Subdomain Enumeration: Fetches Certificate Transparency logs and resolves targets.
- Async Port Scanning: Non-blocking TCP connection tests against common exposed services (SSH, FTP, RDP, MySQL).
- Endpoint Fuzzing: Heuristic checking of 60+ sensitive paths (e.g.,
/.env,/.git/config,/backup.sql).
- The Challenge: LLM generation wait times lead to poor User Experience on the frontend.
- The Solution: Implemented Server-Sent Events (SSE). The FastAPI backend orchestrates prompt engineering to contextualize the raw JSON telemetry, streams the response from the LLM, and passes it directly to the client UI as it generates, mapping findings to OWASP Top 10.
- Stack: React, TypeScript, Next.js, Tailwind CSS, shadcn/ui.
- Design: Engineered a highly responsive "Cyber Dark" UI that provides intuitive error handling, loading states, and dynamic Markdown rendering for the final AI report.
- Database: Supabase (PostgreSQL).
- Features: Stores raw scan JSON and final AI reports, enabling persistent, shareable report links without re-running intensive scans.
- Full-Stack Development: Bridging a modern React/TypeScript frontend with an asynchronous Python/FastAPI backend.
- Systems Design: Designing a stateless backend capable of running complex, long-running reconnaissance tasks within Vercel's serverless function timeout limits.
- Cybersecurity Engineering: Applied knowledge of offensive security techniques (reconnaissance, fuzzing) and defensive standards (OWASP, CWE mappings).
- AI Integration: Effectively utilizing LLM APIs for data synthesis and formatting via streaming protocols (SSE).
- Node.js (v18+)
- Python (v3.9+)
- Git
git clone https://github.com/YOUR_USERNAME/SentinelScan.git
cd SentinelScan
# Install Frontend Dependencies
npm install
# Install Backend Dependencies
pip install -r requirements.txtCreate a file named .env.local in the root directory and configure your keys:
# Supabase Database Links
NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_anon_key
SUPABASE_SERVICE_ROLE_KEY=your_service_role_key
# OpenRouter (LLM) Interface
OPENROUTER_API_KEY=your_openrouter_api_key
OPENROUTER_MODEL=arcee-ai/trinity-large-preview:freenpm run devOpen http://localhost:3000 in your browser.
⚠️ Disclaimer: This tool is for educational purposes and ethical testing only. Only scan domains you own or have explicit authorization to test.
Built by Daniyal Rashid, a software engineer passionate about intersecting cybersecurity with robust full-stack development.