<?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: Bhavishya Aggarwal</title>
    <description>The latest articles on DEV Community by Bhavishya Aggarwal (@bhavishya_aggarwal_2651e7).</description>
    <link>https://dev.to/bhavishya_aggarwal_2651e7</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%2F1621640%2F801a1331-3034-4c99-a473-dde7718ad1b6.jpeg</url>
      <title>DEV Community: Bhavishya Aggarwal</title>
      <link>https://dev.to/bhavishya_aggarwal_2651e7</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/bhavishya_aggarwal_2651e7"/>
    <language>en</language>
    <item>
      <title>I Let An AI Pentester: Shannon, On My Vulnerable Go App — Here’s What Happened</title>
      <dc:creator>Bhavishya Aggarwal</dc:creator>
      <pubDate>Sat, 27 Dec 2025 05:27:27 +0000</pubDate>
      <link>https://dev.to/bhavishya_aggarwal_2651e7/i-let-an-ai-pentester-shannon-on-my-vulnerable-go-app-heres-what-happened-1p09</link>
      <guid>https://dev.to/bhavishya_aggarwal_2651e7/i-let-an-ai-pentester-shannon-on-my-vulnerable-go-app-heres-what-happened-1p09</guid>
      <description>&lt;h3&gt;
  
  
  I Let An AI Pentester: Shannon, On My Vulnerable Go App — Here’s What Happened
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Monday, 9 AM.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I’m shipping code. My team is shipping code. Claude Code makes it stupidly easy — we’re deploying new features multiple times a day. Security? That’s happening once a year with an external pentester who charges $10K and takes three weeks.&lt;/p&gt;

&lt;p&gt;Then I get an email: &lt;em&gt;“Hey, want to test&lt;/em&gt; &lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;&lt;em&gt;Shannon&lt;/em&gt;&lt;/a&gt;&lt;em&gt;? It’s an AI pentester that finds actual exploits, not just alerts.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I’ve seen a lot of security tools. Most of them are noise machines. Flags thousands of issues, 90% false positives, zero actionable insight.&lt;/p&gt;

&lt;p&gt;But I’m curious. And I have a purposefully broken Go app sitting around (Vulnerability-goapp — basically OWASP Top 10: The App). Perfect test subject.&lt;/p&gt;

&lt;p&gt;So I thought: &lt;em&gt;Why not actually try this?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I set up &lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt; on Thursday night. Gave it one job: break my vulnerable app. I wasn’t expecting much. Grabbed coffee and walked away.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;90 minutes later, I came back to find complete account takeovers, SQL injection bypasses, XSS vectors stealing session cookies, and authorization flaws that let attackers modify any user’s profile.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Not theories. Not “potential issues.” Actual exploits. Copy-and-paste proof-of-concepts, showing exactly how to break the app.&lt;/p&gt;

&lt;p&gt;That’s when I realized something: &lt;strong&gt;This isn’t just another security scanner.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  The Problem: Why I Even Looked For This
&lt;/h3&gt;

&lt;p&gt;Here’s the reality of modern software development: We’ve optimized the hell out of shipping code. CI/CD pipelines are tight. GitHub Copilot and Claude Code make it trivial to pump out features. Some teams deploy multiple times a day.&lt;/p&gt;

&lt;p&gt;But security testing? It’s stuck in 2010.&lt;/p&gt;

&lt;p&gt;Once a year, maybe twice. You call a pentesting firm, they come in for a week, charge you thousands, find issues three months later, and by then you’ve shipped 10 different versions of the vulnerable code.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;364 days of no security testing.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That gap is real. And it’s dangerous.&lt;/p&gt;

&lt;p&gt;Traditional pentesting doesn’t scale with continuous deployment. It’s async. It’s expensive. It’s slow. And by the time you get the report, the vulnerabilities have already landed in production (maybe).&lt;/p&gt;

&lt;p&gt;I started looking for something that could give me on-demand security testing. Something that doesn’t require a retainer or a waiting list. Something that actually works with the way modern teams build.&lt;/p&gt;

&lt;p&gt;That’s when I found &lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  What I Did: Setting Up Shannon
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt; is built by Keygraph HQ and positioned as an “autonomous AI pentester.” It’s open-source (AGPL-3.0), free to use, and runs in Docker.&lt;/p&gt;

