- 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
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à...
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.
Agent sử dụng công cụ thực sự rất nguy hiểm. Cứ chỉ nghe nó nói thôi.
Ý 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
--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/passwdTừ đó về sau, tôi tuyệt đối không chạy nó bên ngoài Docker container
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 sangtrashđể còn có thể khôi phụcCó 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
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
Nếu là macOS thì nên bọc Claude hoặc các coding agent khác bằng
sandbox-execTuy 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
chpwdcủa zsh để tự tạo sandbox khi vào thư mục dự án, rồi hủy nó khi thoát raNế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à
rmhaycat; đã có lần tôi phải đổi mật khẩu vì làm lộ file.envKhi 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
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
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 và để lại hồ sơ ghi nhận
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ó 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 raNhững hiện tượng này có vẻ là dấu hiệu của emergent misalignment
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