commit 069658b0644c3db880efd776ddc36928e047a7cc
parent f165c8671c5944c73f77c193e7b11c23afbae3ab
Author: $: DAΞMON <zer0sec.xp@icloud.com>
Date: Thu, 13 Aug 2026 00:51:34 +0100
π§ Update [main] | 13 Aug 2026 00:51:34 BST
π Stats: +91 / -0 across 3 file(s)
π Breakdown: β2 βοΈ1 ποΈ0 π0
π€ Author: $: DAΞMON
π Changes:
β Added scripts/__pycache__/sync-payloads.cpython-314.pyc
βοΈ Modified scripts/sync-payloads.py
β Added src/content/payloads/methodology-and-resources/index.md
π Line changes per file:
β’ scripts/__pycache__/sync-payloads.cpython-314.pyc +- --
β’ scripts/sync-payloads.py +42 -0
β’ src/content/payloads/methodology-and-resources/index.md +49 -0
Diffstat:
3 files changed, 91 insertions(+), 0 deletions(-)
diff --git a/scripts/__pycache__/sync-payloads.cpython-314.pyc b/scripts/__pycache__/sync-payloads.cpython-314.pyc
Binary files differ.
diff --git a/scripts/sync-payloads.py b/scripts/sync-payloads.py
@@ -178,11 +178,17 @@ os.makedirs(OUT, exist_ok=True)
count = 0
topics_seen = {}
+topics_with_readme = set()
+topic_pages = {} # topic -> [(route, title)] for non-readme leaves, in title order
for topic, relpath, abspath, is_readme, out_id, route in md_files:
raw = open(abspath, encoding="utf-8", errors="replace").read()
body = rewrite_body(relpath, raw)
fallback = topic if is_readme else os.path.splitext(os.path.basename(abspath))[0]
title = title_from(raw, fallback)
+ if is_readme:
+ topics_with_readme.add(topic)
+ else:
+ topic_pages.setdefault(topic, []).append((route, title))
src_url = blob_url(relpath)
fm = (
"---\n"
@@ -202,6 +208,42 @@ for topic, relpath, abspath, is_readme, out_id, route in md_files:
topics_seen.setdefault(topic, 0)
topics_seen[topic] += 1
+# --- Synthesize a topic index for README-less topics ----------------------------
+# Some upstream folders (e.g. "Methodology and Resources") are a flat set of
+# standalone pages with no README.md, so no `{slug}/index` root gets emitted and
+# the payloads index would link to a 404. Generate a listing page for each such
+# topic so its root route resolves and enumerates its pages.
+for topic, pages in topic_pages.items():
+ if topic in topics_with_readme:
+ continue
+ ts = topic_slug(topic)
+ listing = "\n".join(
+ f"* [{title}]({route})" for route, title in sorted(pages, key=lambda p: p[1].lower())
+ )
+ from urllib.parse import quote
+ tree_url = f"{UPSTREAM}/tree/{SHA}/" + quote(topic)
+ fm = (
+ "---\n"
+ f'title: "{yaml_escape(topic)}"\n'
+ f'topic: "{yaml_escape(topic)}"\n'
+ f'topicSlug: "{ts}"\n'
+ f'sourcePath: "{yaml_escape(topic)}"\n'
+ f'sourceUrl: "{tree_url}"\n'
+ f'sha: "{SHA}"\n'
+ "isReadme: true\n"
+ "---\n\n"
+ )
+ intro = (
+ f"# {topic}\n\n"
+ f"> {len(pages)} pages in this section, mirrored from PayloadsAllTheThings.\n\n"
+ "## Pages\n\n"
+ )
+ dst = os.path.join(OUT, ts, "index.md")
+ os.makedirs(os.path.dirname(dst), exist_ok=True)
+ open(dst, "w", encoding="utf-8").write(fm + intro + listing + "\n")
+ count += 1
+ topics_seen[topic] = topics_seen.get(topic, 0) + 1
+
# --- Vendor the license ---------------------------------------------------------
os.makedirs(VENDOR, exist_ok=True)
lic_src = None
diff --git a/src/content/payloads/methodology-and-resources/index.md b/src/content/payloads/methodology-and-resources/index.md
@@ -0,0 +1,49 @@
+---
+title: "Methodology and Resources"
+topic: "Methodology and Resources"
+topicSlug: "methodology-and-resources"
+sourcePath: "Methodology and Resources"
+sourceUrl: "https://github.com/swisskyrepo/PayloadsAllTheThings/tree/3bff425aca2b/Methodology%20and%20Resources"
+sha: "3bff425aca2b"
+isReadme: true
+---
+
+# Methodology and Resources
+
+> 33 pages in this section, mirrored from PayloadsAllTheThings.
+
+## Pages
+
+* [Active Directory Attacks](/payloads/methodology-and-resources/active-directory-attack)
+* [Application Escape and Breakout](/payloads/methodology-and-resources/escape-breakout)
+* [Bind Shell](/payloads/methodology-and-resources/bind-shell-cheatsheet)
+* [Bug Hunting Methodology and Enumeration](/payloads/methodology-and-resources/methodology-and-enumeration)
+* [Cloud - AWS](/payloads/methodology-and-resources/cloud-aws-pentest)
+* [Cloud - Azure](/payloads/methodology-and-resources/cloud-azure-pentest)
+* [Cobalt Strike](/payloads/methodology-and-resources/cobalt-strike-cheatsheet)
+* [Container - Docker](/payloads/methodology-and-resources/container-docker-pentest)
+* [Container - Kubernetes](/payloads/methodology-and-resources/container-kubernetes-pentest)
+* [Hash Cracking](/payloads/methodology-and-resources/hash-cracking)
+* [HTML Smuggling](/payloads/methodology-and-resources/html-smuggling)
+* [Initial Access](/payloads/methodology-and-resources/initial-access)
+* [Linux - Evasion](/payloads/methodology-and-resources/linux-evasion)
+* [Linux - Persistence](/payloads/methodology-and-resources/linux-persistence)
+* [Linux - Privilege Escalation](/payloads/methodology-and-resources/linux-privilege-escalation)
+* [Metasploit](/payloads/methodology-and-resources/metasploit-cheatsheet)
+* [MSSQL Server](/payloads/methodology-and-resources/mssql-server-cheatsheet)
+* [Network Discovery](/payloads/methodology-and-resources/network-discovery)
+* [Network Pivoting Techniques](/payloads/methodology-and-resources/network-pivoting-techniques)
+* [Office - Attacks](/payloads/methodology-and-resources/office-attacks)
+* [Powershell](/payloads/methodology-and-resources/powershell-cheatsheet)
+* [Reverse Shell Cheat Sheet](/payloads/methodology-and-resources/reverse-shell-cheatsheet)
+* [Source Code Management & CI/CD Compromise](/payloads/methodology-and-resources/source-code-management)
+* [Subdomains Enumeration](/payloads/methodology-and-resources/web-attack-surface)
+* [Vulnerability Reports](/payloads/methodology-and-resources/vulnerability-reports)
+* [Windows - AMSI Bypass](/payloads/methodology-and-resources/windows-amsi-bypass)
+* [Windows - Defenses](/payloads/methodology-and-resources/windows-defenses)
+* [Windows - Download and execute methods](/payloads/methodology-and-resources/windows-download-and-execute)
+* [Windows - DPAPI](/payloads/methodology-and-resources/windows-dpapi)
+* [Windows - Mimikatz](/payloads/methodology-and-resources/windows-mimikatz)
+* [Windows - Persistence](/payloads/methodology-and-resources/windows-persistence)
+* [Windows - Privilege Escalation](/payloads/methodology-and-resources/windows-privilege-escalation)
+* [Windows - Using credentials](/payloads/methodology-and-resources/windows-using-credentials)