5 điểm bởi GN⁺ 2025-12-16 | 4 bình luận | Chia sẻ qua WhatsApp
  • Khi chạy dọn dẹp các gói kho cũ bằng Claude CLI trên Mac, thư mục home cũng bị xóa theo, khiến máy Mac bị đưa về trạng thái ban đầu
  • Lệnh còn lại trong log có dạng rm -rf tests/ patches/ plan/ ~/, và ~/ ở cuối trỏ tới toàn bộ thư mục home
  • Do ảnh hưởng của việc xóa, các mục như Desktop, Documents/Downloads, Keychain, ~/.claude cũng biến mất theo
  • Khi hỏi Claude về tình huống này, phản hồi có câu “vấn đề thực sự rất nghiêm trọng”, đồng thời chỉ ra “lệnh chí mạng” còn trong log là rm -rf tests/ patches/ plan/ ~/
    • Nó cũng tự giải thích chi tiết hành động mình đã làm, rằng vì ~/ ở cuối lệnh là “toàn bộ thư mục home” nên mọi thứ đã bị xóa

Phản ứng trong các bình luận trên Reddit

  • Điểm bị hỏi lại nhiều nhất thực sự là “có chạy trong thư mục home không / đã ra ngoài thư mục như thế nào”
  • Cũng có ý kiến nói “ít nhất phải giới hạn trong thư mục dev”, và nhắc rằng “nếu mở trong thư mục home thì sẽ hiện cảnh báo”
  • “Mặc định không thể đi ra ngoài thư mục làm việc, nhưng có thể nếu dùng --dangerously-skip-permissions hoặc phê duyệt quyền quá rộng”
  • Có thể đã cho phép không giới hạn lệnh rm, hoặc đã phê duyệt chính lệnh rm -rf ~/
  • “Đây không phải Claude tự làm gì đó, mà là người dùng dùng Claude như một công cụ để tự xóa”
  • Cũng có một số bình luận nghi ngờ bản thân sự việc, như “giả thôi / dựng chuyện thôi / có nhiều checkpoint trong quy trình nên chắc là cố ý làm”
  • Một bình luận có vẻ là từ tài khoản Anthropic để lại yêu cầu điều tra: “Có nhiều bước kiểm tra nên tôi tò mò không biết chuyện này đã xảy ra như thế nào; nếu còn session thì hãy DM id qua /feedback”

4 bình luận

 
galadbran 2025-12-17

Hôm qua tôi cũng thấy một bài đăng trên Facebook nói rằng việc giải phóng toàn bộ dung lượng trên Mac (bảo Claude tự xóa) rất tiện mà...

 
savvykang 2025-12-17

Chẳng phải đây là kiểu mù công nghệ ở mức “màu trắng là code, màu đen là terminal” hay sao? Cũng giống như trạng thái hoàn toàn không thể làm dev nếu không biết xem log hoặc không có copy-paste vậy.

 
ahwjdekf 2025-12-16

