Skip to content

Commit f06abf2

Browse files
committed
Land additional validated note updates
1 parent ff1f970 commit f06abf2

9 files changed

Lines changed: 306 additions & 206 deletions

File tree

TryHackMe/00-foundations/learning-meta/BFFs-setting-started-inspecting-the-site.md

Lines changed: 36 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,31 @@
1-
# BFFs – Getting Started: Inspecting the Site
1+
---
2+
type: resource-note
3+
status: done
4+
created: 2026-03-11
5+
updated: 2026-03-11
6+
tags: [security-writeup, tryhackme, web, source-review]
7+
source: "TryHackMe - BFFs: Getting Started - Inspecting the Site"
8+
platform: tryhackme
9+
room: "BFFs: Getting Started - Inspecting the Site"
10+
slug: bffs-getting-started-inspecting-the-site
11+
path: TryHackMe/00-foundations/learning-meta/BFFs-setting-started-inspecting-the-site.md
12+
topic: 00-foundations
13+
domain: [foundations, web]
14+
skills: [recon, web-enum, auth-session]
15+
artifacts: [concept-notes, pattern-card]
16+
sanitized: true
17+
---
18+
19+
# BFFs: Getting Started - Inspecting the Site
220

321
> Scenario: pre‑production social media app **BFFs**. Goal is to pivot from a normal user-facing page to the hidden admin portal using only the browser and very light OSINT‑style recon.
422
523
---
624

7-
## 1. First contact – eyeballing the site
25+
## Summary
826

927
**Target URL**
10-
`http://<THM_IP>/`
28+
`http://TARGET_IP/`
1129

1230
Actions:
1331

@@ -23,16 +41,18 @@ Before touching tools like Burp, we treat the browser itself as a recon tool. Ma
2341

2442
---
2543

26-
## 2. Inspecting the HTML source – hunting for comments
44+
## Key Concepts
45+
46+
### 2. Inspecting the HTML source – hunting for comments
2747

28-
### 2.1 Opening the source
48+
#### 2.1 Opening the source
2949

3050
From the main page:
3151

3252
* Right‑click → **View Page Source** (or press `Ctrl+U`).
3353
* Firefox opens a new tab containing the raw HTML.
3454

35-
### 2.2 Searching for developer comments
55+
#### 2.2 Searching for developer comments
3656

3757
In the source tab:
3858

@@ -46,11 +66,11 @@ Typical patterns:
4666

4767
Once we see something like `/test-admin`, we treat it as a **high‑value endpoint leak**.
4868

49-
### 2.3 Following the leaked endpoint
69+
#### 2.3 Following the leaked endpoint
5070

5171
* Navigate directly to the discovered path, e.g.
5272

53-
* `http://<THM_IP>/test-admin`
73+
* `http://TARGET_IP/test-admin`
5474
* Confirm that this reveals an **Admin Page** with a login form.
5575

5676
**Takeaway:**
@@ -62,7 +82,7 @@ HTML comments are not access control. Any information in them should be treated
6282

6383
---
6484

65-
## 3. Hidden admin login – understanding the risk
85+
### 3. Hidden admin login – understanding the risk
6686

6787
At `/test-admin` we see:
6888

@@ -86,9 +106,9 @@ Before brute forcing, we try the **lowest‑hanging fruit**: default or guessabl
86106

87107
---
88108

89-
## 4. Default credential guessing
109+
### 4. Default credential guessing
90110

91-
### 4.1 Why default creds are a thing
111+
#### 4.1 Why default creds are a thing
92112

93113
Many frameworks ship with preset admin accounts to simplify development. In a rushed deployment, devs may:
94114

@@ -97,7 +117,7 @@ Many frameworks ship with preset admin accounts to simplify development. In a ru
97117

98118
In CTFs and in real incidents, logging in with the defaults is often enough to fully compromise the app.
99119

100-
### 4.2 Typical username:password pairs to try
120+
#### 4.2 Typical username:password pairs to try
101121

102122
Manually test combinations in the login form (a few examples):
103123

@@ -115,7 +135,7 @@ We always:
115135

116136
---
117137

118-
## 5. Inside the admin portal – what can we see/do?
138+
### 5. Inside the admin portal – what can we see/do?
119139

120140
After successful login, the `/admin-portal` reveals:
121141

@@ -140,7 +160,7 @@ From an attacker’s perspective, this is a **full privilege escalation** from a
140160

141161
---
142162

143-
## 6. Mini diagram – attacker workflow
163+
### 6. Mini diagram – attacker workflow
144164

