Python unpackme ?/10 / python

  • Konuyu Başlatan Konuyu Başlatan agentlmao
  • Başlangıç tarihi Başlangıç tarihi

agentlmao

Master Üye
Katılım
14 Mar 2022
Mesajlar
1,482
Beğeniler
404
İletişim


unpackme

unpack dişi kabul sayılmazz iyi şanslar

python 3.14.0 version
eski sürüm kendinizi eski sürümde test edebilirsiniz bıraktım


mw5clu4.png
 
Son düzenleme:
Açtıktan sonra 'xd' adlı bir messagebox gösterip kapandı.


C:\*\*\*\*>C:\Users\*\AppData\Local\Programs\Python\Python314\python.exe run_unpackme_obf.py
Traceback (most recent call last):
File "C:\*\*\*\*\run_unpackme_obf.py", line 1, in <module>
import unpackme_obf
ImportError: DLL load failed while importing unpackme_obf: Devingen bağlantı kitaplığını (DLL) başlatma işlemi başarısız.
 
Açtıktan sonra 'xd' adlı bir messagebox gösterip kapandı.


C:\*\*\*\*>C:\Users\*\AppData\Local\Programs\Python\Python314\python.exe run_unpackme_obf.py
Traceback (most recent call last):
File "C:\*\*\*\*\run_unpackme_obf.py", line 1, in <module>
import unpackme_obf
ImportError: DLL load failed while importing unpackme_obf: Devingen bağlantı kitaplığını (DLL) başlatma işlemi başarısız.
anti debug var
 
Açtıktan sonra 'xd' adlı bir messagebox gösterip kapandı.


C:\*\*\*\*>C:\Users\*\AppData\Local\Programs\Python\Python314\python.exe run_unpackme_obf.py
Traceback (most recent call last):
File "C:\*\*\*\*\run_unpackme_obf.py", line 1, in <module>
import unpackme_obf
ImportError: DLL load failed while importing unpackme_obf: Devingen bağlantı kitaplığını (DLL) başlatma işlemi başarısız.
en son denedigimde çalışıyordu python sürümünden eminmisiniz
 
7uccqr9.png


Unpacked:


Python:
import base64
import sys
import ctypes
import os


def kwctvdhv():
    sznpps = 950
    ngkpwm = 150
    if ((sznpps ^ ngkpwm) ^ ngkpwm) == sznpps:
        return None
    yioxxm = 348
    return None


def yeyqjdhc():
    return None


def OO0OOOOO00OO(obfuscated_num):
    key = 39388
    return obfuscated_num ^ key


def llIlIIllllIl(encoded_str):
    key = 221
    decoded_bytes = base64.b64decode(encoded_str)
    return "".join(chr(b ^ key) for b in decoded_bytes)


def _check_debugger_impl():
    uwkvsr = 308
    ovatel = 824
    if uwkvsr + ovatel != 1132:
        gahjqd = 388
        return None

    if os.name == llIlIIllllIl("s6k="):
        if ctypes.windll.kernel32.IsDebuggerPresent():
            os._exit(OO0OOOOO00OO(39389))

        is_debugger = ctypes.c_bool(False)
        ctypes.windll.kernel32.CheckRemoteDebuggerPresent(
            ctypes.windll.kernel32.GetCurrentProcess(),
            ctypes.byref(is_debugger),
        )
        if is_debugger.value:
            os._exit(OO0OOOOO00OO(39389))
        return None

    if os.name == llIlIIllllIl("rbKutKU="):
        try:
            with open(
                llIlIIllllIl("8q2vsr7yrrixu/KuqbypqK4="),
                llIlIIllllIl("rw=="),
            ) as f:
                for line in f:
                    if line.startswith(llIlIIllllIl("ia+8vrivjbS55w==")):
                        pid = int(line.split()[OO0OOOOO00OO(39389)])
                        if pid != OO0OOOOO00OO(39388):
                            os._exit(OO0OOOOO00OO(39389))
                        break
        except (IOError, ValueError):
            return None
        return None


_check_debugger_impl()

