Null Byte injection

Apa sebenarnya null byte injection itu?
Null Byte pertama di katakan oleh Olaf Kirch di postingan kelompok fa.linux.security.

Sebenarnya null byte berasal dari program bhs C yang mendasari operasi terkait filesystem, nullbyte menunjukkan akhir dari string di bhs C.

String string yang ditulis seblum nullbyte akan di anggap oleh sistem sebagai true, namun jika string berakhir dengan Nullbyte. jadi string yang ada sebelum nullbyte bernilai true.

Null Byte biasanya di gunakan dalam penyerangan menggunakan teknik local file inclusion. dengan mengambil keuntungan dari string dengan panjang yang di ketahui (path). dan menempatkan Null Byte di dalam string tertentu, string tersebut akan berakhir di saat itu juga.

Ada beberapa cara untuk menggunakan atau memanfaatkan Null Byte. sebagai beriku :

– Akhiran nama file dalam string, misal ekstensi file.
– Memberikan kometar pernyataan SQL dinamis ketika pelaksanaan suatu string

Perl PHP Null Byte Injection
Seperti diuraikan oleo rain.forest.puppy Phrack edisi 55, menggunakan Injection Null Byte dalam perl, dan bagaimana exploitasinya. Hasilnya sangat mirip dengan PHP
Contoh kasus :

$data = $_GET['data'];
require_once("/var/www/$data.php");

Seperti di atas tampak sekali penggunaan string pemanggilan file dimana ekstensi file berupa php. dan dapat di injection menggunakan exploitasi LFI

http://www.example.com/index.php?data=../../etc/passwd%00

dan akan menampilkan dat /etc/passwd

References
http://en.wikipedia.org/wiki/Null_character
http://insecure.org/news/P55-07.txt
http://www.coderprofile.com/coding-article/58/null-byte-poison-how-it-works
http://i8jesus.com/?p=9
http://groups.google.com/group/fa.linux.security/
http://capec.mitre.org/data/definitions/52.html
http://www.owasp.org/index.php/Embedding_Null_Code