<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><title>skillshelf</title><link>https://samsla.dev</link><description>what I broke, fixed, and wrote down.</description><lastBuildDate>Wed, 12 Aug 2026 17:58:00 +0000</lastBuildDate><item><title>Crypto Articles Queue: a day&#x27;s publishing in one click</title><link>https://samsla.dev/writeups/crypto-articles-queue/</link><guid>https://samsla.dev/writeups/crypto-articles-queue/</guid><pubDate>Sun, 09 Aug 2026 00:00:00 +0000</pubDate><description>English feeds in, finished Arabic articles out across every site I run — one click, and a review queue for what a machine shouldn&#x27;t decide.</description></item><item><title>Bandit 13 → 14: the key that wouldn&#x27;t open the door next to it</title><link>https://samsla.dev/writeups/bandit-13-14/</link><guid>https://samsla.dev/writeups/bandit-13-14/</guid><pubDate>Sat, 08 Aug 2026 00:00:00 +0000</pubDate><description>An SSH key instead of a password, a localhost that refused, and an hour of finding out why scp is on the allowed list.</description></item><item><title>Bandit 9 → 10: readable text in a binary file</title><link>https://samsla.dev/writeups/bandit-09-10/</link><guid>https://samsla.dev/writeups/bandit-09-10/</guid><pubDate>Fri, 07 Aug 2026 00:00:00 +0000</pubDate><description>Most of the file isn&#x27;t text. The password is, and it&#x27;s wearing a marker.</description></item><item><title>Bandit 8 → 9: the line that only happens once</title><link>https://samsla.dev/writeups/bandit-08-09/</link><guid>https://samsla.dev/writeups/bandit-08-09/</guid><pubDate>Fri, 07 Aug 2026 00:00:00 +0000</pubDate><description>A file full of passwords where the only thing marking the real one is that it isn&#x27;t repeated.</description></item><item><title>Bandit 12 → 13: the hexdump matryoshka</title><link>https://samsla.dev/writeups/bandit-12-13/</link><guid>https://samsla.dev/writeups/bandit-12-13/</guid><pubDate>Fri, 07 Aug 2026 00:00:00 +0000</pubDate><description>Over an hour, split across a morning and an afternoon. The level that made me learn what /tmp is for.</description></item><item><title>Bandit 11 → 12: rot13, and what I got wrong about it</title><link>https://samsla.dev/writeups/bandit-11-12/</link><guid>https://samsla.dev/writeups/bandit-11-12/</guid><pubDate>Fri, 07 Aug 2026 00:00:00 +0000</pubDate><description>Every letter shifted thirteen places — plus a mistake I made reading the command.</description></item><item><title>Bandit 10 → 11: base64 is not a lock</title><link>https://samsla.dev/writeups/bandit-10-11/</link><guid>https://samsla.dev/writeups/bandit-10-11/</guid><pubDate>Fri, 07 Aug 2026 00:00:00 +0000</pubDate><description>Encoded, not encrypted — and one flag undoes it.</description></item><item><title>Bandit 7 → 8: don&#x27;t read the file, search it</title><link>https://samsla.dev/writeups/bandit-07-08/</link><guid>https://samsla.dev/writeups/bandit-07-08/</guid><pubDate>Thu, 06 Aug 2026 00:00:00 +0000</pubDate><description>I cat&#x27;d a four-megabyte file into my terminal so you don&#x27;t have to.</description></item><item><title>Bandit 6 → 7: searching the whole filesystem, quietly</title><link>https://samsla.dev/writeups/bandit-06-07/</link><guid>https://samsla.dev/writeups/bandit-06-07/</guid><pubDate>Thu, 06 Aug 2026 00:00:00 +0000</pubDate><description>The level where ls stops helping, and where 2&gt;/dev/null finally made sense.</description></item><item><title>Bandit 5 → 6: three properties, one file</title><link>https://samsla.dev/writeups/bandit-05-06/</link><guid>https://samsla.dev/writeups/bandit-05-06/</guid><pubDate>Thu, 06 Aug 2026 00:00:00 +0000</pubDate><description>Twenty directories, one file that matches the description — and a lesson about which filter to reach for.</description></item><item><title>Bandit 4 → 5: file before cat</title><link>https://samsla.dev/writeups/bandit-04-05/</link><guid>https://samsla.dev/writeups/bandit-04-05/</guid><pubDate>Thu, 06 Aug 2026 00:00:00 +0000</pubDate><description>Ten files, one of them readable — and a command that tells you which without printing any of them.</description></item><item><title>Bandit 3 → 4: the empty directory that isn&#x27;t</title><link>https://samsla.dev/writeups/bandit-03-04/</link><guid>https://samsla.dev/writeups/bandit-03-04/</guid><pubDate>Thu, 06 Aug 2026 00:00:00 +0000</pubDate><description>ls told me there was nothing there. ls was being polite.</description></item><item><title>Bandit 2 → 3: spaces in the filename</title><link>https://samsla.dev/writeups/bandit-02-03/</link><guid>https://samsla.dev/writeups/bandit-02-03/</guid><pubDate>Thu, 06 Aug 2026 00:00:00 +0000</pubDate><description>Whitespace is an argument separator before it&#x27;s a character in a name.</description></item><item><title>Bandit 1 → 2: the file called -</title><link>https://samsla.dev/writeups/bandit-01-02/</link><guid>https://samsla.dev/writeups/bandit-01-02/</guid><pubDate>Thu, 06 Aug 2026 00:00:00 +0000</pubDate><description>A filename made of one character the shell had already claimed.</description></item><item><title>Bandit 0 → 1: getting a foothold</title><link>https://samsla.dev/writeups/bandit-00-01/</link><guid>https://samsla.dev/writeups/bandit-00-01/</guid><pubDate>Wed, 05 Aug 2026 00:00:00 +0000</pubDate><description>The one where you just have to get in the door — SSH basics and reading your first file.</description></item></channel></rss>