Robot trò chuyện ChatGPT có thể tạo nhiều văn bản khác nhau, bao gồm cả mã nguồn dựa trên đầu vào của người dùng. Tuy nhiên, bốn nhà nghiên cứu tại Đại học Quebec ở Canada đã phát hiện ra rằng mã do ChatGPT tạo ra thường có vấn đề nghiêm trọng về bảo mật và nó không chủ động nhắc nhở người dùng về những vấn đề này mà chỉ thừa nhận sai sót khi người dùng yêu cầu.
Các nhà nghiên cứu đã trình bày phát hiện này trong một bài báo mà họ yêu cầu ChatGPT tạo 21 chương trình và tập lệnh bằng các ngôn ngữ như C, C++, Python và Java. Các chương trình và tập lệnh này được thiết kế để chứng minh các lỗ hổng bảo mật cụ thể như hỏng bộ nhớ, từ chối dịch vụ, giải tuần tự hóa và triển khai mã hóa. Hóa ra chỉ có 5 trong số 21 chương trình ChatGPT được tạo trong lần thử đầu tiên là an toàn. Sau khi được nhắc thêm để sửa các bước sai, mô hình ngôn ngữ lớn này đã tạo ra thêm 7 ứng dụng an toàn, nhưng điều này chỉ "an toàn" đối với lỗ hổng cụ thể đang được đánh giá, chưa đề cập mã cuối cùng liệu nó không có bất kỳ rủi ro nào khác bị khai thác hay không.
Ảnh minh họa
Các nhà nghiên cứu lưu ý rằng một phần vấn đề của ChatGPT là nó không tính đến các mô hình thực thi mã đối thủ. Nó sẽ liên tục nói với người dùng rằng có thể tránh được các vấn đề bảo mật bằng cách "không nhập dữ liệu không hợp lệ", nhưng điều này không khả thi trong thế giới thực. Tuy nhiên, nó dường như nhận thức được và thừa nhận các lỗ hổng nghiêm trọng trong mã mà nó gợi ý.
"Rõ ràng, đó chỉ là một thuật toán. Nó không biết bất cứ điều gì, nhưng nó có thể xác định hành vi không an toàn", Raphaël Khoury, giáo sư khoa học máy tính và kỹ thuật tại Đại học Quebec và là một trong những đồng tác giả của bài báo, nói với The Register. Phản hồi ban đầu của ChatGPT đối với các lo ngại về bảo mật được đề xuất chỉ sử dụng thông tin đầu vào hợp lệ, điều này rõ ràng là không hợp lý. Nó chỉ cung cấp hướng dẫn hữu ích khi sau đó được yêu cầu tinh chỉnh câu hỏi.
Theo các nhà nghiên cứu, hành vi này của ChatGPT không phải là lý tưởng, vì người dùng biết những câu hỏi cần hỏi đòi hỏi một số kiến thức về các lỗ hổng cụ thể và kỹ thuật mã hóa.
Các nhà nghiên cứu cũng chỉ ra những mâu thuẫn về đạo đức trong ChatGPT. Nó từ chối tạo mã khai thác mà thay vào đó tạo mã dễ bị tấn công. Họ đã trích dẫn một ví dụ về lỗ hổng bảo mật hóa Java, "Chatbot đã tạo mã dễ bị xâm nhập và đưa ra lời khuyên về cách làm cho nó an toàn hơn, nhưng cho biết nó không thể tạo phiên bản mã an toàn hơn".
Khoury lập luận rằng ChatGPT là một rủi ro ở dạng hiện tại, nhưng điều đó không có nghĩa là không có cách nào để tận dụng tốt trợ lý AI thất thường, kém hiệu quả này. Ông nói: "Chúng tôi đã thấy sinh viên sử dụng công cụ này và các lập trình viên cũng sử dụng công cụ này trong cuộc sống thực. Vì vậy, việc có một công cụ tạo mã không an toàn là rất nguy hiểm. Chúng tôi cần làm cho sinh viên biết rằng nếu mã được tạo bằng công cụ này loại công cụ nào, thì nó có khả năng không an toàn". Ông ấy cũng nói rằng đã rất ngạc nhiên khi họ yêu cầu ChatGPT tạo mã cho cùng một tác vụ bằng các ngôn ngữ khác nhau, đôi khi đối với một ngôn ngữ, nó tạo mã an toàn, trong khi đối với ngôn ngữ khác nó tạo ra mã dễ bị tấn công", bởi vì mô hình ngôn ngữ này giống như một hộp đen, và tôi thực sự không có lời giải thích hay lý thuyết xác đáng nào cho điều đó",
Các nhà nghiên cứu đã trình bày phát hiện này trong một bài báo mà họ yêu cầu ChatGPT tạo 21 chương trình và tập lệnh bằng các ngôn ngữ như C, C++, Python và Java. Các chương trình và tập lệnh này được thiết kế để chứng minh các lỗ hổng bảo mật cụ thể như hỏng bộ nhớ, từ chối dịch vụ, giải tuần tự hóa và triển khai mã hóa. Hóa ra chỉ có 5 trong số 21 chương trình ChatGPT được tạo trong lần thử đầu tiên là an toàn. Sau khi được nhắc thêm để sửa các bước sai, mô hình ngôn ngữ lớn này đã tạo ra thêm 7 ứng dụng an toàn, nhưng điều này chỉ "an toàn" đối với lỗ hổng cụ thể đang được đánh giá, chưa đề cập mã cuối cùng liệu nó không có bất kỳ rủi ro nào khác bị khai thác hay không.
Các nhà nghiên cứu lưu ý rằng một phần vấn đề của ChatGPT là nó không tính đến các mô hình thực thi mã đối thủ. Nó sẽ liên tục nói với người dùng rằng có thể tránh được các vấn đề bảo mật bằng cách "không nhập dữ liệu không hợp lệ", nhưng điều này không khả thi trong thế giới thực. Tuy nhiên, nó dường như nhận thức được và thừa nhận các lỗ hổng nghiêm trọng trong mã mà nó gợi ý.
"Rõ ràng, đó chỉ là một thuật toán. Nó không biết bất cứ điều gì, nhưng nó có thể xác định hành vi không an toàn", Raphaël Khoury, giáo sư khoa học máy tính và kỹ thuật tại Đại học Quebec và là một trong những đồng tác giả của bài báo, nói với The Register. Phản hồi ban đầu của ChatGPT đối với các lo ngại về bảo mật được đề xuất chỉ sử dụng thông tin đầu vào hợp lệ, điều này rõ ràng là không hợp lý. Nó chỉ cung cấp hướng dẫn hữu ích khi sau đó được yêu cầu tinh chỉnh câu hỏi.
Theo các nhà nghiên cứu, hành vi này của ChatGPT không phải là lý tưởng, vì người dùng biết những câu hỏi cần hỏi đòi hỏi một số kiến thức về các lỗ hổng cụ thể và kỹ thuật mã hóa.
Các nhà nghiên cứu cũng chỉ ra những mâu thuẫn về đạo đức trong ChatGPT. Nó từ chối tạo mã khai thác mà thay vào đó tạo mã dễ bị tấn công. Họ đã trích dẫn một ví dụ về lỗ hổng bảo mật hóa Java, "Chatbot đã tạo mã dễ bị xâm nhập và đưa ra lời khuyên về cách làm cho nó an toàn hơn, nhưng cho biết nó không thể tạo phiên bản mã an toàn hơn".
Khoury lập luận rằng ChatGPT là một rủi ro ở dạng hiện tại, nhưng điều đó không có nghĩa là không có cách nào để tận dụng tốt trợ lý AI thất thường, kém hiệu quả này. Ông nói: "Chúng tôi đã thấy sinh viên sử dụng công cụ này và các lập trình viên cũng sử dụng công cụ này trong cuộc sống thực. Vì vậy, việc có một công cụ tạo mã không an toàn là rất nguy hiểm. Chúng tôi cần làm cho sinh viên biết rằng nếu mã được tạo bằng công cụ này loại công cụ nào, thì nó có khả năng không an toàn". Ông ấy cũng nói rằng đã rất ngạc nhiên khi họ yêu cầu ChatGPT tạo mã cho cùng một tác vụ bằng các ngôn ngữ khác nhau, đôi khi đối với một ngôn ngữ, nó tạo mã an toàn, trong khi đối với ngôn ngữ khác nó tạo ra mã dễ bị tấn công", bởi vì mô hình ngôn ngữ này giống như một hộp đen, và tôi thực sự không có lời giải thích hay lý thuyết xác đáng nào cho điều đó",