Add Container Security integration to sync_qualys command with --include-containers flag supporting mode-aware issue consolidation (Consolidated vs Per-Asset)
WAS (Web Application Scanning) integration to sync_qualys command with --include-was flag
HTTP Basic Auth for WAS API with pagination and threading support
Mode-aware deduplication (Consolidated vs Per-Asset)
OWASP category mapping and WAS-specific fields (URL, parameter, HTTP method)
31 comprehensive unit tests with 100% pass rate
Uses dateutil for robust datetime parsing
Proper error handling with warnings for unexpected data types and duplicates
QRadar query_events now supports flexible field querying (not just AWS Account ID)
New CLI options: --query-field, --query-value, --time-window-hours for flexible querying
Can now query by username, IP address, or any QRadar field (not just AWS Account ID)
Backward compatible: --account-id still works and maps to AWS Account ID query
Introduced QRadarQueryConfig and ControlAssessmentContext data classes for type safety
Assessment descriptions now generic (e.g., "username: jdoe" instead of hardcoded "AWS Account")
Improved data validation and parameter cohesion
Created constants.py module to centralize configuration constants for better maintainability
Replaced hardcoded strings throughout with named constants (ASSESSMENT_RESULT_PASS, ASSESSMENT_RESULT_FAIL, etc.)
Reduced cognitive complexity from 16 to 5 by extracting helper functions
GCP Security Command Center Integration
Asset Collection: Collects inventory for compute, storage, database, and more.
Findings & Vulnerabilities: Fetches SCC findings, parses for multi-framework mapping, and syncs vulnerabilities.
Compliance Integration: Maps findings to frameworks (NIST, CIS, FedRAMP, PCI-DSS, SOC2) and updates control status.
Evidence Collection: Automates evidence gathering per service.
Fixed
QRadar query_events now creates assessments with descriptive text and properly links evidence to both control-level and SSP-level assessments for complete visibility
Changed QRadar query time window from 24 hours to 8 hours for more accurate recent event assessment
Reduce complexity in Qualys inner_join function by extracting helper functions
Fixed critical KeyError: 'domain' crash affecting all Automation Manager integrations in RegScale
Added defensive config access in APIHandler to prevent KeyError crashes
Implemented JSON validation in decryption flow to handle malformed decrypted config
Irrelevant Audit Manager Status and Evidence Count metadata from issue descriptions during AWS Security Hub integration
Fixed
Fix FedRAMP Appendix A page break content truncation
REG-18979: Fixed Qualys VMDR API URL construction causing XML parsing errors - URLs now include leading slash and trailing slash before query parameters
AWS Security Hub:
Consolidated mode now properly groups findings by plugin_id
AttributeError by standardizing plugin_id naming convention
Remediation URLs removing extra 'securityhub-' prefix that caused broken documentation links
AWS Security Hub: Fixed consolidated mode to properly group findings by GeneratorId instead of unique finding UUID, preventing duplicate issues for the same security control type
CSAM Integration enhancements:
POA&M import functionality for synchronizing CSAM POA&Ms to RegScale Issues
Artifacts import with automatic file downloads and attachments
Points of Contact (POC) mapping to RegScale users
Business continuity and incident response data import
Additional status fields (risk assessment, SSP completion, configuration management)
Agency-defined data items with customizable field mappings