69 lines
2.2 KiB
Markdown
69 lines
2.2 KiB
Markdown
# Detector Module Improvement Plan
|
|
|
|
Command to reread CLAUDE.md: `cat ~/.claude/CLAUDE.md`
|
|
|
|
## Current State
|
|
- Only detects if ports are active/available
|
|
- Has unimplemented `detectType()` method
|
|
|
|
## Proposed Improvements
|
|
|
|
### 1. Implement `detectType()` method
|
|
- Detect service type running on port (HTTP, HTTPS, SSH, FTP, etc.)
|
|
- Use protocol-specific handshakes without external services
|
|
|
|
### 2. Add Network Interface Detection
|
|
- List local network interfaces
|
|
- Get IP addresses, MAC addresses
|
|
- Detect network connectivity status
|
|
|
|
### 3. Add Local DNS Capabilities
|
|
- Resolve hostnames using local DNS
|
|
- Check DNS configuration
|
|
- Detect local DNS servers
|
|
|
|
### 4. Add Protocol Detection
|
|
- HTTP/HTTPS detection with TLS version
|
|
- WebSocket support detection
|
|
- TCP/UDP differentiation
|
|
|
|
### 5. Add Network Diagnostics
|
|
- Ping functionality (ICMP)
|
|
- Traceroute capabilities
|
|
- MTU discovery
|
|
- Network latency measurement
|
|
|
|
### 6. Add Service Fingerprinting
|
|
- Identify common services by banner grabbing
|
|
- Detect service versions locally
|
|
- Support for common protocols (SSH, FTP, SMTP, etc.)
|
|
|
|
### 7. Add Local Network Discovery
|
|
- Discover devices on local network
|
|
- ARP scanning for local subnet
|
|
- mDNS/Bonjour service discovery
|
|
|
|
### 8. Enhance API
|
|
- Add batch checking for multiple URLs/ports
|
|
- Add timeout configuration
|
|
- Add detailed response objects with metadata
|
|
|
|
## Implementation Priority
|
|
1. ✅ Implement `detectType()` - COMPLETED
|
|
2. ✅ Add protocol detection for HTTP/HTTPS - COMPLETED
|
|
3. ✅ Add service fingerprinting - COMPLETED (basic version)
|
|
4. ✅ Create enhanced API with IDetectorResult - COMPLETED
|
|
5. Add network diagnostics - TODO
|
|
6. Add local network discovery - TODO
|
|
7. Add batch operations - TODO
|
|
|
|
## What Was Implemented
|
|
- ✅ `detectType()` method with protocol-specific detection
|
|
- ✅ HTTP/HTTPS detection with proper protocol handling
|
|
- ✅ SSH service detection via banner
|
|
- ✅ Service fingerprinting for common protocols (FTP, SMTP, MySQL, etc.)
|
|
- ✅ IDetectorResult interface for detailed responses
|
|
- ✅ IDetectorOptions for configuration
|
|
- ✅ Backward compatibility with `isActiveSimple()` method
|
|
- ✅ Banner grabbing for unknown services
|
|
- ✅ Tests for new functionality - IMPROVED with comprehensive test suite (19 tests) |