Files
krawl.es/src/templates/html_templates.py
2026-01-05 17:07:10 +01:00

68 lines
1.7 KiB
Python

#!/usr/bin/env python3
"""
HTML templates for the deception server.
Templates are loaded from the html/ subdirectory.
"""
from .template_loader import load_template
def login_form() -> str:
"""Generate fake login page"""
return load_template("login_form")
def login_error() -> str:
"""Generate fake login error page"""
return load_template("login_error")
def wordpress() -> str:
"""Generate fake WordPress page"""
return load_template("wordpress")
def phpmyadmin() -> str:
"""Generate fake phpMyAdmin page"""
return load_template("phpmyadmin")
def wp_login() -> str:
"""Generate fake WordPress login page"""
return load_template("wp_login")
def robots_txt() -> str:
"""Generate juicy robots.txt"""
return load_template("robots.txt")
def directory_listing(path: str, dirs: list, files: list) -> str:
"""Generate fake directory listing"""
row_template = load_template("directory_row")
rows = ""
for d in dirs:
rows += row_template.format(href=d, name=d, date="2024-12-01 10:30", size="-")
for f, size in files:
rows += row_template.format(href=f, name=f, date="2024-12-01 14:22", size=size)
return load_template("directory_listing", path=path, rows=rows)
def product_search() -> str:
"""Generate product search page with SQL injection honeypot"""
return load_template("generic_search")
def input_form() -> str:
"""Generate input form page for XSS honeypot"""
return load_template("input_form")
def main_page(counter: int, content: str) -> str:
"""Generate main Krawl page with links and canary token"""
return load_template("main_page", counter=counter, content=content)