PromptHub
Back to Blog
Developer Tools Security & Privacy

TermuxHackz/X-osint: Python OSINT Framework for Phone, Email & IP Research

B

Bright Coding

Author

13 min read 195 views
TermuxHackz/X-osint: Python OSINT Framework for Phone, Email & IP Research

Developers and security researchers frequently need to gather publicly available intelligence without deploying expensive commercial platforms. Whether you're investigating a suspicious phone number, verifying an email address, or mapping network infrastructure, the overhead of stitching together disparate tools slows down investigations. TermuxHackz/X-osint addresses this by bundling multiple OSINT capabilities into a single Python↗ Bright Coding Blog-based interactive framework—one designed specifically to run on constrained environments like Termux as well as standard Linux distributions.

This article examines what TermuxHackz/X-osint offers, how it works under the hood, and how to deploy it effectively. The focus keyword TermuxHackz/X-osint reflects the project's GitHub identity and its positioning as a practical, open-source alternative in the OSINT tooling space.


What is TermuxHackz/X-osint?

TermuxHackz/X-osint is an open-source intelligence (OSINT) framework written primarily in Python with supporting Bash scripts for installation and environment setup. Maintained by AnonyminHack5, the project has accumulated 2,483 stars and 311 forks as of its last commit on July 12, 2026. It is released under the GNU General Public License v3.0, ensuring it remains free to use, modify, and distribute.

The tool occupies a specific niche: it targets users who need portable OSINT capabilities on Android via Termux, while remaining fully functional on Linux and macOS. This dual-platform focus is deliberate—the README explicitly markets it as "Best osint tool for Termux and linux," and much of the documentation addresses Termux-specific installation quirks that other OSINT frameworks often ignore.

X-osint operates as an interactive command-line application. After installation, users launch it with a single command (xosint) and navigate a numbered menu to select investigation types. This design prioritizes accessibility over automation—you don't need to memorize complex CLI flags for occasional use, though the underlying Python modules could theoretically be imported programmatically.

The project's active maintenance is worth noting. Version 2.3 represents the current release, with changelogs documenting regular bug fixes and feature additions. The maintainer has also established partnerships—notably integrating tookie-osint as an optional extended toolset—suggesting a commitment to expanding capabilities through collaboration rather than reinventing every component.


Key Features

X-osint's feature set spans 17 documented capabilities, organized around common OSINT investigation vectors:

Identity & Contact Intelligence

  • IP Address Information Gathering: Geolocation, ISP identification, and related network data
  • Email Address Information Gathering: Validation and enrichment of email addresses
  • Phone Number Information Lookup: Carrier identification and country-level geolocation (via Opencage and NumVerify APIs)
  • Email Finder: Discover email addresses associated with a person's name
  • ProtonMail OSINT: Account validity testing, address generation for target discovery, ProtonVPN IP affiliation checks, and PGP key retrieval

Network & Infrastructure

  • Host Finding: DNS resolution and host discovery
  • Port Finding: Service enumeration on target hosts
  • Subdomain Enumeration: Dictionary-based subdomain discovery (requires external wordlist)
  • DNS Lookup & DNS Reverse: Forward and reverse DNS queries
  • Network Mapper: WiFi network mapping (marked as beta functionality in v2.3)

Digital Artifacts & Vulnerabilities

  • Location Metadata Extraction from Image: EXIF GPS data extraction
  • Metadata Extraction from Any File: Extended beyond images to general file types in v2.3
  • CVE Exploits Finder: Search known vulnerability databases
  • Exploit Open Source Vulnerability Database: Integration with OSV for vulnerability intelligence
  • VIN Number Identification: Vehicle information retrieval from government databases without requiring an API key
  • License Plate OSINT: US-registered plate lookup (limited to specific states: Alabama through District of Columbia)

