Giới thiệu
Trong thời đại công nghệ số, việc bảo vệ thông tin cá nhân ngày càng trở nên quan trọng. Một trong những lỗ hổng mà nhiều người dùng chưa nhận thức rõ là việc bảo mật cho subdomain. Bài viết này sẽ giúp bạn hiểu rõ hơn về vấn đề này và cách khắc phục.
Tình hình hiện tại
Tôi sở hữu một tên miền riêng và đã tạo ra nhiều subdomain khác nhau. Một số subdomain phục vụ cho các dịch vụ trực tuyến, một cái kết nối đến Cloudflare Tunnel cho Home Assistant của tôi, và một cái để truy cập NAS tại nhà. Subdomain này rõ ràng sẽ chuyển tiếp yêu cầu đến router của tôi, và router này có địa chỉ IP công cộng do nhà cung cấp dịch vụ Internet cấp. Ở Liên minh Châu Âu, địa chỉ IP được coi là dữ liệu riêng tư theo nghĩa pháp lý. Tại Pháp, việc tiết lộ thông tin này có thể bị phạt đến 5 năm tù và 300.000€ tiền phạt.
Về lý thuyết, không ai biết về các subdomain của tôi, bao gồm cả subdomain trỏ đến địa chỉ IP của router. Để bảo mật kết nối với NAS, tôi đang sử dụng Let's Encrypt để lấy chứng chỉ TLS. Let's Encrypt đã mang đến một cơ hội tuyệt vời cho cá nhân để nhận chứng chỉ miễn phí. Tuy nhiên, có một vấn đề lớn: Let's Encrypt ghi lại mọi yêu cầu chứng chỉ trong một cơ sở dữ liệu trung tâm có tên là Certificate Transparency. Điều này cũng đúng với mọi nhà phát hành chứng chỉ TLS công khai khác như Google hay Cloudflare. Trên thực tế, có một công cụ công khai để kiểm tra các nhật ký cho một tên miền: crt.sh.
Ví dụ về lỗ hổng bảo mật
Dưới đây là một bảng trích xuất từ một tờ báo nổi tiếng tại Pháp cho thấy cách mà họ lộ thông tin cá nhân:
| Not Before | Not After | Common Name | Matching Identities | Issuer Name |
|---|---|---|---|---|
| 2025-04-02 | 2025-07-01 | redaction.lemonde.fr |
redaction.lemonde.fr |
C=US, O=Google Trust Services, CN=WE1 |
| 2025-04-03 | 2025-07-02 | infos.lemonde.fr |
infos.lemonde.fr |
C=US, O=Google Trust Services, CN=WE1 |
| 2025-04-02 | 2025-07-01 | abonnements.lemonde.fr |
abonnissements.lemonde.fr |
C=US, O=Google Trust Services, CN=WE1 |
| 2025-04-02 | 2025-07-01 | rec-festival.lemonde.fr |
rec-festival.lemonde.fr |
C=US, O=Let's Encrypt, CN=R11 |
Như bạn thấy, thông tin về subdomain có thể dễ dàng truy cập.
Vấn đề lớn hơn
Mỗi lần bạn yêu cầu một chứng chỉ TLS từ các nhà phát hành công khai, yêu cầu đó sẽ được ghi lại và công khai. Điều này có nghĩa là, từ subdomain, bất kỳ ai cũng có thể truy tìm địa chỉ IP từ các bản ghi DNS. Nếu một trong các subdomain trỏ về nhà bạn, bạn sẽ dễ dàng bị theo dõi. Tệ hơn nữa, nhật ký dường như tồn tại mãi mãi. Nếu bạn kiểm tra với lemonde.fr, bạn sẽ thấy nhật ký sớm nhất là từ Digicert vào năm 2013.
Các giải pháp khả thi
Hãy cùng xem xét các giải pháp khả thi:
- Xóa subdomain: Đây là một tùy chọn nếu bạn không cần truy cập bên ngoài. Tôi có thể làm điều này, nhưng điều đó sẽ làm mất đi sự thú vị trong việc tìm kiếm giải pháp.
- Gỡ bỏ HTTPS: Không cần phải giải thích tại sao đây là một ý tưởng tồi.
- Che giấu subdomain: Thay vì
home.yourdomain.com, bạn có thể sử dụng một cái tên khó hiểu nhưxyz.yourdomain.com. Tuy nhiên, với số lượng subdomain hạn chế, người khác vẫn có thể kiểm tra từng cái một và tìm ra địa chỉ IP của bạn. - Sử dụng Cloudflare Tunnel: Tôi đang sử dụng Cloudflare Tunnel cho Home Assistant của mình. Tôi không thấy yêu cầu chứng chỉ của nó trong các nhật ký. Điều này có thể là do nó sử dụng chứng chỉ wildcard hoặc không ghi lại vì các yêu cầu là nội bộ.
- Sử dụng chứng chỉ wildcard: Yêu cầu chứng chỉ wildcard, tức là
*.mydomain.com, được ghi lại như bất kỳ yêu cầu nào khác, nhưng không tiết lộ thông tin về bất kỳ subdomain nào.
So sánh giải pháp
| Cloudflare Tunnel | Wildcard |
|---|---|
| Ưu điểm |
|
| Nhược điểm |
|
Với ma trận quyết định đơn giản này, tôi đã chọn tiếp tục sử dụng Let's Encrypt, nhưng với các chứng chỉ wildcard. Bạn có thể đưa ra lựa chọn khác trong bối cảnh cụ thể của bạn.
Tóm tắt
Mọi yêu cầu chứng chỉ TLS đến nhà cung cấp công khai đều được ghi lại trong một cơ sở dữ liệu có thể truy cập công khai. Các yêu cầu chứng chỉ cho các subdomain trỏ đến nhà bạn (hoặc những nơi khác mà bạn không muốn tiết lộ) có thể được truy tìm đến địa chỉ IP của bạn thông qua các bản ghi DNS.
Một số giải pháp tồn tại. Trong bài viết tiếp theo, tôi sẽ sử dụng Let's Encrypt trên Synology để yêu cầu một chứng chỉ wildcard.
Tuy nhiên, hãy nhớ rằng một khi yêu cầu của bạn đã được ghi lại, chúng sẽ tồn tại mãi mãi. Các lựa chọn duy nhất để lấy lại quyền riêng tư của bạn là di chuyển đến một địa điểm khác hoặc, nếu không, thay đổi nhà cung cấp Internet để nhận được một địa chỉ IP mới.
Các bước tiếp theo
- Tham khảo thêm về Certificate Transparency
- Khám phá Certificate Search
Bài viết gốc được xuất bản trên A Java Geek vào ngày 21 tháng 9 năm 2025