tk = __import__(llIlIIllllIl("qba0s6m4rw=="))
_imp_3290 = __import__(
    llIlIIllllIl("qba0s6m4rw=="),
    fromlist=(llIlIIllllIl("sLiurry6uL+ypQ=="),),
)
messagebox = _imp_3290.messagebox
hashlib = __import__(llIlIIllllIl("tbyutbG0vw=="))
TARGET_HASH = llIlIIllllIl(
    "uL/k7O7suerk6O++6+ns7+nv7bnpvLzo7+u56u2+7bw="
)


class LoginApp:
    def __init__(self, root):
        self.root = root
        self.root.title(llIlIIllllIl("jpieiI+Y/ZGSmpST/Y6EjomYkA=="))
        self.root.geometry(llIlIIllllIl("6e3tpe7t7Q=="))
        self.root.configure(bg=llIlIIllllIl("/u257bntuQ=="))
        self.root.resizable(False, False)

        self.lbl_title = tk.Label(
            root,
            text=llIlIIllllIl("jpieiI+Y/ZGSmpST"),
            font=(
                llIlIIllllIl("nrKor7S4r/2TuKo="),
                OO0OOOOO00OO(39368),
                llIlIIllllIl("v7KxuQ=="),
            ),
            bg=llIlIIllllIl("/u257bntuQ=="),
            fg=llIlIIllllIl("/u3tu7vp7A=="),
        )
        self.lbl_title.pack(
            pady=(
                OO0OOOOO00OO(39412),
                OO0OOOOO00OO(39385),
            )
        )

        self.lbl_subtitle = tk.Label(
            root,
            text=llIlIIllllIl("iJONnJ6W/ZCYmA=="),
            font=(
                llIlIIllllIl("nrKor7S4r/2TuKo="),
                OO0OOOOO00OO(39382),
            ),
            bg=llIlIIllllIl("/u257bntuQ=="),
            fg=llIlIIllllIl("/u3tu7vp7A=="),
        )
        self.lbl_subtitle.pack(
            pady=(
                OO0OOOOO00OO(39388),
                OO0OOOOO00OO(39382),
            )
        )

        self.entry_key = tk.Entry(
            root,
            font=(
                llIlIIllllIl("nrKor7S4r/2TuKo="),
                OO0OOOOO00OO(39378),
            ),
            justify=llIlIIllllIl("vrizqbiv"),
            bg=llIlIIllllIl("v7G8vrY="),
            fg=llIlIIllllIl("qrW0qbg="),
            insertbackground=llIlIIllllIl("qrW0qbg="),
            relief=llIlIIllllIl("u7G8qQ=="),
        )
        self.entry_key.config(
            highlightbackground=llIlIIllllIl("/u3tu7vp7A=="),
            highlightcolor=llIlIIllllIl("/u3tu7vp7A=="),
            highlightthickness=OO0OOOOO00OO(39389),
        )
        self.entry_key.pack(
            ipady=OO0OOOOO00OO(39385),
            ipadx=OO0OOOOO00OO(39385),
            pady=OO0OOOOO00OO(39382),
        )
        self.entry_key.bind(llIlIIllllIl("4Y+4qaivs+M="), self.check_key)

        self.btn_login = tk.Button(
            root,
            text=llIlIIllllIl("kZKalJM="),
            font=(
                llIlIIllllIl("nrKor7S4r/2TuKo="),
                OO0OOOOO00OO(39376),
                llIlIIllllIl("v7KxuQ=="),
            ),
            bg=llIlIIllllIl("/u3tu7vp7A=="),
            fg=llIlIIllllIl("v7G8vrY="),
            activebackground=llIlIIllllIl("qrW0qbg="),
            activeforeground=llIlIIllllIl("v7G8vrY="),
            relief=llIlIIllllIl("u7G8qQ=="),
            command=self.check_key,
        )
        self.btn_login.pack(
            pady=OO0OOOOO00OO(39412),
            ipadx=OO0OOOOO00OO(39368),
        )

        self.lbl_result = tk.Label(
            root,
            text="",
            font=(
                llIlIIllllIl("nrKor7S4r/2TuKo="),
                OO0OOOOO00OO(39362),
                llIlIIllllIl("v7KxuQ=="),
            ),
            bg=llIlIIllllIl("/u257bntuQ=="),
        )
        self.lbl_result.pack(pady=OO0OOOOO00OO(39382))

    def check_key(self, event=None):
        zeeqdb = 300
        srocrh = 216
        if zeeqdb + srocrh == 516:
            key = self.entry_key.get()
        wnklxa = 772
        zifehz = 948
        if ((wnklxa ^ zifehz) ^ zifehz) == wnklxa:
            hashed_input = hashlib.md5(
                key.encode(llIlIIllllIl("qKm78OU="))
            ).hexdigest()
        qvmjoy = 242
        fkjnuc = 389
        if ((qvmjoy ^ fkjnuc) ^ fkjnuc) == qvmjoy:
            if hashed_input == TARGET_HASH:
                self.show_success()
                return
            self.lbl_result.config(
                text=llIlIIllllIl("nJ6emI6O/ZmYk5SYmQ=="),
                fg=llIlIIllllIl("r7i5"),
            )
            self.root.after(
                OO0OOOOO00OO(40460),
                lambda: self.lbl_result.config(text=""),
            )

    def show_success(self):
        tskfek = 824
        onlkuh = 708
        if tskfek + onlkuh == 1532:
            for widget in self.root.winfo_children():
                widget.destroy()

        lozzpx = 991
        fldacx = 295
        if ((lozzpx ^ fldacx) ^ fldacx) == lozzpx:
            lbl_ok = tk.Label(
                self.root,
                text=llIlIIllllIl("nJ6emI6O/ZqPnJOJmJk="),
                font=(
                    llIlIIllllIl("nrKor7S4r/2TuKo="),
                    OO0OOOOO00OO(39364),
                    llIlIIllllIl("v7KxuQ=="),
                ),
                bg=llIlIIllllIl("/u257bntuQ=="),
                fg=llIlIIllllIl("/u3tu7vp7A=="),
            )
            lbl_ok.pack(
                pady=(
                    OO0OOOOO00OO(39308),
                    OO0OOOOO00OO(39382),
                )
            )

        polqfa = 314
        kbxtyn = 347
        if ((polqfa ^ kbxtyn) ^ kbxtyn) == polqfa:
            lbl_info = tk.Label(
                self.root,
                text=llIlIIllllIl("iJONnJ6WkJg="),
                font=(
                    llIlIIllllIl("nrKor7S4r/2TuKo="),
                    OO0OOOOO00OO(39362),
                    llIlIIllllIl("v7KxuQ=="),
                ),
                bg=llIlIIllllIl("/u257bntuQ=="),
                fg=llIlIIllllIl("/ru77e3o6A=="),
            )
            lbl_info.pack(
                pady=OO0OOOOO00OO(39368),
            )

        ihqpth = 720
        rxmbkb = 830
        if ihqpth + rxmbkb == 1550:
            btn_exit = tk.Button(
                self.root,
                text=llIlIIllllIl("mIWUiQ=="),
                font=(
                    llIlIIllllIl("nrKor7S4r/2TuKo="),
                    OO0OOOOO00OO(39376),
                    llIlIIllllIl("v7KxuQ=="),
                ),
                bg=llIlIIllllIl("/ru77e3o6A=="),
                fg=llIlIIllllIl("v7KxuQ=="),
                command=self.root.destroy,
            )
            btn_exit.pack(pady=OO0OOOOO00OO(39412))


