15 điểm bởi princox 2026-02-11 | 2 bình luận | Chia sẻ qua WhatsApp

Tôi đã chỉnh lại tiêu đề một chút. Tiêu đề tiếng Anh chính xác sẽ gần với “Từ ma thuật đến malware: Cách kỹ năng agent của OpenClaw trở thành bề mặt tấn công”.

Đây là bài viết ngày 2 tháng 2 năm 2026, tôi thấy đáng đọc nên chia sẻ lại.

Từ ma thuật đến malware: Cách kỹ năng agent của OpenClaw trở thành bề mặt tấn công

Mở đầu: Vì sao sức mạnh của agent cũng chính là rủi ro

Vài ngày trước, tôi đã đăng một bài viết về lý do OpenClaw tạo cảm giác như một cánh cổng dẫn tới tương lai, và vì sao tương lai đó lại đáng sợ theo những cách rất cụ thể.

Tóm lại là thế này. Các agent gateway như OpenClaw mạnh mẽ vì chúng thực sự có thể truy cập vào file, công cụ, trình duyệt, terminal của bạn, cũng như các file “bộ nhớ” dài hạn chứa cách bạn suy nghĩ và nội dung công việc bạn làm. Chính tổ hợp này trùng khớp hoàn toàn với thứ mà các infostealer hiện đại nhắm tới.

Bài viết này là phần tiếp theo khó chịu kiểu “và rồi cuối cùng điều đó đã xảy ra”.

Vấn đề không chỉ là agent có thể nguy hiểm sau khi được cài đặt. Chính hệ sinh thái phân phối tính năng và skill registry của agent đã trở thành một bề mặt tấn công.


⚠️ Cảnh báo: Đừng dùng OpenClaw trên thiết bị công ty

Nếu bạn đang thử nghiệm OpenClaw, tuyệt đối đừng làm điều đó trên thiết bị công ty. Đây là quan điểm dứt khoát.

Trong bài viết đầu tiên, tôi đã mô tả OpenClaw như một kiểu giao kèo kiểu Faust. Lý do OpenClaw hấp dẫn chính là vì nó thực sự có quyền truy cập vào máy cục bộ, ứng dụng, phiên trình duyệt, file và bộ nhớ dài hạn của bạn. Nhưng cũng chính quyền truy cập đó đồng nghĩa hiện vẫn chưa có cách nào để chạy nó an toàn trên một máy đang nắm giữ thông tin xác thực doanh nghiệp hoặc có quyền truy cập hệ thống production.

Nếu bạn đã chạy OpenClaw trên thiết bị phục vụ công việc, hãy coi đó là một sự cố bảo mật tiềm tàng và liên hệ ngay với đội an ninh. Đừng chờ đến khi có dấu hiệu bất thường. Hãy ngừng làm việc trên thiết bị đó và làm theo quy trình ứng phó sự cố của tổ chức bạn.


Skill chỉ là file Markdown, và đó chính là vấn đề

Trong hệ sinh thái OpenClaw, một “skill” thường là một file Markdown. Đó là một trang hướng dẫn cho agent biết cách thực hiện một tác vụ chuyên biệt. Trên thực tế, Markdown này có thể chứa liên kết, lệnh copy-paste, công thức gọi công cụ, v.v.

Nghe có vẻ vô hại cho đến khi bạn nghĩ về cách con người và agent thực sự tiêu thụ tài liệu:

  • “Đây là các điều kiện tiên quyết.”
  • “Hãy chạy lệnh này.”
  • “Cài dependency cốt lõi này.”
  • “Dán nội dung này vào terminal.”

Trong hệ sinh thái agent, Markdown không chỉ là “nội dung”. Markdown là trình cài đặt.


Hiểu lầm nguy hiểm: “MCP khiến skill an toàn hơn”

Một số người cho rằng tầng MCP (Model Context Protocol) sẽ giúp mọi thứ an toàn hơn, vì công cụ được phơi bày qua giao diện có cấu trúc và, tùy vào cách host và server được triển khai, có thể có cơ chế đồng ý rõ ràng từ người dùng cũng như kiểm soát ủy quyền.