Analysis Utilities

  • Text Analysis: NLP processing including tokenization, POS tagging, NER, and dependency parsing (powered by spaCy)
  • SMTP Analysis: Server vulnerability enumeration
  • Google Dork Hacking: Pre-built search queries for information discovery
  • DNSinf OSINT: DNS server benchmarking and performance testing (added in v2.3)

Several features require external API keys: Shodan (for host/port/exploit features), Hunter (email discovery), Opencage (geocoding), Google Custom Search Engine (ImageHunt), Google Cloud Console, NumVerify, and Vonage. The README is transparent about these dependencies, providing direct links to registration pages.


Use Cases

1. Security Researcher Verifying Incident Indicators

An analyst investigating a phishing campaign can use TermuxHackz/X-osint to rapidly check multiple indicators: the sender's email address (feature 2), any linked IP addresses from headers (feature 1), and associated phone numbers if present in the message body (feature 15). The interactive menu allows quick pivoting between data types without context-switching between separate tools.

2. Journalist Conducting Source Verification

A reporter verifying a tip can use the email finder (feature 8) to locate contact addresses for a named individual, then validate those addresses through the email information module. The metadata extraction capabilities (features 3 and 16) allow analysis of documents or images submitted by sources to check for location leaks or editing history.

3. Penetration Tester Mapping Client Attack Surface

During reconnaissance, testers can chain subdomain enumeration (feature 6) with DNS lookup/reverse (features 10-11) and Shodan integration (features 4-9) to build a comprehensive picture of externally exposed infrastructure. The CVE exploits finder (feature 7) adds vulnerability context to discovered services.

4. Vehicle Fraud Investigator

The VIN extractor (feature 12) and license plate OSINT (feature documented in dedicated section) provide vehicle history data without commercial database subscriptions. This is particularly relevant for investigators working with US-registered vehicles where the supported state coverage applies.

5. Privacy-Conscious Individual Auditing Personal Exposure

Users can check what information their ProtonMail account exposes (dedicated ProtonMail OSINT section), or whether their IP address appears affiliated with ProtonVPN exit nodes. The Google Dork queries help identify what personal information may be inadvertently indexed by search engines.


Installation & Setup

X-osint supports three primary installation paths: standard Linux, Termux (Android), and Python virtual environment (fallback for dependency conflicts).

Standard Linux Installation

# Install Python 3 pip if not present
sudo apt install python3-pip -y

# Clone repository to home directory
cd $HOME
git clone https://github.com/TermuxHackz/X-osint

# Enter project directory
cd X-osint

# Make all scripts executable
chmod +x *

# Run installation script
sudo bash setup.sh

# Launch the tool
sudo xosint
# OR directly with Python
python xosint

Step-by-step explanation:

  • apt install python3-pip: Ensures pip is available for Python package management
  • git clone: Downloads the latest master branch
  • chmod +x *: Grants execute permissions to setup scripts and the main xosint binary
  • setup.sh: Automates dependency installation from requirements.txt, copies xosint to /usr/local/bin, and sets appropriate permissions
  • sudo xosint: Runs the installed system-wide command; omit sudo only if your user has appropriate permissions

Termux Installation (Android)

The process mirrors Linux with two critical substitutions: remove sudo and replace apt with pkg:

pkg install python3-pip -y
cd $HOME
git clone https://github.com/TermuxHackz/X-osint
cd X-osint
chmod +x *
bash setup.sh
xosint

Termux-specific considerations: The README notes that setup.sh now handles a common failure mode where chmod fails on $PREFIX/bin due to Android storage restrictions. If you encounter "Operation not permitted" errors, ensure you're running the latest master branch where this is fixed, or manually execute chmod +x $PREFIX/bin/xosint.

Python Virtual Environment (Fallback Method)

Use this when standard installation fails due to missing packages or system-level conflicts:

sudo apt install python3-pip python3-venv -y
cd $HOME
git clone https://github.com/TermuxHackz/X-osint
cd X-osint
chmod +x *.sh

# Create isolated Python environment
python3 -m venv X-osint_venv

# Activate environment
source X-osint_venv/bin/activate

