<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Raphael</title>
    <description>The latest articles on DEV Community by Raphael (@trailproof).</description>
    <link>https://dev.to/trailproof</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3962606%2F38b215fa-7f44-4abe-ae87-f9f58fabc1f2.png</url>
      <title>DEV Community: Raphael</title>
      <link>https://dev.to/trailproof</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/trailproof"/>
    <language>en</language>
    <item>
      <title>I built an open-source AWS SOC 2 readiness scanner because SOC 2 prep is still too manual</title>
      <dc:creator>Raphael</dc:creator>
      <pubDate>Mon, 01 Jun 2026 11:45:18 +0000</pubDate>
      <link>https://dev.to/trailproof/i-built-an-open-source-aws-soc-2-readiness-scanner-because-soc-2-prep-is-still-too-manual-3fe0</link>
      <guid>https://dev.to/trailproof/i-built-an-open-source-aws-soc-2-readiness-scanner-because-soc-2-prep-is-still-too-manual-3fe0</guid>
      <description>&lt;p&gt;Most startups don’t fail SOC 2 because they lack security.&lt;/p&gt;

&lt;p&gt;They fail because they don’t know what “audit-ready” actually looks like until it’s too late.&lt;/p&gt;

&lt;p&gt;I kept seeing the same pattern over and over:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Teams already use AWS securely&lt;/li&gt;
&lt;li&gt;They pass internal security reviews&lt;/li&gt;
&lt;li&gt;Then SOC 2 happens… and everything breaks&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Not because of major security flaws, but because of &lt;strong&gt;missing evidence, unclear control mapping, and manual checklist chaos&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;So I built something to fix that.&lt;/p&gt;




&lt;h2&gt;
  
  
  The problem: SOC 2 is still an evidence problem, not a security problem
&lt;/h2&gt;

&lt;p&gt;If you’ve gone through SOC 2, you probably recognize this workflow:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pull IAM configs manually&lt;/li&gt;
&lt;li&gt;Screenshot AWS settings&lt;/li&gt;
&lt;li&gt;Export CloudTrail logs&lt;/li&gt;
&lt;li&gt;Map everything into a spreadsheet&lt;/li&gt;
&lt;li&gt;Try to match it to SOC 2 controls&lt;/li&gt;
&lt;li&gt;Repeat across dozens of checks&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And somehow this still takes &lt;strong&gt;weeks of engineering time&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Most of the data already exists in AWS. It’s just not structured in a way auditors can use.&lt;/p&gt;

&lt;p&gt;That gap is where most teams get stuck.&lt;/p&gt;




&lt;h2&gt;
  
  
  Introducing TrailScan
&lt;/h2&gt;

&lt;p&gt;TrailScan is a &lt;strong&gt;free, open-source AWS SOC 2 readiness scanner&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;It runs locally against your AWS account and tells you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What SOC 2 controls you’re failing&lt;/li&gt;
&lt;li&gt;Why it matters&lt;/li&gt;
&lt;li&gt;How severe it is&lt;/li&gt;
&lt;li&gt;How ready you are for audit&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  What it does
&lt;/h3&gt;

&lt;p&gt;TrailScan runs &lt;strong&gt;35 automated AWS checks&lt;/strong&gt; across:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;IAM&lt;/li&gt;
&lt;li&gt;S3&lt;/li&gt;
&lt;li&gt;EC2&lt;/li&gt;
&lt;li&gt;RDS&lt;/li&gt;
&lt;li&gt;CloudTrail&lt;/li&gt;
&lt;li&gt;GuardDuty&lt;/li&gt;
&lt;li&gt;VPC&lt;/li&gt;
&lt;li&gt;KMS&lt;/li&gt;
&lt;li&gt;CloudWatch&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each check is mapped directly to SOC 2 Trust Services Criteria.&lt;/p&gt;




&lt;h2&gt;
  
  
  What makes TrailScan different
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. SOC 2-specific focus (not generic cloud security)
&lt;/h3&gt;

&lt;p&gt;Most tools scan for “security best practices.”&lt;/p&gt;

&lt;p&gt;TrailScan focuses specifically on &lt;strong&gt;SOC 2 audit readiness&lt;/strong&gt;, which is a different problem.&lt;/p&gt;




&lt;h3&gt;
  
  
  2. Readiness score you can actually understand
&lt;/h3&gt;

&lt;p&gt;You don’t just get findings.&lt;/p&gt;

&lt;p&gt;You get a &lt;strong&gt;0–100% SOC 2 readiness score&lt;/strong&gt;, plus:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pass / Fail / Warning breakdown&lt;/li&gt;
&lt;li&gt;Control mapping&lt;/li&gt;
&lt;li&gt;Exportable reports (JSON / CSV)&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  3. CI-friendly design
&lt;/h3&gt;

&lt;p&gt;TrailScan is built for engineers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Exit codes for CI pipelines&lt;/li&gt;
&lt;li&gt;Fast execution (~2 minutes)&lt;/li&gt;
&lt;li&gt;No SaaS lock-in&lt;/li&gt;
&lt;li&gt;No data sent externally&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  4. Fully open-source
&lt;/h3&gt;

