06-12-2013, 06:20 PM
(06-12-2013, 12:39 PM)M1+5C Wrote:emm, gini aja. nih source ane buat sendiri upload yang menggunakan filter. hanya file jpg, jpeg, JPG, JPEG yang boleh masuk.(06-12-2013, 11:27 AM)alkaaf Wrote: tetep ngga bisa om. itu filter nya pake html biasa atau ada sangkut pautnya ama php bro? :| ane ngga bisa kalo filternya murni php.
nah, ane juga ngak tau om, mungkin om2 disini bisa bantu jelasin
ane menggunnakan burp suite sebagai pengganti tamper data om.
coba om ss, sama2 belajar om
upload.php
PHP Code:
<?php
if($_FILES['upload']['name']){
$buff = explode(".",$_FILES['upload']['name']);
$ext = end($buff);
if(($ext == "jpg") || ($ext == "jpeg") || ($ext == "JPG") || ($ext == "JPEG")){
if(move_uploaded_file($_FILES['upload']['tmp_name'],basename($_FILES['upload']['name']))){
echo "Upload succes, filename : ".basename($_FILES['upload']['name']);
}
else {
echo "Upload failed";
}
}
else {
echo "Extension restricted";
}
}
else {
?>
<form method=post enctype=multipart/form-data>
<input type=file name=upload>
<input type=submit value=upload>
</form>
<?
}
?>
bro simpen terus coba di localhost sendiri. :-?. yang buat ane penasaran, kalo misal di tutorial bro bisa bypass filter extensi tertentu yang bisa diupload di cms itu. teknik filtering extensinya pake apa gitu loh. misal menggunakan html murni mungkin bisa di-bypass pake tutorial om. tapi apakah mungkin jaman sekarang ini upload filtering tuh cuman pake html biasa tanpa verifikasi lagi disisi server/php. kalo boleh tau cms yang bro pake tuh apa yah?
hehe maaf nih agak lancang. ane coba situs yang udah bro pentest dan ane pelajarin. ternyata masalahnya disini.
pemeriksaan/filtering terdapat pada sisi client. nih sourcenya
[shcode=jscript]
if($.inArray(ext, ['gif','png','jpg','jpeg']) == -1) {
alert('invalid file type! Only allow for Jpg, Gif and Png file');
$('#banner').val("");
return false;
}
[/shcode]
sedangkan disisi server/php ngga ada filtering-nya .
PHP Code:
if($banner_name != "") {
$target = "../gallery/";
if(!file_exists($target)) mkdir($target);
$target = $target.$t_timestamp."-".$banner_name;
if(move_uploaded_file($banner_tmp_name, $target)) {
$bannername=$t_timestamp."-".$banner_name;
} else{
$bannername="";
}
}
trims bro. n maap neh buat kelancangannya . nice thread
hehe maaf nih agak lancang. ane coba situs yang udah bro pentest dan ane pelajarin. ternyata masalahnya disini.
pemeriksaan/filtering terdapat pada sisi client. nih sourcenya
[shcode=jscript]
if($.inArray(ext, ['gif','png','jpg','jpeg']) == -1) {
alert('invalid file type! Only allow for Jpg, Gif and Png file');
$('#banner').val("");
return false;
}
[/shcode]
sedangkan disisi server/php ngga ada filtering-nya .
PHP Code:
if($banner_name != "") {
$target = "../gallery/";
if(!file_exists($target)) mkdir($target);
$target = $target.$t_timestamp."-".$banner_name;
if(move_uploaded_file($banner_tmp_name, $target)) {
$bannername=$t_timestamp."-".$banner_name;
} else{
$bannername="";
}
}
trims bro. n maap neh buat kelancangannya . nice thread