Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
progpilot — Herramienta de pruebas de seguridad estática de aplicaciones (SAST) en PHP que realiza análisis de taint para detectar XSS, inyección SQL y otras vulnerabilidades utilizando reglas y configuración personalizables. | Kitploit
Herramientas/GitHubGitHub/designsecurity/progpilot
Escáneres de VulnerabilidadesAnálisis Estático de Código (SAST)Análisis de Código
GitHubdesignsecurity/progpilot

progpilot

Herramienta de pruebas de seguridad estática de aplicaciones (SAST) en PHP que realiza análisis de taint para detectar XSS, inyección SQL y otras vulnerabilidades utilizando reglas y configuración personalizables.

Ver Repositorio
365653hace 1 añoRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

progpilot

Pruebas de seguridad de aplicaciones estáticas (SAST) para PHP

Build Status Packagist Packagist

Instalación

Hay muchas opciones disponibles, selecciona la que mejor se adapte a tu caso de uso.

Usar lanzamientos PHAR

  • Descarga el último archivo PHAR desde la página de lanzamientos.
  • Coloca el archivo en algún lugar de tu PATH y hazlo ejecutable:
root@kitploit:~
chmod +x progpilot_vX.Y.Z.phar
sudo mv progpilot_vX.Y.Z.phar /usr/local/bin/progpilot

Usar Docker

  • Construye la imagen de Docker (documentación detallada en esta página) y ejecuta el contenedor:
root@kitploit:~
docker build -t progpilot .
docker run -v $(pwd):/workspace progpilot /workspace/path/to/your/file.php

Construir archivo PHAR desde el código fuente

phar-composer.phar debe estar ubicado en un directorio listado en la variable de entorno $PATH:

root@kitploit:~
git clone https://github.com/designsecurity/progpilot
cd progpilot
./build.sh

El archivo phar resultante se ubicará en la carpeta builds en la raíz de este proyecto.

Usar composer

Instala el paquete con composer, típicamente cuando uses progpilot como una biblioteca de tu proyecto PHP:

root@kitploit:~
composer require --dev designsecurity/progpilot

Configuración

Usa un archivo de configuración yaml (mira este ejemplo) para configurar y personalizar el análisis de progpilot; de lo contrario se usará la configuración predeterminada con, en particular, los datos de configuración de taint estándar.

Uso

Ejemplo de CLI

El comando progpilot toma como argumentos la ruta a los archivos y carpetas a analizar y opcionalmente un archivo de configuración:

root@kitploit:~
# sin archivo de configuración
progpilot example1.php example2.php folder1/ folder2/
# con un archivo de configuración
progpilot --configuration configuration.yml example1.php example2.php folder1/ folder2/

Si lo instalaste con composer, el programa se ubicará en vendor/bin/progpilot.

Ejemplo de biblioteca

También es posible usar progpilot dentro de código PHP. Para más información mira la documentación de la API.

Usa este código para analizar source_code1.php:

root@kitploit:~
<?php
require_once './vendor/autoload.php';

$context = new \progpilot\Context;
$analyzer = new \progpilot\Analyzer;

$context->inputs->setFile("source_code1.php");

try {
  $analyzer->run($context);
} catch (Exception $e) {
   echo "Exception : ".$e->getMessage()."\n";
}  
  
$results = $context->outputs->getResults();

var_dump($results);

Cuando source_code1.php contiene este código:

root@kitploit:~
<?php
$var7 = $_GET["p"];
$var4 = $var7;
echo "$var4";

La salida simplificada será:

root@kitploit:~
array(1) {
  [0]=>
  array(11) {
    ["source_name"]=>
    array(1) {
      [0]=>
      string(5) "$var4"
    }
    ["source_line"]=>
    array(1) {
      [0]=>
      int(4)
    }
    ["sink_name"]=>
    string(4) "echo"
    ["sink_line"]=>
    int(5)
    ["vuln_name"]=>
    string(3) "xss"
  }
}

Todos los archivos (composer.json, example1.php, source_code1.php) usados en este ejemplo están en la carpeta projects/example. Para más ejemplos mira también esta página.

Especificar un análisis

Se recomienda encarecidamente personalizar la configuración del análisis de taint (las definiciones de sinks, sources, sanitizers y validators) según el contexto de la aplicación a analizar. En la siguiente especificación, las variables superglobales _GET, _POST o _COOKIE se definen como no confiables y también el retorno de la función shell_exec():

root@kitploit:~
{
    "sources": [
        {"name": "_GET", "is_array": true, "language": "php"},
        {"name": "_POST", "is_array": true, "language": "php"},
        {"name": "_COOKIE", "is_array": true, "language": "php"},
        {"name": "shell_exec", "is_function": true, "language": "php"}
    ]
}

Consulta las configuraciones disponibles en el capítulo correspondiente sobre especificar un análisis.
También se pueden crear reglas personalizadas, consulta el capítulo correspondiente sobre reglas personalizadas.

Desarrollo

Aprende más sobre el desarrollo de Progpilot.

Preguntas frecuentes

Aquí

Descargar herramienta