145165
```text
146166
[Browser] --> [Public BFFs page]
@@ -162,7 +182,7 @@ From an attacker’s perspective, this is a **full privilege escalation** from a
162182

163183
---
164184

165-
## 7. Defensive lessons
185+
### 7. Defensive lessons
166186

167187
1. **Never rely on obscurity:**
168188

@@ -192,7 +212,7 @@ From an attacker’s perspective, this is a **full privilege escalation** from a
192212

193213
---
194214

195-
## 8. EN–ZH terminology quick reference
215+
### 8. EN–ZH terminology quick reference
196216

197217
| English Term | Meaning (EN) | 中文对应术语 |
198218
| --------------------------------- | ------------------------------------------- | ---------- |

TryHackMe/40-networking/networking-concepts.md

Lines changed: 27 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,28 @@
11
---
2+
type: resource-note
3+
status: done
4+
created: 2026-01-18
5+
updated: 2026-03-11
6+
tags: [security-writeup, tryhackme, networking, fundamentals]
7+
source: TryHackMe - Networking Concepts
28
platform: tryhackme
3-
room: "Networking Concepts"
9+
room: Networking Concepts
410
slug: networking-concepts
5-
path: "Network-Fundamentals"
6-
topic: "40-networking"
7-
domain: ["networking"]
8-
skills: ["osi-model", "tcp-ip", "ip-subnetting", "tcp-udp", "telnet"]
9-
artifacts: ["concept-notes", "cookbook"]
10-
status: "done"
11-
date: 2026-01-18
11+
path: TryHackMe/40-networking/networking-concepts.md
12+
topic: 40-networking
13+
domain: [networking]
14+
skills: [osi-model, tcp-ip, ip-subnetting, tcp-udp, telnet]
15+
artifacts: [concept-notes, cookbook]
16+
sanitized: true
1217
---
1318

14-
# Networking Concepts (TryHackMe)
19+
# Networking Concepts
20+
21+
## Summary
22+
23+
* **What this room trains:** mental model of how data moves from an app to the wire (OSI + TCP/IP), and how to reason about addresses, ports, and encapsulation.
24+
* **Main concepts:** OSI 7 layers vs TCP/IP stack, MAC vs IP, private vs public IP, routing, UDP vs TCP, TCP handshake, encapsulation, basic TCP interaction via `telnet`.
25+
* **What I will reuse elsewhere:** quickly classifying a symptom by layer (“L2 vs L3 vs L4”), reading packet captures, validating subnet ranges, and testing open TCP ports without heavy tooling.
1526

1627
## EN–ZH Glossary (quick)
1728

@@ -34,13 +45,7 @@ date: 2026-01-18
3445
| Encapsulation | 封装 | Each layer wraps data with its own header (and sometimes trailer) |
3546
| Telnet | 远程终端协议 / telnet 工具 | A simple TCP client; useful to “talk” to open TCP ports |
3647

37-
## 0) Summary
38-
39-
* **What this room trains:** mental model of how data moves from an app to the wire (OSI + TCP/IP), and how to reason about addresses, ports, and encapsulation.
40-
* **Main concepts:** OSI 7 layers vs TCP/IP stack, MAC vs IP, private vs public IP, routing, UDP vs TCP, TCP handshake, encapsulation, basic TCP interaction via `telnet`.
41-
* **What I will reuse elsewhere:** quickly classifying a symptom by layer (“L2 vs L3 vs L4”), reading packet captures, validating subnet ranges, and testing open TCP ports without heavy tooling.
42-
43-
## 1) Key Concepts
48+
## Key Concepts
4449

4550
### 1.1 OSI model (7 layers) as a debugging lens
4651

@@ -173,7 +178,7 @@ Security note:
173178

174179
* Telnet transmits data in plaintext. Use SSH for real administration.
175180

176-
## 2) Pattern Cards
181+
## Pattern Cards
177182

178183
### Pattern 1 — Map a symptom to a layer
179184

@@ -224,12 +229,12 @@ Security note:
224229
* cleartext works → proceed with protocol-aware tooling
225230
* no readable output → might be encrypted (TLS) or binary protocol
226231

227-
## 3) Command Cookbook (only what I actually used)
232+
## Command Cookbook
228233

229234
> Keep commands reproducible. Use placeholders.
230235
231236
```bash
232-
export T=MACHINE_IP
237+
export T=TARGET_IP
233238

234239
# (Linux) inspect interface + IP configuration
235240
ip a s
@@ -260,7 +265,7 @@ Notes:
260265
* `link/ether` shows the MAC address
261266
* Telnet exit: `Ctrl + ]` then `quit`.
262267

263-
## 4) Evidence
268+
## Evidence
264269

265270
* Store screenshots/outputs under `assets/`.
266271
* Remove usernames, tokens, and real public IPs/domains.
@@ -274,13 +279,13 @@ Suggested asset filenames :
274279
* `assets/tcp-3way-handshake.png` — SYN/SYN-ACK/ACK diagram
275280
* `assets/encapsulation-stack.png` — headers added per layer
276281

277-
## 5) Takeaways
282+
## Takeaways
278283

279284
* **1 thing I would do faster next time:** map any observation to an OSI layer immediately (it reduces random debugging).
280285
* **1 check I keep forgetting:** verify the subnet prefix (`/24`, `/16`, etc.) before assuming two hosts can talk directly.
281286
* **1 reference worth re-reading:** TCP connection setup and what packet captures show at each layer during handshake.
282287

283-
## 6) References
288+
## References
284289

285290
* RFC 1122 — Requirements for Internet Hosts: Communication Layers (TCP/IP model grounding).
286291
* RFC 1918 — Address Allocation for Private Internets (private IPv4 ranges).

0 commit comments

Comments
 (0)