Tab Fatigue? Build Your Own OSINT Launcher Extension
In Open-Source Intelligence (OSINT), speed and consistency often make the difference between a solid lead and a dead end. Manually opening multiple tabs (VirusTotal, Shodan, AbuseIPDB,…) and pasting the same indicator over and over again is a manual tax that drains productivity, especially under time pressure
Years ago, I started addressing this problem with simple Excel formulas and macros, gradually evolving toward more “intelligent” automation. But it’s 2026, and the good news is this: you don’t need to be a Python or HTML expert to build something genuinely useful. Between AI assistants, online courses, documentation, and the colleague sitting next to you, there are more resources than ever.
There’s a simple rule I try to follow: if you perform a task more than three times, automate it.
Today, I’ll show you how to do exactly that by building a custom Chromium-based browser extension to streamline the initial reconnaissance phase of OSINT investigations. The extension runs locally on your machine, and you can follow along using the step-by-step file linked at the end of this post.
Why a Browser Extension?
Unlike standalone scripts, a browser extension lives exactly where your investigation happens: inside the browser. With a simple popup, you can launch searches across multiple OSINT tools simultaneously. This example focuses on passive investigations, meaning it queries publicly available sources without direct interaction with the target and without bypassing authentication or protections.
Step 1: Setting Up the Workspace
Before touching any code, create a clean working directory. On your computer, create a folder named: osint-launcher-extension
Inside this folder, we’ll create three essential files:
manifest.json – the “ID card” of your extension
popup.html – the user interface
popup.js – the logic and execution engine
Step 2: Manifest.json
The manifest tells the browser what the extension is and which permissions it needs. We’ll use Manifest V3, the current standard for modern browsers:
{
"manifest_version": 3,
"name": "my-browser-extension",
"version": "1.0",
"action": { "default_popup": "popup.html" },
"permissions": ["tabs"]
}
Note: The only permission required is tabs, which allows the extension to open new browser tabs for the results.
Step 3: Crafting the UI
There’s no need for a complex interface. For an internal OSINT tool, simplicity wins. A single input field and a dropdown menu to select the indicator type (IP, Domain, Email, or Username) are enough.
Using basic HTML and a small amount of CSS for spacing and readability ensures the tool is functional, lightweight, and easy to scan during investigations (see instructions from downloadable SOP).
Step 4: Coding the Engine (popup.js)
This is where the logic lives. We define a JavaScript object that maps indicator categories to OSINT URL templates. When you click “Launch All”, the script:
Takes the user input
Encodes it safely
Injects it into the relevant URLs
Opens each result in a new browser tab
For example, an IP address lookup can automatically launch searches on:
VirusTotal
AbuseIPDB
Shodan
All with a single click!
Step 5: Sideloading into Your Browser
Since this is a custom tool, there’s no need to publish it to the Chrome Web Store. You can install it locally using Developer Mode:
Open Chrome, Brave, or Edge and navigate to the extensions page (e.g.
chrome://extensions)Enable Developer mode
Click Load unpacked
Select the osint-launcher-extension folder
Once loaded, the extension icon will appear in your browser toolbar.
What difference does it make?
In one word: efficiency.
OSINT investigations are notorious for rabbit holes that consume time when workflows lack structure. By building your own tools, you maintain full visibility over where your data goes and how your searches are performed.
This implementation is intentionally simple, but the logic is easily extensible. With time, you could integrate PowerShell hooks or Python-based backends for deeper analysis, turning a lightweight browser tool into a more advanced investigation engine.
Happy Hunting.
Ethical Use & Disclaimer
This tool is intended strictly for legitimate, ethical, and lawful OSINT activities. All information accessed through this launcher:
Is publicly available
Is obtained from third-party services governed by their own terms of use
Requires no authentication bypass, scraping, or intrusion
Users are responsible for ensuring:
Compliance with applicable laws and regulations
Respect for privacy and data protection principles
Adherence to platform terms of service
This blog does not encourage surveillance, harassment, doxxing, or unauthorized targeting of individuals. It is designed for defensive security research, investigations, journalism, fraud analysis, and educational purposes only.