Summary: Monitor a target's health and responsiveness over time.
Monitoring with Heartbeat
The heartbeat command is a powerful monitoring utility that continuously checks a target's "vital signs". It runs in the background, collecting data on latency, HTTP status codes, and content changes.
Use Cases
- Establish a Baseline: Run a heartbeat before a scan to understand the target's normal performance.
- Detect Impact: Observe the heartbeat while running an aggressive scan to see if you are degrading the server's performance or triggering a WAF.
- Identify Dynamic Content: See if the page content hash changes over time.
- Discover Load Balancing: See if the resolved IP address changes between requests.
Core Commands
Starting and Stopping
The heartbeat runs as a background thread within pwnity and automatically uses the currently loaded target.
heartbeat start
# Starts monitoring the loaded target with a default random delay.
heartbeat start delaymin 1 delaymax 5 timelimit 300
# Overrides defaults: uses a 1-5s delay and stops after 5 minutes.
heartbeat stop [target_name]
# Stops the heartbeat for the specified or loaded target.
Viewing Data
The show command provides a dashboard view. If the heartbeat is running, the dashboard will update live.
heartbeat show my-webapp
Listing Heartbeats
You can see all running and previously saved heartbeats.
heartbeat list