diff --git a/SECURITY_INCIDENT_GITEA_CREDENTIALS.md b/SECURITY_INCIDENT_GITEA_CREDENTIALS.md index e37f3f1..2f75089 100644 --- a/SECURITY_INCIDENT_GITEA_CREDENTIALS.md +++ b/SECURITY_INCIDENT_GITEA_CREDENTIALS.md @@ -2,7 +2,7 @@ > **Phát hiện:** 2026-07-03, trong quá trình review toàn bộ dự án. > **Mức độ:** Nghiêm trọng — mật khẩu thật ở dạng plaintext, đã nằm trong lịch sử git của repo dùng chung. -> **Trạng thái:** ⏳ Chưa xử lý — cần bạn (người có quyền admin Gitea) thực hiện các bước dưới đây. +> **Trạng thái:** 🟢 Mật khẩu đã rotate xong cả 4 tài khoản; lịch sử git đã redact xong, chỉ còn 1 lệnh force-push của bạn để hoàn tất. --- @@ -43,7 +43,7 @@ File này nằm trong repo private `hanlap/trading-portal` tại `git.dangloica. `https://git.dangloica.org/hanlap/trading-portal/src/branch/history-rewrite-2026-07-03` -> Lưu ý: nhánh này đã được cập nhật 2 lần — lần đầu dựa trên `dca7a49`, lần 2 (hiện tại) dựa trên `d9afca4` sau khi `hanlap` push thêm 1 commit hotfix, để không làm mất commit đó khi force-push. +> Lưu ý: nhánh này đã được tạo lại **3 lần** do `master` tiếp tục có commit mới trong lúc chờ xử lý (lần 1 dựa trên `dca7a49`, lần 2 dựa trên `d9afca4` sau hotfix của `hanlap`, lần 3 — hiện tại — dựa trên `6707d03`, tip mới nhất của `master` tính đến 2026-07-03). Bản mới nhất (tip `9d0a32c`) là bản cần force-push, các bản cũ hơn không còn dùng nữa. **Việc còn lại — chỉ bạn chạy được** (force-push vào `master` nằm ngoài phạm vi Claude được phép tự động thực hiện): @@ -52,6 +52,8 @@ git push origin history-rewrite-2026-07-03:master --force git push origin --delete history-rewrite-2026-07-03 # dọn nhánh tạm sau khi xong ``` +> ⚠️ **Nên chạy sớm**: mỗi lần có commit mới lên `master` trước khi force-push, nhánh rewrite lại bị lỗi thời và cần làm lại. Nếu team đang tích cực push code, tốt nhất tạm dừng push vào `master` cho đến khi force-push xong, để tránh phải lặp lại bước này lần nữa. + Sau khi force-push, **thông báo ngay cho `hanlap`, `nguyendao`, `tulinh`, `namcunguyen`**: họ phải chạy (không được `git pull` bình thường vì sẽ tạo merge conflict với history cũ): ```bash @@ -71,8 +73,8 @@ hoặc đơn giản nhất là xoá bản clone cũ và clone lại từ đầu. | Việc | Trạng thái | |---|---| | Gỡ bảng mật khẩu khỏi ARCHITECTURE.md (bản hiện tại) | ✅ Đã làm (2026-07-03, cùng đợt review này) | -| Rotate mật khẩu `namcunguyen` | ✅ Đã đổi (2026-07-03) — credential mới đã cấu hình trong Git Credential Manager và dùng để push commit `210ccab..c609c2b` | -| Rotate mật khẩu `hanlap`, `nguyendao`, `tulinh` | ⏳ Chờ bạn thực hiện trên Gitea | -| Rewrite lịch sử git (filter-repo, verify 0 mật khẩu còn sót) | ✅ Đã làm (2026-07-03), đẩy lên nhánh `history-rewrite-2026-07-03` | -| Force-push nhánh rewrite đè `master` + báo team resync | ⏳ Chờ bạn chạy (xem Bước 2 ở trên) | +| Rotate mật khẩu `namcunguyen` | ✅ Đã đổi (2026-07-03) | +| Rotate mật khẩu `hanlap`, `nguyendao`, `tulinh` | ✅ Đã đổi (2026-07-03) — cả 4 tài khoản bị lộ giờ đều có mật khẩu mới | +| Rewrite lịch sử git (filter-repo, verify 0 mật khẩu còn sót) | ✅ Đã làm (2026-07-03, lần 3), đẩy lên nhánh `history-rewrite-2026-07-03` (tip `9d0a32c`) | +| Force-push nhánh rewrite đè `master` + báo team resync | ⏳ Chờ bạn chạy (xem Bước 2 ở trên) — làm sớm để tránh phải rebuild nhánh lần nữa | | Bật 2FA cho các tài khoản ghi | ⏳ Chờ bạn thực hiện |