if __name__ == llIlIIllllIl("goKwvLSzgoI="):
    root = tk.Tk()
    app = LoginApp(root)
    root.mainloop()

Cleaned:

Python:
import os
import ctypes
import tkinter as tk
import hashlib


TARGET_HASH = "1" // test amacli 1 olarak degistirildi

def check_debugger():
    if os.name == "nt":
        k32 = ctypes.windll.kernel32
        if k32.IsDebuggerPresent():
            os._exit(1)

        is_debugger = ctypes.c_bool(False)
        k32.CheckRemoteDebuggerPresent(
            k32.GetCurrentProcess(),
            ctypes.byref(is_debugger),
        )
        if is_debugger.value:
            os._exit(1)

    elif os.name == "posix":
        try:
            with open("/proc/self/status", "r") as f:
                for line in f:
                    if line.startswith("TracerPid:"):
                        pid = int(line.split()[1])
                        if pid != 0:
                            os._exit(1)
                        break
        except (IOError, ValueError):
            pass


class LoginApp:
    def __init__(self, root: tk.Tk):
        self.root = root
        self.root.title("SECURE LOGIN SYSTEM")
        self.root.geometry("400x300")
        self.root.configure(bg="#0d0d0d")
        self.root.resizable(False, False)

        self.lbl_title = tk.Label(
            root,
            text="SECURE LOGIN",
            font=("Courier New", 20, "bold"),
            bg="#0d0d0d",
            fg="#00ff41",
        )
        self.lbl_title.pack(pady=(40, 5))

        self.lbl_subtitle = tk.Label(
            root,
            text="UNPACK MEE",
            font=("Courier New", 10),
            bg="#0d0d0d",
            fg="#00ff41",
        )
        self.lbl_subtitle.pack(pady=(0, 20))

        self.entry_key = tk.Entry(
            root,
            font=("Courier New", 14),
            justify="center",
            bg="black",
            fg="white",
            insertbackground="white",
            relief="flat",
        )
        self.entry_key.config(
            highlightbackground="#00ff41",
            highlightcolor="#00ff41",
            highlightthickness=1,
        )
        self.entry_key.pack(ipady=5, ipadx=5, pady=10)
        self.entry_key.bind("<Return>", self.check_key)

        self.btn_login = tk.Button(
            root,
            text="LOGIN",
            font=("Courier New", 12, "bold"),
            bg="#00ff41",
            fg="black",
            activebackground="white",
            activeforeground="black",
            relief="flat",
            command=self.check_key,
        )
        self.btn_login.pack(pady=20, ipadx=20)

        self.lbl_result = tk.Label(
            root,
            text="",
            font=("Courier New", 18, "bold"),
            bg="#0d0d0d",
        )
        self.lbl_result.pack(pady=10)

    def check_key(self, event=None):
        key = self.entry_key.get()
        hashed_input = "1"

        if hashed_input == TARGET_HASH:
            self.show_success()
            return

        self.lbl_result.config(text="ACCESS DENIED", fg="red")
        self.root.after(2000, lambda: self.lbl_result.config(text=""))

    def show_success(self):
        for widget in self.root.winfo_children():
            widget.destroy()

        lbl_ok = tk.Label(
            self.root,
            text="ACCESS GRANTED",
            font=("Courier New", 24, "bold"),
            bg="#0d0d0d",
            fg="#00ff41",
        )
        lbl_ok.pack(pady=(80, 10))

        lbl_info = tk.Label(
            self.root,
            text="UNPACKME",
            font=("Courier New", 30, "bold"),
            bg="#0d0d0d",
            fg="#ff0055",
        )
        lbl_info.pack(pady=(20, 10))

        btn_exit = tk.Button(
            self.root,
            text="EXIT",
            font=("Courier New", 12, "bold"),
            bg="#ff0055",
            fg="#00ff41",
            command=self.root.destroy,
        )
        btn_exit.pack(pady=(40, 0))


