Files
krawl.es/src/templates/html_templates.py

68 lines
1.7 KiB
Python
Raw Normal View History

2025-12-14 19:08:01 +01:00
#!/usr/bin/env python3
"""
HTML templates for the deception server.
Templates are loaded from the html/ subdirectory.
2025-12-14 19:08:01 +01:00
"""
from .template_loader import load_template
2025-12-14 19:08:01 +01:00
def login_form() -> str:
"""Generate fake login page"""
return load_template("login_form")
2025-12-14 19:08:01 +01:00
def login_error() -> str:
"""Generate fake login error page"""
return load_template("login_error")
2025-12-14 19:08:01 +01:00
def wordpress() -> str:
"""Generate fake WordPress page"""
return load_template("wordpress")
2025-12-14 19:08:01 +01:00
def phpmyadmin() -> str:
"""Generate fake phpMyAdmin page"""
return load_template("phpmyadmin")
2025-12-14 19:08:01 +01:00
def wp_login() -> str:
"""Generate fake WordPress login page"""
return load_template("wp_login")
2025-12-14 19:08:01 +01:00
def robots_txt() -> str:
"""Generate juicy robots.txt"""
return load_template("robots.txt")
2025-12-14 19:08:01 +01:00
def directory_listing(path: str, dirs: list, files: list) -> str:
"""Generate fake directory listing"""
row_template = load_template("directory_row")
rows = ""
2025-12-14 19:08:01 +01:00
for d in dirs:
rows += row_template.format(href=d, name=d, date="2024-12-01 10:30", size="-")
2025-12-14 19:08:01 +01:00
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")
2026-01-05 17:07:10 +01:00
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)