Sign In

Access your security dashboard

Required for both sign-in methods — password and Microsoft (Entra ID).

Authorised Use Terms:

  • I will only use this system to scan, test, or assess domains, systems, networks, applications, and environments that I own, control, or have been explicitly authorised to assess.
  • I have obtained explicit written permission and authorisation from the legal owner(s) of any systems, networks, or infrastructure I scan that I do not directly own or control.
  • I will not use this system to conduct any unauthorised scanning, penetration testing, vulnerability assessment, or security testing of any kind.
  • I understand and acknowledge that unauthorised access to computer systems, networks, or data may constitute a criminal offence under applicable laws including, but not limited to, the Criminal Code Act 1995 (Cth) and relevant state and territory legislation.
  • I accept full legal and financial liability for all actions I perform using this system, including any damages, losses, or legal consequences that may arise from my use or misuse of this technology.
  • I will not use this system for any unlawful, malicious, or unauthorised purposes, and I will comply with all applicable laws, regulations, and ethical guidelines.
  • I acknowledge that I am solely responsible for ensuring I have proper authorisation before conducting any security assessments, and that the system provider bears no responsibility for my unauthorised use.
  • I will use this technology responsibly, ethically, and in accordance with industry best practices and professional standards for security testing and assessment.

or
API Base:
Signed in as
—
Active
License Usage —
—
Status Legend
Ready
Data available
Pending
Awaiting data
Loading
Checking status
Status auto-refreshes every 10 seconds

Check 4 Compromise

Examine a Windows or Linux machine for signs of compromise and for weaknesses that could let an attacker in. The collector finds web servers and applications by itself, reads local evidence and executable process memory, and sends only derived observations and hashes over HTTPS for analysis and a downloadable report. No baseline, agent or configuration file is needed.

