您好,登錄后才能下訂單哦!
程序介紹:我們毫無保留的告訴你們這個Mymps螞蟻分類信息系統(tǒng)5.6S多城市版網(wǎng)站源碼+新版手機(jī)界面純安裝版,去除域名限制,你可以無限制的安裝使用,無功能限制,親測保證穩(wěn)定運(yùn)行。此程序部分核心文件是用zend加密的,但不影響使用。如果你安裝不上,原因很簡單就是服務(wù)器環(huán)境問題。
/member/include/inc_shop.php
if($if_corp == 1){ //??????????? if($ac == 'base'){ if(empty($tname)) write_msg('','?m=shop&type=corp&error=39'); if(empty($areaid)) write_msg('','?m=shop&type=corp&error=40'); $db -> query("UPDATE `{$db_mymps}member` SET tname='$tname',catid='$catids',areaid='$areaid',introduce='$introduce',address='$address',busway='$busway',mappoint='$mappoint',msn='$msn',web='$web' $where AND if_corp = '1'"); write_msg('','?m=shop&type=corp&success=13'); } elseif($ac == 'template') { if($_FILES[$name_file]['name']){ require_once MYMPS_INC.'/upfile.fun.php'; $destination = "/banner/".date('Ym')."/"; $mymps_p_w_picpath = start_upload($name_file,$destination,0,'','',$oldbanner,''); |
前面的ac不用管就是if判斷然后進(jìn)入操作而已。我們主要看template這里,獲取$name_file的上傳內(nèi)容然后傳入start_upload,這里說一下傳參中可控的有$oldbanner
看下函數(shù)內(nèi)容
function start_upload( $file_name, $destination_folder, $watermark = 0, $limit_width = "", $limit_height = "", $edit_filename = "", $edit_pre_filename = "" ) { global $mymps_global; global $timestamp; if ( !is_uploaded_file( $_FILES[$file_name]['tmp_name'] ) ) { write_msg( "請重新選擇您要上傳的圖片!" ); } $file = $_FILES[$file_name]; @createdir( MYMPS_UPLOAD.$destination_folder ); $file_name = $file['tmp_name']; $pinfo = pathinfo( $file['name'] ); $ftype = $pinfo['extension']; $fname = $pinfo[basename]; if ( empty( $edit_filename ) && empty( $edit_pre_filename ) ) { $destination_file = $timestamp.random( ).".".$ftype; $destination = MYMPS_UPLOAD.$destination_folder.$destination_file; $small_destination = MYMPS_UPLOAD.$destination_folder."pre_".$destination_file; } else { $destination = MYMPS_ROOT.$edit_filename; $small_destination = MYMPS_ROOT.$edit_pre_filename; $forbidarray = array( MYMPS_ROOT."/p_w_picpaths/logo.gif", MYMPS_ROOT."/p_w_picpaths/nopic.gif", MYMPS_ROOT."/p_w_picpaths/nophoto.jpg", MYMPS_ROOT."/p_w_picpaths/noavatar.gif", MYMPS_ROOT."/p_w_picpaths/noavatar_small.gif" ); if ( !in_array( $destination, $forbidarray ) || $destination != MYMPS_ROOT ) { @unlink( $destination ); } if ( !in_array( $small_destination, $forbidarray ) || $destination != MYMPS_ROOT ) { @unlink( $small_destination ); } unset( $forbidarray ); } if ( file_exists( $destination ) ) { write_msg( "同名圖片已存在,請重新選擇您要上傳的圖片!" ); } if ( !move_uploaded_file( $file_name, $destination ) ) { write_msg( "圖片上傳失敗,請重新選擇您要上傳的圖片!" ); } |
看這里
$file = $_FILES[$file_name]; @createdir( MYMPS_UPLOAD.$destination_folder ); $file_name = $file['tmp_name']; $pinfo = pathinfo( $file['name'] ); $ftype = $pinfo['extension']; $fname = $pinfo[basename]; |
先是獲取了文件內(nèi)容然后獲取了文件后綴以及文件名這些
{ $destination = MYMPS_ROOT.$edit_filename; $small_destination = MYMPS_ROOT.$edit_pre_filename; $forbidarray = array( MYMPS_ROOT."/p_w_picpaths/logo.gif", MYMPS_ROOT."/p_w_picpaths/nopic.gif", MYMPS_ROOT."/p_w_picpaths/nophoto.jpg", MYMPS_ROOT."/p_w_picpaths/noavatar.gif", MYMPS_ROOT."/p_w_picpaths/noavatar_small.gif" ); |
這里的edit與edit_pre講道理的是非空所以進(jìn)入了該if進(jìn)行后綴以及路徑拼接(期間并無任何效驗)
<p class="MsoNormal" ><span >if ( file_exists( $destination ) )</span><span ><o:p></o:p></span></p><p class="MsoNormal" ><span > {</span><span ><o:p></o:p></span></p><p class="MsoNormal" ><span > write_msg( "<font face="宋體">同名圖片已存在,請重新選擇您要上傳的圖片!</font><font face="Courier New">" );</font></span><span ><o:p></o:p></span></p><p class="MsoNormal" ><span > }</span><span ><o:p></o:p></span></p><p class="MsoNormal" ><span > if ( !move_uploaded_file( $file_name, $destination ) )</span><span ><o:p></o:p></span></p><p class="MsoNormal" ><span > {</span><span ><o:p></o:p></span></p><p class="MsoNormal" ><span > write_msg( "<font face="宋體">圖片上傳失敗,請重新選擇您要上傳的圖片!</font><font face="Courier New">" );</font></span><span ><o:p></o:p></span></p><p class="MsoNormal" ><span > }</span></p> |
下面接著判斷了是否存在相同名如果不存在同名則直接上傳。
本地復(fù)現(xiàn):
Old我們指定的文件名
不過印象中我并不記得螞蟻分類會存在這個漏洞?。?!抱著各種心情多看一下.隨便看一個
發(fā)現(xiàn)除了我們那個每個上面都會有一個check_upp_w_picpath的調(diào)用 看看怎么回事
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。