
Packer Fuzzer es un escáner rápido y eficiente para la detección de seguridad de sitios web construidos con empaquetadores de módulos JavaScript como Webpack.
Cualquier consecuencia directa o indirecta y pérdida causada por la difusión o el uso de las funciones de detección proporcionadas por la herramienta Packer Fuzzer (en adelante, "esta herramienta") será responsabilidad exclusiva del usuario. El equipo de desarrollo de Packer Fuzzer (en adelante, "este equipo") no asume ninguna responsabilidad por ello.
Esta herramienta generará automáticamente un informe de resultados de escaneo basado en los resultados de detección del usuario. El contenido de este informe y otros derivados no representan la posición o el punto de vista de este equipo.
Al utilizar esta herramienta, siga las leyes y regulaciones locales del país donde se encuentre el usuario y el sistema objetivo. No se permiten pruebas no autorizadas bajo ninguna circunstancia. Si se producen infracciones relevantes, nos reservamos el derecho de emprender acciones legales en su contra y cooperaremos plenamente con las autoridades correspondientes en las investigaciones.
Con la popularidad de las herramientas de empaquetado front-end WEB, en sus pruebas de penetración diarias y servicios de seguridad, ¿se encuentra cada vez más con sitios web representados por el "Webpack Bundler"? Este tipo de empaquetador agrupa todas las API y los parámetros de API de todo el sitio para su invocación centralizada por parte de la web, lo que también nos facilita la rápida identificación de las funciones y el inventario de API del sitio. Sin embargo, la cantidad de archivos JS generados por estos empaquetadores suele ser extremadamente grande y el volumen total de código JS es enorme (hasta decenas de miles de líneas), lo que dificulta enormemente las pruebas manuales. Es por ello que surge la herramienta Packer Fuzzer.
Esta herramienta admite la extracción difusa automática de las API correspondientes del sitio objetivo y el contenido de los parámetros de las API, y es compatible con la detección rápida y eficiente de siete vulnerabilidades: acceso no autorizado, filtración de información sensible, CORS, inyección SQL, escalada horizontal de privilegios, contraseñas débiles y carga arbitraria de archivos. Una vez finalizado el escaneo, la herramienta genera automáticamente un informe de escaneo. Puede elegir una versión HTML para un análisis más sencillo, o versiones más formales como doc, pdf y txt.
Y no tiene que preocuparse por los problemas de idioma debido a la internacionalización. La herramienta incluye paquetes de idiomas de cinco idiomas principales (incluidas las plantillas de informes): chino simplificado, francés, español, inglés y japonés (ordenados por precisión de traducción), traducidos por nuestro equipo muy no profesional.
Nota: Actualmente, la primera versión de la herramienta solo está optimizada para las reglas del empaquetador Webpack. Las reglas para otros empaquetadores estarán disponibles próximamente.
Esta herramienta está desarrollada en Python3. Antes de ejecutarla, asegúrese de tener instalados Python3.X y pip3. Si no tiene el entorno instalado, puede seguir la siguiente guía: https://www.runoob.com/python3/python3-install.html
Los usuarios de MacOS pueden usar el siguiente comando para una instalación rápida:
brew install python3 # pip3 se instalará automáticamente
Los usuarios de Ubuntu pueden usar el siguiente comando para una instalación rápida:
sudo apt-get install -y python3 && sudo apt install -y python3-pip
Los usuarios de CentOS pueden usar el siguiente comando para una instalación rápida:
sudo yum -y install epel-release && sudo yum install python3 && yum install -y python3-setuptools && easy_install pip
Esta herramienta ejecutará código NodeJS nativo a través de node_vm2, por lo que recomendamos instalar el entorno NodeJS (no se recomiendan otros entornos de ejecución JS, ya que podrían causar fallos de análisis). Si no tiene el entorno instalado, puede seguir la siguiente guía: https://www.runoob.com/nodejs/nodejs-install-setup.html
Los usuarios de MacOS pueden usar el siguiente comando para una instalación rápida:
brew install node
Los usuarios de Ubuntu pueden usar el siguiente comando para una instalación rápida:
sudo apt-get install nodejs && sudo apt-get install npm
Los usuarios de CentOS pueden usar el siguiente comando para una instalación rápida:
sudo yum -y install nodejs
Utilice el siguiente comando para instalar de una vez las bibliotecas de Python necesarias para esta herramienta:
pip3 install -r requirements.txt
Puede ejecutar esta herramienta con el comando python3 PackerFuzzer.py [options]. Los options se describen a continuación:
-h (--help)
Comando de ayuda, no requiere parámetros adicionales. Muestra todos los parámetros admitidos por esta herramienta y su breve descripción.
-u (--url)
Ruta de la URL del sitio web a escanear. Es obligatorio. Ejemplo: -u https://demo.poc-sir.com.
-c (--cookie)
Contenido adicional de cookies. Opcional. Si se proporciona, se pasará globalmente. Ejemplo: -c "POC=666;SIR=233".
-d (--head)
Cabeceras HTTP adicionales. Opcional. Si se proporciona, se pasarán globalmente. Valor predeterminado: Cache-Control:no-cache. Ejemplo: -d "Token:3VHJ32HF0".
-l (--lang)
Opción de idioma. Si está vacío, selecciona automáticamente el idioma del sistema. Si no hay un paquete de idioma correspondiente, cambia automáticamente a la interfaz en inglés. Idiomas disponibles: Chino simplificado (zh), Francés (fr), Español (es), Inglés (en), Japonés (ja). Ejemplo: -l zh.
-t (--type)
Se divide en versión básica y versión avanzada. Si está vacío, se usa la versión básica por defecto. La versión avanzada volverá a escanear todas las API, extraerá difusamente los parámetros correspondientes y detectará: inyección SQL, escalada horizontal de privilegios, contraseñas débiles y carga arbitraria de archivos. Use la opción adv para la versión avanzada. Ejemplo: -t adv.
-p (--proxy)
Proxy global. Opcional. Si se proporciona, se usará una IP proxy globalmente. Ejemplo: -p https://hack.cool:8080.
-j (--js)