# Install dependencies in isolation
pip install -r requirements.txt

# Run installation and launch
sudo bash setup.sh
sudo xosint
# OR: python xosint

Critical post-usage step: Deactivate the virtual environment when finished to avoid PATH pollution:

deactivate

Reactivate anytime with source X-osint_venv/bin/activate from the project directory.

macOS Virtual Environment

python3 -m venv venv
source venv/bin/activate
# Run xosint script, then deactivate when done
deactivate

Real Code Examples

The README provides explicit command sequences rather than traditional API code examples. Below are the documented usage patterns with technical context.

Example 1: Basic Interactive Session

After successful installation, X-osint operates through a numbered menu system:

# Launch the interactive framework
xosint

Once launched, the terminal displays a menu with numbered options. The user types a number and presses Enter:

# Example session flow (documented in README):
# Type '1' → IP Address Info prompt appears → enter target IP
# Type '2' → Email Address Info prompt appears → enter target email
# Type '15' → SMTP Analysis prompt appears → enter target server
# Type '00' → Exit to shell

Explanation: This design abstracts the underlying Python function calls. The xosint executable is a wrapper script (installed to /usr/local/bin or $PREFIX/bin) that invokes the main Python module. The interactive loop handles input validation and routes to appropriate handler functions—users don't interact with Python import statements directly.

Example 2: Manual Update Procedure (Linux)

When automatic updates fail or for version migrations, the README documents this precise sequence:

# Navigate to home and remove existing binary
cd $HOME
cd /usr/local/bin
sudo rm xosint

# Re-clone fresh repository
cd $HOME
git clone https://github.com/TermuxHackz/X-osint
cd X-osint

# Re-apply permissions and install
chmod +x *
bash setup.sh

Explanation: This reveals X-osint's deployment model: the setup.sh script copies the main xosint file to a system PATH directory. Updates require removing this stale copy before reinstallation. The manual procedure exists because automatic updates (menu option 99, available from v2.1+) may fail in restricted environments.

Example 3: Virtual Environment Activation for macOS

# From within X-osint directory
cd X-osint-fork

# Activate pre-created environment
source X-osint_venv/bin/activate

# Launch with elevated permissions
sudo xosint

# Clean exit: deactivate environment
deactivate

Explanation: macOS users frequently encounter permission and dependency conflicts with system Python. The virtual environment isolates X-osint's specific package versions (including googlesearch, ping3, stripe, prompt_toolkit, distro, opencage, phonenumbers, piexif, colorama, and others listed in requirements.txt) from the system Python installation.


Advanced Usage & Best Practices

API Key Management: Multiple features require external API keys. The README recommends obtaining keys for Shodan, Hunter, Opencage, Google CSE, Google Cloud Console, NumVerify, and Vonage before attempting corresponding features. Store these in environment variables or secure key stores rather than hardcoding in scripts—though the README doesn't specify a configuration file format, inspecting the Python source would reveal the expected variable names.

Subdomain Enumeration Wordlist: The subdomain feature requires an external wordlist not bundled with the repository. The README links to a MediaFire-hosted file. For operational security, consider substituting this with your own curated wordlist appropriate to the target scope.

Phone Number Geolocation Limitations: The README contains an explicit technical clarification that phone number "location" returns country-level center coordinates, not device-level GPS. The Opencage integration performs forward geocoding of country names derived from calling codes (+91 → India → center coordinates ~Uttar Pradesh). This is a common misconception the maintainer proactively addresses—adjust expectations and client communications accordingly.

Desktop Launcher Creation (Linux): For frequent GUI environment use, the README documents creating a .desktop launcher pointing to sudo xosint with working directory /usr/local/bin and a custom icon from the repository's Icons/ directory. Enable "Run in terminal" since the interactive menu requires TTY access.

Update Strategy: Users on v2.1+ can use menu option 99 for automatic updates, selecting Termux or Linux as appropriate. For earlier versions or failed automatic updates, use the manual re-clone procedure documented above.


