Files
litterbox/CHANGELOG.md
T

275 lines
11 KiB
Markdown
Raw Normal View History

2025-01-25 14:03:44 -08:00
# Changelog
All notable changes to this project will be documented in this file.
## [v5.0.0] - 2026-04-28
### Added
2026-04-29 01:46:09 -07:00
- Tailored downloadable report for driver samples (BYOVD section + BYOVD Potential hero)
- `/api/results/<target>/risk` endpoint and matching `grumpycat.get_risk_assessment()` client method
- `GrumpyCats/install_mcp.py` — installer for six MCP clients with auto-detected venv Python
- Command-line arguments input on the dynamic-analysis warning modal (pre-populated from last run)
2026-04-29 03:40:59 -07:00
- RedEdr now captures Microsoft-Windows-Kernel-File / -Network / -Audit-API-Calls / Antimalware-Engine ETW events; new tabs surface File Ops / Network / Audit API / Defender with Process Tree panel and ETW Provider Diagnostics
- Defender threat verdicts at runtime contribute +50 to the Detection Score (only verdicts; scan activity stays descriptive)
2026-04-27 06:46:39 -07:00
### Changed
2026-04-29 01:46:09 -07:00
- Backend split into Flask blueprints, services, and a `utils/` package; subprocess analyzers consolidated under `BaseSubprocessAnalyzer`
- Frontend split into per-tool ES6 modules with shared utils; reusable Jinja macros for scanner tables
- Full UI redesign on a terminal/IDE shell with new `.lb-*` design tokens and JetBrains Mono throughout
- Tailwind upgraded to v4 via the standalone CLI binary (committed `tailwind.min.css` ~10× smaller)
- Self-contained downloadable report — Tailwind CDN dropped, CSS inlined, logo embedded
- Stringnalyzer block in the report now renders every non-empty IOC bucket as a full code block (16 categories, 100-item cap)
- `LitterBoxMCP.py` full rewrite onto modern FastMCP (async tools, stderr logging, `Annotated[..., Field(...)]` params, four focused OPSEC prompts)
- `grumpycat.py` dispatch-table CLI and parallel `get_comprehensive_results`
- UI terminology reframed for operator-first reading: Detection Score, Triggering Indicators, Sensitive Imports, Signature triggered, Critical Imports, Payload Analysis
- Color palette softened across the app — severity tokens shifted -500 → -400, summary risk badges converted from solid bg to outlined chips, heavy rgba alphas tightened
- Analysis-type cards now show explicit `Run X Scan →` CTAs with stronger hover state
2026-04-29 03:40:59 -07:00
- RedEdr launch line is now `--etw --show --with-antimalwareengine --with-defendertrace --trace ...` (replaces broken `-e --trace` which RedEdr's cxxopts schema didn't recognize)
- Payload now fires as soon as RedEdr signals ETW-providers-attached (1-3s typical) instead of a fixed 15s sleep
- Module-load timeline deduplicates PEB-snapshot DLLs against ETW image_loads; kernel device paths stripped to basenames
- ETW timestamps shown as `HH:MM:SS.mmm` (FILETIME → local time) instead of raw 64-bit values
- Defender events split into threat / scan / internal categories; the noise table is collapsed by default with a verdict line summarizing what Defender did
2026-04-27 06:46:39 -07:00
### Fixed
- XSS hardening at user-data interpolation sites in results-page renderers
2026-04-29 01:46:09 -07:00
- Detection counts on `/results/<hash>/static` no longer leak dynamic-scope counts
- Per-tool render failures no longer suppress the rest of the rendering
2026-04-29 01:46:09 -07:00
- Office macro upload no longer throws on missing `macroDetectionNotes` element (upstream issue)
- `LitterBoxMCP.py` startup crash — broken import, removed `mcp.serve(...)` API, and stdout-corrupting logging all fixed
2026-04-29 03:40:59 -07:00
- RedEdr parser was reading PascalCase ETW field names (ProcessID, ImageName, ThreadID, etc.) but RedEdr lowercases all field names; Threads / Images / Child Processes / CPU Priority tabs now populate with real data instead of nulls
- Audit-API events now show `OpenProcess` / `OpenThread` (mapped from `etw_event_id`) instead of the placeholder task name `Info`
- RedEdr is now always cleaned up on dynamic-analysis failure paths (early termination, payload crash, analyzer exception); previously left orphaned subprocesses
### Removed
2026-04-29 01:46:09 -07:00
- Pre-redesign Tailwind utility chains and inline cyber-themed `<style>` blocks
- Tailwind CDN runtime dependency from `report.html`
2026-04-29 01:46:09 -07:00
- Dead code in `grumpycat.py` and `LitterBoxMCP.py` (cache, unused imports, exception envelope, lazy client wrapper)
2026-04-29 03:40:59 -07:00
- `etw_wait_time` config key (replaced by event-driven readiness signal)
2026-04-27 06:46:39 -07:00
### Notes
2026-04-29 01:46:09 -07:00
- No new dependencies; setup unchanged
- No public API / endpoint changes; existing JS DOM-ID contracts preserved
2026-04-27 06:46:39 -07:00
2025-09-06 12:33:45 -07:00
## [v4.1.0] - 2025-09-01
### Changed
- Moved YARA rules: `LitterBox.yar` relocated to scanner directory
- Individual rules now in `.\Rules` subdirectory with updated include paths
### Added
- Clickable header section: Logo and title now navigate to home page
2025-09-02 07:36:52 -07:00
## [v4.1.0] - 2025-09-01
### Added
- Docker deployment support for Linux hosts
- Automated Windows 10 container setup with LitterBox installation
- Web viewer and RDP access for containerized environments
- `--ip` parameter to specify custom host IP address
### Fixed
- Missing page title in doppelganger template
2025-05-22 09:22:37 -07:00
2025-08-19 09:40:05 -07:00
## [v4.0.0] - 2025-08-19
### Added
- HolyGrail BYOVD Hunter analyzer with third-party engine integration
- Driver analysis system with dedicated risk scoring for BYOVD exploitation
- Unified risk calculation backend supporting file, process, and driver analysis
- Driver vs payload separation in summary view and routing
- `/holygrail` endpoint for driver upload and analysis
- `/results/{hash}/byovd` endpoint for driver-specific results viewing
- Collapsible sidebar with smooth animations and state persistence
- Enhanced Python client library with HolyGrail analysis support and comprehensive API coverage
- Comprehensive LNK files parser library
### Changed
- Extended binary detection to support Go and Rust runtime analysis
- Enhanced import analysis to separate runtime imports from suspicious imports
- Updated UI styling with color coding for different import types
- Enhanced UI to show LNK analysis details when LNK files are uploaded
- Improved risk calculation to exclude runtime binaries from checksum penalties
- Replaced binary flags with runtime type classification system
- Updated analysis pipeline to distinguish drivers vs. payloads.
2025-08-31 22:12:02 +03:00
-
2025-08-19 09:40:05 -07:00
### Fixed
- Static analysis results scan duration bug
## [v3.3.0] - 2025-08-11
### Fixed
- Corrected PE import hint display for Go binaries
- Reduced false positives in Go binary detection
- Avoided mislabeling unrelated imports as `Go runtime`
- Skipped checksum penalties for Go binaries
### Changed
- Go binary checksums now shown as informational with explanation
- Backend/API updated with `is_go_binary` flag
2025-05-29 06:20:10 -07:00
## [v3.2.0] - 2025-05-29
### Changed
- Major code refactoring for improved efficiency and maintainability
- Eliminated code duplication across routes, utilities, analysis manager, and Python client
- Centralized common functionality with helper classes (RouteHelpers, FileTypeDetector, SecurityAnalyzer, RiskCalculator)
- Enhanced error handling with consistent patterns and unified validation methods
- Restructured AnalysisManager with focused methods and specialized validation
- Refactored Python client removing duplicate implementations and adding helper methods
### Fixed
- Report generation bug for PID-based analysis missing process_output attribute
2025-05-22 09:22:37 -07:00
## [v3.1.0] - 2025-05-22
### Added
- Implemented API endpoints for HTML report generation and retrieval
- Added report generation functionality to Utils class
- Introduced comprehensive HTML report template system
- Extended Python client library with report management capabilities
2025-05-20 13:56:56 -07:00
## [v3.0.1] - 2025-05-16
### Added
2025-05-22 09:22:37 -07:00
- Implemented PE file suspicious import classification using MalApi.io database
- Developed comprehensive analyzer implementation documentation
2025-05-20 13:56:56 -07:00
### Changed
2025-05-22 09:22:37 -07:00
- Enhanced README structure and content
- Improved suspicious import visualization in file upload interface
- Restructured directory organization for better maintainability
2025-05-20 13:56:56 -07:00
2025-05-16 07:26:48 -07:00
## [v3.0.0] - 2025-05-16
### Added
- Python Clients to interact with LitterBox Server
2025-05-22 09:22:37 -07:00
* `grumpycat.py` - Standalone command-line client for direct server interaction
* `LitterBoxMCP.py` - MCP server interface for LitterBox Server communication
2025-05-16 07:26:48 -07:00
2025-05-09 08:37:34 -07:00
## [v2.5.2] - 2025-05-09
### Fixed
- Clinet Side: removed hard-coded size limit
- Removed file-type detection based on extension
### Added
- File-type detection based on magic bytes
2025-04-24 09:53:34 -07:00
## [v2.5.1] - 2025-04-24
### Fixed
- Cleanup method bug fixed FuzzyDB delete
- README Update
- Bug Fixed: size limit
### Changed
- Yara Analyzer support YARA Forge format
### Added
- YARA Forge Extended set
2025-02-16 14:52:10 -08:00
## [v2.5.0] - 2025-02-16
### Added
- New FuzzyHash analyzer (ssdeep)
- FuzzyHash database with open-source tools
- Doppelganger endpoint providing a unified interface for both Blender and FuzzyHash
- New configuration section for Doppelganger
2025-02-16 15:33:43 -08:00
- Application version
2025-02-16 14:52:10 -08:00
### Fixed
- Relocated all Blender code to the Doppelganger section
- Enhanced cleanup method
- Improved folder structure and creation process
- Enhanced error handelig on Blender analyzer client side
2025-02-16 15:33:43 -08:00
- base.html template disaply app version
2025-02-16 14:52:10 -08:00
2025-05-09 08:37:34 -07:00
2025-02-07 15:55:46 -08:00
## [v2.0.0] - 2025-02-08
### Added
- New BlenderAnalyzer implementation with Moneta, HSB, and HollowsHunter integration
- Blender endpoint for system scanning and payload comparison
- New Dynamic Analyzer HollowsHunter
### Fixed
- Scanners output parsing improvements
2025-01-28 12:27:40 +02:00
## [v1.6.1] - 2025-01-27
2025-01-27 07:02:05 -08:00
### Added
- Captured and displayed payload output for better analysis.
- Enhanced the Stringnalyzer scanner with improved functionality.
### Changed
- Summary section now includes Stringnalyzer & Payload output results.
- Improved HTML and JavaScript code for analysis results.
2025-01-28 07:14:06 -08:00
- Renamed the 'upload' section in the YAML config file to 'util'.
2025-01-27 07:02:05 -08:00
### Fixed
- Resolved missing IOC issue in Moneta.
2025-01-28 03:18:20 -08:00
- Multiple bug fixes in summary section
2025-01-27 07:02:05 -08:00
2025-05-09 08:37:34 -07:00
2025-01-26 12:56:03 -08:00
## [v1.6.0] - 2025-01-26
### Added
- New Static analyzer Stringnalyzer implementation
### Fixed
- Refactoring health check implementation to use configuration file settings
2025-01-27 07:02:05 -08:00
2025-01-25 14:03:44 -08:00
## [v1.5.1] - 2025-01-25
### Added
- Support for executing payloads with custom command-line arguments
- Increased default payload size limit to 100MB
- Configurable payload initialization timeout settings
- New Version for PE-Sieve scanner
### Fixed
- Improved error handling for payloads that terminate before scan completion
- Enhanced UI/UX for clearer error messaging and handling
2025-01-27 07:02:05 -08:00
2025-01-25 14:03:44 -08:00
## [v1.5.0] - 2025-01-11
### Added
2025-01-26 12:56:03 -08:00
- New Dynamic analyzer RedEdr Scanner implementation
2025-01-25 14:03:44 -08:00
- Added LICENSE file
### Changed
- Various code refactoring improvements
### Fixed
- Multiple bug fixes
2025-01-27 07:02:05 -08:00
2025-01-25 14:03:44 -08:00
## [v1.2.1] - 2025-01-06
### Added
- Debug mode enabled
- Small improvements to core functionality
2025-01-27 07:02:05 -08:00
2025-01-25 14:03:44 -08:00
## [v1.2.0] - 2025-01-05
### Added
- API route for results with JSON output (@som3canadian)
- Improved risk calculation system
- Enhanced summary section with better reporting
### Changed
- Documentation improvements
- Updated README with new features and instructions
### Fixed
- Code optimization and cleanup
- Risk calculation refinements
2025-01-27 07:02:05 -08:00
2025-01-25 14:03:44 -08:00
## [v1.0.0] - 2025-01-04
### Added
- Initial release
- Base functionality implementation
- Core scanning features
### Notes
2025-01-28 12:27:40 +02:00
- Repository initialized with basic documentation