&lt;p&gt;The setup was straightforward:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Clone and Build&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git clone https://github.com/KeygraphHQ/shannon.git
cd shannon
docker build -t shannon:latest .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Took about 15 minutes on my machine. Nothing fancy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Prepare Your App&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
I had a vulnerable Go app already running locally on port 9090. &lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt; needs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Your application running and accessible&lt;/li&gt;
&lt;li&gt;Your source code available for analysis&lt;/li&gt;
&lt;li&gt;An API token from Anthropic (Claude’s API)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Run The Pentest&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;export CLAUDE_CODE_OAUTH_TOKEN="your_token_here"

docker run --rm -it \
 --network host \
 --cap-add=NET_RAW \
 --cap-add=NET_ADMIN \
 -e CLAUDE_CODE_OAUTH_TOKEN="$CLAUDE_CODE_OAUTH_TOKEN" \
 -e CLAUDE_CODE_MAX_OUTPUT_TOKENS=64000 \
 -v "$(pwd)/repos:/app/repos" \
 -v "$(pwd)/configs:/app/configs" \
 shannon:latest \
 "http://localhost:9090" \
 "/app/repos/Vulnerability-goapp"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Hit enter and wait for all the agents to run and get tested against your code&lt;/p&gt;

&lt;h3&gt;
  
  
  The Target App: Vulnerability-goapp
&lt;/h3&gt;

&lt;p&gt;Let me be clear about what I was testing. This isn’t some random project. &lt;a href="https://github.com/Hardw01f/Vulnerability-goapp" rel="noopener noreferrer"&gt;Vulnerability-goapp&lt;/a&gt; is a Go-based web application intentionally built with OWASP Top 10 vulnerabilities. It includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;User authentication and profiles&lt;/li&gt;
&lt;li&gt;Posts and timeline features&lt;/li&gt;
&lt;li&gt;File uploads&lt;/li&gt;
&lt;li&gt;Admin panel&lt;/li&gt;
&lt;li&gt;Search functionality&lt;/li&gt;
&lt;li&gt;Database interactions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s written in Go, uses MySQL for storage, and serves HTML pages with session-based authentication.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The goal:&lt;/strong&gt; See if &lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt; could find exploitable vulnerabilities in real code.&lt;/p&gt;

&lt;h3&gt;
  
  
  What Shannon Found: The Real Story
&lt;/h3&gt;

&lt;p&gt;Here’s what came back in the 90-minute report:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbjsig50bo4nokv7adkfk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbjsig50bo4nokv7adkfk.png" width="800" height="642"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Authentication Vulnerabilities:&lt;/strong&gt; &lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt; discovered that session IDs are generated by base64-encoding email addresses. Meaning, if you know someone’s email, you can forge their session cookie without any password — complete account takeover. Sessions never expire. Session cookies lack security flags (no HttpOnly, Secure, or SameSite). The default admin credentials (&lt;a href="mailto:admin@admin.com"&gt;admin@admin.com&lt;/a&gt;/Qwerty1234) are hardcoded. Login endpoints have zero rate limiting (30,000+ attempts per hour possible). Everything runs over HTTP—credentials transmitted in plaintext.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Authorization Failures:&lt;/strong&gt; The app trusts a client-controlled UserID cookie for all access decisions. No ownership validation. An attacker can change any user’s password, modify their profile, view their private data, upload files to their account, and read their posts. All by manipulating a cookie. Seven different authorization flaws, all exploitable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cross-Site Scripting (XSS):&lt;/strong&gt; &lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt; found and successfully exploited all 10 XSS vulnerabilities across the app. Reflected XSS at the root endpoint that steals session cookies. Stored XSS in timeline posts affecting all users. XSS in profile fields, usernames, search results, file uploads. Root cause: the app uses Go’s text/template instead of html/template and never HTML-encodes user input. No CSP headers, no HttpOnly flags. Session hijacking via JavaScript was demonstrated—attacker gets victim's cookies and can impersonate them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SQL Injection:&lt;/strong&gt; Admin authentication endpoint constructs SQL queries by string concatenation. A simple SQL injection payload bypasses login and grants instant admin access. The search endpoint has the same issue — SQL injection bypasses filters and exposes all posts including “private” ones. Database root credentials are exposed in the vulnerable code.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Infrastructure Issues:&lt;/strong&gt; HTTP-only transport. MySQL database exposed to host network. No HTTPS. No security headers. MySQL 5.6 (end-of-life since 2021). Hardcoded database credentials throughout the code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5vgavr0cbk9a4ph21ddu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5vgavr0cbk9a4ph21ddu.png" width="800" height="725"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  The Numbers
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Total Vulnerabilities Found:&lt;/strong&gt;  40+&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Critical Severity:&lt;/strong&gt; 15+&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Successfully Exploited:&lt;/strong&gt; 100% of tested categories&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;False Positives:&lt;/strong&gt; Zero&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Time to Complete Assessment:&lt;/strong&gt; 90 minutes&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Authentication Bypass:&lt;/strong&gt; 10 seconds&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Admin Access:&lt;/strong&gt; 5 seconds&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;XSS Vectors:&lt;/strong&gt; All 10 working&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This wasn’t theoretical. &lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt; provided actual working exploits for each vulnerability. No maybes. No “could be.” Real impact, reproducible steps, working PoCs.&lt;/p&gt;

