hackingtool/tools/steganography.py

82 lines
2.6 KiB
Python
Raw Permalink Normal View History

import subprocess
from core import HackingTool, HackingToolsCollection, console
from core import validate_input
2025-10-14 06:02:18 +00:00
from rich.panel import Panel
from rich.prompt import Prompt
class SteganoHide(HackingTool):
TITLE = "SteganoHide"
INSTALL_COMMANDS = ["sudo apt-get install steghide -y"]
def run(self):
choice_run = input(
"[1] Hide\n"
"[2] Extract\n"
"[99]Cancel\n"
2025-10-14 06:02:18 +00:00
">> "
)
choice_run = validate_input(choice_run, [1, 2, 99])
if choice_run is None:
2025-10-14 06:02:18 +00:00
console.print("[bold red]Please choose a valid input[/bold red]")
return self.run()
if choice_run == 99:
return
if choice_run == 1:
2025-10-14 06:02:18 +00:00
file_hide = input("Enter Filename to Embed (1.txt) >> ")
file_to_be_hide = input("Enter Cover Filename (test.jpeg) >> ")
subprocess.run(["steghide", "embed", "-cf", file_to_be_hide, "-ef", file_hide])
2025-10-14 06:02:18 +00:00
elif choice_run == 2:
from_file = input("Enter Filename to Extract Data From >> ")
subprocess.run(["steghide", "extract", "-sf", from_file])
class StegnoCracker(HackingTool):
TITLE = "StegnoCracker"
2025-10-14 06:02:18 +00:00
DESCRIPTION = "SteganoCracker uncovers hidden data inside files using brute-force utility"
INSTALL_COMMANDS = ["pip3 install stegcracker && pip3 install stegcracker -U --force-reinstall"]
def run(self):
2025-10-14 06:02:18 +00:00
filename = input("Enter Filename >> ")
passfile = input("Enter Wordlist Filename >> ")
subprocess.run(["stegcracker", filename, passfile])
2025-10-14 06:02:18 +00:00
2021-07-05 02:12:01 +00:00
class StegoCracker(HackingTool):
TITLE = "StegoCracker"
2025-10-14 06:02:18 +00:00
DESCRIPTION = "StegoCracker lets you hide and retrieve data in image or audio files"
2021-07-05 02:12:01 +00:00
INSTALL_COMMANDS = [
"git clone https://github.com/W1LDN16H7/StegoCracker.git",
2021-07-05 02:12:01 +00:00
"sudo chmod -R 755 StegoCracker"
]
2025-10-14 06:02:18 +00:00
RUN_COMMANDS = [
"cd StegoCracker && python3 -m pip install -r requirements.txt",
"./install.sh"
2021-07-05 02:12:01 +00:00
]
PROJECT_URL = "https://github.com/W1LDN16H7/StegoCracker"
2025-10-14 06:02:18 +00:00
class Whitespace(HackingTool):
TITLE = "Whitespace"
2025-10-14 06:02:18 +00:00
DESCRIPTION = "Use whitespace and unicode characters for steganography"
INSTALL_COMMANDS = [
"git clone https://github.com/beardog108/snow10.git",
"sudo chmod -R 755 snow10"
]
2021-07-05 02:12:01 +00:00
RUN_COMMANDS = ["cd snow10 && ./install.sh"]
PROJECT_URL = "https://github.com/beardog108/snow10"
class SteganographyTools(HackingToolsCollection):
2025-10-14 06:02:18 +00:00
TITLE = "Steganography Tools"
TOOLS = [SteganoHide(), StegnoCracker(), StegoCracker(), Whitespace()]
if __name__ == "__main__":
tools = SteganographyTools()
tools.show_options()