4837 Total CVEs
26 Years
GitHub
README.md
Rendering markdown...
POC / install-plugin.sh SH
#!/bin/bash

# Installer script for the vulnerable Depicter plugin
# This script uses Docker commands to install the plugin directly into the WordPress container

echo "Installing Depicter Plugin v3.6.1 (vulnerable version)..."

# Check if the WordPress container is running
if ! docker-compose ps | grep -q "wordpress.*Up"; then
    echo "Error: WordPress container is not running!"
    echo "Please start the environment with: docker-compose up -d"
    exit 1
fi

# Install WP-CLI if not already installed
echo "Setting up WP-CLI in the WordPress container..."
docker-compose exec wordpress bash -c "
    if ! command -v wp &> /dev/null; then
        curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
        chmod +x wp-cli.phar
        mv wp-cli.phar /usr/local/bin/wp
    fi
"

# Check if WordPress is installed
echo "Checking WordPress installation status..."
IS_WP_INSTALLED=$(docker-compose exec -T wordpress bash -c "cd /var/www/html && wp core is-installed --allow-root 2>/dev/null && echo 1 || echo 0")

if [ "$IS_WP_INSTALLED" -eq "0" ]; then
    echo "WordPress is not yet installed. Please complete the installation in your browser:"
    echo "http://localhost:5555"
    echo ""
    echo "After installation is complete, run this script again."
    exit 1
fi

# Install required packages
echo "Installing required packages..."
docker-compose exec wordpress bash -c "
    apt-get update && 
    apt-get install -y wget unzip net-tools
"

# Download and install the plugin
echo "Downloading and installing the Depicter plugin..."
docker-compose exec wordpress bash -c "
    cd /var/www/html/wp-content/plugins/ && 
    wget -q https://downloads.wordpress.org/plugin/depicter.3.6.1.zip && 
    unzip -q depicter.3.6.1.zip && 
    rm depicter.3.6.1.zip
"

# Activate the plugin
echo "Activating the plugin..."
docker-compose exec wordpress bash -c "
    cd /var/www/html && 
    wp plugin activate depicter --allow-root
"

# Verify installation
echo "Verifying plugin installation..."
PLUGIN_STATUS=$(docker-compose exec -T wordpress bash -c "cd /var/www/html && wp plugin list --allow-root | grep depicter")
CONTAINER_IP=$(docker-compose exec -T wordpress bash -c "hostname -I | awk '{print \$1}'")

if echo "$PLUGIN_STATUS" | grep -q "active"; then
    echo "✅ Success! The vulnerable Depicter plugin (v3.6.1) has been installed and activated."
    echo ""
    echo "You can now test the SQL injection vulnerability:"
    echo "python poc.py -u http://$CONTAINER_IP -d"
else
    echo "⚠️ Warning: Plugin was installed but may not be activated properly." 
    echo "Please check the WordPress admin panel at: http://$CONTAINER_IP/wp-admin"
    echo "Go to Plugins and make sure Depicter is activated."
fi