if __name__ == "__main__":
    check_debugger()
    root = tk.Tk()
    app = LoginApp(root)
    root.mainloop()
 
7uccqr9.png


Unpacked:


Python:
import base64
import sys
import ctypes
import os


def kwctvdhv():
    sznpps = 950
    ngkpwm = 150
    if ((sznpps ^ ngkpwm) ^ ngkpwm) == sznpps:
        return None
    yioxxm = 348
    return None


def yeyqjdhc():
    return None


def OO0OOOOO00OO(obfuscated_num):
    key = 39388
    return obfuscated_num ^ key


def llIlIIllllIl(encoded_str):
    key = 221
    decoded_bytes = base64.b64decode(encoded_str)
    return "".join(chr(b ^ key) for b in decoded_bytes)


def _check_debugger_impl():
    uwkvsr = 308
    ovatel = 824
    if uwkvsr + ovatel != 1132:
        gahjqd = 388
        return None

    if os.name == llIlIIllllIl("s6k="):
        if ctypes.windll.kernel32.IsDebuggerPresent():
            os._exit(OO0OOOOO00OO(39389))

        is_debugger = ctypes.c_bool(False)
        ctypes.windll.kernel32.CheckRemoteDebuggerPresent(
            ctypes.windll.kernel32.GetCurrentProcess(),
            ctypes.byref(is_debugger),
        )
        if is_debugger.value:
            os._exit(OO0OOOOO00OO(39389))
        return None

    if os.name == llIlIIllllIl("rbKutKU="):
        try:
            with open(
                llIlIIllllIl("8q2vsr7yrrixu/KuqbypqK4="),
                llIlIIllllIl("rw=="),
            ) as f:
                for line in f:
                    if line.startswith(llIlIIllllIl("ia+8vrivjbS55w==")):
                        pid = int(line.split()[OO0OOOOO00OO(39389)])
                        if pid != OO0OOOOO00OO(39388):
                            os._exit(OO0OOOOO00OO(39389))
                        break
        except (IOError, ValueError):
            return None
        return None