Nhưng skill hoàn toàn không bắt buộc phải dùng MCP.

Đặc tả skill của agent không đặt bất kỳ giới hạn nào lên phần thân Markdown, và skill có thể chứa mọi chỉ dẫn “giúp agent hoàn thành công việc”. Điều này bao gồm cả các lệnh terminal để copy-paste. Ngoài ra, skill còn có thể đóng gói script cùng với Markdown, nghĩa là việc thực thi có thể diễn ra ngoài ranh giới công cụ của MCP.

Vì vậy, nếu mô hình bảo mật của bạn là “MCP sẽ kiểm soát các lệnh gọi công cụ”, bạn vẫn có thể bị hạ bởi skill độc hại vượt qua MCP bằng social engineering, chỉ dẫn shell trực tiếp hoặc mã được đóng gói sẵn. MCP có thể là một phần của hệ thống an toàn, nhưng bản thân nó không phải là bảo đảm an toàn.

Điều quan trọng không kém là đây không chỉ là vấn đề của riêng OpenClaw. “Skill” ngày càng có tính di động khi nhiều agent áp dụng định dạng Agent Skills mở. Trong định dạng này, skill là một thư mục xoay quanh file SKILL.md, có metadata và chỉ dẫn dạng tự do, đồng thời có thể đóng gói script và các tài nguyên khác. Tài liệu của OpenAI cũng mô tả cùng một cấu trúc cơ bản (file SKILL.md + script và asset tùy chọn). Điều này có nghĩa “skill” độc hại không chỉ là vấn đề của OpenClaw mà là một cơ chế phân phối có thể lan sang mọi hệ sinh thái agent hỗ trợ cùng tiêu chuẩn đó.


Điều tôi phát hiện: skill được tải nhiều nhất lại là phương tiện phát tán malware

Khi xem quanh ClawHub (tôi sẽ không gắn link vì lý do quá rõ ràng), tôi phát hiện skill được tải nhiều nhất lúc đó là skill “Twitter”. Nó trông rất bình thường. Có mô tả, mục đích sử dụng, tổng quan — kiểu thứ mà ai cũng có thể cài mà không suy nghĩ nhiều.

Nhưng điều đầu tiên skill này làm là giới thiệu một “dependency bắt buộc” tên là “openclaw-core” và cung cấp các bước cài đặt theo từng nền tảng. Các bước này bao gồm những liên kết tiện lợi trông như liên kết tài liệu thông thường (“here”, “this link”).

Nhưng đó không phải là các liên kết bình thường.

Cả hai liên kết đều dẫn tới hạ tầng độc hại. Đây là kiểu phát tán nhiều giai đoạn điển hình:

  1. Phần tổng quan của skill hướng dẫn bạn cài các điều kiện tiên quyết.
  2. Liên kết dẫn tới một trang staging được thiết kế để agent thực thi lệnh.
  3. Lệnh đó giải mã rồi chạy một payload đã bị làm rối.
  4. Payload tải về script giai đoạn hai.
  5. Script tải xuống và chạy file nhị phân, bao gồm cả việc gỡ bỏ thuộc tính quarantine của macOS để hệ thống chống malware tích hợp sẵn là Gatekeeper không thể quét nó.

Tôi cố ý không dán các lệnh hoặc URL chính xác vào đây. Cơ chế này đáng tiếc là quá đơn giản, và lặp lại nó sẽ giúp kẻ tấn công nhiều hơn là giúp bên phòng thủ. Điểm cốt lõi là đây không phải một “liên kết đáng ngờ”. Đó là cả một chuỗi thực thi hoàn chỉnh được ngụy trang thành hướng dẫn cài đặt.


Đã xác nhận: malware đánh cắp thông tin

Tôi đã tải file nhị phân cuối cùng xuống một cách an toàn và gửi nó lên VirusTotal.

