
Ferramenta baseada em Go que escaneia páginas web e arquivos JavaScript para descobrir subdomínios ocultos e segredos, com varredura opcional e análise de proxy em tempo real para fluxos de trabalho de bug bounty e testes de penetração.

JSubFinder é uma ferramenta escrita em golang para pesquisar páginas web e javascript por subdomínios ocultos e segredos na URL fornecida. Desenvolvido pensando em caçadores de Bug Bounty, o JSubFinder aproveita o incrível desempenho do Go, permitindo utilizar conjuntos de dados grandes e ser facilmente encadeado com outras ferramentas.

Instale a aplicação e baixe as assinaturas necessárias para encontrar segredos
Usando Go:
go install github.com/ThreatUnkown/jsubfinder@latest
wget https://raw.githubusercontent.com/ThreatUnkown/jsubfinder/master/.jsf_signatures.yaml && mv .jsf_signatures.yaml ~/.jsf_signatures.yaml
ou
Pesquise nas URLs fornecidas por subdomínios e segredos
$ jsubfinder search -h
Execute the command specified
Usage:
JSubFinder search [flags]
Flags:
-c, --crawl Enable crawling
-g, --greedy Check all files for URL's not just Javascript
-h, --help help for search
-f, --inputFile string File containing domains
-t, --threads int Ammount of threads to be used (default 5)
-u, --url strings Url to check
Global Flags:
-d, --debug Enable debug mode. Logs are stored in log.info
-K, --nossl Skip SSL cert verification (default true)
-o, --outputFile string name/location to store the file
-s, --secrets Check results for secrets e.g api keys
--sig string Location of signatures for finding secrets
-S, --silent Disable printing to the console
Exemplos (resultados são os mesmos neste caso):
$ jsubfinder search -u www.google.com
$ jsubfinder search -f file.txt
$ echo www.google.com | jsubfinder search
$ echo www.google.com | httpx --silent | jsubfinder search$
apis.google.com
ogs.google.com
store.google.com
mail.google.com
accounts.google.com
www.google.com
policies.google.com
support.google.com
adservice.google.com
play.google.com
nota: --secrets="" salvará os resultados de segredos em um arquivo secrets.txt
$ echo www.youtube.com | jsubfinder search --secrets=""
www.youtube.com
youtubei.youtube.com
payments.youtube.com
2Fwww.youtube.com
252Fwww.youtube.com
m.youtube.com
tv.youtube.com
music.youtube.com
creatoracademy.youtube.com
artists.youtube.com
Google Cloud API Key <redacted> found in content of https://www.youtube.com
Google Cloud API Key <redacted> found in content of https://www.youtube.com
Google Cloud API Key <redacted> found in content of https://www.youtube.com
Google Cloud API Key <redacted> found in content of https://www.youtube.com
Google Cloud API Key <redacted> found in content of https://www.youtube.com
Google Cloud API Key <redacted> found in content of https://www.youtube.com
$ echo www.google.com | jsubfinder search -crawl -s "google_secrets.txt" -S -o jsf_google.txt -t 10 -g
-crawl usa o rastreador padrão para rastrear páginas em busca de outras URLs para analisar-s ativa a pesquisa de segredos pelo JSubFinder-S silencia a saída no console-o <arquivo> salva a saída no arquivo especificado-t 10 usa 10 threads-g pesquisa todas as URLs por JS, até aquelas que achamos que não têmAtiva o proxy HTTP upstream com suporte a TLS MITM. Isso permite que você:
$ JSubFinder proxy -h
Execute the command specified
Usage:
JSubFinder proxy [flags]
Flags:
-h, --help help for proxy
-p, --port int Port for the proxy to listen on (default 8444)
--scope strings Url's in scope seperated by commas. e.g www.google.com,www.netflix.com
-u, --upstream-proxy string Adress of upsteam proxy e.g http://127.0.0.1:8888 (default "http://127.0.0.1:8888")
Global Flags:
-d, --debug Enable debug mode. Logs are stored in log.info
-K, --nossl Skip SSL cert verification (default true)
-o, --outputFile string name/location to store the file
-s, --secrets Check results for secrets e.g api keys
--sig string Location of signatures for finding secrets
-S, --silent Disable printing to the console
$ jsubfinder proxy
Proxy started on :8444
Subdomain: out.reddit.com
Subdomain: www.reddit.com
Subdomain: 2Fwww.reddit.com
Subdomain: alb.reddit.com
Subdomain: about.reddit.com
O Burp Suite agora encaminhará todo o tráfego que passa por ele para o JSubFinder. O JSubFinder recuperará a resposta, a retornará para o Burp e, em outra thread, pesquisará subdomínios e segredos.
proxify -output logsjsubfinder proxy -u http://127.0.0.1:8443replay -output logs -burp-addr http://127.0.0.1:8444Simples, execute o JSubFinder no modo proxy em outro servidor, por exemplo 192.168.1.2. Siga os passos do proxy acima, mas defina o proxy upstream da sua aplicação como 192.168.1.2:8443
$ jsubfinder proxy --scope www.reddit.com -p 8081 -S -o jsf_reddit.txt
--scope limita o JSubFinder a analisar apenas respostas de www.reddit.com-p porta em que o servidor proxy do JSubFinder está executando-S silencia a saída no console/stdout-o <arquivo> salva exemplos de saída neste arquivo