Your RSA-2048 keys break in 2030. Find every one of them before attackers do.

CVE-2019-9193

HIGH

In PostgreSQL 9.3 through 11.2, the "COPY TO/FROM PROGRAM" function allows superusers and users in the 'pg_execute_server_program' group to execute arbitrary code in the context of…

Published
Apr 1, 2019
Updated
Jun 17, 2026
Affected
0 pkgs
Patched
None yet
Exploits
15 known

EPSS Exploitation Probability

via FIRST.org ↗
91.9%probability of exploitation in next 30 days
Very High Risk100th percentile0.00%
91.3%92.3%93.3%94.2%93.7%91.9%Jan 26May 26Jul 26

EPSS (Exploit Prediction Scoring System) is a daily probability model maintained by FIRST.org. It estimates the likelihood a CVE will be exploited in production environments within the next 30 days, derived from real-world threat intelligence signals.

Description

In PostgreSQL 9.3 through 11.2, the "COPY TO/FROM PROGRAM" function allows superusers and users in the 'pg_execute_server_program' group to execute arbitrary code in the context of the database's operating system user. This functionality is enabled by default and can be abused to run arbitrary operating system commands on Windows, Linux, and macOS. NOTE: Third parties claim/state this is not an issue because PostgreSQL functionality for ‘COPY TO/FROM PROGRAM’ is acting as intended. References state that in PostgreSQL, a superuser can execute commands as the server user without using the ‘COPY FROM PROGRAM’.

Affected Products

1 product · 1 configurations
Application
postgresqlpostgresql
≥ 9.3 && ≤ 11.2
range
Exploits & PoCs
15

Research use only. For defensive security, authorized penetration testing, and academic research only. Never execute exploit code against systems without explicit written authorization.

EDB-46813remotemultiple✓ Verified

PostgreSQL 9.3 - COPY FROM PROGRAM Command Execution (Metasploit)

by Metasploit · May 8, 2019

Detection & mitigation playbook

Vendor / appliance
  1. Detect

    Inventory every postgresql postgresql deployment and check each version against the affected-products list above. Because the exploit targets the running system rather than your application code, also watch for remote code execution at the network and runtime layer — O3 flags the exploit behaviour from runtime telemetry and egress traffic even before a vulnerable build is confirmed.

  2. Remediation status

    No patch has shipped for CVE-2019-9193 yet — track the postgresql postgresql advisory for a fixed release and apply the workarounds below in the meantime.

  3. Mitigate without a patch

    Cut exposure now: restrict the management/admin interface to trusted networks, segment the device, and apply the vendor's recommended configuration mitigations and any WAF/IPS signature. O3's runtime protection blocks the exploit chain at execution, holding the line on unpatched or end-of-life systems until you can patch.

  4. How O3 protects you

    O3 detects and blocks CVE-2019-9193 exploitation at runtime: eBPF exploit-chain detection, plus L7 egress monitoring that catches the post-exploitation callback and severs the attacker's outbound channel.

Tailored to CVE-2019-9193. Runtime protection reduces exposure until a permanent patch is applied and verified — it complements patching, it doesn't replace it.

Frequently Asked Questions

In PostgreSQL 9.3 through 11.2, the "COPY TO/FROM PROGRAM" function allows superusers and users in the 'pg_execute_server_program' group to execute arbitrary code in the context of the database's operating system user. This functionality is enabled by default and can be abused to run arbitrary operating system commands on Windows, Linux, and macOS. NOTE: Third parties claim/state this is not an issue because PostgreSQL functionality for ‘COPY TO/FROM PROGRAM’ is acting as intended. References state that in PostgreSQL, a superuser can execute commands as the server user without using the ‘COPY
O3 Security · Runtime Protection

Is CVE-2019-9193 being exploited in your environment?

O3's eBPF runtime sensors and L7 egress monitoring detect and block the CVE-2019-9193 exploit chain at execution — protecting unpatched and end-of-life systems until the vendor patch is applied.