One assessment costs 1 credit, charged when you create it. Pairing, reruns within 72 hours of pairing, report generation and downloads use that same credit. Run the collector as Administrator or root for full coverage.
Checking signed collector availability…
How to run the assessment
  1. Download and verify the collector. Select this machine's platform above and download the signed collector. On Windows, right-click the file, open Properties › Digital Signatures, select Cyber Automation Pty Ltd and confirm that Details reports the signature is OK. On Linux, also download the signature and the signing public key (on a server without a browser use the curl link above, the same link with .asc appended, and the same site's /downloads/c4c/public-key.gpg), then run:
    gpg --import public-key.gpg
    gpg --verify OverWatchC4C.asc OverWatchC4C
    chmod +x OverWatchC4C
    Continue only if gpg reports a good signature and the primary key fingerprint matches the signing fingerprint shown above (spacing differs; the "not certified with a trusted signature" warning is expected).
  2. Create the assessment with the same platform still selected. Its six-digit pairing code appears in the assessment row below and is valid for five hours. Get pairing code issues a replacement at no extra cost and any earlier code stops working. The code is offered only while the assessment is waiting for its collector. A collector for any supported platform can use it: the assessment takes the platform of the machine that pairs, so the platform selected here only chooses which collector to download.
  3. Assess the same machine again with Run again on its assessment: it creates a new assessment with the same name and platform (1 credit) and shows its pairing code. Earlier runs keep their reports and are listed with it.
  4. Run the collector from the folder that holds it, as Administrator or root:
    cd C:\Users\<you>\Downloads
    .\OverWatchC4C.exe
    sudo ./OverWatchC4C
    At the Six-digit pairing code: prompt type the six digits and press Enter. Nothing else is needed: the OverWatch address is built into the signed collector, and there is no account, password, configuration file or baseline to supply. Use the same account, and the same use of sudo, for every run of an assessment, because the collector keeps its state in that account's profile.
  5. Let it finish. The collector pairs, inspects process memory, discovers services and web roots from service configuration and running processes (IIS, Apache, nginx, Tomcat, Jetty, ASP.NET Core, Node.js and Python applications), runs each compromise check behind a [n/N] progress line, assesses installed software, listeners and security controls, saves the evidence and uploads it. On Linux, collector release 4.9.33 and later inventory every dpkg, rpm, apk and pacman package database present and upload the operating system's own identity files; earlier collectors query only the first package manager they find and do not inventory Alpine's apk. It ends with Evidence received by OverWatch. Your report will appear in Check 4 Compromise. Most hosts take a few minutes. The run, including time spent at the pairing prompt, is capped by --max-duration (default 2 hours); if the cap is reached, the partial evidence collected so far is saved and uploaded in that same run (unfinished checks are marked skipped; collectors before 4.9.27 save it but need the same command run again to upload it). Do not press Ctrl-C: an interrupted run keeps the partial evidence it has, and the rerun uploads that instead of collecting again.
  6. Collect the report. The row moves through received and reporting to complete, when the PDF report button appears (the list refreshes while this tab is open). If it shows report error, use Retry report (at most two retries; if the report is reported as not retryable, contact support and the evidence is kept). Nothing more runs on the machine. Running the collector again starts a new assessment: it says the previous evidence was received and where it is kept, then asks for a new pairing code (press Ctrl-C at the prompt if you did not mean to). Collectors 4.9.31 and earlier instead print Evidence was already received by OverWatch and stop; see Assess the same machine again. Delete permanently removes a complete, failed or cancelled assessment together with its stored evidence and report after an are-you-sure prompt (cancel a running assessment first); it never refunds the credit.
  7. If something goes wrong. pairing code rejected right after the prompt (collectors before 4.9.27 print server returned HTTP 401) means the code was mistyped, expired, replaced by a newer code, already used, issued for another platform, or the assessment was cancelled. The collector accepts one code per run, so get a valid code and run the command again. After Evidence saved:, a message that the assessment was cancelled or that collector access expired means the upload is refused for good and the evidence stays on the machine; create a new assessment and run the collector again, and it starts the new assessment and asks for its code (collectors 4.9.31 and earlier need --new-assessment for that, as their message says; collectors before 4.9.27 print server returned HTTP 401 there too). If the collector stopped before "Evidence received" (network, closed window, restart), run the same command again within 72 hours of pairing; it resumes without a new code or credit. The collector makes outbound HTTPS connections to the OverWatch address only and uses a proxy only from the HTTPS_PROXY environment variable; sudo drops that variable, so pass it explicitly (sudo HTTPS_PROXY=http://proxy:port ./OverWatchC4C), and on Windows set it in the elevated console because the system proxy settings are not used.
  8. Assess the same machine again once its previous evidence was received, or the previous assessment was cancelled or expired: create a new assessment (1 credit) and run the same command. The collector says what became of the previous assessment and which folder keeps its evidence (that evidence is never changed), then starts a new assessment and asks for the new code. If that attempt fails, run the command again and enter a valid code. An assessment whose evidence has not been uploaded yet is always resumed first; run the command again once it ends with "Evidence received". --new-assessment is still accepted but no longer needed. Collectors 4.9.31 and earlier do not start a new assessment by themselves: if the collector prints Evidence was already received by OverWatch and stops, or says to use --new-assessment, run it again with --new-assessment, or download the current collector above.

Options. --webroot followed by an absolute path (repeatable) adds an application folder that discovery cannot find; discovery still runs. --max-duration 4h raises the time limit (1m to 24h). --output-dir chooses where state and evidence are kept; by default that is OverWatch\C4C under the configuration folder of the account the collector runs as (%AppData%\OverWatch\C4C on Windows, $HOME/.config/OverWatch/C4C on Linux, which is /root/.config/OverWatch/C4C under sudo), private to that account, with each assessment's evidence in its own subfolder. --offline collects locally only: no pairing, no upload, no report, and no credit as long as you do not create an assessment. --version prints the collector version; for this dashboard release it should read 4.9.60, matching the signed collector version shown above.

The report separates compromise indicators, configuration weaknesses, vulnerability matches and areas that could not be examined. Collection only reads: it never remediates, has no remote command shell and installs no service. Its only lasting writes are its own state and evidence files in the private output folder, which stay on the machine until you delete them; raw physical-memory analysis also uses a temporary workspace in the system temp folder that is removed afterwards. Because it reads other processes' memory and runs system queries, allow-list the collector in your EDR first or expect alerts. Findings require investigation; an assessment cannot prove a compromised host is clean. You can cancel an assessment until its evidence is received. Cancelling revokes the collector's access, does not refund the credit and does not stop a collector that is already running; its upload is then refused.

Examine an offline disk or memory image

Use this to examine evidence from another machine: a mounted disk image, process memory dumps or a raw physical memory image. Run the collector on a trusted Windows or Linux analysis machine; either can examine Windows or Linux memory dumps, memory images and mounted disk images (a Windows analysis machine needs collector release 4.9.25 or later for mounted disk images; see below). Select the analysis machine's platform above, create one assessment per evidence set (at most five can be waiting or collecting at once), and enter its six-digit code at the prompt as usual. Run as Administrator or root so protected files in the evidence can be read, and give every case its own empty --output-dir outside the evidence. Live checks on the analysis machine are skipped. The report shows the evidence mode, subject operating system and selected paths separately from the analysis machine, whose hostname appears in the assessment row.

Mounted filesystem. Mount the image read-only (the collector cannot verify this) and point --evidence-root at the mounted directory by its absolute real path, with no symbolic links. A drive or filesystem root such as E:\ or / is refused. On a Windows analysis machine, mount the image into an empty NTFS folder (Disk Management's Mount in the following empty NTFS folder, mountvol, or the imaging tool's folder-mount option) and select that folder, typed exactly as Explorer shows it: volume mount points are accepted as the evidence root from collector release 4.9.25. Releases up to 4.9.23 refuse a mount-point folder with evidence root must be a directory; with those, use an ordinary folder that holds an extracted copy of the evidence tree. Directory junctions (mklink /J) and symbolic links are refused on every release; select the real directory instead. The evidence operating system is detected from Windows\System32\config\SYSTEM or etc/os-release (from collector release 4.9.33 also usr/lib/os-release and release files such as etc/redhat-release, so a RHEL or CentOS 6 image is detected as Linux); add --evidence-os windows or --evidence-os linux when neither or both exist, or to override detection. Volumes mounted underneath the root, such as a separate /var or /home, are skipped: examine each as its own assessment with --evidence-os set, and expect path-dependent coverage such as the Debian package database under /var/lib/dpkg to be missing for a volume examined on its own. --webroot and baselines cannot be combined with evidence selection.

sudo ./OverWatchC4C --evidence-root /mnt/evidence --output-dir /var/tmp/c4c-case
.\OverWatchC4C.exe --evidence-root C:\Evidence\image --output-dir C:\C4C\case

Process memory dumps. --memory-dump accepts ELF process cores and Windows user-mode minidumps: up to 16, repeatable, and combinable with --evidence-root. Use full dumps that include memory-protection information; small minidumps yield no executable-memory findings. Kernel crash dumps such as MEMORY.DMP are not process dumps. Keep dumps on a local drive and outside the output directory.

.\OverWatchC4C.exe --memory-dump C:\Evidence\process.dmp --evidence-os windows --output-dir C:\C4C\case

Raw physical memory images. --physical-memory-image (up to 4) needs --evidence-os windows or --evidence-os linux, --volatility-path and --volatility-symbols. The engine path must be the absolute path of the Volatility 3 program file itself: installed system-wide, not a pip --user or pipx shim or symbolic link, on Linux executable and not group- or world-writable, at most 128 MiB, and outside the evidence. The symbol path must be an absolute path to a prepared local symbol directory that is not a symbolic link. Keep images, engine and symbols on a local drive. --volatility-sha256 optionally pins the SHA-256 of that program file only, not the Python interpreter, the volatility3 package or its plugins. Missing or unusable files are refused before pairing, but engine, symbol and dump-format problems appear only as check errors in the evidence and report after the code has been used. Test the exact command first with --offline and a separate output directory, then open the evidence.json it names and confirm that no memory check has status "error"; the console does not list these errors.

Raw images and dumps never leave the analysis machine; the report receives derived findings, hashes, sizes, paths and the engine version. --offline keeps everything local: no pairing, no upload and no report. C4C does not acquire memory, mount disks, unlock encrypted volumes or install drivers. Deleted or unallocated disk areas and unavailable symbols remain reported coverage gaps.

Your assessments

AssessmentStateResults and actions
Open this tab to load assessments.

Managed Domains

View status and generate security reports

IPs already found during domain discovery will be automatically skipped.
Click domain to copy
Domain Discovery Scanner Last Scan Actions
No domains configured

Internal Network

Port-scan, service-fingerprint and CVE-match IP ranges the OverWatch server can reach — internal LAN subnets or your own public addresses (e.g. a BGP-advertised DMZ).

Private and public ranges are both allowed. Loopback, link-local, multicast and other reserved blocks are rejected. A single range is capped at 65,536 addresses (/16).
Recorded against this scan. Each Internal Network scan costs one licence, the same as a domain.
Light-touch active probes — detection-only CVE templates fired at discovered services to upgrade theoretical findings to confirmed. Your click-through consent is recorded for the audit trail.
Permits intrusive exploit templates against known-vulnerable internal hosts. Only enable where you hold authorisation to run destructive testing. Your click-through consent is recorded for the audit trail.
Scan Discovery Scanner Last Scan Actions
No internal network scans yet

PHP2Shell Check

Check any website for PHP2Shell (CVE-2026-109618, CVE-2026-109619) and email the PDF report to any address. A few ordinary, passive web requests; no attack payloads.

The domain name only (no path or port). It must be on the public internet.

Your recent checks

WhenWebsiteReport sent toStateResult
Open this tab to load your checks.

Scheduled Scans

Every scan you have set to repeat — domain and web application — in one place.

Each scheduled run uses 1 license, the same as a rescan. A run is skipped (no license used) if the previous one is still running. You see only your own schedules. Edit a schedule here, pause it, or remove it.

Next 14 days — runs close together are highlighted
Scan Type Frequency Next run Last run Actions

Web Application Pentest

Run an authenticated pentest with a credential, or pick "No credentials" to simulate an external attacker with no access

Must include http:// or https://. The scanner crawls one hop from this URL on the same origin.
Credential is held in memory for the scan only; it is never written to disk and is redacted from the report.
Opens the target in a server-side browser streamed to you. Log in normally (MFA/SSO supported); OverWatch captures the real session (bearer or full cookie jar), checks it works, and fills the fields above — so the scan runs as a genuinely logged-in user.
For SSO / Azure AD apps whose session expires mid-scan: keeps the logged-in browser open on the server and silently re-authenticates through it so a long scan stays logged in. Applies to cookie sessions; harmless for bearer tokens. Turn off to release the browser as soon as the credential is captured.
Tests whether a different user can read this user's data through the same URL — the classic IDOR vulnerability.
Includes active SQL-injection, XSS, command-injection, SSRF (out-of-band confirmed), JWT inspection, OAuth flow checks, mass-assignment, file-upload polyglot, PHP upload execution, webshell indicator checks, GraphQL, web-cache deception, subdomain takeover, and chained-exploit synthesis. PHP upload testing places a temporary restricted marker in discovered upload forms, verifies execution, and attempts removal; any unverified cleanup is reported with the submitted filename. Hidden shells, modified files, and host persistence are not assessed. Untick only when the customer hasn't authorised active probing or the target is too fragile.
Binds this scan to a pre-defined Engagement (see Engagements tab) so the report includes named lead/reviewer attestation, ROE reference, distribution list, TSC + OWASP Top 10 coverage matrices, and the retest/remediation diff.
Pre-flight verifies the URL exists and your token is accepted (not 401/403) before charging 1 license.

What's the difference? The Target URL is the address the scanner probes (e.g. https://api.example.com/v1/me). The Bearer Token is a string the scanner sends in the Authorization header to prove it's logged in as you.

  1. Open the application in Chrome / Firefox / Edge and log in normally.
  2. Open DevTools (F12 or right-click → Inspect) and go to the Network tab.
  3. Trigger an action that fetches data (refresh the page, click a list item, etc.).
  4. Click any request that goes to the API — usually XHR or Fetch.
  5. The Target URL is the request URL shown at the top of the Headers panel.
  6. Scroll to Request Headers → find authorization: Bearer eyJhbGciOi… — copy the part after the word Bearer.
  1. Open the request you usually use to hit your API.
  2. The Target URL is the URL bar at the top of the request.
  3. Go to the Authorization tab. If type is "Bearer Token", copy the value from the Token field. If type is "Inherit auth from parent" or you set it as a header, look in the Headers tab for Authorization.
  4. You only need the token value — strip the word Bearer if it's there.
  1. Open your Swagger UI / API Explorer page.
  2. Click the Authorize button (padlock icon) — paste your token there to log in.
  3. Try any endpoint and click Execute. The cURL preview shows the full request.
  4. The Target URL is the URL in the cURL preview after curl -X GET.
  5. The Bearer Token is the value after -H "Authorization: Bearer …" in the same preview.

If a teammate sent you a working cURL command, you can copy values from it. Example:

curl https://api.example.com/v1/me \
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.abc123…'
  • Target URL: https://api.example.com/v1/me
  • Bearer Token: eyJhbGciOiJIUzI1NiJ9.abc123… (everything after Bearer )

What happens during the scan?

  • We send one HEAD/GET request with your token attached. Anything other than a 401, 403, or 404 means the URL exists and your token was accepted — pre-flight passes.
  • If the token has expired or the URL is wrong, you'll see a specific error and no license is charged.
  • 1 license is consumed only after pre-flight passes.
  • The scanner crawls one hop on the same origin and runs Nuclei vulnerability templates with your token attached.
  • Destructive-looking endpoints (logout, delete, revoke…) are discovered but never actively probed, so the scan won't sign you out or delete data.
  • Your token is held only in memory for the scan and is redacted from the report.
Recent web application pentests
Scan Status Findings Started Actions
No web application pentests yet

SOC 2 Engagements

Customers, testers, and engagement records for audit-ready penetration test reports

Ref Customer Target Environment Window Status Actions
No engagements yet — click "New Engagement" to create one
Engagements package the metadata a SOC 2 auditor expects to see on a pen-test report: the customer, the engagement window, the rules-of-engagement reference, the testers who signed off, the distribution list, and the Trust Service Criteria in scope. Once created, link an engagement to a domain or web-app scan from the corresponding tab — reports for that scan will then include the full SOC 2 procedural wrapper.
Name Legal Name Contact Email Contact Phone Actions
No customers yet — click "New Customer" to create one
Customers are reusable across engagements. Edit a customer once and every engagement using it inherits the updated details. Customers with active engagements cannot be deleted until the engagements are reassigned or removed.
Name Credentials Firm Email Status Actions
No testers yet — click "New Tester" to create one
Testers are reusable across engagements. Credentials update here flow into the Attestation & Sign-off block on every report generated for engagements that list this tester. Testers linked to engagements cannot be deleted; mark them inactive instead.

Change Password

Update your account credentials

Must be at least 10 characters with 3 of: lowercase, uppercase, digits, symbols
Strength: —

User Management

Create, edit, and manage user accounts and licenses

Username Role Auth Licenses Domains Actions
Loading users...

False Positive Hosts

FQDNs excluded from all metrics, statistics, and reports

FQDN Reason Added Actions
Loading...

Activity

Who is signed in, which scans are running or waiting, and a log of sign-ins, failed sign-ins, account changes and scan requests

Right now

Open this tab to load activity.

Activity log kept for 180 days

When Event User From Target Details
Open this tab to load activity.

Free Checks

Requests made on the public PHP2Shell checker at /free: who asked, for which website, the consent recorded with each request, and the result

Status

Open this tab to load free checks.

Requests

When Email Website From State Verdict Actions
Open this tab to load free checks.

Clean up

Deleting a report removes the PDF and the check result and keeps the request and its consent record. Deleting a request removes it completely. The database is compacted afterwards.

Blocks requests from a blocked address, email address or domain are refused

Kind Value Note Added Actions
Open this tab to load blocks.

EavesDrop

Early visibility into mentions of the organisations and identifiers you monitor.

Open this tab to check collection status.

Streams approved intelligence sources through a 50 MB rolling cache. Oldest cached content is removed first; this is not a permanent archive. New monitors can check up to seven days of source history. Threat indicators are keyword clues for human review.

Complete at least one field. Separate multiple entries with commas (up to 10 per field); use country codes for phone numbers. These details are search identifiers, not sign-in credentials or notification destinations.

Your monitors

Findings

Add an identifier to start monitoring.

Vulnerability Feeds

Keys that let a customer's SIEMLess server download this server's vulnerability databases.

Create a feed key

Copy this key now. You won't see it again.
Only a hash is kept on this server, so the key cannot be shown later. If it is lost, revoke it and create a new one. Key for :

Feed keys

Label Customer Key Status Created Expires Last used Downloads (24 h) Limit hits (24 h) Actions
Open this tab to load feed keys.

Blocked addresses after repeated failed key attempts

Address Blocked until Failures Actions
Open this tab to load blocked addresses.

Feed snapshots

Feed Download Database Published Source modified Status
Open this tab to load feed snapshots.

Recent feed activity

When Event Key From Feed Bytes Details
Open this tab to load feed activity.

Vulnerability databases

Connect this installation to OverWatch’s hosted vulnerability databases using the feed key supplied for your organisation. Updates then run automatically.

Checking connection…

EavesDrop and database feeds use separate keys. Existing databases remain available during updates. Failed checks retain the previous version; rate limits are respected.

SIEMLess Mobile Push Services

The relay customers' SIEMLess servers use to send push notifications to the SIEMLess iOS and Android apps. Keys issued here work only for this service, not for Vulnerability Feeds or EavesDrop.

Apple and Google credentials

Open this tab to load the Apple credentials.
Open this tab to load the Google credentials.

Issue a SIEMLess Mobile Push key

Copy this key now. You won't see it again.
Only a hash is kept on this server, so the key cannot be shown later. If it is lost, revoke it and issue a new one. The customer's SIEMLess administrator pastes it under Settings › Mobile push. SIEMLess Mobile Push key for :

SIEMLess Mobile Push keys

Label Customer Key Status Created Expires Last used Messages (24 h) Unregistered (24 h) Limit hits (24 h) Actions
Open this tab to load SIEMLess Mobile Push keys.

Blocked addresses after repeated failed SIEMLess Mobile Push key attempts

Address Blocked until Failures Actions
Open this tab to load blocked addresses.

Recent SIEMLess Mobile Push activity

When Event Key From Messages Details
Open this tab to load SIEMLess Mobile Push activity.

Backup & restore

Download all application settings, accounts, reports and databases in one password-encrypted file. The creating administrator’s username is included automatically. Keep the password separately; it cannot be recovered.

The EavesDrop rolling stream is excluded. Backups cover this application host. Application binaries and the separate TLS edge are excluded; install a compatible version before restoring on another server. Download completed backups promptly; server working copies expire after 24 hours.

Open this tab to view backups.

Restore from a backup

Validate the file first. Restoring replaces current accounts, settings and data, and briefly stops the application. Sign in using an account from the restored backup afterwards. Wait for active scans to finish before creating a backup.

Microsoft sign-in

Let people sign in with their Microsoft work account. A script you run in Azure Cloud Shell creates the Entra app registration for this OverWatch instance, so nothing is set up by hand in the Azure Portal. Run it signed in to your organisation’s directory as an Application Administrator, Cloud Application Administrator or Global Administrator.

Open this tab to check configuration.

1. Create the app in Azure Cloud Shell

Open Azure Cloud Shell

The script creates a single-tenant app with this instance’s /auth/entra/callback redirect URI, approves the openid, profile and email sign-in permissions for your directory and makes a client secret valid for two years. It adds no app roles or groups: who may sign in, and with which role, stays with OverWatch’s user list, matched by each person’s Microsoft sign-in address. If a step fails it removes the app it created. Before the secret expires, Copy new-secret script adds a new one to the same app without interrupting sign-in.

View script

2. Paste what the script printed

It holds the new client secret: paste it here only, then clear your Cloud Shell output. Settings are encrypted on this installation and never shown again. Keep a password administrator available while you test Microsoft sign-in in a private window.