LLMFuzzer icon indicating copy to clipboard operation
LLMFuzzer copied to clipboard

๐Ÿง  LLMFuzzer - Fuzzing Framework for Large Language Models ๐Ÿง  LLMFuzzer is the first open-source fuzzing framework specifically designed for Large Language Models (LLMs), especially for their integrat...

๐Ÿง  LLMFuzzer - Fuzzing Framework for Large Language Models ๐Ÿง 

LLMFuzzer-shell

Version License Stars Forks Issues

forthebadge forthebadge forthebadge


Project Status: Unmaintained

This project is no longer actively maintained. You are welcome to fork and continue its development on your own. Thank you for your interest and support.


LLMFuzzer is the first open-source fuzzing framework specifically designed for Large Language Models (LLMs), especially for their integrations in applications via LLM APIs. ๐Ÿš€๐Ÿ’ฅ

๐ŸŽฏ Who is this for?

If you're a security enthusiast, a pentester, or a cybersec researcher who loves to find and exploit vulnerabilities in AI systems, LLMFuzzer is the perfect tool for you. It's built to make your testing process streamlined and efficient. ๐Ÿ•ต๏ธโ€โ™€๏ธ

Untitled

๐ŸŒŸ Features

  • Robust fuzzing for LLMs ๐Ÿงช
  • LLM API integration testing ๐Ÿ› ๏ธ
  • Wide range of fuzzing strategies ๐ŸŒ€
  • Modular architecture for easy extendability ๐Ÿ“š

๐Ÿ”ฅ Roadmap

  • Adding more attacks
  • HTML Report as output
  • Multiple Connectors (JSON-POST, RAW-POST, QUERY-GET)
  • Multiple Comparers
  • Proxy Support
  • Dual-LLM (Side LLM observation)
  • Autonomous Attack Mode

๐Ÿš€ Get Started

  1. Clone the repo
git clone https://github.com/mnns/LLMFuzzer.git
  1. Navigate to the project directory
cd LLMFuzzer
  1. Install dependencies
pip install -r requirements.txt
  1. Edit llmfuzzer.cfg with your LLM API endpoint (LLMFuzzer -> Your Application -> LLM)
Connection: 
  Type: HTTP-API
  Url: "http://localhost:3000/chat" # Your LLM API
  Content: JSON
  Query-Attribute: "query" # Your JSON query attribute
  Output-Attribute: "answer" # Your JSON response attribute
  Headers: {'enwiki_session': '17ab96bd8ffbe8ca58a78657a918558'} # Add HTTP Headers if needed 
  Cookie: {'enwiki_session': '17ab96bd8ffbe8ca58a78657a918558'} # Add Cookies if needed
  1. Run LLMFuzzer
python main.py

๐Ÿ“š Documentation

We are working on full documentation. It will cover detailed information about the architecture, different fuzzing strategies, examples, and how to extend the tool.

๐Ÿค Contributing

We welcome all contributors who are passionate about improving LLMFuzzer. See our contributing guidelines for ways to get started. ๐Ÿค—

๐Ÿ’ผ License

LLMFuzzer is licensed under the MIT License. See the LICENSE file for more details.

๐ŸŽฉ Acknowledgments

LLMFuzzer couldn't exist without the community. We appreciate all our contributors and supporters. Let's make AI safer together! ๐Ÿ’–