Skip to content

Latest commit

 

History

History
106 lines (60 loc) · 6.55 KB

File metadata and controls

106 lines (60 loc) · 6.55 KB
graph LR
    Session_Orchestrator["Session Orchestrator"]
    Fuzzing_Loop_Controller["Fuzzing Loop Controller"]
    Data_Transmission_Module["Data Transmission Module"]
    Target_Management_Module["Target Management Module"]
    Error_Fault_Handling_Module["Error & Fault Handling Module"]
    External_Monitoring_Integration["External Monitoring Integration"]
    Session_State_Persistence["Session State Persistence"]
    Web_Interface_Management["Web Interface Management"]
    Session_Orchestrator -- "initiates and controls" --> Fuzzing_Loop_Controller
    Session_Orchestrator -- "interacts with" --> Session_State_Persistence
    Session_Orchestrator -- "manages" --> Web_Interface_Management
    Fuzzing_Loop_Controller -- "calls" --> Data_Transmission_Module
    Fuzzing_Loop_Controller -- "calls" --> Target_Management_Module
    Fuzzing_Loop_Controller -- "calls" --> Error_Fault_Handling_Module
    Fuzzing_Loop_Controller -- "calls" --> External_Monitoring_Integration
    Fuzzing_Loop_Controller -- "interacts with" --> Session_State_Persistence
    Error_Fault_Handling_Module -- "calls" --> Target_Management_Module
    External_Monitoring_Integration -- "calls" --> Target_Management_Module
    click Session_Orchestrator href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/sulley/Session_Orchestrator.md" "Details"
Loading

CodeBoardingDemoContact

Details

The sulley.sessions subsystem orchestrates the entire fuzzing process, centered around the Session Orchestrator. This orchestrator initiates and controls the Fuzzing Loop Controller, which is the core execution engine responsible for driving the fuzzing iterations. Within each iteration, the Fuzzing Loop Controller calls upon the Data Transmission Module to send fuzzed data to the target, the Target Management Module to handle SUT restarts, the Error & Fault Handling Module for fault detection and recovery, and the External Monitoring Integration for real-time feedback. The Session Orchestrator also manages the Web Interface Management for user interaction and interacts with Session State Persistence to save and load fuzzing progress. Both Error & Fault Handling Module and External Monitoring Integration can trigger actions on the Target Management Module for recovery or state management. This structure ensures a robust and manageable fuzzing campaign, with clear separation of concerns between high-level session management, core fuzzing execution, and specialized operational modules.

Session Orchestrator [Expand]

The high-level orchestrator for fuzzing sessions. It manages the overall state, initializes the fuzzing environment, handles session entry/resumption, and coordinates the main fuzzing loop.

Related Classes/Methods:

Fuzzing Loop Controller

Drives the main fuzzing loop, coordinating test case progression, fuzzed data transmission, target restarts, and integrating error handling and monitoring. It is the core execution engine of the fuzzing process.

Related Classes/Methods:

Data Transmission Module

Handles the actual transmission of generated fuzzed data to the System Under Test (SUT). This component is critical for delivering the test cases to the target.

Related Classes/Methods:

Target Management Module

Manages the resetting and recovery of the target system during fuzzing. This includes restarting the SUT to ensure a clean state for subsequent test cases or after a detected fault.

Related Classes/Methods:

Error & Fault Handling Module

Provides centralized error management and response during the fuzzing process. It detects and processes faults or unexpected behaviors from the SUT, often triggering recovery actions.

Related Classes/Methods:

External Monitoring Integration

Facilitates communication with external monitoring and instrumentation agents (e.g., via PED-RPC). This component is responsible for gathering real-time feedback and crash detection from the SUT.

Related Classes/Methods:

Session State Persistence

Manages the persistence of fuzzing progress and session state to a file, and conversely, loads previous session states. This allows for fuzzing campaigns to be paused and resumed.

Related Classes/Methods:

Web Interface Management

Initializes and manages the web interface components, providing a real-time dashboard and control mechanisms for the fuzzing process.

Related Classes/Methods: