<?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: OpenCV</title>
    <description>The latest articles on DEV Community by OpenCV (@the_king89).</description>
    <link>https://dev.to/the_king89</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3586005%2Fe2d7e383-5355-4d5c-9071-37bd92ecaee6.png</url>
      <title>DEV Community: OpenCV</title>
      <link>https://dev.to/the_king89</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/the_king89"/>
    <language>en</language>
    <item>
      <title>Holehe Alternative in 2026: Modern OSINT Email &amp; Username Intelligence with user-scanner</title>
      <dc:creator>OpenCV</dc:creator>
      <pubDate>Thu, 13 Aug 2026 18:21:49 +0000</pubDate>
      <link>https://dev.to/the_king89/holehe-alternative-in-2026-modern-osint-email-username-intelligence-with-user-scanner-4m1o</link>
      <guid>https://dev.to/the_king89/holehe-alternative-in-2026-modern-osint-email-username-intelligence-with-user-scanner-4m1o</guid>
      <description>&lt;p&gt;When mapping digital footprints, security analysts and open-source intelligence (OSINT) practitioners rely heavily on registration checkers. For years, single-purpose utilities like &lt;strong&gt;Holehe&lt;/strong&gt; were the industry standard for checking email recovery endpoints. However, modern target profiling requires deeper correlation, higher concurrency, and cross-platform pivoting across both emails and usernames.&lt;/p&gt;

&lt;p&gt;Enter &lt;strong&gt;&lt;code&gt;user-scanner&lt;/code&gt;&lt;/strong&gt;—a high-throughput, 2-in-1 Python OSINT engine designed for deep email registration checking, username profiling, and cross-scan intelligence.&lt;/p&gt;




&lt;h2&gt;
  
  
  Technical Comparison: &lt;code&gt;user-scanner&lt;/code&gt; vs. Legacy OSINT Tools
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature / Capability&lt;/th&gt;
&lt;th&gt;Holehe&lt;/th&gt;
&lt;th&gt;Sherlock / Maigret&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;&lt;code&gt;user-scanner&lt;/code&gt;&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Primary Input Vectors&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Email Only&lt;/td&gt;
&lt;td&gt;Username Only&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;2-in-1 (380+ Combined Vectors)&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Target Integration&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;~120 Email Sites&lt;/td&gt;
&lt;td&gt;Scrapes Web Forms&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;155+ Email &amp;amp; 225+ Username Sites&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Pivoting / Cross-Scanning&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;❌ No&lt;/td&gt;
&lt;td&gt;❌ No&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;✅ Auto-Pivots (Email ↔ Username ↔ Links)&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Breach Intelligence&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;❌ No&lt;/td&gt;
&lt;td&gt;❌ No&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;✅ Hudson Rock Infostealer API (&lt;code&gt;--hudson&lt;/code&gt;)&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Engine Core&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Basic Async&lt;/td&gt;
&lt;td&gt;Basic Requests&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;&lt;code&gt;httpx&lt;/code&gt; + &lt;code&gt;curl_cffi&lt;/code&gt; (TLS Impersonation)&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Reporting Formats&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;CLI / JSON&lt;/td&gt;
&lt;td&gt;CLI / CSV / HTML&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;PDF (with Media/Avatars), JSON, CSV&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Deployment / Ecosystem&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Pip&lt;/td&gt;
&lt;td&gt;Pip&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Pip, Virtual Env, Nix (&lt;code&gt;nix run&lt;/code&gt;)&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Core Capabilities of &lt;code&gt;user-scanner&lt;/code&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Cross-Scan &amp;amp; Pivot Intelligence Engine
&lt;/h3&gt;

&lt;p&gt;Unlike legacy checkers that stop after returning a boolean hit, &lt;code&gt;user-scanner&lt;/code&gt; features an automated cross-scanning engine (&lt;code&gt;--cross-scan&lt;/code&gt;). It mines exposed handles, profile links, and secondary email addresses from initial scan metadata and recursively pivots across secondary target vectors.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;-e&lt;/code&gt; → Username:&lt;/strong&gt; Extracts handles or social links exposed on an email's registered profile.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;-u&lt;/code&gt; → Email:&lt;/strong&gt; Extracts public email addresses published on target profile pages.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multi-Depth Chains:&lt;/strong&gt; Supports configurable chain depth (&lt;code&gt;--cross-depth&lt;/code&gt;) and link validation rules (&lt;code&gt;--cross-links verified&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Infostealer Breach Intelligence (&lt;code&gt;--hudson&lt;/code&gt;)
&lt;/h3&gt;

&lt;p&gt;Integrates directly with Hudson Rock's infostealer malware infection logs. Running &lt;code&gt;--hudson&lt;/code&gt; alongside an email or username scan instantly correlates targets against compromise logs and malware-exfiltrated credentials.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. High-Throughput Request Engine &amp;amp; Anti-Blocking
&lt;/h3&gt;

&lt;p&gt;Built on top of &lt;code&gt;httpx&lt;/code&gt; and &lt;code&gt;curl_cffi&lt;/code&gt;, &lt;code&gt;user-scanner&lt;/code&gt; utilizes automated TLS fingerprint impersonation to defeat basic web application firewalls (WAFs) and rate-limiting. It includes built-in proxy rotation with protocol auto-detection (&lt;code&gt;http&lt;/code&gt;, &lt;code&gt;socks5&lt;/code&gt;) and health validation (&lt;code&gt;--validate-proxies&lt;/code&gt;).&lt;/p&gt;




&lt;h2&gt;
  
  
  Quickstart Usage Examples
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Single &amp;amp; Cross-Scan Pivot Execution
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Basic email scan&lt;/span&gt;
user-scanner &lt;span class="nt"&gt;-e&lt;/span&gt; target@domain.com

&lt;span class="c"&gt;# Deep pivot scan: extract handles &amp;amp; secondary emails up to 2 hops deep&lt;/span&gt;
user-scanner &lt;span class="nt"&gt;-e&lt;/span&gt; target@domain.com &lt;span class="nt"&gt;--cross-scan&lt;/span&gt; &lt;span class="nt"&gt;--cross-depth&lt;/span&gt; 2

&lt;span class="c"&gt;# Username scan with Infostealer Malware Breach check&lt;/span&gt;
user-scanner &lt;span class="nt"&gt;-u&lt;/span&gt; targetuser &lt;span class="nt"&gt;--hudson&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  High-Concurrency Output &amp;amp; Reporting
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Execute with custom concurrency and generate a visual PDF report&lt;/span&gt;
user-scanner &lt;span class="nt"&gt;-u&lt;/span&gt; targetuser &lt;span class="nt"&gt;-C&lt;/span&gt; 100 &lt;span class="nt"&gt;-f&lt;/span&gt; pdf &lt;span class="nt"&gt;-o&lt;/span&gt; report.pdf

&lt;span class="c"&gt;# Rotate proxies with pre-scan health validation&lt;/span&gt;
user-scanner &lt;span class="nt"&gt;-u&lt;/span&gt; targetuser &lt;span class="nt"&gt;-P&lt;/span&gt; proxies.txt &lt;span class="nt"&gt;--validate-proxies&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Direct Python Integration (Library Mode)
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;asyncio&lt;/span&gt;
&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="n"&gt;user_scanner.core&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;engine&lt;/span&gt;
&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="n"&gt;user_scanner.email_scan.shopping&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;etsy&lt;/span&gt;

&lt;span class="k"&gt;async&lt;/span&gt; &lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;():&lt;/span&gt;
    &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="n"&gt;engine&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;check&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;etsy&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;target@gmail.com&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;result&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;to_json&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt;

&lt;span class="n"&gt;asyncio&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;run&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;For OSINT researchers looking for an active, modern, and extensible successor to Holehe, &lt;strong&gt;&lt;code&gt;user-scanner&lt;/code&gt;&lt;/strong&gt; offers a comprehensive solution. By pairing email enumeration with username profiling, TLS fingerprinting, infostealer intel, and recursive cross-scanning, it streamlines digital footprinting into a single CLI tool.&lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>python</category>
      <category>security</category>
      <category>tools</category>
    </item>
    <item>
      <title>The Undisputed King 👑 of 2026 OSINT: Why User Scanner is the Only Recon Tool You Need</title>
      <dc:creator>OpenCV</dc:creator>
      <pubDate>Mon, 06 Jul 2026 07:07:02 +0000</pubDate>
      <link>https://dev.to/the_king89/the-undisputed-king-of-2026-osint-why-user-scanner-is-the-only-recon-tool-you-need-42ei</link>
      <guid>https://dev.to/the_king89/the-undisputed-king-of-2026-osint-why-user-scanner-is-the-only-recon-tool-you-need-42ei</guid>
      <description>&lt;p&gt;If you’ve spent any time in the trenches of Open Source Intelligence (OSINT) recently, you know the absolute pain of modern identity reconnaissance. &lt;/p&gt;

&lt;p&gt;The "Old Guard" of free CLI tools is dying. They are plagued by unmaintained modules, rate-limit traps, and Cloudflare walls. But worse than all of that? &lt;strong&gt;They lie to you.&lt;/strong&gt; They hit a custom 404 page, get confused by the HTML, and confidently print: &lt;code&gt;[+] Account Found!&lt;/code&gt; sending you down a three-hour rabbit hole chasing a ghost. &lt;/p&gt;

&lt;p&gt;In this game, the worst data isn't missing data. It's fake data. &lt;/p&gt;

&lt;p&gt;Enter &lt;strong&gt;&lt;code&gt;user-scanner&lt;/code&gt;&lt;/strong&gt; by &lt;em&gt;kaifcodec&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;It has quietly (and now, very loudly) taken the throne as the undisputed king of free, terminal-based identity mapping in 2026. It is the loyal dark knight of OSINT: it will stand in the war zone all day, take the hits, and if it fails, it will look you in the eye and say &lt;em&gt;"I failed."&lt;/em&gt; But it will &lt;strong&gt;never&lt;/strong&gt; give you a false positive.&lt;/p&gt;

&lt;p&gt;Here is why &lt;code&gt;user-scanner&lt;/code&gt; is blowing everything else out of the water right now.&lt;/p&gt;




&lt;h2&gt;
  
  
  1. The 2-in-1 Engine That Actually Works
&lt;/h2&gt;

&lt;p&gt;Until now, you had to maintain a fragmented mess of Python scripts—one for emails, one for usernames, and a browser open for breach data. &lt;/p&gt;

&lt;p&gt;&lt;code&gt;user-scanner&lt;/code&gt; bridges the gap. It supports &lt;strong&gt;295+ scan vectors&lt;/strong&gt; (110+ email-integrated sites and 185+ username platforms). You can run targeted email checks, massive username sweeps, or simultaneous dual-identifier scans from a single command line.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;user-scanner &lt;span class="nt"&gt;-e&lt;/span&gt; johndoe@gmail.com   &lt;span class="c"&gt;# Scan email footprint&lt;/span&gt;
user-scanner &lt;span class="nt"&gt;-u&lt;/span&gt; johndoe             &lt;span class="c"&gt;# Map username presence&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  2. Deep Profile Extraction (No More "Dumb Requests")
&lt;/h2&gt;

&lt;p&gt;Lazy tools just do a basic HTTP request and look for a 200 status code. &lt;code&gt;user-scanner&lt;/code&gt; acts like a scalpel. It actively targets signup-attempt endpoints, custom mobile APIs, and parses the actual JSON responses. &lt;/p&gt;

&lt;p&gt;When it gets a hit, it doesn't just say "Found." It extracts the metadata. Look at what happens when you hit a target's Etsy account using its library mode:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"email"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"test@gmail.com"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"category"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Shopping"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"site_name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Etsy"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"status"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Registered"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"extra"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;98832&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"test123"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"has_public_page"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"No"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"joined"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2010-09-19 05:04:06"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"last_profile_update"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2020-07-31 01:40:24"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"avatar"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"[https://i.etsystatic.com/.../default_avatar.png](https://i.etsystatic.com/.../default_avatar.png)"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Creation dates. Follower counts. Privacy settings. Avatar URLs. It provides the &lt;strong&gt;cryptographic proof&lt;/strong&gt; that the account exists, completely neutralizing the risk of a false positive.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Zero-Cost Infostealer Intelligence Fusion
&lt;/h2&gt;

&lt;p&gt;This is where it goes from a "good tool" to an "enterprise-grade weapon." &lt;/p&gt;

&lt;p&gt;By passing the &lt;code&gt;--hudson&lt;/code&gt; flag, &lt;code&gt;user-scanner&lt;/code&gt; directly integrates with &lt;strong&gt;Hudson Rock&lt;/strong&gt; threat intelligence. In a fraction of a second, it checks if your target's username or email has been exposed in active infostealer malware logs (like Lumma or RedLine). &lt;/p&gt;

&lt;p&gt;Getting automated, command-line cross-referencing for infostealer logs without paying thousands of dollars for corporate API keys is frankly absurd. &lt;/p&gt;

&lt;h2&gt;
  
  
  4. Built for the Trenches: Nix, Proxies, and OPSEC
&lt;/h2&gt;

&lt;p&gt;The architecture of this tool is a masterclass in modern security development:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pre-Scan Proxy Validation:&lt;/strong&gt; If you pass it a proxy list, it doesn't just blindly pipe them in. It uses &lt;code&gt;--validate-proxies&lt;/code&gt; to forcefully health-check every proxy against a live target first. Dead proxies are dropped before the scan starts, ensuring connection timeouts aren't misread as "Account Not Found."&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Nix Shell Support:&lt;/strong&gt; For the paranoid analyst, you don't even need to pollute your local environment. Run &lt;code&gt;nix run github:kaifcodec/user-scanner/main&lt;/code&gt; and fire off a scan in a completely sandboxed, disposable container.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Brutal Honesty:&lt;/strong&gt; If an API changes overnight or your IP gets geoblocked, it throws a clean &lt;code&gt;403 Forbidden&lt;/code&gt; error. It forces you to fix your network state rather than guessing the result. &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Verdict
&lt;/h2&gt;

&lt;p&gt;We are living in an era where data is heavily guarded and APIs are being locked down. Tools that rely on bloated spreadsheets of 1,000+ broken sites are dead weight.&lt;/p&gt;

&lt;p&gt;If you are an investigator, a red teamer, or just an OSINT enthusiast who values brutal accuracy over ego, &lt;code&gt;user-scanner&lt;/code&gt; is the only tool you need in your PATH right now. It doesn't hype up its results. It just monitors the line, extracts the truth, and fails gracefully when the walls are too high. &lt;/p&gt;

&lt;p&gt;Check it out, star the repo, and stop letting bad tools ruin your investigations. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;GitHub Repo:&lt;/strong&gt; &lt;a href="http://github.com/kaifcodec/user-scanner" rel="noopener noreferrer"&gt;http://github.com/kaifcodec/user-scanner&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;PyPI:&lt;/strong&gt; &lt;code&gt;pip install user-scanner&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>osint</category>
      <category>cybersecurity</category>
      <category>github</category>
      <category>opsec</category>
    </item>
    <item>
      <title>RIP Holehe: Why User-Scanner is the New King of Email OSINT 👑</title>
      <dc:creator>OpenCV</dc:creator>
      <pubDate>Sat, 21 Feb 2026 15:47:07 +0000</pubDate>
      <link>https://dev.to/the_king89/rip-holehe-why-user-scanner-is-the-new-king-of-email-osint-2cff</link>
      <guid>https://dev.to/the_king89/rip-holehe-why-user-scanner-is-the-new-king-of-email-osint-2cff</guid>
      <description>&lt;h1&gt;
  
  
  Why Holehe is Dead and Why You Should Switch to User-Scanner 🔍
&lt;/h1&gt;

&lt;p&gt;If you’ve been in the OSINT space for a while, you know &lt;strong&gt;Holehe&lt;/strong&gt;. It was the gold standard for email lookups. But let’s be real: Holehe hasn't seen a major update in years, many of its modules are broken, and it frequently hits rate limits or returns false positives.&lt;/p&gt;

&lt;p&gt;In 2026, it’s time to move on. Enter &lt;strong&gt;user-scanner&lt;/strong&gt;—the modern, lightweight, and actively maintained successor that does everything Holehe did, but better.&lt;/p&gt;




&lt;h2&gt;
  
  
  🛠️ Key Features of User-Scanner
&lt;/h2&gt;

&lt;p&gt;User-Scanner isn't just a replacement; it’s an upgrade. It combines the best of &lt;strong&gt;Holehe&lt;/strong&gt; (email scanning) and &lt;strong&gt;Sherlock&lt;/strong&gt; (username scanning) into one streamlined tool.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;2-in-1 Dual Scanning:&lt;/strong&gt; Check email registrations and username availability in a single command.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Smart Permutations:&lt;/strong&gt; Automatically generates "wildcard" variations of usernames (e.g., adding suffixes) to find hidden or secondary accounts.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Active Module Updates:&lt;/strong&gt; Unlike Holehe, User-Scanner is actively maintained to fix modules as soon as platforms change their login or registration flows.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Advanced Proxy Support:&lt;/strong&gt; Includes a built-in &lt;code&gt;--validate-proxies&lt;/code&gt; flag to filter out dead proxies before you start your scan.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Clean Exporting:&lt;/strong&gt; Native support for &lt;strong&gt;JSON&lt;/strong&gt; and &lt;strong&gt;CSV&lt;/strong&gt; formats, making it easy to pipe data into other tools or reports.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Developer Library Mode:&lt;/strong&gt; You can import it directly into your Python projects using &lt;code&gt;user_scanner.core&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🚀 Quick Start
&lt;/h2&gt;

&lt;p&gt;Getting started is faster than setting up a virtual environment (though you should still use one!).&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Installation
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pip &lt;span class="nb"&gt;install &lt;/span&gt;user-scanner
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  2. The "Better Than Holehe" Scan
&lt;/h3&gt;

&lt;p&gt;Replace your old Holehe workflow with this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;user-scanner &lt;span class="nt"&gt;-e&lt;/span&gt; &lt;span class="s2"&gt;"target_email@gmail.com"&lt;/span&gt; &lt;span class="nt"&gt;-v&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  3. Bulk Scanning (A Feature Holehe Lacked)
&lt;/h3&gt;

&lt;p&gt;Have a list of 100 emails? No problem:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;user-scanner &lt;span class="nt"&gt;-ef&lt;/span&gt; emails.txt &lt;span class="nt"&gt;-o&lt;/span&gt; results.json
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Library mode for email_scan
&lt;/h3&gt;

&lt;p&gt;Only available for &lt;code&gt;user-scanner&amp;gt;=1.2.0&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;See full usage (eg. category checks, full scan) guide &lt;a href="https://github.com/kaifcodec/user-scanner/blob/main/docs/USAGE.md" rel="noopener noreferrer"&gt;library usage&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Email scan example (single module):
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;asyncio&lt;/span&gt;
&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="n"&gt;user_scanner.core&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;engine&lt;/span&gt;
&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="n"&gt;user_scanner.email_scan.dev&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;github&lt;/span&gt;

&lt;span class="k"&gt;async&lt;/span&gt; &lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;():&lt;/span&gt;
    &lt;span class="c1"&gt;# Engine detects 'email_scan' path -&amp;gt; returns "Registered" status
&lt;/span&gt;    &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="n"&gt;engine&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;check&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;github&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;test@gmail.com&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;json_data&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;result&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;to_json&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="c1"&gt;# returns JSON output
&lt;/span&gt;    &lt;span class="n"&gt;csv_data&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;result&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;to_csv&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;   &lt;span class="c1"&gt;# returns CSV output
&lt;/span&gt;    &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;json_data&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;             &lt;span class="c1"&gt;# prints the json data
&lt;/span&gt;
&lt;span class="n"&gt;asyncio&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;run&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Output:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"email"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"test@gmail.com"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"category"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Dev"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"site_name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Github"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"status"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Registered"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"url"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://github.com"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"reason"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;""&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  💀 Why "Holehe" is Dead
&lt;/h2&gt;

&lt;p&gt;Holehe relied on specific password-reset and registration endpoints that many platforms (like X/Twitter and Instagram) have since hardened or changed. Without active maintenance, a tool like Holehe becomes a "false negative" machine. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;User-Scanner&lt;/strong&gt; uses updated logic, better error handling and modern libraries like &lt;code&gt;httpx&lt;/code&gt; to handle these requests more reliably and faster than the older &lt;code&gt;requests&lt;/code&gt; or &lt;code&gt;trio&lt;/code&gt; based implementations.&lt;/p&gt;




&lt;h2&gt;
  
  
  🛡️ Use Responsibly
&lt;/h2&gt;

&lt;p&gt;This tool is built for &lt;strong&gt;authorized security research&lt;/strong&gt;, bug bounty hunting, and digital footprint audits. Always ensure your investigations comply with local laws and the Terms of Service of the platforms being scanned.&lt;/p&gt;




&lt;h2&gt;
  
  
  📈 Conclusion
&lt;/h2&gt;

&lt;p&gt;If your OSINT toolkit still relies on Holehe, you're likely missing half the picture. Switch to User-Scanner for more accurate data and a much better developer experience.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Check it out on GitHub:&lt;/strong&gt; &lt;a href="https://github.com/kaifcodec/user-scanner" rel="noopener noreferrer"&gt;kaifcodec/user-scanner&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Are you still holding onto legacy tools, or have you made the switch? Let's talk in the comments!&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>osint</category>
      <category>cybersecurity</category>
      <category>hacking</category>
    </item>
  </channel>
</rss>