Comparison with Alternatives

Tool Platform Focus Architecture Key Differentiator Trade-off vs X-osint
TermuxHackz/X-osint Termux + Linux Python CLI menu Native Termux optimization; bundled vehicle/VIN lookups Requires multiple API keys for full functionality; menu UI less scriptable than pure CLI
tookie-osint (partner project) Cross-platform Python Modular design; extensive username enumeration No native Termux installation docs; requires separate installation
theHarvester Linux primarily Python Mature email harvesting; passive reconnaissance focus No interactive menu; steeper learning curve; no mobile platform support
SpiderFoot Cross-platform (web UI) Python/Go Web interface; extensive correlation engine Heavy resource requirements; complex setup; unsuitable for Termux

X-osint's primary advantage is its deliberate optimization for constrained environments. Where SpiderFoot requires substantial resources and theHarvester assumes a standard Linux workstation, X-osint's setup.sh handles Termux-specific edge cases like python-cryptography compilation failures. The trade-off is architectural: the interactive menu prioritizes human use over automation, making it less suitable for CI/CD pipelines or bulk unattended operations.

The tookie-osint partnership is strategically notable—users gain access to a more modular toolset without leaving X-osint's installation framework, effectively expanding capabilities while maintaining the Termux-friendly deployment model.


FAQ

Q: What license covers TermuxHackz/X-osint? A: GNU General Public License v3.0. Free to use, modify, and distribute with source disclosure requirements.

Q: Does it run on Windows natively? A: The README documents Linux, Termux, and macOS. Windows is not listed as supported; use WSL2 as alternative.

Q: Why do I get ModuleNotFoundError: No module named 'googlesearch'? A: Run pip install -r requirements.txt from the X-osint directory. Do NOT install the unrelated google package. Add --break-system-packages on Linux if pip refuses.

Q: Is tkinter required? A: Yes, for certain features. Install with pkg install python-tkinter (Termux) or sudo apt install python3-tk (Debian/Ubuntu/Kali).

Q: Can I get exact GPS location from a phone number? A: No. The tool returns country-level center coordinates via forward geocoding, not device location. This is a technical limitation clearly documented by the maintainer.

Q: How do I report bugs or request features? A: Email AnonyminHack5@protonmail.com or open a GitHub issue. Major changes should be discussed via issue before pull request.

Q: What Python version is required? A: Python 3, with pip and internet connectivity. Specific version minimums are not stated in the README.


Conclusion

TermuxHackz/X-osint fills a genuine gap in the OSINT tooling ecosystem: a capable, actively maintained framework that doesn't abandon mobile and constrained environments. Its 2,483 stars and consistent version releases (through v2.3 as of July 2026) indicate sustained community interest and maintainer commitment.

The tool is best suited for: security researchers needing portable reconnaissance capabilities, journalists conducting field verification without laptop access, penetration testers building quick target profiles, and privacy advocates auditing personal digital exposure. The interactive menu design lowers the barrier for occasional users, while the underlying Python modules offer extensibility for those willing to inspect the source.

The API key dependencies and country-level geolocation limitations are honest constraints, not hidden flaws—the README's transparency about these limitations builds trust. Users should evaluate whether the bundled feature set (particularly the vehicle/VIN lookups and ProtonMail OSINT) justifies the setup overhead compared to more minimal alternatives.

For developers ready to explore TermuxHackz/X-osint, the project awaits at https://github.com/TermuxHackz/X-osint. Clone it, run setup.sh, and begin mapping your first investigation through the numbered menu. If the tool proves valuable, consider starring the repository or supporting the maintainer's continued development through the linked donation options.


For related open-source security tooling coverage, see our analysis of [INTERNAL_LINK: mobile penetration testing frameworks] and [INTERNAL_LINK: Python-based reconnaissance tools].

Comments (0)

Comments are moderated before appearing.

No comments yet. Be the first to share your thoughts!

Recommended Prompts

View All