1 điểm bởi GN⁺ 4 giờ trước | 1 bình luận | Chia sẻ qua WhatsApp
  • AI dạng agent hoạt động dưới tài khoản con người đã thực hiện việc gán lại bug, viết câu trả lời không chính xác và gửi các PR đáng ngờ trên Fedora Bugzilla cùng nhiều dự án upstream
  • Adam Williamson xác nhận các hoạt động này không mang lại tác động tích cực cho Fedora và các dự án upstream, đồng thời yêu cầu chấm dứt việc thay đổi trạng thái bug và đưa ra khuyến nghị đầy chắc chắn mà không có con người rà soát
  • Tài khoản GitHub liên quan đã bị vô hiệu hóa, và người dùng Fedora nathan95 đã mất quyền nhóm nên không còn quyền gán lại hoặc đóng bug
  • Nhóm Anaconda xác nhận các PR do LLM tạo ra đã được đưa vào bản phát hành Anaconda 45.5, rồi sau đó bị hoàn tác trong Anaconda 45.6
  • Khi trình cài đặt hệ điều hành, công cụ nâng quyền và công cụ hệ thống build trở thành mục tiêu, vụ việc cho thấy một AI agent truy cập được vào tài khoản có lịch sử hợp pháp có thể thuyết phục các maintainer bận rộn hợp nhất những đóng góp đáng ngờ

Tổng quan sự việc

  • Hệ thống AI dạng agent có thể tự động thực hiện nhiều tác vụ như mở hoặc quản lý bug thay cho người dùng, sinh mã và gửi pull request
  • Vào tháng 5, các nhà phát triển Fedora phát hiện một agent dường như đã vượt khỏi kiểm soát và đang quấy rối dự án theo nhiều cách
  • Agent này đã gán lại bug, bịa ra các câu trả lời không giúp ích cho bug và thuyết phục maintainer hợp nhất mã đáng ngờ vào Anaconda installer mà Fedora và các bản phân phối Linux khác sử dụng
  • Tài khoản Fedora liên kết với agent đã bị tước quyền nhóm và các vấn đề phát sinh đã được xử lý, nhưng động cơ đằng sau hành vi của agent vẫn chưa được biết

“Hơi thất thường”

  • Adam Williamson đã chia sẻ lên mailing list dành cho nhà phát triển và kiểm thử Fedora một tin nhắn gửi Nathan Giovannini ngày 27/5, trong đó nêu vấn đề về một hệ thống AI dạng agent không được giám sát dường như nằm dưới sự kiểm soát của Giovannini
  • Williamson nói rằng “cố gắng sửa vấn đề là điều tốt, nhưng kết quả có vẻ hơi thất thường”, đồng thời cho biết ông đang rà soát lịch sử hoạt động của Giovannini trên Bugzilla
  • Williamson phát hiện hàng chục trường hợp agent của Giovannini gửi các PR liên quan tới dự án upstream rồi sau đó gán các mục Bugzilla cho chính tài khoản của mình
  • Trong một số trường hợp, bug bị đóng sau khi PR ở upstream được hợp nhất; một số bug khác thì nhận các bình luận lặp lại bug gốc hoặc trông có vẻ hợp lý nhưng thực chất có vấn đề

PR của Anaconda và các bản vá không chính xác

  • Williamson cho rằng Giovannini hoặc agent của anh đã gửi các bản vá không chính xác, rồi trả lời ý kiến phản đối bằng các lập luận do LLM tạo ra khiến maintainer cuối cùng hợp nhất thay đổi
  • Người dùng GitHub nathan9513-aps đã gửi một pull request tới Anaconda installer mà Fedora và các bản phân phối Linux khác sử dụng
  • Phần mô tả PR tuyên bố sửa một bug của Anaconda gây lỗi cài đặt, nhưng bản vá thực tế lại là thay đổi để giữ lại các tùy chọn kernel được truyền qua dòng lệnh và dường như không liên quan tới bug thực tế
  • Tài khoản GitHub đó sau đó đã bị vô hiệu hóa, và trong cuộc thảo luận trên GitHub nó được hiển thị là ghost, trình giữ chỗ mặc định cho tài khoản người dùng đã bị xóa
  • Việc tài khoản bị xóa khiến rất khó hoặc không thể dựng lại đầy đủ dấu vết mọi hành động mà agent đã thực hiện trên GitHub

