Skip to content

Instantly share code, notes, and snippets.

@maverickNerd
Created September 18, 2020 15:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save maverickNerd/18999e309d278b12839f28e88b00ee46 to your computer and use it in GitHub Desktop.
Save maverickNerd/18999e309d278b12839f28e88b00ee46 to your computer and use it in GitHub Desktop.
jsscan.sh
# Stroing js files per domain in a jsscript dir and then all_jsscript can be used for other functions like get endpoints and wordlists as before, no need to change anything
gatherjsfiles(){
mkdir -p jsscript
for url in $(cat hosts.txt)
do
domain=$(echo $url | unfurl -u format "%d")
echo $url | gau | grep -iE "\.js$" | sort -u | httpx -status-code -silent | grep '200' | awk '{print $1}' > jsscript/"$domain".txt
echo $url | waybackurls | grep -iE "\.js$" | sort -u | httpx -status-code -silent | grep '200' | awk '{print $1}' >> jsscript/"$domain".txt
echo $url | subjs | httpx -status-code -silent | grep '200' | awk '{print $1}' >> jsscript/"$domain".txt
echo $url | hakrawler -js -plain -depth 2 -insecure | grep -iE "\.js$" | httpx -status-code -silent | grep '200' | awk '{print $1}' >> jsscript/"$domain".txt
sort -u -o jsscript/"$domain".txt jsscript/"$domain".txt
done
cat jsscript/*.txt > jsscript/all_jsscript
}
# Storing js response in jsscript_response directory
getjsbeautify(){
mkdir -p jsscript_response
for folder in $(ls jsscript/*.txt)
do
foldername=$(echo $folder | awk -F/ '{print $(NF-0)}' | unfurl format %S)
mkdir -p jsscript_response/$foldername
for file in $(cat $folder)
do
filename=$(echo $file | awk -F/ '{print $(NF-0)}')
python3 $HOME/tools/jsbeautify.py $file jsscript_response/$foldername/$filename
done
done
}
gatherjsfiles
getjsbeautify
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment