None

☠️Warning: Don't Hack or Bruteforce or Entering Default Creds or Trying To Bypass Auth, Steal Data or Share Vulnerable Assets Identified From Shodan on the Public. All IPs and Assets are Hided, I'm Doing This For Your Education Only !

Bug Bounty Uses :

1- Some Programs Make the Scope Open and Say Any Asset Belongs To the Company is InScope [OPENSCOPE], So We Use it For Mapping IPs and Domains To a Specific Organization

None
Open Scope [VDP]

2- Information Exposures, Some Companies May Left Exposed Data Like Root Pages That Serve Directory Listing, Admin Login Pages, Router Config Pages, etc.

None
Exposed Directory Listing Pages on Shodan
None
Exposed Router Configuration Page

3- Fast and Passive Scan With CVEs and Banners Info

None
Fast & Passive
None
CVEs Identified, Relying on Software Versions

Note: CVEs That Shodan Shows Can Be Patched from the Target, Shodan Only Show CVEs of Software Versions. He Doesn't Check If it Was Patched or Not

Important Filters :

Filterorg:"Organization_Name"

Use-CaseMap Any Asset Belongs To a Specific Org

Exampleorg:"Facebook Inc."

None
Legal Name of Org
None
Assets Belonging To Facebook Organization

— — — — — — — — — — — — — — — — —

Filterasn:"ASxx"

Use-CaseList Any Asset Belongs To a Specific ASN

Exampleasn:"AS13335"

None
Assets Belonging To Controlled Cloudflare ASN

— — — — — — — — — — — — — — — — —

Filterport:number(int)

Use-CaseList Assets That Have That Port Opened

Exampleport:3306

None
Assets That Have Port 21 and Allow Anonymous FTP Login

— — — — — — — — — — — — — — — — —

Filterhttp.title:"<title></title>"

Use-CaseList Assets That Have The Same Web Pages Title

Examplehttp.title:"admin dashboard"

None
List Assets With the Page Title admin dashboard

— — — — — — — — — — — — — — — — —

Filterhttp.html:"Keyword in the HTML"

Use-CaseList Assets That Have a Specific Keyword or Phrase on it's HTML Body

Examplehttp.html:"admin.txt"

None
Web Pages That Has the Word admin.txt on it
None
Token and Cookie files Exposed (Payload → http.html:"token.txt")

— — — — — — — — — — — — — — — — —

Filterhttp.status:<status-code> (int)

Use-CaseList Assets That Responsed With the Same Status Code

Examplehttp.status:403

None
List Assets That Responded With 403 Forbidden

— — — — — — — — — — — — — — — — —

Search With Site Icon :

Search in Shodan, For the Same Web Pages That Have the Same Site Icon

Icon-Url (Mostly): http://<site-domain>/favicon.ico

None
ICON

Convert-Hash: MurMur3 (mmh3)

#### Python :

pip install mmh3
#!/usr/bin/env python3

from sys import exit
from hashlib import md5
from termcolor import colored
from requests import get
from argparse import ArgumentParser
import mmh3
import codecs

AP= ArgumentParser(prog= "Convert Favicon Images To MumMurhash3, MD5")
AP.add_argument("-url", "--favicon_url", required= True, type= str)
PARSER= AP.parse_args()
try :
 get_image= get(PARSER.favicon_url.strip(), headers= {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36 Edg/135.0.0.0"}, allow_redirects= False)
 if get_image.status_code == 200 :
  murmur3_hash= mmh3.hash(codecs.encode(get_image.content, "base64"))
  md5_hash= md5(get_image.content).hexdigest()
  print(f"{colored('Bytes-Length', 'green')}: {len(get_image.content):,}\n{colored('MMH3', 'green')}: {murmur3_hash}\n{colored('MD5', 'green')}: {md5_hash}\n{colored('Shodan', 'green')}: https://www.shodan.io/search?query=http.favicon.hash%3A{murmur3_hash}")
 else :
  print(f"[{colored('-', 'blue')}] {colored(get_image.status_code, 'magenta')} Invalid Status code")
  exit(1)
except Exception as Error :
 print(f"[{colored('-', 'red')}] Error Happend: {str(Error).strip()}")
 exit(1)
exit(0)
None
Convert Favicon.ico Into MurMur3 Hash Then Search on Shodan
None

#### Online Sites :

None

Filterhttp.favicon.hash:<MMH3>(int)

Use-CaseList Assets That have the Same ICON MURMUR3 Hash

Examplehttp.favicon.hash:-1156496750

None

— — — — — — — — — — — — — — — — —

Filterssl.cert.subject.cn:"*.example.com"

Use-CaseList Assets That Have the Same SSL Certificate

Examplessl.cert.subject.cn:"*.facebook.com"

None

— — — — — — — — — — — — — — — — —

Filterhostname:example.com

Use-CaseList Assets That Have DNS Records That Point to This Hostname or Any Subdomain of It

Examplehostname:google.com

None

— — — — — — — — — — — — — — — — —

Good Shodan Filters List Repo :

git clone https://github.com/JavierOlmedo/shodan-filters

CLI :

To Use Shodan Via the Terminal and In Your Tools, You Will Need to Get an API Key . So, Register First and Access The Account-Section Then Copy the KEY .

cURL :

## Searching Query :

curl -s "https://api.shodan.io/shodan/host/search?key=<API-KEY>&query=$(echo '<QUERY>' | jq -rR @uri)" | jq ; echo
None
Requires Membership Account API Key

## Searching Host : (IP)

curl -s "https://api.shodan.io/shodan/host/<IP>?key=<API-KEY>" | jq ; echo
None
Get All Info About The Exact IP Address

## Return Count of Query Output :

curl -s "https://api.shodan.io/shodan/host/count?key=<API-KEY>&query=$(echo '<QUERY>' | jq -rR @uri)" | jq ; echo
None
34,370 Query Search Results

Extracting Info Using :

### Python JSON : (Tools) [JSON → Python Dictionary]

Simple Example :

#! /usr/bin/env python3

from argparse import ArgumentParser
from termcolor import colored
from requests import get

AP= ArgumentParser()
AP.add_argument("-host", "--host_ip", required= True, type= str)
PARSER= AP.parse_args()
KEY= "<API-KEY>"
SHODAN_REQUEST= get(f"https://api.shodan.io/shodan/host/{PARSER.host_ip.strip()}?key={KEY}").json()
PORTS= SHODAN_REQUEST["ports"]
ISP= SHODAN_REQUEST["isp"]

print(f"{colored('Ports-Opened', 'green')}: {PORTS}\n{colored('ISP', 'green')}: {ISP}")
None
Simple Example of Interacting With Python JSON (Dictionary | KEYS and Values)

### jq : (Fast & Easy)

If you Want To Get Specific Values From the JSON Output in the Terminal , jq is a Great Tool For That :

Syntax :

command | jq '.key'
None
Get Opened Ports From a Specific IP Address

Array Index :

command | jq '.key[index]'
None
Get the first Index of Opened Ports

4 Hackerone Reports : (Researchers Used Shodan Clearly)

I Hope You Got Any Useful Information From this Write-up .

Goodbye Friend !