1 điểm bởi GN⁺ 2025-12-14 | 1 bình luận | Chia sẻ qua WhatsApp
  • Một nhà nghiên cứu bảo mật đã phát hiện token truy cập GitHub do một nhân viên Home Depot vô tình đăng công khai lên mạng, cho thấy các hệ thống nội bộ đã bị phơi lộ ra bên ngoài trong suốt 1 năm
  • Token này cung cấp quyền truy cập và chỉnh sửa đối với hàng trăm kho mã nguồn riêng tư, đồng thời có thể truy cập hạ tầng đám mây, hệ thống xử lý đơn hàng và hệ thống quản lý tồn kho
  • Nhà nghiên cứu đã nhiều lần gửi email và tin nhắn LinkedIn cho Home Depot nhưng không nhận được phản hồi trong nhiều tuần
  • Home Depot chỉ khắc phục lỗ hổng và thu hồi quyền truy cập của token sau khi TechCrunch liên hệ
  • Home Depot không có cơ chế báo cáo lỗ hổng hoặc chương trình bug bounty, và vụ việc lần này cho thấy vấn đề thiếu vắng hệ thống ứng phó bảo mật

Tổng quan vụ lộ quyền truy cập vào hệ thống nội bộ của Home Depot

  • Một nhà nghiên cứu bảo mật đã phát hiện token truy cập riêng tư được một nhân viên Home Depot đăng lên mạng
    • Token này được cho là đã bị lộ từ đầu năm 2024
    • Nhà nghiên cứu xác nhận rằng có thể dùng nó để truy cập và chỉnh sửa hàng trăm kho GitHub của Home Depot
  • Khóa bị lộ cho phép truy cập vào nhiều hệ thống nội bộ khác nhau của Home Depot như hạ tầng đám mây, hệ thống xử lý đơn hàng, hệ thống quản lý tồn khopipeline phát triển mã nguồn
    • Home Depot đã lưu trữ phần lớn hạ tầng phát triển và kỹ thuật của mình trên GitHub từ năm 2015

Cảnh báo từ nhà nghiên cứu và phản ứng của công ty

  • Nhà nghiên cứu Ben Zimmermann đã nhiều lần gửi email cho Home Depot nhưng không nhận được phản hồi trong nhiều tuần
    • Ông cũng gửi tin nhắn LinkedIn cho Giám đốc An ninh Thông tin (CISO) của Home Depot là Chris Lanzilotta nhưng không được trả lời
  • Trong vài tháng gần đây, Zimmermann đã báo cáo các trường hợp lộ tương tự tại những công ty khác, và phần lớn các công ty đều bày tỏ sự cảm kích
    • Ông cho biết: “Home Depot là công ty duy nhất phớt lờ tôi”

Các bước xử lý sau khi TechCrunch can thiệp

  • Home Depot không có quy trình báo cáo lỗ hổng hay chương trình bug bounty
    • Vì vậy Zimmermann đã liên hệ với TechCrunch để nhờ hỗ trợ giải quyết vấn đề
  • Khi TechCrunch liên hệ người phát ngôn của Home Depot là George Lane vào ngày 5 tháng 12, phía công ty xác nhận đã nhận được email nhưng sau đó không trả lời thêm các câu hỏi tiếp theo
  • Sau đó token bị lộ đã được gỡ khỏi mạng, và quyền truy cập cũng bị thu hồi ngay sau khi TechCrunch liên hệ

Yêu cầu xác minh thêm và việc không phản hồi

  • TechCrunch đã hỏi liệu Home Depot có thể xác minh thông qua log và các biện pháp kỹ thuật khác xem token đó có bị người khác sử dụng hay không, nhưng không nhận được câu trả lời
  • Vì vậy hiện vẫn chưa thể xác nhận liệu đã có truy cập từ bên ngoài hay mức độ thiệt hại ra sao

Ý nghĩa của vụ việc

  • Trường hợp này cho thấy ngay cả ở các doanh nghiệp lớn, việc quản lý khóa truy cập cơ bản thất bại vẫn có thể bị bỏ mặc trong thời gian dài
  • Đồng thời, nó cũng cho thấy việc thiếu cơ chế báo cáo lỗ hổng bảo mật có thể làm chậm quá trình xử lý sự cố
  • Việc chỉ hành động sau khi TechCrunch can thiệp càng nhấn mạnh tầm quan trọng của sự giám sát từ bên ngoài

