Tiny package designed to support red teams and penetration testers in creating and analyzing adversarial attacks on PyTorch models.
Project description
🔥🛡️⚔️ TorchAdv
TorchAdv is a Python package designed to facilitate the creation and execution of adversarial attacks on PyTorch models. This library aims to provide easy-to-use tools for generating adversarial examples, evaluating model robustness, and implementing state-of-the-art adversarial attack methods.
Features
- Adversarial Attacks: Implementations of popular adversarial attacks such as FGSM, PGD, and more.
- Compatibility: Designed to work seamlessly with PyTorch models.
- Customizable: Easily extendable to include new attack methods or custom functionality.
Installation
Install the package via pip:
pip install torchadv
Usage
Here is a simple example of how to use TorchAdv to perform an FGSM attack on a PyTorch model:
import torch
import torch.nn as nn
import torch.optim as optim
from torchvision import models, transforms
from PIL import Image
from torchadv.attacks import PGD
# Load a pre-trained model
model = models.resnet18(pretrained=True)
model.eval()
# Load an image and preprocess it
transform = transforms.Compose([
transforms.Resize((224, 224)),
transforms.ToTensor(),
])
image = Image.open('path_to_image.jpg')
orig = transform(image).unsqueeze(0)
# Define the target label
target_label = torch.tensor([your_target_label])
# Perform the attack
attack = PGD(model)
adv = attack(orig, target_label)
Contributing
Contributions are welcome! If you have any ideas for new features, improvements, or bug fixes, feel free to open an issue or submit a pull request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file torchadv-0.0.3.tar.gz
.
File metadata
- Download URL: torchadv-0.0.3.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.3 Darwin/22.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d76547731d98eda30f53429bfba9a0a8dd73f45f9abd4afd56e013c940d3acb3 |
|
MD5 | bd94dbba7eb0c69a96c841c062772acb |
|
BLAKE2b-256 | ab6b26195eec8e538ea36c789b016f7b2ebf50ad7bae10e96174265ec90b8329 |
File details
Details for the file torchadv-0.0.3-py3-none-any.whl
.
File metadata
- Download URL: torchadv-0.0.3-py3-none-any.whl
- Upload date:
- Size: 9.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.3 Darwin/22.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 66608a2de171b04c552e1da901a3da6d54b332d0d2ae3bdb24e5d7370f381cf5 |
|
MD5 | e206bfeb8a93fe9802460b1723c4cab1 |
|
BLAKE2b-256 | 966486f2aa50247c79d33392ed5545fb7ef2154dd87e7d2e376b3069cf077685 |