Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions .github/workflows/deploy_huggingface.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Deploy to Huggingface

on:
push:
branches:
- main

jobs:
deploy:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v2

- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.x'

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt

- name: Deploy to Huggingface
env:
HUGGINGFACE_API_KEY: ${{ secrets.HUGGINGFACE_API_KEY }}
run: |
bash scripts/deploy_huggingface.sh
Comment on lines +10 to +30

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions Job or Workflow does not set permissions
16 changes: 16 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -333,3 +333,19 @@ We have recently added several new dashboards and functionalities to the Project
24. **Vulnerability Scanner**: Added a new dashboard for the vulnerability scanner, providing comprehensive scanning and reporting of vulnerabilities.
25. **Wireless Exploitation**: Enhanced the wireless exploitation dashboard with new tools and techniques for exploiting wireless vulnerabilities.
26. **Zero Day Exploits**: Added a new dashboard for managing zero-day exploits, including identification and deployment of exploits.

### Huggingface Deployment Automation

To automate the deployment process for Huggingface, follow these steps:

1. **Create a deployment script**: Add a script named `scripts/deploy_huggingface.sh` that includes the necessary commands to deploy your application to Huggingface. Ensure the script includes commands to authenticate with Huggingface, upload your model or dataset, and any other necessary steps.

2. **Define environment variables**: Define the necessary environment variables for Huggingface deployment, such as `HUGGINGFACE_API_KEY`. You can set these environment variables in your deployment script or in your GitHub Actions workflow file.

3. **Integrate with GitHub Actions**: Integrate the Huggingface deployment script with GitHub Actions by creating a workflow file named `.github/workflows/deploy_huggingface.yml`. Define the necessary jobs and steps in the workflow file to run the deployment script. Ensure that the workflow file includes steps to set up the environment, install dependencies, and run the deployment script.

4. **Install dependencies**: Ensure that all dependencies required for the Huggingface deployment script are installed. You can specify the dependencies in a `requirements.txt` file or directly in the deployment script.

5. **Create and manage API keys**: Learn about creating and managing API keys for Huggingface by referring to the Huggingface documentation. Store the API keys securely using GitHub Secrets or other secure methods. Ensure that the API keys are not exposed in your code or version control system.

By following these steps, you can automate the deployment process for Huggingface and ensure a smooth and efficient deployment of your application.
16 changes: 16 additions & 0 deletions chatbot/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -396,6 +396,22 @@ def receive_message_from_kafka(consumer):
except Exception as e:
logging.error(f"Error receiving message from Kafka: {e}")

# Integrate email spoofing techniques
def email_spoofing(target_email, spoofed_email, subject, message):
try:
return advanced_social_engineering.email_spoofing_attack(target_email, spoofed_email, subject, message)
except Exception as e:
logging.error(f"Error during email spoofing: {e}")
return "Email spoofing failed."

# Integrate SMS spoofing techniques
def sms_spoofing(target_number, spoofed_number, message):
try:
return advanced_social_engineering.sms_spoofing_attack(target_number, spoofed_number, message)
except Exception as e:
logging.error(f"Error during SMS spoofing: {e}")
return "SMS spoofing failed."

if __name__ == "__main__":
channel = setup_message_queue()
if channel:
Expand Down
10 changes: 9 additions & 1 deletion infra/test_deployment.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

#!/bin/bash

echo "Starting Deployment Testing..."
Expand Down Expand Up @@ -35,4 +34,13 @@ fi
echo "Checking Kubernetes Pods..."
kubectl get pods

# Test Huggingface Deployment
echo "Testing Huggingface Deployment..."
bash scripts/deploy_huggingface.sh
if [ $? -eq 0 ]; then
echo "Huggingface Deployment Tested Successfully."
else
echo "Huggingface Deployment Test Failed!" && exit 1
fi

echo "Deployment Testing Completed."
18 changes: 16 additions & 2 deletions modules/advanced_social_engineering.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

class AdvancedSocialEngineering:
def __init__(self):
self.attack_types = ["phishing", "spear_phishing", "whaling"]
self.attack_types = ["phishing", "spear_phishing", "whaling", "email_spoofing", "sms_spoofing"]

def execute_attack(self, attack_type, target):
if attack_type not in self.attack_types:
Expand All @@ -15,6 +15,10 @@ def execute_attack(self, attack_type, target):
return self.spear_phishing_attack(target)
elif attack_type == "whaling":
return self.whaling_attack(target)
elif attack_type == "email_spoofing":
return self.email_spoofing_attack(target)
elif attack_type == "sms_spoofing":
return self.sms_spoofing_attack(target)

def phishing_attack(self, target):
logging.info(f"Executing phishing attack on target: {target}")
Expand All @@ -31,5 +35,15 @@ def whaling_attack(self, target):
# Placeholder for whaling attack logic
return f"Whaling attack executed on {target}"

def email_spoofing_attack(self, target_email, spoofed_email, subject, message):
logging.info(f"Executing email spoofing attack on target: {target_email}")
# Placeholder for email spoofing attack logic
return f"Email spoofing attack executed on {target_email} with spoofed email {spoofed_email}, subject {subject}, and message {message}"

def sms_spoofing_attack(self, target_number, spoofed_number, message):
logging.info(f"Executing SMS spoofing attack on target: {target_number}")
# Placeholder for SMS spoofing attack logic
return f"SMS spoofing attack executed on {target_number} with spoofed number {spoofed_number} and message {message}"

def render(self):
return "Advanced Social Engineering Module: Ready to execute phishing, spear phishing, and whaling attacks."
return "Advanced Social Engineering Module: Ready to execute phishing, spear phishing, whaling, email spoofing, and SMS spoofing attacks."
27 changes: 27 additions & 0 deletions scripts/deploy_huggingface.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
#!/bin/bash

# Authenticate with Huggingface
echo "Authenticating with Huggingface..."
HUGGINGFACE_API_KEY=${HUGGINGFACE_API_KEY}
if [ -z "$HUGGINGFACE_API_KEY" ]; then
echo "Error: Missing Huggingface API key"
exit 1
fi

# Upload model or dataset to Huggingface
echo "Uploading model or dataset to Huggingface..."
MODEL_PATH="path/to/your/model"
DATASET_PATH="path/to/your/dataset"
if [ -d "$MODEL_PATH" ]; then
echo "Uploading model..."
huggingface-cli upload $MODEL_PATH --api-key $HUGGINGFACE_API_KEY
elif [ -d "$DATASET_PATH" ]; then
echo "Uploading dataset..."
huggingface-cli upload $DATASET_PATH --api-key $HUGGINGFACE_API_KEY
else
echo "Error: Model or dataset path not found"
exit 1
fi

# Include necessary steps for deployment
echo "Deployment steps completed successfully."
Loading