1 bình luận

 
GN⁺ 2025-12-14
Ý kiến trên Hacker News
  • TechCrunch đã hỏi Home Depot về access token bị lộ, nhưng có vẻ công ty đã chuyển vụ việc cho bộ phận pháp lý và bước vào chế độ im lặng
    Có lẽ tuyên bố chính thức sắp tới sẽ là những câu chữ pháp lý dày đặc nhằm né tránh trách nhiệm

    • Vì vậy trong các trường hợp như thế này, tôi cũng sẽ liên hệ bộ phận pháp lý qua thư tín ngay
      Đây có thể thực sự là vấn đề pháp lý, nên phía đó sẽ có người đọc và xử lý
      Trước đây khi một ngân hàng cắt liên lạc với tôi vì vấn đề xác minh danh tính, tôi cũng từng giải quyết ngay chỉ bằng một lá thư
    • Trong môi trường có rủi ro kiện tụng lớn như hiện nay, tôi nghĩ cách phản ứng của Home Depot là lựa chọn thực tế
      Tất nhiên chúng ta muốn được xem báo cáo phân tích nội bộ, nhưng trong một thế giới đặt cổ đông làm trung tâm thì khó tránh khỏi sự thận trọng
  • Tuần trước tôi lỡ làm lộ OpenAI, Anthropic, Gemini API key của mình
    Khóa đã hiện nguyên trong log của Claude Code, và Anthropic lập tức gửi email để vô hiệu hóa khóa
    Trong khi đó OpenAI và Google không có bất kỳ thông báo nào
    Đặc biệt khóa Gemini của Google mất tới 10–15 phút mới tìm ra được, và nó dường như vẫn còn đang hoạt động
    Càng có nhiều vibe coding như hiện nay thì cả bên phát hành lẫn người dùng càng phải chú ý đến vệ sinh quản lý khóa

    • Việc quản lý khóa bị chia nhỏ đến mức này lại càng khiến tôi bất an về bảo mật, đến mức chẳng còn biết mình đang làm gì nữa
    • Chỉ cần nghe thấy từ “vibe coding” là tôi đã thấy lạnh sống lưng
      Đã có rất nhiều sự cố bảo mật do brogramming, và thứ này có thể khiến chúng tăng lên gấp 100 lần
    • Tôi tò mò không biết khóa đã bị rò rỉ như thế nào
      Nếu chỉ đơn giản là nó còn lại trong log của Claude Code, thì việc Google nhận ra điều đó mới là điều đáng ngạc nhiên
  • Trước đây tôi cũng từng lỡ đưa GitHub PAT cá nhân của mình lên một kho công khai
    Mỗi lần như vậy GitHub đều vô hiệu hóa token ngay lập tức và gửi thông báo

    • Tính năng tự động phát hiện token của GitHub thực sự khá ấn tượng
      Trong trường hợp của tôi không có thiệt hại lớn nào, nhưng hệ thống đã hoạt động đúng như mong đợi
  • Như câu đùa “Home Depot 2x4”, nếu ai đó có thể tự do lấy vật liệu suốt 1 năm thì chắc hẳn cũng phải làm được một khối cầu bằng gỗ gì đó rồi

    • Nhưng tôi không biết gỗ sẽ trụ được bao lâu trong môi trường biển sâu
  • Tôi đang suy nghĩ xem nên làm secrets management thế nào cho tốt
    Hiện tại tôi vẫn SSH thủ công rồi sửa file .env

    • Nếu chỉ là một ứng dụng đơn lẻ thì file .env cũng đã đủ
      Dù sao nếu ứng dụng bị xâm nhập thì bí mật vẫn sẽ nằm trong bộ nhớ, nên không thể tránh việc lộ lọt hoàn toàn
      Nếu có thể thì giới hạn truy cập theo IP là lớp phòng thủ mạnh nhất
    • Dùng SOPS cũng có thể giúp thu hẹp phạm vi quản lý
      Nếu dùng Age làm backend thì chỉ cần đặt một private key dài hạn trên máy chủ
    • Hoặc cũng có thể tận dụng tính năng secret native của nền tảng VM hoặc 1Password API
  • Có người hỏi: “Với thông tin đó thì có thể gây ra thiệt hại gì?”

    • Có thể tải toàn bộ mã nguồn nội bộ xuống để phân tích lỗ hổng, hoặc
      nếu GitHub được dùng cho triển khai thì còn có thể chèn tính năng độc hại vào production
    • Ví dụ, một nhóm tấn công tên là Atlas Lion đã nhắm vào hệ thống nội bộ của các nhà bán lẻ lớn
      để kiếm tiền bằng cách đánh cắp gift card
      Gần đây cũng có vụ chúng xâm nhập AWS thông qua GitHub của Salesloft, đánh cắp OAuth token và truy cập vào hàng trăm tài khoản khách hàng Salesforce
  • Rất khó phân biệt một chuỗi công khai là API key thật hay chỉ là một giá trị ngẫu nhiên

    • Vì vậy hiện nay nhiều dịch vụ gắn thêm tiền tố (prefix) như pat_, sk_ vào đầu khóa
  • Cụm từ “Open Source Home Depot” nghe kỳ lạ mà lại rất hợp

  • Khá bất ngờ khi GitHub hay OpenAI không tự cung cấp tự động hóa quét hash token
    Có vẻ đây là thứ có thể triển khai khá đơn giản để bảo vệ an toàn cho khách hàng
    Có người còn đề xuất thử làm một dịch vụ quét độc lập với nền tảng

    • GitHub thực ra đã vận hành chương trình secret scanning rồi
      Trước đây khi token Discord bị lộ, nó sẽ bị vô hiệu hóa ngay và một tài khoản hệ thống sẽ gửi DM
    • Cơ chế quét của GitHub khá tinh vi
      Theo tài liệu chính thức,
      hệ thống tự động xác thực mẫu theo từng nhà cung cấp lớn và khi cần thì tự động thu hồi token
      Tuy nhiên, các token bị lộ bên ngoài GitHub thì khó phát hiện hơn
    • Dù vậy vẫn còn khá nhiều trường hợp bị bỏ sót
      Tôi thường báo cáo các khóa bị lộ thông qua chương trình bug bounty
      Đáng tiếc là Home Depot không có bug bounty
    • Tôi tò mò không biết token đó có bị phát hiện trong commit của kho công khai hay không
      Ngay cả scanner miễn phí của GitHub cũng đủ để phát hiện việc này
    • GitHub có quan hệ đối tác với nhiều công ty SaaS/PaaS để tự động xác thực và thu hồi token
  • Có người còn nhắc rằng dữ liệu từ hệ thống nội bộ này thậm chí có thể bị dùng cho những việc ở mức độ giao dịch nội gián