docs: replace dummy docs with GEMASTIK 2026 Warmup writeups (ch1-14)
- Deleted all previous dummy docs (defcon-quals-2024, infra/cloudflare-525, debugging/websocket-timeout, template, docs/*, notes/*, research/*) - Added 14 Gemastik warmup writeups covering encoding, stego, web, pwn, crypto - ch13: RSA small factors; ch14: RSA special integers via paper-search (GCD with paper appendix primes) - All flags recovered and documented with solution methods
This commit is contained in:
1 parent
be923cb432
commit
7a6e717c28
29 files changed
+841
-734
No files matched your search
@@ -0,0 +1,43 @@
|
||||
---
|
||||
title: "Sixty Four — Double Base64"
|
||||
event: "GEMASTIK 2026 Warmup"
|
||||
challenge: "Sixty Four"
|
||||
category: "crypto"
|
||||
points: 500
|
||||
difficulty: "easy"
|
||||
flag: "GEMASTIK19{b4s3_s1xty_f0ur_warm1ng_up}"
|
||||
---
|
||||
|
||||
# Sixty Four (500 pts) — Encoding
|
||||
|
||||
**File:** `chall.txt` → `UjBWTlFWTlVTVXN4T1h0aU5ITXpYM014ZUhSNVgyWXdkWEpmZDJGeWJURnVaMTkxY0gwPQ==`
|
||||
|
||||
Teks di-encode **Base64 dua kali** (hint: "sixty four" = base64). Decode berlapis:
|
||||
|
||||
```bash
|
||||
$ echo "UjBWTlFWTlVTVXN4T1h0aU5ITXpYM014ZUhSNVgyWXdkWEpmZDJGeWJURnVaMTkxY0gwPQ==" | base64 -d
|
||||
R0VNQVNUSUsxOXtiNHMzX3MxeHR5X2YwdXJfd2FybTFuZ191cH0=
|
||||
$ echo "R0VNQVNUSUsxOXtiNHMzX3MxeHR5X2YwdXJfd2FybTFuZ191cH0=" | base64 -d
|
||||
GEMASTIK19{b4s3_s1xty_f0ur_warm1ng_up}
|
||||
```
|
||||
|
||||
## Solusi Python
|
||||
|
||||
```python
|
||||
import base64
|
||||
|
||||
with open("chall.txt") as f:
|
||||
s = f.read().strip()
|
||||
|
||||
# First base64 decode
|
||||
decoded1 = base64.b64decode(s)
|
||||
# Second base64 decode
|
||||
flag = base64.b64decode(decoded1).decode()
|
||||
|
||||
print(f"Flag: {flag}")
|
||||
# Output: GEMASTIK19{b4s3_s1xty_f0ur_warm1ng_up}
|
||||
```
|
||||
|
||||
## Flag
|
||||
|
||||
`GEMASTIK19{b4s3_s1xty_f0ur_warm1ng_up}`
|
||||
Reference in new issue
Block a user