# author: syn
import os
import subprocess

def find_suid_binaries():
    """Mencari binary dengan SUID bit diaktifkan."""
    result = subprocess.run(["find", "/", "-perm", "-4000", "-type", "f", "2>/dev/null"], capture_output=True, text=True, shell=True)
    suid_binaries = result.stdout.split("\n")
    return [binary for binary in suid_binaries if binary]

def check_exploitable(binary):
    """Cek apakah binary bisa dieksploitasi dengan GTFOBins."""
    gtfo_url = f"https://gtfobins.github.io/gtfobins/{os.path.basename(binary)}/"
    print(f"[*] Cek eksploitasi: {binary}\n[*] Cek referensi: {gtfo_url}")

def main():
    print("[+] Mencari binary SUID...")
    suid_binaries = find_suid_binaries()
    if not suid_binaries:
        print("[-] Tidak ditemukan binary SUID.")
        return
    
    print("[+] Binary SUID ditemukan:")
    for binary in suid_binaries:
        print(f" - {binary}")
        check_exploitable(binary)

if __name__ == "__main__":
    main()