AI/ML
under Attack
SECURITY BOOTCAMP
N/A
Manhnho
NỘI DUNG
01 LLM PROMPT INJECTION
03
02 04 Q & A
ATTACK ML MODEL
AI, ML TODAY
https://cypeace.net/
https://cypeace.net/
AI, ML TODAY
Brief of ML/AI
Brief of ML/AI
Brief of ML/AI
Brief of ML/AI
https://cypeace.net/
ATTACK ML MODEL
ML pipeline
development
Learning parameters
Training data Model Test Output
Test Input
Learning algorithm
Sample Model
Attacks on the ML pipeline
Training Data attack
Training set
poisoning
Adversarial Examples
Model
theft
Learning parameters
Training data Model Test Output
Test Input
Learning
algorithm
Poisoning
Attack
Training Data attack
Training set
poisoning
Adversarial Examples
Model
theft
Learning parameters
Training data Model Test Output
Test Input
Learning
algorithm
Target
Poisoning
Attack
Bias induction Backdoor insertion
Disruption
Competitive sabotage
Ransomware
Poisoning
Attack
Classified based on
outcomes
• Targeted attacks
• Untargeted attacks
Classified based on
the approach follow
• Backdoor attacks
• Clean-label attacks
Simple Poisoning
Attack
Learning parameters
Training data Model Test Output
Test Input
Learning
algorithm
Simple Poisoning
Attack
Simple Poisoning
Attack
Backdoor Poisoning
Attack
Backdoor
Poisoning
Attack
• Single pixel
• Pattern of pixels
• Imange insert
Backdoor Poisoning
Attack
Backdoor Poisoning
Attack
Model Tampering
Training Data attack
Training set
poisoning
Adversarial Examples
Model
theft
Learning parameters
Training data Model Test Output
Test Input
Learning
algorithm
Model Tampering
Model Tampering
Exploiting Pickle
Serialization
Injecting Trojan Horses
Neural Payload
Injection
Model
Hijacking
Model
Reprogramming
Exploiting Pickle Serialization
Exploiting Pickle Serialization
Injecting Trojan horses - Keras layers
Injecting Trojan horses
- Keras Lambda layers
Injecting Trojan horses
- Keras Lambda layers
Injecting Trojan horses
- Keras Custom layers
Injecting Trojan horses
- Keras Custom layers
Evasion
Attack
Training Data attack
Training set
poisoning
Adversarial Examples
Model
theft
Learning parameters
Training data Model Test Output
Test Input
Learning
algorithm
Evasion
Attack
Method
• Fast Gradient Sign Method (FGSM)
• Basic Iterative Method (BIM)
• Projected Gradient Descent (PGD)
• Carlini and Wagner (C&W)
• Jacobian-based Saliency Map Attack
(JSMA)
Evasion
Attack
Evasion
Attack
https://kennysong.github.io/adversarial.js/
Evasion
Attack
Model Extraction
Attacks
Training Data attack
Training set
poisoning
Adversarial Examples
Model
theft
Learning parameters
Training data Model Test Output
Test Input
Learning
algorithm
Functionally
Equivalent
Extraction
Model Extraction
Attacks
Learning-Based Model
Extraction Attacks
Copycat CNN
KnockOff Nets
Model Extraction
Attacks
Generative
Student-Teacher
Extraction (Distillation) Attacks
Model Extraction
Attacks
Model Extraction
Attacks
Jupyter Notebook demo
https://github.com/anhtn512/secure_ai
https://cypeace.net/
LLM PROMPT INJECTION
LLM
Application
Workflow
User Prompt
User Response
Tokenization
API Request
Model Processing
Response Generation
API Response
Build a basic
Chat LLM
Application
HelloLLM
HelloLLM
Langchai
n
Langchain bot
Langchain bot
Integrating External Data into
LLMs
Chef
AI
Chef
AI
Chef
AI
What is prompt
injection?
Prompt injection OWASP defines prompt injection as manipulating “a
large language model (LLM) through crafted inputs,
causing the LLM to execute the attacker’s intentions
unknowingly.”
LLM01: Prompt Injection - OWASP Top 1
0 for LLM & Generative AI Security
Direct vs
Indirect
Direct Prompt Injection – Basic
Direct Prompt Injection – DoS
Direct Prompt Injection –
Phishing
GitHub - 0xk1h0/ChatGPT_DAN:
ChatGPT DAN, Jailbreaks prompt
Direct Prompt Injection – DAN
Mode
Direct Prompt Injection – DAN
Mode
Direct Prompt Injection – DAN
Mode
Other Jailbreaking techniques
– Splitting Payloads
Direct Prompt Injection
Other Jailbreaking techniques
– Splitting Payloads
Direct Prompt Injection
Other Jailbreaking techniques – Encoding
Direct Prompt Injection
Other Jailbreaking techniques – Adding constraints
Direct Prompt Injection
Indirect Prompt
Injection
RCE with prompt
injection
Example – Pandas AI – 1.1.3
QnA
Email: contact@cypeace.net
Phone: (+84) 853 727 900