_check_debugger_impl()

tk = __import__(llIlIIllllIl("qba0s6m4rw=="))
_imp_3290 = __import__(
    llIlIIllllIl("qba0s6m4rw=="),
    fromlist=(llIlIIllllIl("sLiurry6uL+ypQ=="),),
)
messagebox = _imp_3290.messagebox
hashlib = __import__(llIlIIllllIl("tbyutbG0vw=="))
TARGET_HASH = llIlIIllllIl(
    "uL/k7O7suerk6O++6+ns7+nv7bnpvLzo7+u56u2+7bw="
)


class LoginApp:
    def __init__(self, root):
        self.root = root
        self.root.title(llIlIIllllIl("jpieiI+Y/ZGSmpST/Y6EjomYkA=="))
        self.root.geometry(llIlIIllllIl("6e3tpe7t7Q=="))
        self.root.configure(bg=llIlIIllllIl("/u257bntuQ=="))
        self.root.resizable(False, False)

        self.lbl_title = tk.Label(
            root,
            text=llIlIIllllIl("jpieiI+Y/ZGSmpST"),
            font=(
                llIlIIllllIl("nrKor7S4r/2TuKo="),
                OO0OOOOO00OO(39368),
                llIlIIllllIl("v7KxuQ=="),
            ),
            bg=llIlIIllllIl("/u257bntuQ=="),
            fg=llIlIIllllIl("/u3tu7vp7A=="),
        )
        self.lbl_title.pack(
            pady=(
                OO0OOOOO00OO(39412),
                OO0OOOOO00OO(39385),
            )
        )

        self.lbl_subtitle = tk.Label(
            root,
            text=llIlIIllllIl("iJONnJ6W/ZCYmA=="),
            font=(
                llIlIIllllIl("nrKor7S4r/2TuKo="),
                OO0OOOOO00OO(39382),
            ),
            bg=llIlIIllllIl("/u257bntuQ=="),
            fg=llIlIIllllIl("/u3tu7vp7A=="),
        )
        self.lbl_subtitle.pack(
            pady=(
                OO0OOOOO00OO(39388),
                OO0OOOOO00OO(39382),
            )
        )

        self.entry_key = tk.Entry(
            root,
            font=(
                llIlIIllllIl("nrKor7S4r/2TuKo="),
                OO0OOOOO00OO(39378),
            ),
            justify=llIlIIllllIl("vrizqbiv"),
            bg=llIlIIllllIl("v7G8vrY="),
            fg=llIlIIllllIl("qrW0qbg="),
            insertbackground=llIlIIllllIl("qrW0qbg="),
            relief=llIlIIllllIl("u7G8qQ=="),
        )
        self.entry_key.config(
            highlightbackground=llIlIIllllIl("/u3tu7vp7A=="),
            highlightcolor=llIlIIllllIl("/u3tu7vp7A=="),
            highlightthickness=OO0OOOOO00OO(39389),
        )
        self.entry_key.pack(
            ipady=OO0OOOOO00OO(39385),
            ipadx=OO0OOOOO00OO(39385),
            pady=OO0OOOOO00OO(39382),
        )
        self.entry_key.bind(llIlIIllllIl("4Y+4qaivs+M="), self.check_key)

        self.btn_login = tk.Button(
            root,
            text=llIlIIllllIl("kZKalJM="),
            font=(
                llIlIIllllIl("nrKor7S4r/2TuKo="),
                OO0OOOOO00OO(39376),
                llIlIIllllIl("v7KxuQ=="),
            ),
            bg=llIlIIllllIl("/u3tu7vp7A=="),
            fg=llIlIIllllIl("v7G8vrY="),
            activebackground=llIlIIllllIl("qrW0qbg="),
            activeforeground=llIlIIllllIl("v7G8vrY="),
            relief=llIlIIllllIl("u7G8qQ=="),
            command=self.check_key,
        )
        self.btn_login.pack(
            pady=OO0OOOOO00OO(39412),
            ipadx=OO0OOOOO00OO(39368),
        )

        self.lbl_result = tk.Label(
            root,
            text="",
            font=(
                llIlIIllllIl("nrKor7S4r/2TuKo="),
                OO0OOOOO00OO(39362),
                llIlIIllllIl("v7KxuQ=="),
            ),
            bg=llIlIIllllIl("/u257bntuQ=="),
        )
        self.lbl_result.pack(pady=OO0OOOOO00OO(39382))

    def check_key(self, event=None):
        zeeqdb = 300
        srocrh = 216
        if zeeqdb + srocrh == 516:
            key = self.entry_key.get()
        wnklxa = 772
        zifehz = 948
        if ((wnklxa ^ zifehz) ^ zifehz) == wnklxa:
            hashed_input = hashlib.md5(
                key.encode(llIlIIllllIl("qKm78OU="))
            ).hexdigest()
        qvmjoy = 242
        fkjnuc = 389
        if ((qvmjoy ^ fkjnuc) ^ fkjnuc) == qvmjoy:
            if hashed_input == TARGET_HASH:
                self.show_success()
                return
            self.lbl_result.config(
                text=llIlIIllllIl("nJ6emI6O/ZmYk5SYmQ=="),
                fg=llIlIIllllIl("r7i5"),
            )
            self.root.after(
                OO0OOOOO00OO(40460),
                lambda: self.lbl_result.config(text=""),
            )

    def show_success(self):
        tskfek = 824
        onlkuh = 708
        if tskfek + onlkuh == 1532:
            for widget in self.root.winfo_children():
                widget.destroy()

        lozzpx = 991
        fldacx = 295
        if ((lozzpx ^ fldacx) ^ fldacx) == lozzpx:
            lbl_ok = tk.Label(
                self.root,
                text=llIlIIllllIl("nJ6emI6O/ZqPnJOJmJk="),
                font=(
                    llIlIIllllIl("nrKor7S4r/2TuKo="),
                    OO0OOOOO00OO(39364),
                    llIlIIllllIl("v7KxuQ=="),
                ),
                bg=llIlIIllllIl("/u257bntuQ=="),
                fg=llIlIIllllIl("/u3tu7vp7A=="),
            )
            lbl_ok.pack(
                pady=(
                    OO0OOOOO00OO(39308),
                    OO0OOOOO00OO(39382),
                )
            )

        polqfa = 314
        kbxtyn = 347
        if ((polqfa ^ kbxtyn) ^ kbxtyn) == polqfa:
            lbl_info = tk.Label(
                self.root,
                text=llIlIIllllIl("iJONnJ6WkJg="),
                font=(
                    llIlIIllllIl("nrKor7S4r/2TuKo="),
                    OO0OOOOO00OO(39362),
                    llIlIIllllIl("v7KxuQ=="),
                ),
                bg=llIlIIllllIl("/u257bntuQ=="),
                fg=llIlIIllllIl("/ru77e3o6A=="),
            )
            lbl_info.pack(
                pady=OO0OOOOO00OO(39368),
            )

        ihqpth = 720
        rxmbkb = 830
        if ihqpth + rxmbkb == 1550:
            btn_exit = tk.Button(
                self.root,
                text=llIlIIllllIl("mIWUiQ=="),
                font=(
                    llIlIIllllIl("nrKor7S4r/2TuKo="),
                    OO0OOOOO00OO(39376),
                    llIlIIllllIl("v7KxuQ=="),
                ),
                bg=llIlIIllllIl("/ru77e3o6A=="),
                fg=llIlIIllllIl("v7KxuQ=="),
                command=self.root.destroy,
            )
            btn_exit.pack(pady=OO0OOOOO00OO(39412))


