<?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: Souvik Ghosh</title>
    <description>The latest articles on DEV Community by Souvik Ghosh (@souvikghosh957).</description>
    <link>https://dev.to/souvikghosh957</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%2F2079481%2F86c5f98d-dc6a-4333-aa53-fb61ffe76a5f.png</url>
      <title>DEV Community: Souvik Ghosh</title>
      <link>https://dev.to/souvikghosh957</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/souvikghosh957"/>
    <language>en</language>
    <item>
      <title>[Boost]</title>
      <dc:creator>Souvik Ghosh</dc:creator>
      <pubDate>Thu, 19 Feb 2026 16:41:42 +0000</pubDate>
      <link>https://dev.to/souvikghosh957/-3fmf</link>
      <guid>https://dev.to/souvikghosh957/-3fmf</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/souvikghosh957" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&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%2Fuser%2Fprofile_image%2F2079481%2F86c5f98d-dc6a-4333-aa53-fb61ffe76a5f.png" alt="souvikghosh957"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/souvikghosh957/prompt-poaching-why-i-built-secret-sanitizer-4g32" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Prompt Poaching: Why I Built Secret Sanitizer&lt;/h2&gt;
      &lt;h3&gt;Souvik Ghosh ・ Feb 16&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#opensource&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#cybersecurity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#ai&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#buildinpublic&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>opensource</category>
      <category>cybersecurity</category>
      <category>ai</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Souvik Ghosh</dc:creator>
      <pubDate>Tue, 17 Feb 2026 13:54:31 +0000</pubDate>
      <link>https://dev.to/souvikghosh957/-37j5</link>
      <guid>https://dev.to/souvikghosh957/-37j5</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/souvikghosh957" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&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%2Fuser%2Fprofile_image%2F2079481%2F86c5f98d-dc6a-4333-aa53-fb61ffe76a5f.png" alt="souvikghosh957"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/souvikghosh957/prompt-poaching-why-i-built-secret-sanitizer-4g32" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Prompt Poaching: Why I Built Secret Sanitizer&lt;/h2&gt;
      &lt;h3&gt;Souvik Ghosh ・ Feb 16&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#opensource&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#cybersecurity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#ai&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#buildinpublic&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>opensource</category>
      <category>cybersecurity</category>
      <category>ai</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Souvik Ghosh</dc:creator>
      <pubDate>Mon, 16 Feb 2026 23:53:06 +0000</pubDate>
      <link>https://dev.to/souvikghosh957/-2n0o</link>
      <guid>https://dev.to/souvikghosh957/-2n0o</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/souvikghosh957" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&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%2Fuser%2Fprofile_image%2F2079481%2F86c5f98d-dc6a-4333-aa53-fb61ffe76a5f.png" alt="souvikghosh957"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/souvikghosh957/prompt-poaching-why-i-built-secret-sanitizer-4g32" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Prompt Poaching: Why I Built Secret Sanitizer&lt;/h2&gt;
      &lt;h3&gt;Souvik Ghosh ・ Feb 16&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#opensource&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#cybersecurity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#ai&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#buildinpublic&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>opensource</category>
      <category>cybersecurity</category>
      <category>ai</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>Prompt Poaching: Why I Built Secret Sanitizer</title>
      <dc:creator>Souvik Ghosh</dc:creator>
      <pubDate>Mon, 16 Feb 2026 12:07:10 +0000</pubDate>
      <link>https://dev.to/souvikghosh957/prompt-poaching-why-i-built-secret-sanitizer-4g32</link>
      <guid>https://dev.to/souvikghosh957/prompt-poaching-why-i-built-secret-sanitizer-4g32</guid>
      <description>&lt;p&gt;Last year, I pasted a chunk of terminal output into ChatGPT to debug a failing deploy. Helpful answer. Great experience. Then I noticed my AWS keys sitting right there in the prompt — logged on someone else's servers, probably forever.&lt;/p&gt;

&lt;p&gt;I rotated them immediately. Nothing happened. But it stuck with me.&lt;/p&gt;

&lt;p&gt;Then in late 2025, security researchers discovered something worse: &lt;strong&gt;Chrome extensions with millions of users were silently harvesting every AI conversation and selling the data to brokers.&lt;/strong&gt; Extensions with Google's "Featured" badge. Extensions marketed as privacy tools.&lt;/p&gt;

&lt;p&gt;They called it &lt;a href="https://thehackernews.com/2026/01/two-chrome-extensions-caught-stealing.html" rel="noopener noreferrer"&gt;&lt;strong&gt;Prompt Poaching&lt;/strong&gt;&lt;/a&gt; — and nearly 9 million users were affected.&lt;/p&gt;