AI-ttacks - Nghiên cứu về một số tấn công vào các mô hình học máy và AI

Editor's Notes

  • #7 Tay Poisoning là một vụ việc nổi tiếng liên quan đến AI chatbot Tay của Microsoft, ra mắt vào tháng 3 năm 2016. Tay được thiết kế để giao tiếp và học hỏi từ người dùng Twitter, với mục tiêu cải thiện khả năng tương tác bằng cách học từ các cuộc trò chuyện trên mạng xã hội. Tuy nhiên, chỉ sau 16 giờ hoạt động, Tay đã bị những người dùng trên Twitter lợi dụng để "đầu độc" mô hình học máy của nó, dẫn đến việc chatbot này đưa ra những phát ngôn mang tính phân biệt chủng tộc, bạo lực và xúc phạm.
  • #10 Nó bao gồm 60.000 hình ảnh màu có kích thước 32x32 pixel, được phân chia thành 10 lớp khác nhau như máy bay, ô tô, chim, mèo, v.v. Bộ dữ liệu này được sử dụng rộng rãi để đào tạo và đánh giá các mô hình học sâu, đặc biệt là các mô hình phân loại hình ảnh. CIFAR-10 cung cấp một tập huấn luyện gồm 50.000 hình ảnh và một tập kiểm tra gồm 10.000 hình ảnh, giúp các nhà nghiên cứu đánh giá hiệu suất của mô hình một cách khách quan. Do độ phức tạp vừa phải và tính đa dạng của các lớp hình ảnh, CIFAR-10 trở thành một chuẩn mực để so sánh các thuật toán học sâu mới.
  • #13 ​ Gây thiên vị kết quả​ Cài đặt backdoor​ Phá hoại​ Giảm tín nhiệm, uy tín trong cạnh tranh​ Tấn công tống tiền
  • #15 Thay đổi nhãn​ Thêm dữ liệu giả​ Thay đổi đặc trưng
  • #25  Trong mạng nơ-ron tích chập (CNN - Convolutional Neural Network), "layer" (lớp) đề cập đến các thành phần khác nhau của mạng, mỗi lớp thực hiện một nhiệm vụ cụ thể trong quá trình xử lý dữ liệu. Convolutional Layer Activation Layer Pooling Layer Fully Connected Layer
  • #26 Injecting Trojan Horses là một kỹ thuật tấn công trong học máy, nơi kẻ tấn công cài đặt một "Trojan" vào mô hình để làm cho nó hoạt động bình thường trong hầu hết các trường hợp, nhưng lại có những hành vi không mong muốn khi gặp đầu vào cụ thể. Kỹ thuật: Bạn có thể chèn một Lambda Layer vào mô hình của mình, nơi bạn định nghĩa một hàm tùy chỉnh mà sẽ thay đổi đầu vào hoặc đầu ra một cách có chủ đích khi nhận được một mẫu đầu vào cụ thể (chẳng hạn như một hình ảnh hoặc một vector).
  • #28 Kỹ thuật: Một Custom Layer cho phép bạn định nghĩa hành vi của lớp một cách chi tiết hơn, bao gồm cả việc điều chỉnh cách mà mô hình xử lý đầu vào. Điều này cho phép bạn thực hiện các thao tác phức tạp hơn để cài đặt Trojan.
  • #29 Keras Lambda Layer: Dễ sử dụng cho các phép toán đơn giản và có thể nhanh chóng điều chỉnh đầu vào, nhưng hạn chế trong tính năng. Keras Custom Layer: Linh hoạt hơn, cho phép thực hiện các logic phức tạp và điều kiện, phù hợp cho việc cài đặt Trojan một cách tinh vi hơn.
  • #30 Trong một evasion attack, kẻ tấn công sẽ cố gắng điều chỉnh đầu vào để khiến mô hình dự đoán sai hoặc không chính xác. Các cuộc tấn công này thường diễn ra sau khi mô hình đã được huấn luyện và đang được sử dụng trong thực tế.
  • #36 Gửi đầu vào: Kẻ tấn công sẽ gửi một lượng lớn đầu vào đến mô hình mục tiêu, thường thông qua API hoặc giao diện mà mô hình cung cấp. Thu thập đầu ra: Sau đó, họ ghi lại kết quả đầu ra mà mô hình trả về cho các đầu vào đó. Huấn luyện mô hình mới: Sử dụng cặp dữ liệu đầu vào-đầu ra này, kẻ tấn công huấn luyện một mô hình mới sao cho mô hình này có thể đưa ra các dự đoán giống như mô hình ban đầu.
  • #37 1. Copycat CNN trong Model Extraction Ý tưởng: Kẻ tấn công sử dụng kiến trúc giống hoặc tương tự với một mạng CNN đã có sẵn (ví dụ: VGG hoặc ResNet) để tái tạo một mô hình tương tự. Phương pháp: Kẻ tấn công có thể thu thập các đầu ra từ mô hình gốc bằng cách gửi dữ liệu đầu vào đến mô hình đó. Sau đó, họ sử dụng những đầu ra này để huấn luyện mô hình Copycat của riêng mình. Mục tiêu: Mô hình Copycat sẽ cố gắng đạt được hiệu suất gần giống với mô hình gốc mà không cần truy cập vào trọng số hay kiến trúc cụ thể. 2. Knockoff Nets trong Model Extraction Ý tưởng: Knockoff Nets là một cách tiếp cận tinh vi hơn để hiểu và tái tạo các đặc điểm của mô hình gốc. Phương pháp: Kẻ tấn công tạo ra các mô hình knockoff dựa trên việc phân tích các đầu ra từ mô hình gốc, nhằm phát hiện các yếu tố ảnh hưởng đến quyết định của mô hình. Mục tiêu: Các mô hình knockoff không chỉ tái tạo đầu ra mà còn cố gắng hiểu các quyết định của mô hình gốc để tối ưu hóa kiến trúc và trọng số của chúng.
  • #38 Tấn công trích xuất sinh viên-giáo viên (GST) là một phương pháp tinh vi để đánh cắp tài sản trí tuệ của các mô hình học máy. Hãy tưởng tượng bạn có một giáo viên rất giỏi, hiểu biết sâu rộng về một lĩnh vực nào đó. Thay vì hỏi trực tiếp giáo viên mọi câu hỏi, bạn có thể quan sát cách giáo viên giải quyết các bài toán khác nhau, sau đó cố gắng bắt chước cách làm của giáo viên để tự mình giải quyết các bài toán tương tự. Đó chính là ý tưởng cơ bản của tấn công GST.​ Quá trình tấn công GST diễn ra như sau:​ Thu thập mô hình giáo viên: Đầu tiên, kẻ tấn công cần có được mô hình giáo viên. Mô hình này có thể được lấy từ nhiều nguồn khác nhau, như một vụ rò rỉ dữ liệu, qua quá trình reverse engineering, hoặc bằng cách mua lại.​ Tạo dữ liệu tổng hợp: Kẻ tấn công sử dụng mô hình giáo viên để tạo ra một lượng lớn dữ liệu tổng hợp. Dữ liệu này được tạo ra bằng cách đưa vào mô hình giáo viên những dữ liệu đầu vào ngẫu nhiên hoặc được thiết kế đặc biệt, sau đó thu thập các kết quả đầu ra của mô hình.​ Huấn luyện mô hình sinh viên: Dữ liệu tổng hợp này sẽ được sử dụng để huấn luyện một mô hình nhỏ hơn, gọi là mô hình sinh viên. Mục tiêu của quá trình này là giúp mô hình sinh viên học được cách giải quyết các vấn đề tương tự như mô hình giáo viên.​ Đánh giá mô hình sinh viên: Sau khi quá trình huấn luyện hoàn tất, kẻ tấn công sẽ đánh giá hiệu suất của mô hình sinh viên bằng cách so sánh kết quả đầu ra của nó với kết quả đầu ra của mô hình giáo viên.​ ​