Instacracker-cli -

cracker = InstaCrackerCLI(verbose=True) while True: print("\n" + "="*50) print("Commands: [1] Crack Hash [2] Analyze [3] Generate [4] Exit") choice = input("\nSelect option: ").strip() if choice == '1': target = input("Enter hash: ").strip() hash_type = input("Hash type (md5/sha1/sha256): ").strip() or 'md5' print("\nMethods: [1] Dictionary [2] Brute Force [3] Hybrid") method_choice = input("Select method: ").strip() if method_choice == '1': wordlist_file = input("Wordlist file (optional): ").strip() wordlist = None if wordlist_file: try: with open(wordlist_file, 'r') as f: wordlist = [line.strip() for line in f] except: print("[-] Could not load wordlist") result, attempts, elapsed = cracker.dictionary_attack(target, hash_type, wordlist) elif method_choice == '2': max_len = int(input("Max password length (default 5): ").strip() or '5') result, attempts, elapsed = cracker.brute_force_attack(target, hash_type, max_len) else: result, attempts, elapsed = cracker.hybrid_attack(target, hash_type) if result: print(f"\n[+] SUCCESS! Password: result") else: print(f"\n[-] Failed to crack hash after attempts:, attempts") print(f" Time: elapsed:.2f seconds") elif choice == '2': password = input("Enter password to analyze: ").strip() analysis = cracker.analyze_password(password) print(f"\n[+] Strength: analysis['strength']") print(f" Score: analysis['score']/6") if analysis['feedback']: print(" Suggestions:") for sug in analysis['feedback']: print(f" - sug") elif choice == '3': base = input("Base words (comma-separated): ").strip() output = input("Output file: ").strip() count = cracker.generate_wordlist(base.split(','), output) elif choice == '4': print("[+] Goodbye!") break if == " main ": print(""" ╔══════════════════════════════════════════════════╗ ║ InstaCracker CLI - Security Tool v1.0 ║ ║ Authorized Use Only! ║ ╚══════════════════════════════════════════════════╝ """) main()

def hybrid_attack(self, target_hash: str, hash_type: str = "md5", base_words: List[str] = None) -> Tuple[Optional[str], int]: """Hybrid attack combining dictionary with mutations""" base_words = base_words or self.common_passwords mutations = [ lambda x: x + "123", lambda x: x + "1234", lambda x: x + "!", lambda x: x.capitalize(), lambda x: x.upper(), lambda x: x + "2023", lambda x: x + "@", ] self.attempts = 0 self.start_time = time.time() print(f"[*] Starting hybrid attack...") for word in base_words: # Check original self.attempts += 1 if self._check_hash(word, target_hash, hash_type): elapsed = time.time() - self.start_time return word, self.attempts, elapsed # Check mutations for mutation in mutations: mutated = mutation(word) self.attempts += 1 if self._check_hash(mutated, target_hash, hash_type): elapsed = time.time() - self.start_time return mutated, self.attempts, elapsed elapsed = time.time() - self.start_time return None, self.attempts, elapsed instacracker-cli

# Generate wordlist command generate_parser = subparsers.add_parser('generate', help='Generate custom wordlist') generate_parser.add_argument('--words', required=True, help='Comma-separated base words') generate_parser.add_argument('--output', required=True, help='Output file') generate_parser.add_argument('--no-numbers', action='store_true', help='Don\'t add numbers') generate_parser.add_argument('--no-special', action='store_true', help='Don\'t add special characters') elapsed = cracker.dictionary_attack(target