Một nghiên cứu cho thấy mã được AI tạo ra có khả năng gặp các vấn đề lớn cao hơn 1,7 lần và dễ bị các lỗ hổng bảo mật cao hơn 2,74 lần so với mã được viết bởi con người. Nếu bạn đã xây dựng bất cứ điều gì với Cursor, Claude Code, hoặc GitHub Copilot, dự án của bạn có khả năng có ít nhất một trong năm lỗ hổng bảo mật phổ biến nhất. Dưới đây là những lỗ hổng đó và cách tìm chúng.
- 45% mã được AI tạo ra chứa ít nhất một lỗ hổng bảo mật
- 1,7x dễ gặp các vấn đề lớn hơn so với mã được viết bởi con người
- 2,74x dễ bị các lỗ hổng bảo mật hơn
- Phổ biến nhất: Các khóa API được mã hóa cứng, kiểm tra đầu vào bị thiếu, không có bảo mật cấp hàng
- Thời gian kiểm tra: 2-3 giờ cho một dự án mã hóa theo cảm tính điển hình
- Lần xác minh lần cuối: Tháng 4 năm 2026
Tại sao mã AI lại dễ bị tấn công
Các công cụ mã hóa AI tối ưu hóa cho "nó có hoạt động không?" không phải "nó có an toàn không?" Khi bạn yêu cầu Cursor "thêm xác thực người dùng", nó tạo ra mã xác thực người dùng. Nó không tự động thêm giới hạn tốc độ, vệ sinh đầu vào, bảo vệ CSRF hoặc quản lý phiên bảo mật — vì bạn không yêu cầu những thứ đó.
AI viết chính xác những gì bạn mô tả. Bảo mật đòi hỏi mô tả những điều bạn không tự nhiên nghĩ về — các trường hợp biên, đầu vào độc hại, các mẫu truy cập trái phép. Nếu nó không có trong lời nhắc của bạn, nó sẽ không có trong mã của bạn.
5 lỗ hổng phổ biến nhất
1. Các khóa API được mã hóa cứng trong mã giao diện người dùng. AI thường đặt các khóa API trực tiếp trong các thành phần JavaScript hoặc React phía máy khách. Bất cứ ai cũng có thể mở DevTools của trình duyệt và xem chúng. Sửa: Di chuyển tất cả các khóa sang các biến môi trường (tệp .env) và truy cập chúng chỉ từ máy chủ. Thời gian: 15 phút.
2. Không có bảo mật cấp hàng trên cơ sở dữ liệu. Nếu bạn đang sử dụng Supabase (phổ biến trong mã hóa theo cảm tính), mã được AI tạo ra thường cấp cho mọi người dùng được xác thực quyền truy cập vào dữ liệu của tất cả những người dùng khác. Sửa: Bật Bảo mật cấp hàng và thêm các chính sách cho từng người dùng. Thời gian: 30 phút.
3. Không có xác thực đầu vào phía máy chủ. Các biểu mẫu chấp nhận bất cứ điều gì — tập lệnh, tải trọng quá lớn, những nỗ lực tiêm SQL. AI thêm xác thực phía máy khách (mà người dùng có thể bỏ qua) nhưng bỏ qua xác thực phía máy chủ. Sửa: Thêm lược đồ Zod hoặc xác thực tương tự trên mọi điểm cuối API. Thời gian: 30 phút cho mỗi điểm cuối.
4. Không có giới hạn tốc độ. Bất cứ ai cũng có thể truy cập API của bạn 1.000 lần mỗi giây. Không có điều tiết, không có bảo vệ chống lạm dụng. Sửa: Thêm giới hạn tốc độ thông qua Upstash Redis hoặc tương tự. Thời gian: 20 phút.
5. Các tuyến đường không được bảo vệ. Các trang bảng điều khiển, bảng quản trị và các điểm cuối dữ liệu người dùng tải mà không kiểm tra xem người dùng đã đăng nhập hay chưa. Sửa: Thêm phần mềm xác thực đến mọi tuyến đường được bảo vệ. Thời gian: 15 phút.
Có giá trị từ cái này không? Chúng tôi xuất bản hướng dẫn bảo mật cho các dự án được xây dựng bằng AI hàng tuần. Tham gia những người đọc xây dựng một cách an toàn →
Cách kiểm tra dự án của bạn
Chạy qua danh sách kiểm tra này cho bất kỳ dự án nào được xây dựng bằng các công cụ mã hóa AI:
Tìm kiếm trong toàn bộ cơ sở mã của bạn các khóa được mã hóa cứng. Chạy: grep -r "sk-" . && grep -r "api_key" . && grep -r "secret" . trong thư mục dự án của bạn. Bất cứ kết quả nào trong các tệp giao diện người dùng đều là những lỗ hổng bảo mật nghiêm trọng.
Kiểm tra mọi điểm cuối API để xác thực đầu vào. Mở từng tệp tuyến đường API. Nếu nó sử dụng trực tiếp req.body mà không xác thực, nó dễ bị tấn công.
Xác minh bảo mật cơ sở dữ liệu. Nếu sử dụng Supabase, kiểm tra thẻ Xác thực → Chính sách. Nếu không có chính sách RLS, mọi người dùng có thể thấy dữ liệu của tất cả những người dùng khác.
Kiểm tra xác thực trên mọi trang. Mở trình duyệt của bạn ở chế độ ẩn danh (không đăng nhập) và điều hướng đến mọi trang trong ứng dụng của bạn. Nếu bất kỳ trang bảng điều khiển hoặc trang cụ thể của người dùng nào tải, tuyến đường đó không được bảo vệ.
Kiểm tra giới hạn tốc độ. Cố gắng truy cập điểm cuối API của bạn 100 lần trong nhanh chóng bằng một tập lệnh đơn giản. Nếu cả 100 thành công, bạn không có giới hạn tốc độ.
Để có danh sách kiểm tra bảo mật hoàn chỉnh, hãy xem hướng dẫn đầy đủ về việc bảo mật các ứng dụng được mã hóa theo cảm tính. Để biết những sai lầm phổ biến nhất và cách khắc phục chúng, hãy đọc 5 sai lầm bảo mật mà mọi người mã hóa theo cảm tính đều mắc.
Sự thay đổi tư duy
AI viết mã hoạt động. Bạn cần đảm bảo mã là an toàn. Đây là hai kỹ năng khác nhau. Mọi lời nhắc đến một công cụ mã hóa AI nên bao gồm các yêu cầu bảo mật cùng với các yêu cầu chức năng. "Thêm xác thực người dùng với giới hạn tốc độ, xác thực đầu vào và các tuyến đường được bảo vệ" tạo ra mã an toàn hơn đáng kể so với "thêm xác thực người dùng".
Trình tối ưu hóa lời nhắc của chúng tôi có thể giúp bạn tự động thêm các thông số kỹ thuật bảo mật này vào bất kỳ lời nhắc mã hóa nào.
Đây là những gì chúng tôi làm mỗi tuần. Một bài phân tích sâu sắc về các công cụ AI, quy trình làm việc và những quan điểm chân thực — không có huyên thuyên, không có phần lố. Tham gia chúng tôi →
Công khai: Một số liên kết trong bài viết này là liên kết liên kết. Chúng tôi chỉ khuyến nghị các công cụ mà chúng tôi đã kiểm tra cá nhân và sử dụng thường xuyên. Xem chính sách công khai đầy đủ của chúng tôi.