🔍 A fast, reliable phone number OSINT tool
Ignorant allows you to check if a phone number is associated with accounts on various platforms like Amazon, Instagram, and Snapchat. This is a complete Rust port of the original Python tool, offering better performance, memory safety, and zero runtime dependencies.
cargo install ignorant-rsgit clone https://github.com/jonaylor89/ignorant.git
cd ignorant/
cargo build --releaseignorant 33 644637111ignorant [OPTIONS] <COUNTRY_CODE> <PHONE>
Arguments:
<COUNTRY_CODE> Country code of the phone (Example: 33)
<PHONE> Target phone number (Example: 644637111)
Options:
--only-used Display only sites where the phone number is used
--no-color Disable colored terminal output
--no-clear Don't clear the terminal before showing results
-T, --timeout <TIMEOUT> Set request timeout in seconds [default: 10]
-h, --help Print help information
-V, --version Print version information# Basic check
ignorant 1 5551234567
# Only show platforms where the number exists
ignorant 44 7700900000 --only-used
# Disable colors and clearing for logging
ignorant 33 612345678 --no-color --no-clear
# Set custom timeout
ignorant 49 1234567890 --timeout 30The tool outputs results in a clear, color-coded format:
- 🟢 [+] Phone number found on platform
- 🟣 [-] Phone number not found on platform
- 🔴 [x] Rate limited or error occurred
Each result includes:
{
"name": "instagram",
"domain": "instagram.com",
"method": "other",
"frequent_rate_limit": false,
"rate_limit": false,
"exists": false
}# Run all tests
cargo test
# Run with output
cargo test -- --nocapture
# Run specific module tests
cargo test modules::amazon
# Run integration tests
cargo test --test integration_tests# Debug build
cargo build
# Release build (optimized)
cargo build --releaseIf you encounter rate limits:
- Use a VPN or proxy to change your IP address
- Increase the timeout with
--timeout - Wait between requests
- Consider using different user agents (tool rotates automatically)
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Run tests (
cargo test) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- yazeed44 - Original contributor
- Original Python implementation contributors
- Rust community for excellent tooling and documentation
This tool is provided for educational and research purposes only. Users are responsible for complying with applicable laws and terms of service of the platforms being checked. The authors are not responsible for any misuse of this tool.
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
Made with 🦀 Rust | Original Python version by megadose