&lt;h3&gt;
  
  
  My Honest Take: What Impressed Me
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;What I Loved:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt; actually works. I didn’t expect this many vulnerabilities found, and the quality was professional-grade. Every finding came with reproducible exploit code — no fluff, no false positives. The speed is insane: 90 minutes for a complete assessment, versus 3–4 weeks for traditional pentesting. It’s code-aware (analyzes source AND runs dynamic tests, not just black-box scanning). And the setup is easy — Docker, one command, it runs.&lt;/p&gt;

&lt;h3&gt;
  
  
  Who Should Actually Use This?
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;DevOps Engineers:&lt;/strong&gt; Automate security testing in your pipeline. Catch vulnerabilities before production. Generate compliance reports (SOC 2, HIPAA-ready). Reduce manual pentesting overhead.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Backend Developers:&lt;/strong&gt; Test your Go, Python, Node, Java apps. Understand security from the developer’s perspective. Real PoCs you can actually fix. Fast feedback loop (90 minutes vs 3 weeks).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Security Teams:&lt;/strong&gt; Support multiple teams without hiring more pentesters. Consistent, comparable assessments across projects. Evidence collection for compliance. Efficient use of limited security resources.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Startups:&lt;/strong&gt; Can’t afford $10K pentests. Need continuous security testing. Deploy frequently, need to validate each deployment. &lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt; Lite is free and open-source.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Anyone shipping code frequently&lt;/strong&gt; who realizes their once-a-year pentest schedule doesn’t match their deployment frequency.&lt;/p&gt;

&lt;h3&gt;
  
  
  Final Thoughts
&lt;/h3&gt;

&lt;p&gt;I went into this skeptical. “Another security scanner, probably overhyped,” I thought.&lt;/p&gt;

&lt;p&gt;I came out genuinely impressed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt; solves a real problem: &lt;strong&gt;the gap between continuous deployment and continuous security testing.&lt;/strong&gt; You can’t wait a year between pentests if you’re shipping daily. &lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt; gives you on-demand, autonomous penetration testing that actually works.&lt;/p&gt;

&lt;p&gt;Is it perfect? No. But does it work? Absolutely.&lt;/p&gt;

&lt;p&gt;For developers and DevOps engineers tired of the “we’ll do security later” cycle, or businesses that can’t afford traditional pentesting, &lt;a href="https://github.com/KeygraphHQ/shannon" rel="noopener noreferrer"&gt;Shannon&lt;/a&gt; is worth a serious look. “Test your code. Break it yourself before someone else does.”&lt;/p&gt;

</description>
      <category>security</category>
      <category>anthropicclaude</category>
      <category>cybersecurity</category>
      <category>softwaredevelopment</category>
    </item>
    <item>
      <title>Why Learning to Code Doesn’t Have to Take Years (And How to Start Today)</title>
      <dc:creator>Bhavishya Aggarwal</dc:creator>
      <pubDate>Sat, 01 Mar 2025 16:48:05 +0000</pubDate>
      <link>https://dev.to/bhavishya_aggarwal_2651e7/why-learning-to-code-doesnt-have-to-take-years-and-how-to-start-today-4fb6</link>
      <guid>https://dev.to/bhavishya_aggarwal_2651e7/why-learning-to-code-doesnt-have-to-take-years-and-how-to-start-today-4fb6</guid>
      <description>&lt;p&gt;If you’ve ever dreamed of building apps, landing a tech job, or simply understanding how the digital world works, you’ve probably considered learning to code. But here’s the catch—most people assume it takes years of grinding through dense textbooks or expensive degrees to get there. What if I told you that you could master coding basics in just weeks, not months or years?&lt;br&gt;