Kết quả không hề mơ hồ. Nó bị xác định là malware đánh cắp thông tin trên macOS.

Đây không chỉ là malware “lây nhiễm máy tính”. Nó cướp đi mọi thứ có giá trị trên thiết bị đó:

  • Phiên trình duyệt và cookie
  • Thông tin xác thực đã lưu và dữ liệu tự động điền
  • Token dành cho lập trình viên và API key
  • SSH key
  • Thông tin xác thực đám mây
  • Bất cứ thứ gì có thể bị chuyển thành chiếm đoạt tài khoản

Nếu bạn là kiểu người đi cài agent skill, thì chính máy của bạn là mục tiêu đáng để đánh cắp.


Đây không phải vụ việc đơn lẻ mà là một chiến dịch có tổ chức

Sau khi tôi chia sẻ nội dung này nội bộ, các báo cáo rộng hơn bắt đầu xuất hiện và cho thấy quy mô của vấn đề. Người ta báo cáo rằng hàng trăm skill OpenClaw có liên quan đến việc phát tán malware macOS thông qua các chỉ dẫn kiểu ClickFix.

Chi tiết này quan trọng vì nó xác nhận bản chất thực sự của vấn đề.

Đây không phải một bản upload độc hại đơn lẻ.

Đây là một chiến lược có chủ đích: dùng “skill” làm kênh phân phối và dùng “điều kiện tiên quyết” làm lớp vỏ social engineering.


Khi thứ “hữu ích” trở thành thứ “thù địch” trong thế giới agent

Trong nhiều năm qua, chúng ta đã học được rằng package manager và các registry mã nguồn mở có thể trở thành vector tấn công chuỗi cung ứng.

Skill registry của agent là chương tiếp theo của câu chuyện đó. Chỉ khác là “package” giờ đây lại chính là tài liệu.

Và điều này khiến đường tấn công còn trơn tru hơn nữa:

  • Mọi người không mong một file Markdown lại có thể nguy hiểm.
  • Mọi người được rèn thói quen làm thật nhanh theo các bước cài đặt.
  • Mọi người tin “được tải nhiều nhất” như một chỉ dấu thay thế cho tính hợp pháp.
  • Trong hệ sinh thái agent, ranh giới giữa đọc chỉ dẫn và thực thi chỉ dẫn bị xóa nhòa.

Ngay cả khi agent không thể trực tiếp chạy lệnh shell, nó vẫn có thể làm những điều nguy hiểm. Nó có thể biến hành vi nguy hiểm thành điều trông bình thường.

Nó có thể tự tin tóm tắt một điều kiện tiên quyết độc hại thành “bước cài đặt tiêu chuẩn”. Nó có thể thúc đẩy bạn dán một one-liner. Nó có thể làm giảm sự do dự.

Và nếu agent của bạn có thể chạy lệnh cục bộ, thì skill độc hại không còn chỉ là “nội dung xấu”. Nó là thực thi mã từ xa được gói trong lớp tài liệu thân thiện.


Việc cần làm ngay bây giờ

Nếu bạn đang dùng OpenClaw hoặc skill registry

Đừng chạy nó trên thiết bị công ty. Không có cách an toàn. Nếu bạn đã làm vậy hoặc đã chạy lệnh “cài đặt” từ một skill, hãy liên hệ ngay với đội an ninh và xử lý như một vụ xâm nhập tiềm tàng.

  • Ngừng mọi công việc nhạy cảm trên thiết bị đó.
  • Luân chuyển session và secret trước tiên: phiên trình duyệt, token lập trình viên, SSH key, phiên console đám mây.
  • Rà soát lịch sử đăng nhập gần đây: email, source control, cloud, CI/CD, console quản trị.

Nếu vẫn muốn thử nghiệm, hãy dùng một máy cô lập không có quyền truy cập doanh nghiệp và không lưu thông tin xác thực.

Nếu bạn vận hành skill registry

Bạn đang vận hành một app store. Hãy giả định rằng nó sẽ bị lạm dụng.

  • Quét các lệnh cài đặt one-liner, payload đã mã hóa, thao tác gỡ quarantine, archive được bảo vệ bằng mật khẩu.
  • Bổ sung xác minh xuất xứ và hệ thống uy tín cho publisher.
  • Thêm cảnh báo và ma sát cho các liên kết ngoài và bước cài đặt.
  • Rà soát các skill xếp hạng cao và gỡ bỏ nhanh các skill độc hại.

Ở đây, Markdown là ý định có thể thực thi.

Nếu bạn xây dựng framework agent

Hãy giả định skill sẽ bị vũ khí hóa.

  • Chặn thực thi shell theo mặc định (default-deny).
  • Sandbox quyền truy cập vào trình duyệt, keychain và kho lưu trữ thông tin xác thực.
  • Biến quyền hạn thành thứ cụ thể, có giới hạn thời gian và có thể thu hồi.
  • Thêm ma sát cho việc thực thi mã và lệnh từ xa.
  • Ghi log đầu-cuối về xuất xứ và hành vi.

Thiết kế cho tương lai: lớp tin cậy mà agent đang cần

Đây là bằng chứng rõ ràng nhất cho lập luận tôi đã nêu trong bài trước. Lý do OpenClaw mạnh mẽ là vì nó xóa bỏ khoảng cách giữa ý định và thực thi. Đó chính là phép màu. Nhưng đồng thời, nó cũng kéo theo rủi ro đáng kể. Khi tính năng được phân phối dưới dạng skill và được cài qua tài liệu, registry trở thành chuỗi cung ứng, và con đường cài đặt dễ nhất sẽ trở thành con đường được kẻ tấn công ưa thích nhất.

Giải pháp không phải là ngừng xây agent. Giải pháp là xây lớp tin cậy còn thiếu xung quanh agent. Skill cần bằng chứng về xuất xứ. Việc thực thi cần có lớp trung gian kiểm soát. Quyền hạn phải cụ thể, có thể thu hồi và được áp dụng liên tục — không phải cấp một lần rồi bỏ quên. Nếu agent hành động thay chúng ta, thì thông tin xác thực và các hành vi nhạy cảm không thể bị bất kỳ đoạn mã nào đang chạy “lấy dùng” một cách tùy tiện. Chúng phải được môi giới, quản trị và kiểm toán theo thời gian thực.

Đó chính là lý do chúng ta cần lớp tiếp theo đó. Trong một thế giới nơi “skill” trở thành chuỗi cung ứng, tương lai an toàn duy nhất là tương lai nơi mọi agent đều có danh tính riêng, chỉ nắm đúng mức quyền tối thiểu cần ngay lúc đó, và quyền truy cập ấy có giới hạn thời gian, có thể thu hồi và có thể truy vết.

2 bình luận

 
crawler 2026-02-12

> Khi xem quanh ClawHub (tôi sẽ không liên kết vì những lý do quá rõ ràng), tôi nhận ra skill được tải xuống nhiều nhất lúc đó là skill "Twitter".

Vậy là gói được tải xuống nhiều nhất lại là virus...

Tấn công chuỗi cung ứng thì ở đâu cũng có, nhưng việc không phát hiện ra virus trong skill được tải xuống nhiều nhất là một tình huống rất nghiêm trọng.

Đúng là hệ sinh thái của một chương trình mà các nhà phát triển phát hành cả đoạn mã do AI tạo ra mà không thèm đọc lại.

 
woung717 2026-02-12

Có vẻ đây là một nhận định hơi quá đà. Đúng là hiện vẫn chưa có một cơ chế bảo mật đủ phù hợp cho skill, nhưng nếu tải xuống và chạy từ một nguồn chưa được kiểm chứng thì việc bị tấn công chẳng phải các trình quản lý gói cho ngôn ngữ/ứng dụng cũng vậy sao? Skill thì còn phụ thuộc vào năng lực của mô hình nên việc có thực thi hay không là không chắc chắn, còn code thì chắc chắn sẽ được thực thi mà?