Trackers0
Cookies0
Scripts from elsewhere0
Outside requestsforum

Your toys and checklist progress stay in this browser.

Welcome to catsec's lair!


Hello there, and welcome to the softest corner of infosec!

I made this site because security doesn't have to be gray dashboards and scary hoodies. Here you'll find pocket-sized threat profiles, browser toys for poking at passwords and ciphers, and a tiny capture-the-flag you can solve right on this page. ฅ^•ﻌ•^ฅ

Everything here is made for learning, and the tools I link to are for systems you own or have permission to test. New to all this? Start with the Safety Checklist, then visit the Threat Zoo.


no tracking here patch your stuff use a passkey
catsecPatching everything. Again. Please hold my laser pointer.

whoami

Name
w0xera
Species
Cat, process ID 1 in this house
Hat
Grey, with a little fur on it
Team
Red
Tail
Cat6 ethernet, please do not unplug
Likes
Hardware keys, tested backups, warm laptops
Dislikes
Password reuse, unsolicited QR codes, the vacuum
Motto
Sic Semper Tyrannis

House rules

Only test systems you own or have written permission to test. Report bugs kindly and privately. Share what you learn, and be patient with beginners, because everyone was one once.

What makes kitty happy

Kitty lives in this browser, so nothing is sent anywhere. Clearing your site data resets everything.

Earn badges around the site, then show them off on your own page. These are kept in this browser. Forum badges come from CTF solves checked on the server.
You're the on-call responder at a fictional company. There are no real systems or tools here, just decisions.
A pretend coin mixer on a pretend blockchain. No real coins, wallets or networks are involved. Real mixers such as Tornado Cash, Bitcoin Fog and Samourai Wallet have been sanctioned or prosecuted, and analysts traced many of their users anyway.

Your deposit

