Fake Screenshot Detector in Python | Cyber Security GUI Project

 Demo :


Click Video πŸ‘‡πŸ‘‡πŸ‘‡




























⭐ Features :

  • Detects edited screenshots

  • Reads hidden image metadata

  • Hacker-style GUI

  • Beginner-friendly Python project

  • Real-life scam awareness


Code :


import tkinter as tk

from tkinter import filedialog

from PIL import Image, ImageTk, ExifTags


# ---------------------------

# Main Window

# ---------------------------

root = tk.Tk()

root.title("Fake Screenshot Detector")

root.geometry("520x420")

root.configure(bg="#0b0b0b")

root.resizable(False, False)


# ---------------------------

# Global variables

# ---------------------------

img_label = None


# ---------------------------

# Functions

# ---------------------------

def analyze_image(path):

    try:

        img = Image.open(path)

        exif = img.getexif()

        metadata = {}


        for tag_id, value in exif.items():

            tag = ExifTags.TAGS.get(tag_id, tag_id)

            metadata[tag] = value


        if "Software" in metadata or "Photoshop" in str(metadata.values()):

            return "⚠️ FAKE / EDITED SCREENSHOT DETECTED", "red"

        else:

            return "✅ IMAGE LOOKS ORIGINAL", "green"


    except Exception as e:

        return "❌ Unable to Analyze Image", "orange"



def upload_image():

    global img_label


    file_path = filedialog.askopenfilename(

        filetypes=[("Image Files", "*.png *.jpg *.jpeg")]

    )


    if not file_path:

        return


    img = Image.open(file_path)

    img.thumbnail((220, 220))

    img = ImageTk.PhotoImage(img)


    if img_label:

        img_label.config(image=img)

        img_label.image = img

    else:

        img_label = tk.Label(root, image=img, bg="#0b0b0b")

        img_label.image = img

        img_label.pack(pady=10)


    result, color = analyze_image(file_path)

    result_label.config(text=result, fg=color)



# ---------------------------

# UI Elements

# ---------------------------

title = tk.Label(

    root,

    text="FAKE SCREENSHOT DETECTOR",

    font=("Consolas", 18, "bold"),

    fg="#00ffcc",

    bg="#0b0b0b"

)

title.pack(pady=15)


subtitle = tk.Label(

    root,

    text="Cyber Security Awareness Tool",

    font=("Consolas", 10),

    fg="#aaaaaa",

    bg="#0b0b0b"

)

subtitle.pack()


upload_btn = tk.Button(

    root,

    text="UPLOAD SCREENSHOT",

    font=("Consolas", 12, "bold"),

    bg="#111111",

    fg="#00ff00",

    activebackground="#00ff00",

    activeforeground="#000000",

    relief="solid",

    bd=1,

    command=upload_image

)

upload_btn.pack(pady=20)


result_label = tk.Label(

    root,

    text="Waiting for image...",

    font=("Consolas", 12, "bold"),

    fg="white",

    bg="#0b0b0b"

)

result_label.pack(pady=10)


footer = tk.Label(

    root,

    text="Educational Purpose Only | FuzzuTech",

    font=("Consolas", 9),

    fg="#555555",

    bg="#0b0b0b"

)

footer.pack(side="bottom", pady=10)


# ---------------------------

# Run App

# ---------------------------

root.mainloop()


Comments

Popular posts from this blog

Educational File Encryptor GUI (Python AES Project) | FuzzuTech

Is This News Real or Fake? πŸ€– AI Exposes the Truth | FuzzuTech Python App Demo

🚨 Python Intrusion Detection System (IDS) – Real-Time ML + Tkinter GUI Project | FuzzuTech