<?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: Nikhil Dabhade</title>
    <description>The latest articles on DEV Community by Nikhil Dabhade (@hnikhil).</description>
    <link>https://dev.to/hnikhil</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%2F3957669%2F9a66b9bc-0c48-4cd9-943d-577a50239c17.jpeg</url>
      <title>DEV Community: Nikhil Dabhade</title>
      <link>https://dev.to/hnikhil</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/hnikhil"/>
    <language>en</language>
    <item>
      <title>Truely agree, we have to use this tool</title>
      <dc:creator>Nikhil Dabhade</dc:creator>
      <pubDate>Fri, 29 May 2026 17:06:44 +0000</pubDate>
      <link>https://dev.to/hnikhil/truely-agree-we-have-to-use-this-tool-3f6a</link>
      <guid>https://dev.to/hnikhil/truely-agree-we-have-to-use-this-tool-3f6a</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/hnikhil/i-was-tired-of-security-scanners-with-90-false-positives-so-i-built-my-own-5eje" class="crayons-story__hidden-navigation-link"&gt;I was tired of security scanners with 90% false positives, so I built my own&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/hnikhil" class="crayons-avatar  crayons-avatar--l  "&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%2F3957669%2F9a66b9bc-0c48-4cd9-943d-577a50239c17.jpeg" alt="hnikhil profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/hnikhil" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Nikhil Dabhade
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Nikhil Dabhade
                
              
              &lt;div id="story-author-preview-content-3774961" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/hnikhil" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&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%2F3957669%2F9a66b9bc-0c48-4cd9-943d-577a50239c17.jpeg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Nikhil Dabhade&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/hnikhil/i-was-tired-of-security-scanners-with-90-false-positives-so-i-built-my-own-5eje" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;May 29&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/hnikhil/i-was-tired-of-security-scanners-with-90-false-positives-so-i-built-my-own-5eje" id="article-link-3774961"&gt;
          I was tired of security scanners with 90% false positives, so I built my own
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag crayons-tag--filled  " href="/t/showdev"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;showdev&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/opensource"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;opensource&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/security"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;security&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/tooling"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;tooling&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/hnikhil/i-was-tired-of-security-scanners-with-90-false-positives-so-i-built-my-own-5eje" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;1&lt;span class="hidden s:inline"&gt; reaction&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/hnikhil/i-was-tired-of-security-scanners-with-90-false-positives-so-i-built-my-own-5eje#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


              &lt;span class="hidden s:inline"&gt;Add Comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            2 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
    </item>
    <item>
      <title>I was tired of security scanners with 90% false positives, so I built my own</title>
      <dc:creator>Nikhil Dabhade</dc:creator>
      <pubDate>Fri, 29 May 2026 04:16:10 +0000</pubDate>
      <link>https://dev.to/hnikhil/i-was-tired-of-security-scanners-with-90-false-positives-so-i-built-my-own-5eje</link>
      <guid>https://dev.to/hnikhil/i-was-tired-of-security-scanners-with-90-false-positives-so-i-built-my-own-5eje</guid>
      <description>&lt;p&gt;Every developer knows the pain of running a security scan. You wait for it to finish, only to be handed a giant report filled with hundreds of warnings. You then have to spend the next three hours manually testing each one, only to find out that almost all of them are false positives. &lt;/p&gt;

&lt;p&gt;It is a massive waste of time, and it makes people ignore security alerts entirely.&lt;/p&gt;

&lt;p&gt;I wanted a tool that actually proved its findings before telling me about them. Since I could not find a lightweight, open-source scanner that did this, I decided to build VScanX.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How it works under the hood&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Instead of just checking if a header is missing or searching for static text, VScanX focuses on active validation. &lt;/p&gt;

&lt;p&gt;When it finds a potential vulnerability, it triggers a background process to safely exploit it. If it successfully triggers the exploit, it saves the exact HTTP requests and responses as a proof of concept. If it cannot prove that the vulnerability is actually exploitable, it simply does not report it. &lt;/p&gt;

&lt;p&gt;This means if VScanX alerts you to an issue, you can trust that it is real and reproducible. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What it scans&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I wanted the tool to cover the full stack of applications I work on, so I built modules for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Web Apps: SQL injection, XSS, IDOR, and exposed secrets in JavaScript.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Smart Contracts: Reentrancy loops and access control issues.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AI Sandbox: Prompt injection and code execution escapes for LLM apps&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It also has a local Next.js documentation dashboard so you can view your scan results, compare diffs between two different runs to see what changed, and manage everything privately on your own machine.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Give it a try&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The project is completely free and open source. If you want to check out the code, run a scan on your local projects, or contribute, the repository is on GitHub:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/hnikhil-dev/VScanX" rel="noopener noreferrer"&gt;Github&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I would love to hear your feedback on the verification logic or how you handle security sweeps in your own workflows.&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%2Fdo797ynbxar912jcdpns.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%2Fdo797ynbxar912jcdpns.png" alt=" " width="800" height="449"&gt;&lt;/a&gt;&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%2Fh54a53ey3cf5kp8yrt5i.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%2Fh54a53ey3cf5kp8yrt5i.png" alt=" " width="800" height="326"&gt;&lt;/a&gt;&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%2Fjpc9u5l2fmki2xyj70rj.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%2Fjpc9u5l2fmki2xyj70rj.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>security</category>
      <category>showdev</category>
      <category>tooling</category>
    </item>
  </channel>
</rss>