&lt;p&gt;You can inspect every check.&lt;/p&gt;

&lt;p&gt;No black box. No hidden logic.&lt;/p&gt;




&lt;h2&gt;
  
  
  TrailScan vs Prowler and similar tools
&lt;/h2&gt;

&lt;p&gt;There are already strong AWS security tools in the ecosystem, especially open-source projects like Prowler, as well as cloud-native services like AWS Security Hub.&lt;/p&gt;

&lt;p&gt;Here’s how TrailScan is different:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Purpose: SOC 2 readiness vs general security posture
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Prowler / Security tools:&lt;/strong&gt; Broad AWS security benchmarking (CIS, NIST, general best practices)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;TrailScan:&lt;/strong&gt; Narrow focus on &lt;strong&gt;SOC 2 Trust Services Criteria mapping&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Is your AWS secure?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;TrailScan asks:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Are you audit-ready for SOC 2?”&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h3&gt;
  
  
  2. Output: compliance narrative vs security findings
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Prowler-style tools:&lt;/strong&gt; Security findings, misconfigurations, compliance checks&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;TrailScan:&lt;/strong&gt; Readiness scoring + SOC 2 control mapping&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each finding is designed to answer:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Which SOC 2 control is impacted&lt;/li&gt;
&lt;li&gt;Why it matters in audit context&lt;/li&gt;
&lt;li&gt;Whether it blocks certification readiness&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  3. Audience: security engineers vs audit-bound startups
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Prowler:&lt;/strong&gt; Security teams, cloud engineers, SecOps&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;TrailScan:&lt;/strong&gt; Founders, startups, DevOps teams preparing for SOC 2&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s optimized for a very specific moment:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“We need SOC 2 in the next few months and don’t know where we stand.”&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h3&gt;
  
  
  4. Signal-to-noise ratio
&lt;/h3&gt;

&lt;p&gt;Generic security tools often return hundreds of findings.&lt;/p&gt;

&lt;p&gt;TrailScan intentionally limits scope to &lt;strong&gt;SOC 2-relevant checks only&lt;/strong&gt;, reducing noise and focusing attention on audit blockers.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why I built this as open-source first
&lt;/h2&gt;

&lt;p&gt;SOC 2 tooling has a trust problem.&lt;/p&gt;

&lt;p&gt;Security teams don’t like black boxes touching their infrastructure.&lt;/p&gt;

&lt;p&gt;So TrailScan is intentionally:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Local-first&lt;/li&gt;
&lt;li&gt;Read-only&lt;/li&gt;
&lt;li&gt;Transparent&lt;/li&gt;
&lt;li&gt;Inspectable&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The idea is simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If you don’t trust it, you should still be able to verify it.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Who this is for
&lt;/h2&gt;

&lt;p&gt;TrailScan is useful if you are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A startup preparing for SOC 2 Type I or II&lt;/li&gt;
&lt;li&gt;A DevOps engineer responsible for AWS security&lt;/li&gt;
&lt;li&gt;A founder dealing with enterprise security reviews&lt;/li&gt;
&lt;li&gt;A team that wants a quick readiness snapshot without adopting a full GRC platform&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  What TrailScan is NOT
&lt;/h2&gt;

&lt;p&gt;It is not:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A full compliance platform&lt;/li&gt;
&lt;li&gt;A policy generator&lt;/li&gt;
&lt;li&gt;A continuous monitoring system&lt;/li&gt;
&lt;li&gt;A replacement for auditors or GRC tools&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s intentionally narrow:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A fast way to understand where you stand before SOC 2 becomes painful.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Try it out
&lt;/h2&gt;

&lt;p&gt;GitHub: &lt;a href="https://github.com/1amplant/trailscan" rel="noopener noreferrer"&gt;https://github.com/1amplant/trailscan&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It takes about 2 minutes to run, and you’ll get a SOC 2 readiness report from your AWS environment.&lt;/p&gt;




&lt;h2&gt;
  
  
  Feedback welcome
&lt;/h2&gt;

&lt;p&gt;I’m actively improving the checks and mapping.&lt;/p&gt;

&lt;p&gt;If you’ve gone through SOC 2 before, I’d love feedback on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Missing checks&lt;/li&gt;
&lt;li&gt;False positives&lt;/li&gt;
&lt;li&gt;Real audit gaps&lt;/li&gt;
&lt;li&gt;Useful improvements&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Open issues on the repo anytime.&lt;/p&gt;




&lt;h3&gt;
  
  
  TL;DR
&lt;/h3&gt;

&lt;p&gt;TrailScan is an open-source AWS scanner that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Runs 35 SOC 2-focused checks&lt;/li&gt;
&lt;li&gt;Maps results to SOC 2 controls&lt;/li&gt;
&lt;li&gt;Gives a readiness score&lt;/li&gt;
&lt;li&gt;Exports audit-friendly reports&lt;/li&gt;
&lt;li&gt;Runs locally in ~2 minutes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s built to answer one question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Are we actually ready for SOC 2, or about to find out the hard way?”&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>devops</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
