Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
data/
logs/
*.pyc
*.log
3 changes: 2 additions & 1 deletion findSensitiveData.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,15 @@
from os import listdir
from os.path import isfile, join
import classes.utility
from colorama import Fore, Style
from colorama import Fore, Style, init as coloramainit

raw_paste_folder = sys.argv[1]
rawfiles = [f for f in listdir(raw_paste_folder) if isfile(join(raw_paste_folder, f))]
count = 0
gCount = 0
tools = classes.utility.ScavUtility()
searchTerms = tools.loadSearchTerms()
coloramainit() # Needed to fix win10/11 terminal colors

print(Fore.YELLOW + str(datetime.datetime.now()) + ": [+] Fetched files from " + raw_paste_folder + Style.RESET_ALL)

Expand Down
4 changes: 2 additions & 2 deletions pbincomArchiveScrape.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@
import requests
from bs4 import BeautifulSoup, SoupStrainer
import classes.utility
from colorama import Fore, Style
from colorama import Fore, Style, init as coloramainit

iterator = 1
tools = classes.utility.ScavUtility()
session = requests.session()
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; rv:31.0) Gecko/20100101 Firefox/31.0"}
searchTerms = tools.loadSearchTerms()

coloramainit() # Needed to fix win10/11 terminal colors

def getjuicystuff(tmpresponse):
existscounter = 0
Expand Down
3 changes: 2 additions & 1 deletion pbincomTrackUser.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,13 @@
import requests
import time
import classes.utility
from colorama import Fore, Style
from colorama import Fore, Style, init as coloramainit

tools = classes.utility.ScavUtility()
session = requests.session()
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; rv:31.0) Gecko/20100101 Firefox/31.0"}
searchTerms = tools.loadSearchTerms()
coloramainit() # Needed to fix win10/11 terminal colors

iterator = 1
while True:
Expand Down
55 changes: 43 additions & 12 deletions scavenger.py
Original file line number Diff line number Diff line change
@@ -1,60 +1,91 @@
import argparse
import os
from colorama import Fore, Style
from colorama import Fore, Style, init as coloramainit
import sys

def osType():
osCheck=sys.platform
if osCheck == 'linux':
return "Linux"
elif osCheck == 'win32':
return "Windows"
elif osCheck == "darwin":
return "MacOS"
else:
return "Unknown"


descr = Fore.YELLOW + """
_________
/ _____/ ____ _____ ___ __ ____ ____ ____ ___________
\_____ \_/ ___\\\\__ \\\\ \/ // __ \ / \ / ___\_/ __ \_ __ \\
/ \ \___ / __ \\\\ /\ ___/| | \/ /_/ > ___/| | \/
/_______ /\___ >____ /\_/ \___ >___| /\___ / \___ >__|
\/ \/ \/ \/ \//_____/ \/ Reworked
""" + Style.RESET_ALL
Detected OS: {}
""".format(osType()) + Style.RESET_ALL
coloramainit() # Needed to fix win10/11 terminal colors

print(descr)
parser = argparse.ArgumentParser(description="control script",
epilog="example usage: python3 " + sys.argv[0] + " -0 -1")
parser.add_argument("-0", "--pbincom",
help="Activate " + Fore.GREEN + "pastebin.com archive scraping " + Style.RESET_ALL + "module",
action="store_true")
parser.add_argument("-1", "--pbincomTrack",
parser.add_argument("-1", "--pbinAPI",
help="Activate " + Fore.GREEN + "Go Fast mode - Use pastebin.com API " + Style.RESET_ALL + "module",
action="store_true")
parser.add_argument("-2", "--pbincomTrack",
help="Activate " + Fore.GREEN + "pastebin.com user track " + Style.RESET_ALL + "module",
action="store_true")
parser.add_argument("-2", "--sensitivedata", help="Search a specific folder for sensitive data. This might be useful "
parser.add_argument("-3", "--sensitivedata", help="Search a specific folder for sensitive data. This might be useful "
"if you want to analyze some pastes which were not collected by the "
"bot.", action="store_true")
parser.add_argument("-3", "--editsearch",
parser.add_argument("-4", "--editsearch",
help="Edit search terms file for additional search terms (email:password combinations will always be searched)",
action="store_true")
parser.add_argument("-4", "--editusers", help="Edit user file of the pastebin.com user track module",
parser.add_argument("-5", "--editusers", help="Edit user file of the pastebin.com user track module",
action="store_true")

args = parser.parse_args()

if args.pbincom:
print(
Fore.GREEN + "[+] pastebin.com archive scraper: starting crawler in new tmux session named " + Fore.YELLOW +
"pastebincomArchive" + Fore.GREEN + "..." + Style.RESET_ALL)
os.system("tmux new -d -s pastebincomArchive 'python3 pbincomArchiveScrape.py'")
if osType() == "Windows":
os.system("python3 pbincomArchiveScrape.py")
else:
os.system("tmux new -d -s pastebincomArchive 'python3 pbincomArchiveScrape.py'")

if args.pbincomTrack:
print(
Fore.GREEN + "[+] pastebin.com user track module: starting crawler in new tmux session named " + Fore.YELLOW
+ "pastebincomTrack" + Fore.GREEN + "..." + Style.RESET_ALL)
os.system("tmux new -d -s pastebincomTrack 'python3 pbincomTrackUser.py'")
if osType() == "Windows":
os.system("python3 pbincomTrackUser.py")
else:
os.system("tmux new -d -s pastebincomTrack 'python3 pbincomTrackUser.py'")

if args.editsearch:
if not args.pbincomTrack and not args.pbincom and not args.editusers:
os.system("vi configs/searchterms.txt")
if osType() == "Windows":
os.system("notepad configs/searchterms.txt")
else:
os.system("vi configs/searchterms.txt")
print("[#] If you changed anything, do not forget to restart the affected module!")
else:
print(Fore.RED + "[-] -3/--editsearch cannot be used with other arguments" + Style.RESET_ALL)
print(Fore.RED + "[-] -4/--editsearch cannot be used with other arguments" + Style.RESET_ALL)

if args.editusers:
if not args.pbincomTrack and not args.pbincom and not args.editsearch:
os.system("vi configs/users.txt")
if osType() == "Windows":
os.system("notepad configs/users.txt")
else:
os.system("vi configs/users.txt")
print("[#] If you changed anything, do not forget to restart the affected module!")
else:
print(Fore.RED + "[-] -4/--editusers cannot be used with other arguments" + Style.RESET_ALL)
print(Fore.RED + "[-] -5/--editusers cannot be used with other arguments" + Style.RESET_ALL)

if args.sensitivedata:
print(Fore.BLUE + "[*] Insert full path of the folder you want scan: ")
Expand Down