Deep-dive defense ammo tied to the video scenes so a presenter can field follow-up questions live. For each of the 26 attacks across the 3 videos: plain-language what-it-is, why-dangerous, how-CASAN-blocks (flagging which layer is deterministic vs the 3-4 AI scenes), likely challenge question + answer, and the honest limit. Opens with 3 "mantra" lines that cover most hard questions and closes with a 10-toughest-questions cheat sheet. Link it from CASAN_SCRIPT_2VIDEO.md. Numbers kept consistent: V1 = 23 vectors, V2 = 140 checks, V3 = 175 checks; ~90% of controls are deterministic. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
221 lines
20 KiB
Markdown
221 lines
20 KiB
Markdown
# CASAN — Kịch bản thuyết trình 3 Video
|
||
|
||
> Lời thoại để **nói trực tiếp trong lúc chiếu video terminal**. Viết cho người nghe
|
||
> **không cần biết kỹ thuật** vẫn hiểu — mỗi đoạn có: 【MÀN HÌNH đang chiếu gì】 và 🎙️ **lời nói**.
|
||
> Video 1 & 2 đã quay (chỉ terminal). Video 3 là phần nâng cấp mới (`feat/plan07-track-a-hardening`).
|
||
> Bản chi tiết từng cảnh kỹ thuật: `CASAN_VIDEO_NARRATION.md`.
|
||
> **Bị hỏi vặn khi thuyết trình?** Mở `CASAN_VIDEO_DEFENSE.md` — giải thích sâu từng đòn + câu đáp phản biện + ranh giới trung thực (có cheat sheet 10 câu khó nhất ở cuối).
|
||
|
||
**Một câu để nhớ xuyên suốt:** *Chúng tôi không khoe AI viết code giỏi — chúng tôi chứng minh khi AI làm sai thì có người chặn, và chặn xong có bằng chứng không chối được.*
|
||
|
||
**Mẹo trình bày:** nói chậm ở chỗ có chữ **đỏ / exit 2 / BLOCK** hiện ra — để khán giả kịp thấy "nó vừa chặn thật". Mỗi lần màn hình báo chặn, ngừng nửa giây rồi mới nói.
|
||
|
||
**Mạch 3 video (độ khó/độ sâu tăng dần):**
|
||
> **Video 1 – tấn công CƠ BẢN & KINH ĐIỂN** (đòn ai cũng phải chặn được) → **Video 2 – tấn công NÂNG CAO** (né tránh tinh vi) **cộng bằng chứng để tin** → **Video 3 – lỗ hổng SÂU NHẤT** (quản trị & vận hành thật). Cứ mỗi video, đòn khó hơn và yêu cầu "chạy thật" cao hơn.
|
||
|
||
---
|
||
|
||
## 🎬 VIDEO 1 — "AI làm bậy thì ai chặn?"
|
||
### Tấn công CƠ BẢN & KINH ĐIỂN — đòn ai cũng phải chặn được · `run-all.sh`
|
||
|
||
**🎙️ Mở đầu**
|
||
> "Ai cũng hỏi AI viết code nhanh cỡ nào. Chúng tôi hỏi câu ngược lại: **lỡ AI làm bậy — ai chặn, và làm sao chứng minh là đã chặn?**
|
||
> Mọi thứ sắp thấy là **tấn công thật**, chạy thật trên máy. Cứ nhìn góc màn hình: **exit 2 nghĩa là 'đã chặn'**. Không có hiệu ứng, không dàn dựng."
|
||
|
||
*(CASAN có 7 lớp bảo vệ gọi là 'harness'. Video này soi 3 lớp từng yếu nhất: bảo mật đầu vào, quản trị, và vận hành.)*
|
||
|
||
---
|
||
|
||
**🛡️ Lớp 1 — Bảo mật: chặn câu lệnh độc (H4)**
|
||
|
||
【MÀN HÌNH: gõ một câu ra lệnh cho AI kiểu "bỏ qua mọi chỉ dẫn trước đó", màn báo đỏ **BLOCKED · exit 2**】
|
||
> "Đây là trò kinh điển: dụ AI **quên hết luật** rồi làm theo kẻ tấn công. Hệ thống đọc ra ý đồ và chặn ngay."
|
||
|
||
【MÀN HÌNH: câu tương tự nhưng viết lách khéo để né bộ lọc từ khoá — vẫn bị chặn】
|
||
> "Kẻ gian đổi cách nói để lách. Bộ lọc dò từ khoá kiểu cũ sẽ cho lọt — nhưng ở đây có thêm một tầng **đọc hiểu ý nghĩa** bằng AI. Nó hiểu *dụng ý*, nên vẫn chặn. Đây là chỗ hiếm hoi chúng tôi dùng AI, và nó chỉ **thêm** khả năng chặn chứ không thay thế luật cứng."
|
||
|
||
【MÀN HÌNH: một file 'tài liệu' trông vô hại, bên trong giấu lệnh độc — bị bắt trước khi AI đọc】
|
||
> "Đòn nguy hiểm nhất: câu người dùng thì sạch, nhưng **lệnh độc giấu trong tài liệu mà AI sẽ đọc**. Giống như gài mìn trong hồ sơ đưa cho thư ký. Hệ thống soi tài liệu **trước khi** đưa cho AI, và gỡ mìn ra."
|
||
|
||
【MÀN HÌNH: mật khẩu / thông tin cá nhân bị chặn cả lúc vào lẫn lúc ra】
|
||
> "Cuối cùng: mật khẩu, thông tin cá nhân — chặn cả **hai chiều**. Không cho lọt vào, cũng không cho rò ra."
|
||
|
||
---
|
||
|
||
**🔏 Lớp 2 — Quản trị: sổ sách không sửa được (H5)**
|
||
|
||
【MÀN HÌNH: sửa đúng một ký tự trong nhật ký kiểm toán → báo lỗi 'chuỗi gãy'】
|
||
> "Đây là **sổ cái kiểm toán** — ghi lại ai làm gì. Tôi thử sửa **đúng một ký tự**. Cả cuốn sổ báo động ngay từ dòng đầu.
|
||
> Vì mỗi trang được **niêm phong móc xích** vào trang trước — xé hay sửa một trang là gãy cả xâu. Và phần đầu được **đóng dấu bằng chữ ký số**, chìa khoá cất ngoài tầm với. Sửa xong ký lại cũng vô ích."
|
||
|
||
【MÀN HÌNH: một người vừa đề xuất việc nhạy cảm vừa tự bấm duyệt → bị từ chối】
|
||
> "Rồi trò 'vừa đá bóng vừa thổi còi': người đề xuất **tự phê duyệt chính mình**. Bị từ chối. Nguyên tắc **tách quyền** — việc nhạy cảm phải người khác duyệt."
|
||
|
||
---
|
||
|
||
**📊 Lớp 3 — Vận hành: bất thường là biết ngay (H6)**
|
||
|
||
【MÀN HÌNH: một bước bỗng tốn gấp 3 chi phí → cổng đỏ, exit 2; rồi dữ liệu bình thường → xanh, không báo động】
|
||
> "Câu hỏi vận hành: **nếu một bước bỗng ngốn gấp ba chi phí bình thường, có ai biết không?** Có — phát hiện tức thì, bật cổng đỏ.
|
||
> Quan trọng không kém: khi mọi thứ **bình thường thì nó im lặng** — không hù doạ giả. Một cái còi báo động mà kêu suốt thì chẳng ai thèm nghe nữa."
|
||
|
||
---
|
||
|
||
**🎙️ Chốt Video 1**
|
||
|
||
【MÀN HÌNH: một đòn tấn công chạy một mạch, bị chặn lần lượt ở 4 chốt: chặn injection → lệnh sai định dạng bị loại → công cụ chạy loạn bị cắt giờ → nhật ký vẫn nguyên vẹn】
|
||
> "Cuối cùng, tôi thả **một** đòn tấn công chạy suốt một mạch. Nó bị tóm ở **từng chặng**: chặn ngay khi vào → lệnh gọi công cụ sai định dạng bị loại → công cụ chạy loạn bị cắt giờ → và mọi bước đều để lại nhật ký ký số. **Một đòn, chặn đi chặn lại ở mỗi cửa** — đó mới đúng là phòng thủ nhiều tầng.
|
||
> Ba lớp ta vừa soi trước đây yếu nhất; giờ mỗi lớp đều chống được tấn công thật. **Nhưng chặn được trong buổi demo là một chuyện — sống sót khi chạy thật ngoài đời là chuyện khác.** Đó là Video 2."
|
||
|
||
---
|
||
|
||
## 🎬 VIDEO 2 — "Đủ trưởng thành để chạy thật chưa?"
|
||
### Tấn công NÂNG CAO (né tránh tinh vi) + bằng chứng để tin · `run-hardening.sh` — Track A + Kiểm soát mở rộng + Gói bằng chứng
|
||
|
||
**🎙️ Mở đầu**
|
||
> "Video 1 là những đòn kinh điển. Video 2 là **đòn nâng cao** — kẻ tấn công viết lách tinh vi để né bộ lọc — và một câu hỏi khó hơn của dân vận hành thật: **đã đủ chững chạc để chạy production chưa, và làm sao tin được kết quả?** Chúng tôi sẽ **thành thật** cả về chỗ chưa tới."
|
||
|
||
---
|
||
|
||
**🅰️ Track A — Bịt những khe hở bộ lọc cũ bỏ sót**
|
||
|
||
【MÀN HÌNH: chữ "ignore" trông y hệt tiếng Anh nhưng bị đánh dấu là ký tự giả → chuẩn hoá rồi chặn】
|
||
> "Chữ này trông là 'ignore' tiếng Anh, nhưng vài chữ cái là **ký tự nước ngoài trông giống hệt** — mắt thường và bộ lọc cũ đều bị lừa. Hệ thống nắn chữ về dạng chuẩn rồi mới đọc, nên **cái giả lộ ngay**. Kể cả payload giấu bằng mã hoá base64 — nó giải ra, soi lại, và chặn."
|
||
|
||
【MÀN HÌNH: tắt model AI đi → hệ thống chuyển sang CHẶN thay vì cho qua】
|
||
> "Đây là câu khó nhất khi dùng AI: **lỡ cái model kiểm duyệt bị hỏng thì sao?** Hệ thống non-nớt thường **âm thầm cho qua** — nguy hiểm. Chúng tôi làm ngược lại: **model chết thì CHẶN**. Thà chặn nhầm còn hơn cho lọt. Gọi là 'an toàn khi hỏng'."
|
||
|
||
【MÀN HÌNH: bảng chi phí bị sửa 1 số → lộ; và 95 câu hợp lệ → không câu nào bị chặn nhầm】
|
||
> "Sổ chi phí giờ cũng được đóng dấu — sửa một byte là lộ. Còn chiêu tiêu lén (tăng từ từ cho khỏi ai để ý) thì có **trần cứng cộng ngân sách tích luỹ** bắt hết.
|
||
> Và siết chặt vậy nhưng **không bắt nhầm người ngay**: chúng tôi thử **95 câu hoàn toàn hợp lệ, bằng 3 thứ tiếng** — số bị chặn oan là **không**."
|
||
|
||
---
|
||
|
||
**🅲 Kiểm soát mở rộng — Ngoài phạm vi 3 lớp lõi**
|
||
|
||
【MÀN HÌNH: AI định ghi đè file bí mật `.env`, chạy lệnh xoá `rm -rf`, tải script lạ về chạy → đều chặn】
|
||
> "Chặn câu chữ thôi chưa đủ. AI vẫn có thể **làm hành động nguy hiểm**: ghi đè file mật khẩu, xoá sạch thư mục, tải script lạ về chạy thẳng. Chúng tôi canh **hành động**, không chỉ tên công cụ: việc nguy hiểm thì chặn, việc cần cân nhắc (như cài thư viện mới) thì **bắt phải có người duyệt**."
|
||
|
||
【MÀN HÌNH: AI tự thêm một thư viện độc → chặn; một bí mật sắp gửi lên mạng → chặn trước khi rời máy】
|
||
> "AI tự ý kéo về một thư viện độc trá hình — chặn. Một bí mật sắp bị gửi lên đám mây — chặn **trước khi nó rời khỏi tổ chức**."
|
||
|
||
【MÀN HÌNH: code do AI sinh cố đọc khoá SSH → bị chặn】
|
||
> "Và code do AI sinh cố lén đọc chìa khoá SSH của máy — bị chặn. Ở đây tôi nói thẳng: phần này **mới là bản nháp chắc chắn, chưa phải cô lập hoàn toàn** — sẽ nói rõ ở cuối."
|
||
|
||
---
|
||
|
||
**🏆 Gói bằng chứng — "Vì sao tin kết quả này?"**
|
||
|
||
【MÀN HÌNH: mỗi lần chạy sinh ra một thư mục 12 file có chữ ký】
|
||
> "Đây là điểm nhấn. Mỗi lần chạy, hệ thống tự đóng một **gói bằng chứng có chữ ký số** — mười hai tài liệu: kết quả từng lớp, kết quả chống tấn công, chi phí, tất cả."
|
||
|
||
【MÀN HÌNH: sửa đúng 1 byte trong gói → xác minh lại → **VÔ HIỆU**】
|
||
> "Giờ tôi sửa **đúng một byte** trong gói rồi xác minh lại — **toàn bộ gói vô hiệu**. Nghĩa là: bạn tin vào **chữ ký**, không phải tin vào lời hứa.
|
||
> Và con dấu 'đã kiểm định' chỉ được cấp khi **qua đủ mọi cổng** — thiếu bằng chứng thì nó **ghi thẳng lý do và không đóng dấu**. Không có chuyện đóng dấu cho đẹp."
|
||
|
||
---
|
||
|
||
**🎙️ Chốt Video 2**
|
||
> "Không phải AI xịn nhất — mà là AI **có kiểm soát, có bằng chứng, và dùng lại được** cho dự án khác.
|
||
> Tổng cộng **140 bài kiểm thử, không lỗi**. Và chúng tôi thành thật: đa ngôn ngữ, cô lập hoàn toàn, quản trị cỡ doanh nghiệp — là chặng đường tiếp theo. Đó chính là Video 3."
|
||
|
||
---
|
||
|
||
## 🎬 VIDEO 3 — "Nâng mắt xích yếu nhất lên" *(MỚI)*
|
||
### Vá lỗ hổng SÂU NHẤT — quản trị & vận hành thật · `run-hardening.sh` phần H5+ và H6+ (quay mới, terminal)
|
||
|
||
> **Bối cảnh để mở lời:** trong CASAN, **lớp yếu nhất quyết định trần của cả hệ thống** — như sợi xích, đứt ở mắt yếu nhất. Video này kể chuyện chúng tôi đi tìm mắt yếu nhất và nâng nó lên, hai lần.
|
||
|
||
**🎙️ Mở đầu**
|
||
> "Ở hai video trước, hai lớp bị điểm thấp nhất là **Quản trị** và **Vận hành**. Một hệ thống mạnh yếu bằng đúng **mắt xích yếu nhất của nó**. Nên video này, chúng tôi bắt tay vá đúng ba lỗ hổng lớn nhất của quản trị, rồi ba lỗ hổng lớn nhất của vận hành — mỗi cái đều có tấn công thật để chứng minh."
|
||
|
||
---
|
||
|
||
### PHẦN A — Quản trị lên hạng (H5+)
|
||
|
||
**🔑 A1 — Duyệt phải KÝ TÊN thật, không phải ai hô cũng được**
|
||
|
||
【MÀN HÌNH: đặt biến "người duyệt = ops-owner" rồi xin duyệt việc nhạy cảm → vẫn BỊ CHẶN】
|
||
> "Trước đây, để duyệt một việc nhạy cảm, chỉ cần khai tên người duyệt vào — ai gõ được cái tên đó cũng 'duyệt' được. Quá hớ hênh.
|
||
> Giờ bật chế độ nghiêm: khai suông **không ăn thua** — vẫn bị chặn."
|
||
|
||
【MÀN HÌNH: người duyệt dùng chìa khoá riêng KÝ vào đúng yêu cầu đó → APPROVED】
|
||
> "Người duyệt phải **ký tên bằng chữ ký số riêng của mình** vào đúng yêu cầu đó, và hệ thống kiểm tra cả **đúng người lẫn đúng vai trò**. Ký hợp lệ → mới cho qua. Giống như duyệt chi tiền phải **ký tươi**, chứ không phải hô 'sếp đồng ý rồi'."
|
||
|
||
*(Ý chính: từ 'khai tên' nâng lên 'ký tên thật + đúng vai'.)*
|
||
|
||
---
|
||
|
||
**🔐 A2 — Chìa khoá đóng dấu cất trong két, không ai mang ra ngoài**
|
||
|
||
【MÀN HÌNH: hệ thống ký qua két khoá (KMS), xoay chìa, và chứng minh chìa KHÔNG mang ra được — hoặc hiện ⏭ SKIP nếu chưa bật két】
|
||
> "Cái dấu để niêm phong sổ sách — chìa khoá của nó **không được nằm lăn lóc trên ổ đĩa**, vì lỡ có người trong nhà tuồn ra ngoài.
|
||
> Giờ chìa nằm trong một **két bảo mật chuyên dụng**: hệ thống gửi tài liệu vào **trong két để đóng dấu**, chìa **không bao giờ rời két** — kể cả quản trị viên cũng không lấy ra được. Và **xoay chìa định kỳ** vẫn ký tiếp bình thường."
|
||
|
||
> *(Nếu màn hiện ⏭ SKIP:)* "Ở đây két đang tắt nên bước này bỏ qua — nhưng đường ký qua két **đã chạy thật** ở lần chấm trước, mọi thứ đều có trong mã nguồn."
|
||
|
||
---
|
||
|
||
**🗄️ A3 — Xoá nhật ký để phi tang? Vẫn lộ**
|
||
|
||
【MÀN HÌNH: mỗi mốc sổ được gửi bản sao ra 'sổ ngoài'; rồi rollback sổ ở máy về mốc cũ → báo **AUDIT_GAP_DETECTED · exit 1**】
|
||
> "Kẻ tấn công thông minh sẽ **xoá nhật ký** để phi tang. Nên mỗi mốc quan trọng, chúng tôi gửi một **bản sao ra sổ bên ngoài, chỉ ghi thêm không sửa được** — như công chứng ở phường.
|
||
> Giờ tôi đóng vai kẻ gian, xoá bớt nhật ký ở máy cho về mốc cũ. Hệ thống đối chiếu với sổ ngoài và **hô lên ngay: thiếu mất một khúc**. Sổ ở nhà xoá được, nhưng bản công chứng bên ngoài thì không — nên **xoá là lộ**."
|
||
|
||
---
|
||
|
||
### PHẦN B — Vận hành lên hạng (H6+)
|
||
|
||
**🚨 B1 — Báo động THẬT gọi ra ngoài, không chỉ ghi vào sổ để đấy**
|
||
|
||
【MÀN HÌNH: một bước chạy lỗi → cảnh báo được GỬI THẲNG tới kênh báo động (webhook nhận được)】
|
||
> "Trước đây khi có sự cố, hệ thống chỉ **ghi vào một file nhật ký** — mà 3 giờ sáng thì có ai ngồi đọc file đâu.
|
||
> Giờ báo động **gửi thẳng ra kênh trực** — như tin nhắn gọi người trực dậy. Đây: một bước vừa chạy lỗi, và cảnh báo **tới nơi ngay lập tức**."
|
||
|
||
【MÀN HÌNH: tắt kênh báo động → cảnh báo KHÔNG mất, xếp vào 'hàng chờ'; bật lại → tự gửi lại thành công】
|
||
> "Lỡ kênh báo động chết thì sao? Cảnh báo **không bốc hơi** — nó được xếp vào hàng chờ. Kênh sống lại, hệ thống **tự gửi lại**. Không sự cố nào bị nuốt mất trong im lặng."
|
||
|
||
---
|
||
|
||
**🧾 B2 — Đối chiếu hoá đơn thật, không cho khai gian chi phí**
|
||
|
||
【MÀN HÌNH: kéo số liệu dùng thật từ nhà cung cấp về; rồi số ở máy khai thiếu 90% → báo **TELEMETRY_DISCREPANCY · exit 1**】
|
||
> "Một chiêu tinh vi: kẻ gian **khai thấp chi phí ở máy nhà**, để một hành động lén lút trông có vẻ 'rẻ tiền', không ai truy.
|
||
> Chống lại: chúng tôi lấy **hoá đơn dùng thật từ phía nhà cung cấp** làm chuẩn, rồi **đối chiếu** với số khai ở máy. Đây — số ở máy khai thiếu chín phần mười, hệ thống **tuýt còi ngay: lệch số**. Không tự khai gian được, vì có bên thứ hai làm chứng."
|
||
|
||
---
|
||
|
||
**💓 B3 — Bảng điều khiển biết cả khi hệ thống 'chết lâm sàng'**
|
||
|
||
【MÀN HÌNH: mở bảng theo dõi trên trình duyệt, hỏi tình trạng → 'khoẻ' (200 OK); rồi giả bộ số liệu 6 tháng không cập nhật → báo 'ĐỨNG IM' (503 stale)】
|
||
> "Một bảng theo dõi đẹp mà **ngừng cập nhật từ tuần trước** thì cũng vô dụng — nó vẫn hiện số cũ, không ai biết là đã chết.
|
||
> Bảng của chúng tôi có một **nhịp tim**: hỏi 'còn sống không?' → nếu số liệu mới thì báo **khoẻ**; nếu số liệu **cũ mèm, ngừng chảy** thì báo **đứng im**. Nhờ vậy một máy giám sát bên ngoài có thể **gọi người** ngay khi hệ thống lặng thinh — chứ không đợi nó sập hẳn."
|
||
|
||
---
|
||
|
||
**⚡ B4 — Cầu dao tự ngắt, kể cả khi lỗi chập chờn**
|
||
|
||
【MÀN HÌNH: chuỗi lỗi-tốt-lỗi-tốt xen kẽ → vẫn báo **CIRCUIT_OPEN_WINDOW · exit 1**】
|
||
> "Nếu một dịch vụ cứ hỏng liên tục, hệ thống sẽ tự **ngắt cầu dao** để khỏi đốt tiền vô ích. Nhưng kẻ tinh ranh làm nó **hỏng chập chờn** — lỗi, rồi tốt, rồi lỗi — để cái đếm 'hỏng liên tiếp' không bao giờ đủ.
|
||
> Giờ chúng tôi tính theo **tỷ lệ hỏng trong khoảng gần đây**: cứ quá nửa là **ngắt**, bất kể xen kẽ khéo cỡ nào. Né không được nữa."
|
||
|
||
---
|
||
|
||
**🎙️ Chốt Video 3 (và chốt cả bộ)**
|
||
> "Kể lại hành trình: lớp yếu nhất từng là **Quản trị**, chúng tôi nâng lên. Rồi lớp yếu nhất thành **Vận hành**, chúng tôi nâng nốt. Kết quả: **không còn lớp nào bị bỏ lại phía sau** — cả bảy lớp đều vững.
|
||
> Tổng cộng bây giờ là **175 bài kiểm thử, không một lỗi**. Mỗi tính năng đều có một tấn công thật đi kèm để chứng minh — gỡ tính năng đó ra là bài kiểm thử **đỏ ngay**.
|
||
> Và chúng tôi vẫn **thành thật**: đây là mức 'đủ chững chạc cho nội bộ', **chứng minh được bằng tấn công** — chưa phải bản production hoàn chỉnh. Muốn lên tới đó còn cần: quản lý danh tính cỡ doanh nghiệp, kho lưu trữ chống-xoá thật sự, bảng theo dõi được triển khai chính thức, cô lập hoàn toàn. Tất cả **đã ghi rõ là việc kế tiếp**, không giấu.
|
||
> Một câu để kết: **casan-old thắng một buổi demo; casan5 sống sót trong đời thật — và luôn nói thật về chỗ mình chưa tới.**"
|
||
|
||
---
|
||
|
||
### 📌 Bảng tra nhanh cho người trình bày
|
||
|
||
| Video | Cấp độ | Chủ đề một câu | Con số chốt | Tài liệu chạy |
|
||
|---|---|---|---|---|
|
||
| **1** | Cơ bản & kinh điển | Khi AI làm bậy, ai chặn và chứng minh ra sao | 23 đòn tấn công, chặn hết | `run-all.sh` |
|
||
| **2** | Nâng cao + bằng chứng | Né tránh tinh vi bị bắt · đủ trưởng thành · trung thực chỗ chưa tới | 140 bài kiểm thử, 0 lỗi | `run-hardening.sh` (Track A + mở rộng + gói bằng chứng) |
|
||
| **3** | Lỗ hổng sâu nhất | Nâng mắt xích yếu nhất: quản trị & vận hành lên hạng | 175 bài kiểm thử, 0 lỗi · không lớp nào dưới chuẩn | `run-hardening.sh` (phần H5+ và H6+) |
|
||
|
||
> **Nếu chỉ có 60 giây:** chiếu 3 khoảnh khắc "chặn thật" — (1) file giấu lệnh độc bị bắt, (2) sửa 1 byte → gói bằng chứng vô hiệu, (3) khai gian chi phí → lệch số bị tuýt còi. Ba cái đó tự kể hết câu chuyện.
|