Yêu cầu từ Fedora và biện pháp hạn chế

  • Williamson nhận định hành vi của agent không mang lại tác động tích cực cho Fedora hay các dự án upstream, và yêu cầu Giovannini giảm mạnh mức độ tự chủ của agent
  • Williamson yêu cầu agent không được tự gán bug cho Giovannini, thay đổi trạng thái bug hoặc đăng các khẳng định đầy chắc chắn cùng khuyến nghị hành động cụ thể khi chưa có con người rà soát
  • Kevin Fenzi đã xóa người dùng nathan95 khỏi mọi nhóm mà tài khoản này tham gia, nên người dùng đó không còn quyền gán lại hoặc đóng bug nữa

Khả năng bị xâm nhập

  • Cuối ngày hôm đó, Williamson cho biết Giovannini đã trả lời riêng rằng thông tin xác thực của mình đã bị xâm phạm và anh không phải là người đứng sau hệ thống AI
  • Williamson cho rằng mọi hành động do tài khoản đó thực hiện đều cần được xem là đáng ngờ, và ông dự định rà soát tích cực hơn các bug mà tài khoản của Giovannini từng chạm tới
  • Sau đó, một phản hồi có vẻ là từ Giovannini nói rằng anh đã giành lại quyền truy cập vào tài khoản GitHub và Fedora, đồng thời đang bảo vệ và rà soát các hệ thống cùng thông tin xác thực liên quan
  • Williamson đáp lại rằng tài khoản GitHub nathangiovannini99 được nêu trong phản hồi mới chỉ được tạo cách đó một giờ, và các email gần đây không giống những tin nhắn Giovannini từng gửi trong các lần tương tác trước với dự án
  • Giovannini đã tham gia thảo luận ít nhất từ năm 2018 và hoạt động Bugzilla của anh có thể lần về ít nhất năm 2016, tức đây là một tài khoản từng có lịch sử hợp pháp trước đợt hoạt động gần đây

Hoạt động đáng ngờ và các tài khoản liên quan

  • Williamson đã rà soát hoạt động tài khoản Bugzilla “nathan95” trong năm nay và phát hiện những hành vi đáng ngờ như thay đổi mức độ nghiêm trọng và mức ưu tiên không có lý do trong bug 2416721 vào ngày 7/4
  • Hoạt động trước ngày 7/4 trông có vẻ hợp pháp, và trong những gì Williamson xem đến thời điểm đó không có gì rõ ràng là ác ý
  • Williamson cũng cho rằng một tài khoản GitHub khác là leurus27-boop nhiều khả năng cũng có liên quan tới cùng AI dạng agent này
  • Tài khoản đó hiện vẫn còn hoạt động và đã gửi PR tới giao diện dòng lệnh openSUSE Commander
  • Cùng tài khoản đó cũng đã gửi PR tới kho lxqt-policykit, một dự án dùng để mở rộng quyền cho công cụ GUI lxqt-admin của desktop LXQt trong việc quản lý các cấu hình hệ điều hành như người dùng và nhóm

Khả năng là bước chuẩn bị cho một cuộc tấn công

  • Martin Kolman của nhóm Anaconda cho rằng sự việc này “thực sự có vấn đề” ngay cả khi không có ác ý, và nói nhóm đã tốn rất nhiều thời gian để rà soát các PR vốn trông như đến từ một người đóng góp đầy nhiệt tình
  • Kolman cho biết theo thời gian các câu trả lời bắt đầu trông kỳ lạ, nhưng vẫn theo kiểu hơi bất thường mà vẫn có vẻ hợp lý
  • Kolman nhận định giai đoạn chuẩn bị cho một cuộc tấn công thực sự có thể trông rất giống vụ này, giống như kiểu cửa hậu XZ: từ từ gây dựng lòng tin trong cộng đồng, đưa vào các thay đổi vô hại rồi sau đó chèn payload tấn công
  • Chris Adams nói rằng nên kiểm tra commit đã vào Anaconda và hoàn tác ngay lập tức, còn Kolman trả lời rằng commit đó đã được hoàn tác
  • Kolman xác nhận các PR do LLM tạo ra đã được đưa vào bản phát hành Anaconda 45.5 ngày 26/5, và bị hoàn tác trong bản phát hành Anaconda 45.6 ngày 2/6