Browse catsec from the command line. Press ` anywhere to come back here.

Every attack is easier to stop when you know its habits. Meet the residents, and please don't feed them your credentials.
A small shrine to the bad days that taught everybody something. Each one leaves a lesson that still holds up.

Personal security checklist

A new password every visit. Each one is made in your browser with its secure random generator and is never sent anywhere. Save the ones you use in a password manager, and don't type passwords you already use into sites that offer to rate them.
Rating
Estimated strength
Fast offline attack
Slow hash (bcrypt-ish)

    Times assume 10 billion guesses per second against a fast hash and 10 thousand per second against a slow one. This is a rough estimate, and attackers try common patterns first. A long random passphrase from a password manager beats clever substitutions.

    None of these keep a secret. Base64, hex and URL encoding are reversible by anyone, and a Caesar shift has only 25 keys. For real secrecy, use vetted encryption such as AES-GCM or ChaCha20-Poly1305.

    Change a single letter and the whole hash changes. That is the avalanche effect, and it is why hashes are good at detecting tampering.

    SHA-1 is shown for comparison only, since practical collisions exist. General-purpose hashes are too fast for storing passwords: use Argon2id, scrypt or bcrypt with a unique salt.

    Decoding happens only in your browser, but don't paste tokens from real accounts into websites, because anyone holding one may be able to use it.

    Header

    Payload

      This tool reads a token but doesn't check its signature. Anyone can read a JWT, so never store secrets in one.

      This runs entirely in your browser and makes no network calls. Only test tokens you're allowed to, like your own or a CTF's. It shows why a weak signing secret is dangerous.

      Only HS* tokens use a shared secret. RS, ES and PS tokens are signed with a private key you can't guess, and an algorithm of none means the token isn't signed at all.

      This is a best guess from the hash's shape and length. Different algorithms can look identical, and only test hashes you're allowed to test.

      This reads the address only and never visits it. A clean result doesn't prove a link is safe.
        Only look into people, systems and accounts you have a good reason to, such as your own, a CTF, or an investigation you're allowed to do. Everything here runs in your browser, and outside sites only open when you click.

        All brands, names and addresses here are made up for practice. .example is a reserved domain, so these links could never go anywhere.

        Find all four flags

        Each flag looks like flag{some_words}. Poke around the shell below, then submit what you find. Nothing leaves this page, and nothing you type here touches a real system.

        Hints
        • Pages often say more in their source than on screen.
        • Hidden files start with a dot. Encoding isn't encryption, and the Cipher Box can help.
        • Browser developer tools have a console, and the shell has dmesg. A shift of 13 might come in handy.
        • Web crawlers are told where not to look. Attackers read those files too.

        Hard mode

        Solve these offline with your own tools. Answers are checked on the server, so the page can't give them away. Everything you need is right here, so please don't attack the site or its database.

        Layers (100)

        Peel it back. The usual suspects are all here.

        NzM3OTZlNzQ3Yjc5NmU2YzcyNjU2NjVmNmU2NTcyNWY2MTYyNjc1Zjc5NjI3MDc4NjY3ZA==
        Follow the Mail (150)

        Which IP address actually sent this email? Answer as flag{ip}.

        Return-Path: <billing@kittybank-alerts.example>
        Received: from relay2.mailhost.example (relay2.mailhost.example [198.51.100.24])
            by mx.yourcompany.example; Thu, 05 Nov 2026 09:14:22 +0000
        Received: from kittybank-alerts.example (unknown [203.0.113.77])
            by relay2.mailhost.example; Thu, 05 Nov 2026 09:14:19 +0000
        Authentication-Results: mx.yourcompany.example;
            spf=fail smtp.mailfrom=kittybank.example;
            dkim=none; dmarc=fail
        From: KittyBank Security <security@kittybank.example>
        Reply-To: billing@kittybank-alerts.example
        Subject: URGENT: verify your account
        Weak Hash (200)

        An unsalted password hash leaked. Answer as flag{password}. The Hash Identifier is a good start.

        258752c6b0652a69c52ceed3c65dbf00
        Repeating Key (300)

        XOR with a short repeating key, in hex. You already know how every flag starts.

        0d0515130200071b03173419181510051d110c0d341e1d1a0a16
        Signed, Not Secure (300)

        Recover the secret that signed this token. The JWT Decoder will show you what's inside.

        eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjoia2l0dHkiLCJyb2xlIjoiZ3Vlc3QiLCJub3RlIjoiVGhlIHNlY3JldCBpcyBhIHNpbmdsZSBjb21tb24gd29yZC4gQW5zd2VyIGFzIGZsYWd7c2VjcmV0fS4ifQ.p4ZdqveAz_a_Gx-SEEtzCU4UvPrD3E8ZbRpMcHYhiRY

        This season

        All time

        Connecting to the forum…

        Notes on security and on how this site works. Follow along with RSS.

        Privacy

        catsec has no ads, trackers or analytics of its own. This is what happens to your data when you use it.

        Reading the site

        • Neocities hosts the site and may log visits, like most web hosts.
        • On forum and CTF pages, your browser also contacts Supabase for the data.
        • Your checklist ticks, CTF progress and toys stay in your browser and aren't sent to me. Anything you type into the toys stays there too.

        Signing in

        • Sign-in uses GitHub. Supabase, the database provider, stores the basic profile details GitHub shares, including your email address, and may log your IP address.
        • Your email and GitHub name aren't shown on the forum. Only your handle is.
        • Your browser keeps a sign-in session until you sign out.

        What you post

        • Posts, handles and leaderboard scores are public, and search engines or other people could copy them.
        • If you report a post, moderators see the report but it isn't shown publicly.
        • Moderators can hide posts and ban accounts.

        Your choices

        You can delete your own posts at any time. To delete your account or ask a question, email w0xera@waifu.club. See security.txt for reporting vulnerabilities.

        Practice

        Reference

        Read and listen

        Neighbors on Neocities

        Other cybersecurity sites living on Neocities, from malware notes to CTF writeups. Each one is run by its own owner, so what you find there is theirs.

        Link back to catsec

        catsec

        Copy this to add the button to your site:

        <a href="https://catsec.neocities.org/"><img src="https://catsec.neocities.org/catsec-button.png" width="88" height="31" alt="catsec"></a>

        Found a bug on a site?

        Look for /.well-known/security.txt. It's the standard file (RFC 9116) where a site lists how to report vulnerabilities. Report privately, give the owner time to fix it, and stay within any published policy.

        Only test systems you own or have written permission to test.
        Highlighted is Patch Tuesday, the second Tuesday of the month.