if __name__ == llIlIIllllIl("goKwvLSzgoI="):
    root = tk.Tk()
    app = LoginApp(root)
    root.mainloop()

Cleaned:

Python:
import os
import ctypes
import tkinter as tk
import hashlib


TARGET_HASH = "1" // test amacli 1 olarak degistirildi

def check_debugger():
    if os.name == "nt":
        k32 = ctypes.windll.kernel32
        if k32.IsDebuggerPresent():
            os._exit(1)

        is_debugger = ctypes.c_bool(False)
        k32.CheckRemoteDebuggerPresent(
            k32.GetCurrentProcess(),
            ctypes.byref(is_debugger),
        )
        if is_debugger.value:
            os._exit(1)

    elif os.name == "posix":
        try:
            with open("/proc/self/status", "r") as f:
                for line in f:
                    if line.startswith("TracerPid:"):
                        pid = int(line.split()[1])
                        if pid != 0:
                            os._exit(1)
                        break
        except (IOError, ValueError):
            pass


class LoginApp:
    def __init__(self, root: tk.Tk):
        self.root = root
        self.root.title("SECURE LOGIN SYSTEM")
        self.root.geometry("400x300")
        self.root.configure(bg="#0d0d0d")
        self.root.resizable(False, False)

        self.lbl_title = tk.Label(
            root,
            text="SECURE LOGIN",
            font=("Courier New", 20, "bold"),
            bg="#0d0d0d",
            fg="#00ff41",
        )
        self.lbl_title.pack(pady=(40, 5))

        self.lbl_subtitle = tk.Label(
            root,
            text="UNPACK MEE",
            font=("Courier New", 10),
            bg="#0d0d0d",
            fg="#00ff41",
        )
        self.lbl_subtitle.pack(pady=(0, 20))

        self.entry_key = tk.Entry(
            root,
            font=("Courier New", 14),
            justify="center",
            bg="black",
            fg="white",
            insertbackground="white",
            relief="flat",
        )
        self.entry_key.config(
            highlightbackground="#00ff41",
            highlightcolor="#00ff41",
            highlightthickness=1,
        )
        self.entry_key.pack(ipady=5, ipadx=5, pady=10)
        self.entry_key.bind("<Return>", self.check_key)

        self.btn_login = tk.Button(
            root,
            text="LOGIN",
            font=("Courier New", 12, "bold"),
            bg="#00ff41",
            fg="black",
            activebackground="white",
            activeforeground="black",
            relief="flat",
            command=self.check_key,
        )
        self.btn_login.pack(pady=20, ipadx=20)

        self.lbl_result = tk.Label(
            root,
            text="",
            font=("Courier New", 18, "bold"),
            bg="#0d0d0d",
        )
        self.lbl_result.pack(pady=10)

    def check_key(self, event=None):
        key = self.entry_key.get()
        hashed_input = "1"

        if hashed_input == TARGET_HASH:
            self.show_success()
            return

        self.lbl_result.config(text="ACCESS DENIED", fg="red")
        self.root.after(2000, lambda: self.lbl_result.config(text=""))

    def show_success(self):
        for widget in self.root.winfo_children():
            widget.destroy()

        lbl_ok = tk.Label(
            self.root,
            text="ACCESS GRANTED",
            font=("Courier New", 24, "bold"),
            bg="#0d0d0d",
            fg="#00ff41",
        )
        lbl_ok.pack(pady=(80, 10))

        lbl_info = tk.Label(
            self.root,
            text="UNPACKME",
            font=("Courier New", 30, "bold"),
            bg="#0d0d0d",
            fg="#ff0055",
        )
        lbl_info.pack(pady=(20, 10))

        btn_exit = tk.Button(
            self.root,
            text="EXIT",
            font=("Courier New", 12, "bold"),
            bg="#ff0055",
            fg="#00ff41",
            command=self.root.destroy,
        )
        btn_exit.pack(pady=(40, 0))


if __name__ == "__main__":
    check_debugger()
    root = tk.Tk()
    app = LoginApp(root)
    root.mainloop()
Elinize sağlık size soru sorsam cevaplarniyidiniz
 

Şuanda konuyu görüntüleyen kullanıcılar

Geri
Üst Alt