&lt;p&gt;That's when I realized the problem is two layers deep. It's not just about what you send to the AI provider. It's also about what your browser extensions can see before it even gets there.&lt;/p&gt;

&lt;p&gt;I needed something that sat between my clipboard and the chat input. So I built it.&lt;/p&gt;




&lt;h2&gt;
  
  
  Meet Secret Sanitizer
&lt;/h2&gt;

&lt;p&gt;An open-source Chrome extension that masks secrets &lt;strong&gt;before&lt;/strong&gt; they reach any AI chat.&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%2Fgithub.com%2Fuser-attachments%2Fassets%2F9dc1eeb6-55a4-4be2-8a93-c21709b32469" 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%2Fgithub.com%2Fuser-attachments%2Fassets%2F9dc1eeb6-55a4-4be2-8a93-c21709b32469" width="720" alt="Secret Sanitizer demo" height="467"&gt;&lt;/a&gt;
&lt;/p&gt;

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

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;You copy:     DATABASE_URL=postgres://admin:s3cret@prod.internal:5432/app
You paste:    DATABASE_URL=[MASKED]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When you paste into ChatGPT, Claude, Gemini, Grok, Perplexity, DeepSeek — or any custom site you add — the extension intercepts the paste, runs regex patterns &lt;strong&gt;locally in your browser&lt;/strong&gt;, replaces detected secrets with &lt;code&gt;[MASKED]&lt;/code&gt;, and shows a quick toast confirming what was blocked.&lt;/p&gt;

&lt;p&gt;The AI still gets your question. It just doesn't get your credentials.&lt;/p&gt;

&lt;p&gt;Originals are stored in a local encrypted vault you can unmask anytime.&lt;/p&gt;




&lt;h2&gt;
  
  
  What it catches
&lt;/h2&gt;

&lt;p&gt;API keys (AWS, GCP, Azure, Stripe, GitHub, OpenAI, and many more), passwords, bearer tokens, JWTs, database connection strings, private key blocks, &lt;code&gt;.env&lt;/code&gt; key-value pairs, and even Indian PII like Aadhaar and PAN numbers.&lt;/p&gt;

&lt;p&gt;Every pattern can be toggled on or off individually — no false-positive headaches.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why you should trust it
&lt;/h2&gt;

&lt;p&gt;After writing about extensions that betray trust, I'd be a hypocrite asking for blind trust. So every design decision optimizes for verifiability:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;100% local&lt;/strong&gt; — no &lt;code&gt;fetch()&lt;/code&gt;, no &lt;code&gt;XMLHttpRequest&lt;/code&gt;, no network calls. Verify yourself: &lt;code&gt;grep -r "fetch\|XMLHttpRequest" content_script.js&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Works offline&lt;/strong&gt; — disable Wi-Fi and try it&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;~500 KB total&lt;/strong&gt; — there's nowhere to hide malicious code in 500 KB&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open source&lt;/strong&gt; — MIT licensed. &lt;a href="https://github.com/souvikghosh957/secret-sanitizer-extension" rel="noopener noreferrer"&gt;Read every line&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Other features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Test Mode&lt;/strong&gt; — preview what gets masked without modifying your paste&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Stats dashboard&lt;/strong&gt; — track secrets blocked, see which patterns fire most&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Custom sites&lt;/strong&gt; — protect any domain with one click&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backup and restore&lt;/strong&gt; — export/import your config&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dark mode&lt;/strong&gt; and keyboard shortcuts&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;&lt;strong&gt;Chrome Web Store&lt;/strong&gt; — &lt;a href="https://chromewebstore.google.com/detail/secret-sanitizer/genolcmpopiemhpbdnhkaefllchgekja" rel="noopener noreferrer"&gt;one-click install&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GitHub&lt;/strong&gt; — &lt;a href="https://github.com/souvikghosh957/secret-sanitizer-extension" rel="noopener noreferrer"&gt;source code, issues, contributions welcome&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  What's next
&lt;/h2&gt;

&lt;p&gt;Firefox support, smart restore (auto-restore secrets when copying AI responses), and community pattern packs are all on the roadmap.&lt;/p&gt;

&lt;p&gt;If you try it, I'd love to hear — &lt;strong&gt;what patterns am I missing? Any false positives? Would you use a Firefox version?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Drop a comment or &lt;a href="https://github.com/souvikghosh957/secret-sanitizer-extension/issues" rel="noopener noreferrer"&gt;open an issue&lt;/a&gt;. And if it saves you from a leak, a ⭐ on GitHub helps other devs find it.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Paste safely out there 💚.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>cybersecurity</category>
      <category>ai</category>
      <category>buildinpublic</category>
    </item>
  </channel>
</rss>
