module

PostgreSQL CREATE LANGUAGE Execution

Disclosed
2016-01-01
Created
2018-05-30

Description

Some installations of Postgres 8 and 9 are configured to allow loading external scripting languages.
Most commonly this is Perl and Python. When enabled, command execution is possible on the host.
To execute system commands, loading the "untrusted" version of the language is necessary.
This requires a superuser. This is usually postgres. The execution should be platform-agnostic,
and has been tested on OS X, Windows, and Linux.

This module attempts to load Perl or Python to execute system commands. As this dynamically loads
a scripting language to execute commands, it is not necessary to drop a file on the filesystem.

Only Postgres 8 and up are supported.

Authors

Micheal Cottingham
midnitesnake
Nixawk

Platform

Linux,OSX,Unix,Windows

Architectures

cmd

Module Options

To display the available options, load the module within the Metasploit console and run the commands ‘show options’ or ‘show advanced’:


msf > use exploit/multi/postgres/postgres_createlang
msf exploit(postgres_createlang) > show targets
...targets...
msf exploit(postgres_createlang) > set TARGET < target-id >
msf exploit(postgres_createlang) > show options
...show and set options...
msf exploit(postgres_createlang) > exploit

Title
NEW

Explore Exposure Command

Confidently identify and prioritize exposures from endpoint to cloud with full attack surface visibility and threat-aware risk context.