<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Ioannis Kapolos</title>
  <subtitle>Ioannis Kapolos writes on coding, security, music and philosophy.</subtitle>
  <link href="https://kapolos.com/"/>
  <link rel="self" href="https://kapolos.com/feed.xml"/>
  <id>https://kapolos.com/</id>
  <updated>2026-11-11T00:00:00.000Z</updated>
  <author><name>Ioannis Kapolos</name></author>
  <entry>
    <title>How a photo caption became a shell</title>
    <link href="https://kapolos.com/writing/security/how-a-photo-caption-became-a-shell/"/>
    <id>https://kapolos.com/writing/security/how-a-photo-caption-became-a-shell/</id>
    <published>2026-11-11T00:00:00.000Z</published>
    <updated>2026-11-11T00:00:00.000Z</updated>
    <category term="security"/>
    <summary>A CTF investigation that led from a caption field through SQL injection to a render worker, a shell and a flag. Written for developers new to exploitation.</summary>
  </entry>
</feed>