In 2025, the demand for coding skills is sky-high, and the tools to learn them have evolved. Whether you’re a complete beginner or someone looking to level up fast, there’s a smarter way to dive in. Let’s explore why coding doesn’t have to be a long slog—and how you can get started today.&lt;br&gt;
The Myth of “Years to Learn Coding”&lt;br&gt;
Traditional paths like computer science degrees or lengthy boot camps can take years and cost a fortune. But coding isn’t about memorizing every line of syntax—it’s about problem-solving and building things. The truth? You can learn enough to create your first project or impress an employer in a fraction of that time if you focus on the right skills and resources.&lt;br&gt;
Why Speed Matters in 2025&lt;br&gt;
Tech moves fast. Companies need people who can adapt quickly, and individuals want skills they can use now—not five years down the road. Whether it’s for a side hustle, a career switch, or personal growth, learning to code efficiently gives you an edge. Imagine going from zero to coding your own website or app in just a few weeks. That’s not a pipe dream—it’s possible with the right approach.&lt;br&gt;
How to Learn Coding Fast&lt;br&gt;
Here’s a simple roadmap to get you started:&lt;br&gt;&lt;br&gt;
Pick One Language: Start with something beginner-friendly like Python (great for data, AI, and web) or JavaScript (perfect for websites and apps).  &lt;/p&gt;

&lt;p&gt;Focus on Projects: Skip the endless theory. Build something small—like a calculator or a to-do list app—to see how code works in action.  &lt;/p&gt;

&lt;p&gt;Use the Right Tools: Platforms like &lt;a href="https://codefa.st/?via=com" rel="noopener noreferrer"&gt;Codefast&lt;/a&gt; cut through the noise, offering streamlined lessons that get you coding from day one—no fluff, just results.&lt;/p&gt;

&lt;p&gt;If you’re serious about learning to code fast, I’ve found a gem worth checking out: &lt;a href="https://codefa.st/?via=com" rel="noopener noreferrer"&gt;Codefast&lt;/a&gt;. Unlike traditional courses that drag on forever, Codefast is designed to teach you practical coding skills in weeks, not months. It’s perfect for beginners who want clear, actionable lessons without the overwhelm—or for anyone tired of slow progress.&lt;br&gt;
What I love about it is the focus on real-world results. You’re not just watching videos; you’re building skills you can use immediately. Plus, it’s affordable and cuts out the unnecessary jargon that bogs down most programs. Curious? Try &lt;a href="https://codefa.st/?via=com" rel="noopener noreferrer"&gt;Codefast&lt;/a&gt; here and see how fast you can go from zero to coder.&lt;br&gt;
My First Coding Win&lt;br&gt;
Here’s a quick story: A friend of mine started with no coding experience, used a program like Codefast, and built a simple portfolio site in just three weeks. She’s now freelancing on the side. That’s the power of skipping the fluff and focusing on what matters. You don’t need years—you need the right system.&lt;br&gt;
Start Today, Not Tomorrow&lt;br&gt;
The best time to learn coding was yesterday. The next best time? Right now. Grab a coffee, pick a language, and dive in. If you want a guided path that won’t waste your time, I’d recommend starting with Codefast. It’s the kind of resource I wish I’d had when I first explored tech.&lt;br&gt;
Free Resources to Kickstart Your Journey&lt;br&gt;
If you’re on a budget, here are some free resources to learn programming—just stay consistent and don’t get distracted:&lt;br&gt;&lt;br&gt;
Roadmap.sh (Website) – A structured guide for learners.  &lt;/p&gt;

&lt;p&gt;freeCodeCamp (YouTube Channel) – Free tutorials for all levels.  &lt;/p&gt;

&lt;p&gt;Build Your Own X (GitHub Repository) – Hands-on projects to practice.  &lt;/p&gt;

&lt;p&gt;Web Dev Simplified (YouTube Channel) – Full-stack learning through project-building, including deployment.&lt;/p&gt;

&lt;p&gt;These are fantastic starting points (though they might take 5–6 months if you’re consistent). But if you want to fast-track your journey and learn in weeks, not months, check out &lt;a href="https://codefa.st/?via=com" rel="noopener noreferrer"&gt;Codefast&lt;/a&gt;. It’s a game-changer for anyone serious about coding.&lt;br&gt;
What’s Your First Project?&lt;br&gt;
So, what’s it going to be? A game? A website? Whatever you choose, you’re closer than you think. Take the leap today—your future self will thank you.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
