国产又猛又爽又黄视频|在线观看人成视频免费|少妇高潮太爽了在线视频|911国产免费无码专区|特黄做受又大又粗又长大片|欧美一级二级免费在线观看|日日夜人人澡人人澡人人看免|欧洲午夜精品一级毛片在线播放

長(zhǎng)沙論壇制作:Discuz論壇動(dòng)態(tài)附件路徑淺析

2015-11-25 16:54 欄目:技術(shù)開(kāi)發(fā) 查看(11396)

Discuz是什么估計(jì)不需要說(shuō),只要了解Web的人基本上都聽(tīng)說(shuō)過(guò),特別是接觸過(guò)PHP的朋友。在最近的一個(gè)項(xiàng)目中就是跟附件有關(guān)系的,因此這里就簡(jiǎn)單的看看這個(gè)附件路徑的這些事兒。其實(shí)有時(shí)候我們分析思考些問(wèn)題還是很有趣的,下面我們就開(kāi)始吧。

forum.php?mod=attachment&aid=

ODYzODkzfDM3OTRkYWE1fDE0NDg0Mzk1NzV8MTY3NDA0MnwyMDIyNTg1&nothumb=yes

上面就是論壇的一張圖片附件的下載地址,可以看到forum.php腳本中有三個(gè)參數(shù),第一個(gè)不用說(shuō)就是M是attachment,后面一個(gè)是跟縮略圖相關(guān)的;這里我們主要說(shuō)說(shuō)中間這一個(gè),這個(gè)aid參數(shù)跟附件在數(shù)據(jù)表中的id字段aid一樣,那么它后面的值是什么呢?難道是隨機(jī)生成的毫無(wú)規(guī)律的字符么?

在模版的discuzcode.htm中我們可以看到這里的aid是$aidencode變量,而繼續(xù)往上我們可以看到imagelist方法,里面有這么一句代碼:

$aidencode = packaids($attach);

很顯然,這個(gè)地方又留下了packaids,這個(gè)方法在function_attachment.php中

function packaids($attach) {
  global $_G;
  return aidencode($attach['aid'], 0, $_G['tid']);
}

這個(gè)方法中又有一個(gè)aidencode方法,我們可以在核心函數(shù)庫(kù)中找到這個(gè)方法,這個(gè)方法的代碼如下:

function aidencode($aid, $type = 0, $tid = 0) {
   global $_G;
   $s = !$type ? $aid.'|'.substr(md5($aid.md5($_G['config']['security']['authkey']).TIMESTAMP.$_G['uid']), 0, 8).'|'.TIMESTAMP.'|'.$_G['uid'].'|'.$tid : $aid.'|'.md5($aid.md5($_G['config']['security']['authkey']).TIMESTAMP).'|'.TIMESTAMP;
   return rawurlencode(base64_encode($s));
}

到這里我們就應(yīng)該明白了這是什么意思了,也就是這段亂七八糟的東西其實(shí)包含了附件的id、網(wǎng)站的安全碼md5后的前紀(jì)委、時(shí)間、用戶id等信息。我們現(xiàn)在可以用base64_decode方法來(lái)把開(kāi)頭的字符串跑一下。結(jié)果出現(xiàn)返回如下信息:

863893|3794daa5|1448439575|1674042|2022585

上面依次就是該附件的id、安全碼(處理后的)、時(shí)間、我的ID號(hào)、主題ID;其實(shí)這里好像暴露了我的什么東西,對(duì)這條信息是Discuz上面的,呵呵,事情就是這樣子的。

本文為微構(gòu)網(wǎng)絡(luò)旗下Discuz開(kāi)發(fā)團(tuán)隊(duì)木泉網(wǎng)原創(chuàng),轉(zhuǎn)載請(qǐng)注明出處!

與我們的項(xiàng)目經(jīng)理聯(lián)系
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流

轉(zhuǎn)載請(qǐng)注明出處:長(zhǎng)沙論壇制作:Discuz論壇動(dòng)態(tài)附件路徑淺析 - 微構(gòu)網(wǎng)絡(luò)
分享: