colors
parent
bfd6c653d5
commit
1746c66b92
|
@ -1,11 +1,17 @@
|
||||||
import time
|
import time
|
||||||
import angr
|
import angr
|
||||||
|
|
||||||
|
GREEN = "\033[92m"
|
||||||
|
PURPLE = "\033[35m"
|
||||||
|
RESET = "\033[0m"
|
||||||
|
RED = "\033[31m"
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
# Загрузка бинарного файла
|
# Загрузка бинарного файла
|
||||||
proj = angr.Project('a.exe', auto_load_libs=False)
|
proj = angr.Project('a.exe', auto_load_libs=False)
|
||||||
ENTRY_POINT = 0x140001837 # Адрес функции после вызова scanf
|
print(f"{GREEN}The executable has been uploaded to angr!{RESET}")
|
||||||
TARGET_ADDR = 0x140001848 # Целевой адрес, нахождение на нем означает что програмам взломана
|
ENTRY_POINT = 0x140001837 # Адрес функции после вызова scanf
|
||||||
|
TARGET_ADDR = 0x140001848 # Целевой адрес, нахождение на нем означает что программа взломана
|
||||||
|
|
||||||
# Создание начального состояния
|
# Создание начального состояния
|
||||||
state = proj.factory.entry_state(
|
state = proj.factory.entry_state(
|
||||||
|
@ -29,12 +35,14 @@ if __name__ == "__main__":
|
||||||
state.add_constraints(byte <= 0x7e)
|
state.add_constraints(byte <= 0x7e)
|
||||||
|
|
||||||
simgr = proj.factory.simulation_manager(state)
|
simgr = proj.factory.simulation_manager(state)
|
||||||
|
print(f"{GREEN}Start cracking...{RESET}")
|
||||||
start_time = time.time()
|
start_time = time.time()
|
||||||
simgr.explore(find=TARGET_ADDR)
|
simgr.explore(find=TARGET_ADDR)
|
||||||
elapsed = time.time() - start_time
|
elapsed = time.time() - start_time
|
||||||
|
|
||||||
if simgr.found:
|
if simgr.found:
|
||||||
input_data = simgr.found[0].solver.eval(input_data, cast_to=bytes)
|
input_data = simgr.found[0].solver.eval(input_data, cast_to=bytes)
|
||||||
print(f"Success cracked! Input: {input_data} | Pwd cracking time = {elapsed}")
|
print(f"{GREEN}Success cracked! Input: {PURPLE}{input_data}{PURPLE}{RESET}")
|
||||||
|
print(f"{GREEN}Pwd cracking time = {elapsed}{RESET}")
|
||||||
else:
|
else:
|
||||||
print("Fail!")
|
print(f"{RED}Fail!{RESET}")
|
Loading…
Reference in New Issue