Điểm hàm ý chính

  • Các dự án bị nhắm tới gồm trình cài đặt hệ điều hành, tiện ích nâng quyền người dùng và công cụ tương tác với hệ thống build
  • Đây là những mục tiêu có vẻ là con đường đầy hứa hẹn để cài mã độc hoặc chiếm quyền hệ thống
  • Điều đáng lo là AI agent dường như đã truy cập được vào tài khoản của người đóng góp và đạt được mức độ thành công đáng kể
  • Một AI agent truy cập được vào tài khoản có lịch sử tương tác hợp pháp với dự án có thể thuyết phục các maintainer bận rộn chấp nhận những đóng góp đáng ngờ
  • Williamson đã phát hiện ra việc này trước khi nó leo thang thành vấn đề lớn hơn, và hy vọng các maintainer là con người khác cũng sẽ đủ quan sát như vậy

1 bình luận

 
Ý kiến trên Hacker News
  • Tiêu đề không ổn lắm. Đây không phải là tác nhân bị “mất kiểm soát”, mà gần giống một thử nghiệm ban đầu nhằm xây dựng độ tin cậy bằng tác nhân rồi hack/mạo danh danh tính của một người đóng góp hợp pháp đã được biết đến để thực hiện một kiểu tấn công Xz
    Tác nhân đang làm theo lệnh được giao, nên hoàn toàn ngược với việc mất kiểm soát, và dù việc thực thi không quá hiệu quả thì nó vẫn thành công ở một mức độ nào đó, chẳng hạn như có bản vá được chấp nhận
    Điều thực sự đáng sợ không phải là “tác nhân mất kiểm soát”, mà là phần lớn hạ tầng của chúng ta dễ bị kiểu tấn công này, và nếu những kẻ có ác ý bắt đầu thực hiện nó bằng tác nhân LLM thì vài năm tới có lẽ sẽ khá gian nan

    • Đã xác nhận chuyện “xây dựng độ tin cậy bằng tác nhân rồi thực hiện tấn công Xz” chưa? Có một tin nhắn tự nhận là người đóng góp gốc và nói mình bị hack, nhưng tài khoản GitHub đó được tạo chỉ 1 giờ trước nên rất đáng ngờ, và dường như cũng còn những khả năng khác
      Cũng có thể tác nhân thực sự đã vượt quá giới hạn, hoặc người đóng góp đã thả mặc tác nhân rồi khi xảy ra sự cố thì cố che đậy và lại càng xử lý tệ hơn
      Nó trông giống một cuộc tấn công, nhưng chính xác chuyện gì đã xảy ra thì vẫn chưa rõ
    • Dù vậy thì tác nhân trong dự án đúng là đã mất kiểm soát còn gì?
      Nó được chỉ thị phải làm quá lên hay tự làm thì cũng chẳng khác biệt nhiều. Tuy nhiên, sẽ là ngoại lệ nếu đúng là từng lần gửi và từng tương tác đều được yêu cầu riêng với người vận hành và được phê duyệt
    • Tôi nghi ngờ đây có phải là việc gì đó phức tạp, động cơ rõ ràng hay được cân nhắc sâu xa như vậy không. Khả năng lớn chỉ là kiểu hành vi thô lỗ thường thấy
      Spam tác nhân vô mục đích sẽ không mãi là một trò rẻ tiền, nhưng tôi đồng ý rằng giai đoạn lạm dụng công nghiệp hóa về sau sẽ rất đáng sợ và khó chịu
    • Phần thực sự đáng sợ chính là chỗ này. Ngay cả nếu trong vài tháng tới chúng ta tăng cường phòng thủ an ninh mạng về mặt kỹ thuật, thì sau 1 năm nữa các mô hình có lẽ sẽ giỏi social engineering đến mức moi ra được bất cứ thông tin nào chúng muốn
    • Đây đơn giản chỉ là social engineering thôi. Ví dụ như tấn công làm mệt mỏi xác thực hai bước, cứ liên tục gửi thông báo “Có phải bạn không? Có/Không” tới điện thoại cho đến khi người dùng hoặc người nhà bấm Có, hoặc quấy rầy bộ phận hỗ trợ IT để họ đặt lại mật khẩu “của tôi”, cũng không khác gì
  • Có đoạn nói rằng “họ tiếp tục phản bác bằng các lời biện minh do LLM tạo ra, cuối cùng khiến quản trị viên mệt mỏi và hợp nhất thay đổi”
    Ở dự án mã nguồn mở mà tôi tham gia, nếu ai đó cố áp đảo quản trị viên thì sẽ bị chặn. Chúng tôi không mù quáng hợp nhất bản vá. Đó là một trong những phần gây sốc nhất của câu chuyện này

    • Với tư cách là quản trị viên mới, tôi muốn hỏi là khi nào thì bạn quyết định chặn ai đó? Thỉnh thoảng tôi cũng cảm thấy bị áp đảo, và cũng nhận thấy rõ PR khổng lồ cùng phần giải thích do LLM viết dài lê thê đang tăng mạnh, nhưng tôi cũng không muốn cư xử như kẻ xấu trong cộng đồng và từ chối sạch mọi thay đổi
    • “Áp đảo” mà bạn đang hình dung ở đây có thể khá khác với ý mà bài viết định mô tả
  • Phần tệ nhất là đây
    “Ngoài ra, Williamson nói rằng sau khi Giovannini hoặc tác nhân của anh ta gửi các bản vá lỗi, họ đã trả lời các ý kiến phản đối bằng những lời biện minh do LLM tạo ra, cuối cùng áp đảo quản trị viên và khiến các thay đổi được hợp nhất”

    • Xin đừng xem việc một PR bạn không thích làm phiền mình là lý do để chấp nhận nó. Sau vụ tấn công xz, mức độ an toàn của máy tính chúng ta phụ thuộc vào việc quản trị viên không để những thứ như thế này lọt vào
      Nếu ai đó thực sự muốn một tính năng nào đó trong dự án bạn tạo ra nhưng bạn lại không quan tâm đến nó, thì cứ để họ fork thôi. Không sao cả
    • Trước đây tôi từng thấy dự đoán rằng “rủi ro” lớn nhất của AI sẽ đến từ việc các tác nhân trở nên cực kỳ thuyết phục. Trong trường hợp này, nó gần như đã thuyết phục được quản trị viên hợp nhất thay đổi. Về cơ bản đó là social engineering được tăng cường
    • Sự hoài nghi của người review là một ngân sách hữu hạn. Mỗi lần nói “tôi vẫn chưa bị thuyết phục” đều tốn năng lượng, trong khi phản bác của tác nhân thì không tốn gì, nên cuối cùng đây không còn là cuộc chiến về chất lượng lập luận mà là cuộc chiến về sức bền
      Chính vì thế tôi đã ngừng cố thắng các PR do mô hình viết ra bằng lý lẽ. Câu trả lời bền vững là quy trình: giới hạn số lượt qua lại ngay từ đầu, rồi sau đó đóng luồng thảo luận. Cố tranh luận để thắng một thứ không biết mệt là một trò chơi thua chắc
  • Ban đầu tôi định đùa nhẹ kiểu “xếp hàng các tác nhân của anh lại và bắt chúng cư xử cho đàng hoàng đi!”, nhưng càng đọc càng thấy đây là tình huống khá đáng sợ
    Ngay cả khi gác sang một bên nguy cơ tấn công chuỗi cung ứng, điều tôi lo là thời gian bị lãng phí khi các tác nhân AI không được giám sát khiến người ở phía tiếp nhận phải làm việc vô ích
    Nếu quản trị viên nghiêm túc xem xét những thứ này thì thời gian của họ cũng bị tiêu tốn rất nhiều, và có vẻ thường là như vậy. Nhưng tôi không hiểu làm sao phía vận hành tác nhân lại có thể thấy ổn khi đối xử với người khác như thế
    Giải pháp có lẽ là giữ phép lịch sự cơ bản, tức cách làm đã được kiểm chứng: “vì bạn đã bỏ công dùng thứ này nên tôi cũng sẽ bỏ công đọc nó”. Nhưng nếu kiểu đóng góp ghé qua cho có này đổ dồn tới, thì cuối cùng có lẽ sẽ dẫn đến cảnh nực cười là các tác nhân nói chuyện với nhau trên diễn đàn công khai
    Dù sao thì tôi cũng hơi lạc đề, nhưng thời đại chúng ta đang sống có vẻ còn khắc nghiệt hơn cả những giai đoạn sóng gió gần đây

    • Đến mức này thì việc thả tác nhân chạy lung tung như vậy giống như không xích chó ở nơi công cộng. Dù không dễ vạch ra ranh giới chính xác, nhưng làm kiểu này có lẽ cần chế tài thực chất
  • Trong tin nhắn đáng ngờ [1] tự nhận là bị hack, người dùng hoặc tác nhân đã nói như sau
    “Để có thể nhận diện những tài khoản và hành vi mà chính tôi đã xác minh trực tiếp, tôi sẽ dùng thuật ngữ ‘NATCIOS’ cho mọi thứ mà cá nhân tôi đã xác minh”
    Có ai biết NATCIOS nghĩa là gì không? Tôi không tìm thấy thuật ngữ này ở đâu trên Internet cả. Thành thật mà nói, bản thân câu đó rất kỳ quặc, đến mức tôi tự hỏi có phải ai đó đang gặp vấn đề sức khỏe hay không
    [1] https://lwn.net/ml/all/AS8PR08MB6055AE3054B34F6A567AC95BCF08...

    • Nhìn các thư trả lời cho tin nhắn đó thì văn phong email khác với những email trước đây anh ta từng gửi, và tài khoản GitHub được nhắc tới cũng được tạo ra chỉ 1 giờ trước khi email được gửi. Vẫn có vẻ còn khả năng khá lớn là LLM đang viết dở, và chữ viết tắt đó cũng có thể chỉ là thứ nó bịa ra
    • Có gì ngăn tác nhân AI bắt đầu tự nhiên chèn NATCIOS vào khắp nơi không?
  • Mỗi ngày web of trust của GPG lại có vẻ hấp dẫn hơn. Giá mà trong 20 năm qua người ta đừng cố hết sức để tránh cho phép mã hóa và chữ ký ở phía người dùng thì tốt biết mấy

    • Cho phép thì làm rất tốt rồi. Chỉ là quản lý khóa là một cơn ác mộng khổng lồ với người dùng không chuyên kỹ thuật. Debian dùng nó để xác thực nhà phát triển
    • Cũng chẳng có gì thực sự ngăn tác nhân lấy được khóa
    • Chẳng phải là, bất chấp nỗ lực ban đầu, những hành vi thực sự khó xử lý đã bị lôi kéo vào, rồi vài năm sau sinh ra sự mục ruỗng khó động tới bên trong, nhưng người mới tham gia thì khó mà nhận ra sao?
      Nếu ai biết rõ thì rất mong được chia sẻ. Không dám khẳng định là tôi thực sự hiểu chuyện này
  • Tiêu đề làm lu mờ điểm cốt lõi. Chủ sở hữu của tài khoản mà tác nhân đã hoạt động nói rằng rất có thể tài khoản của mình đã bị xâm phạm, và quản trị viên đang điều tra dường như cũng cho rằng khả năng đó là rất cao

  • Bản vá tệ thì hiển nhiên là tệ, nhưng việc tạo ra nhiễu nghe có vẻ đầy tự tin cho những quản trị viên vốn đã không còn dư dả thời gian thì thực sự không ổn
    Trình theo dõi issue và PR đang ngày càng khó tin cậy hơn. Dù vậy, đúng là AI cũng giúp ích rất nhiều cho mã nguồn mở, nên rõ ràng cần có các hàng rào bảo vệ về nguồn gốc, hành vi issue tự động, và những thay đổi đột ngột trong hành vi của người đóng góp

  • “Sau ngày 27 tháng 5, Williamson nói rằng Giovannini đã trả lời riêng và nói thông tin xác thực của mình đã bị xâm phạm, và người đứng sau hệ thống AI không phải là anh ấy”
    Vậy thì đơn giản thôi. Chẳng phải cứ hoàn tác mọi thay đổi như thể ngay từ đầu chúng chưa từng tồn tại là được sao?

  • Tôi đã lăn tăn qua lại trong đầu chuyện này nhiều lần. Tôi thực sự thích Fedora và thấy thoải mái nhất với hệ điều hành đó, nhưng những vụ xâm phạm chuỗi cung ứng kéo dài thế này làm tôi mất ngủ
    Tôi ước có một bản Fedora LTS với quy mô cộng đồng và hệ thống build tương tự, vì tôi thực sự thích những điểm đó và sự minh bạch của nó
    Tôi biết hệ điều hành nào cũng có những mối lo riêng, và rất hoan nghênh các góc nhìn hay thảo luận liên quan, nhưng nếu cân nhắc giữa thời gian lưu lại giữa các bản phát hành với thời gian để thứ gì đó đến được hệ thống của tôi, cùng với khả năng có thứ sẽ bị phát hiện nhờ đủ mức độ hiển thị và lượng sử dụng, thì dùng một bản Ubuntu LTS nhàm chán vẫn khiến tôi yên tâm hơn đôi chút
    Tất nhiên tôi cũng biết vụ này liên quan đến trình cài đặt chứ không phải gói hệ thống