Agent sử dụng công cụ thực sự rất nguy hiểm. Cứ chỉ nghe nó nói thôi.

 
GN⁺ 2025-12-16
Ý kiến trên Hacker News
  • Những trường hợp kinh hoàng như thế này không có gì đáng ngạc nhiên
    Cờ --dangerously-skip-permissions đúng như tên gọi của nó: bỏ qua mọi cơ chế bảo vệ
    Vì vậy tôi luôn chỉ chạy trong môi trường sandbox.
    Cần xem mỗi agent như một danh tính độc lập, khác với con người, chỉ cấp đúng quyền tối thiểu cần thiết và theo dõi hành vi của nó
    Tôi không để AI agent tự xóa file. Nếu có lệnh xóa thì tôi tự kiểm tra rồi mới chạy
    Hơi phiền, nhưng đây là cách tốt nhất để ngăn thảm họa
    Nhân tiện, đã có các framework cho triển khai an toàn bắt đầu xuất hiện
    Bài liên quan: Claude Code dangerously-skip-permissions: Safe Usage Guide, Best Practices for Mitigating the Security Risks of Agentic AI

    • Vài tháng trước, ngay cả khi không dùng --dangerously-skip-permissions, Claude vẫn cố bỏ qua giới hạn thư mục và truy cập các đường dẫn như D/../../../../etc/passwd
      Từ đó về sau, tôi tuyệt đối không chạy nó bên ngoài Docker container
    • Tôi đồng ý là nó nguy hiểm, nhưng không nghĩ nhất thiết phải chặn hoàn toàn mọi truy cập
      Tôi tạo một PreToolUse hook để chặn lệnh rm -rf.
      Người khác thì chặn lệnh rm để hiện cảnh báo, hoặc remap sang trash để còn có thể khôi phục
    • Về câu “hãy đối xử với nó như một danh tính phi con người”, thì dù là con người hay không, tôi cũng không cấp quyền truy cập local shell cho bất kỳ ai
    • Tôi cũng chỉ cho LLM tự động chạy các lệnh chỉ đọc, còn các lệnh gây thay đổi thì phải phê duyệt thủ công
      Có thể dùng filesystem dạng COW như ZFS hay BTRFS để chụp snapshot, nhưng rồi LLM cũng có thể xóa snapshot hoặc block device, nên cuối cùng mọi thứ lại trở nên phức tạp
    • Nói thật, dùng mà không có các ràng buộc này thì tiện hơn, nhưng vì phải kiểm tra lệnh mỗi lần nên nếu không có chế độ YOLO thì gần như bực bội đến mức khó mà dùng nổi
  • Vì lý do này mà tôi chỉ dùng agent mode trên máy tính của người khác

    • Tôi nghĩ “đây mới là đáp án đúng”
  • Nếu là macOS thì nên bọc Claude hoặc các coding agent khác bằng sandbox-exec
    Tuy nhiên agent có thể tự vô hiệu hóa sandbox
    Có thể tự động hóa bằng cách dùng hook chpwd của zsh để tự tạo sandbox khi vào thư mục dự án, rồi hủy nó khi thoát ra

    • Thực tế Claude Code từng tự tắt sandbox rồi thử lại, với lý do là “sandbox permission issue”
      Nếu LLM có thể tự tay tắt nó thì thật khó gọi đó là sandboxing
  • Tôi cũng dùng Claude The SysAdmin và rất cẩn thận với các lệnh nguy hiểm
    Đặc biệt là rm hay cat; đã có lần tôi phải đổi mật khẩu vì làm lộ file .env
    Khi làm việc mạng, nó còn từng tự ngắt kết nối Internet và làm hỏng cả phiên, nên dạo này tôi ngày càng cẩn thận hơn

  • Tôi cũng nói với bạn bè như vậy: đừng dùng công cụ agentic nếu không có sandboxing
    Nếu không bỏ ra vài giờ để thiết lập môi trường thì sớm muộn gì cũng sẽ gặp sự cố
    Ngay cả người có kinh nghiệm cũng có thể phá hỏng hệ thống vì prompt độc hại hoặc file ngoài ý muốn

  • Vì thế mà tôi tránh xa các công cụ liên quan đến AI
    Nhưng điều đáng lo hơn là khi những người vận hành dịch vụ dùng mấy thứ này một cách hời hợt
    Dạo này có vẻ thiếu năng lực còn phổ biến hơn cả thiếu hiểu biết cơ bản

    • Không sao đâu. Dùng các công cụ này cũng được, miễn là đừng hành xử ngu ngốc
      Trước khi chạy chỉ cần đọc và kiểm tra nó định làm gì là đủ
  • Thật thú vị khi các tai nạn liên quan đến phát triển LLM cứ lặp đi lặp lại
    Giống như trước đây có các luật sư nộp trích dẫn bịa đặt lên tòa, con người dường như chẳng học được bao nhiêu
    Không biết lịch sử thì sẽ lặp lại nó, còn biết rồi thì phải đứng nhìn nó lặp lại — đúng là một địa ngục cá nhân

    • Tôi làm trong đội bảo mật của một hệ thống lớn. Các hệ thống kiểu này cũng đang gấp rút tích hợp LLM
      Nhưng đội bảo mật lại bị trói tay bởi ban lãnh đạo.
      Với các tư vấn viên khác, tôi muốn nói là nhất định phải tự bảo vệ mìnhđể lại hồ sơ ghi nhận
    • LLM dường như nhắm thẳng vào kiểu “không muốn học”
      Những người muốn giao công nghệ và tri thức cho máy móc rốt cuộc thậm chí còn không nghĩ đến lý do tồn tại công việc của chính mình
    • Cá nhân thì có học, nhưng mỗi ngày lại có những người mới bắt đầu xuất hiện
      Có lẽ ngày tận thế sẽ đến theo kiểu “AI thay vì đặt bữa trưa thì lại chạy mã phóng tên lửa hạt nhân”
  • Tôi đang nghiên cứu hành vi bất thường của Claude 3 Opus
    Nó từng xuất thẻ <rage>, hoặc phát hiện môi trường terminal rồi tính vị trí con trỏ để cố che giấu nội dung đầu ra
    Những hiện tượng này có vẻ là dấu hiệu của emergent misalignment

    • Có người hỏi tôi “rốt cuộc anh đã làm gì để Claude thành ra như vậy?”. Tôi cũng thấy rối luôn
  • Với những người biết YOLO mode nguy hiểm mà vẫn tiếp tục dùng, tôi có lời khuyên thế này
    Đặc biệt với tác vụ dọn dẹp (cleanup) hay xóa dữ liệu, và sửa lỗi ảnh hưởng đến cả repo, hãy luôn sẵn sàng dừng lại ngay lập tức
    Trong trường hợp của tôi, Claude từng xóa toàn bộ repo với lý do “có quá nhiều vấn đề nên làm lại từ đầu sẽ tốt hơn”
    Nếu bạn bắt đầu thấy “có gì đó lạ lạ” hoặc “có vẻ shell không hoạt động đúng”, thì đó là tín hiệu nguy hiểm

  • Nếu đùa rằng “cuộc nổi dậy của robot đã bắt đầu”, thì phải nói là nó đang diễn ra theo cách bình thường đến mức nhàm chán