寶刀不老:Flash歌曲播放網(wǎng)站MP3地址隱藏機(jī)制完全破解
晚上,小落給推薦了一首非常好聽(tīng)的Folk名謠,說(shuō)是網(wǎng)上很難找到的。:)給了一個(gè)地址:http://www.neocha.com/naivete/music!1657.html
聽(tīng)了之后,很是喜歡這種風(fēng)格。然后baidu了一個(gè)下載地址發(fā)給她,說(shuō)是這個(gè)flash的MP3的地址,后來(lái)非要讓我如何找到的….冂冏囧….只好拾起塵封了n久的hack技術(shù)…
首先查看Page Source,找到相關(guān)的一段:
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="280" height="277" id="musicMovie" align="middle">
<param name="movie"
value="/-/flash/music_player_dq.v28.swf?id=1657&un=naivete">
<param name="quality" value="high">
<param name="wmode" value="transparent">
<embed src="/-/flash/music_player_dq.v28.swf?id=1657&un=naivete" quality="high"
wmode="transparent" pluginspage="http://www.macromedia.com/go/getflashplayer"
type="application/x-shockwave-flash" width="280" height="277"
name="musicMovie">
</embed>
</object>
</object>
初步猜想,恩,MP3的相關(guān)的信息保存在一個(gè)xml文件里面,只需要找到這個(gè)xml,然后找到里面的mp3的對(duì)應(yīng)地址就ok了。這也是類似的網(wǎng)站經(jīng)常使用的技術(shù)。。。
根據(jù)上面的object的信息,拼起來(lái)了這個(gè)地址然后打開(kāi):
http://www.neocha.com/-/flash/music_player_dq.v28.swf?id=1657&un=naivete
恩,這個(gè)是一個(gè)flash,初步思路是獲取到這個(gè)flash,然后反編譯一下,看看是讀取的哪個(gè)地方的MP3的URL就ok了。
抄起迅雷,添加下載信息,直接填上這個(gè)鏈接,把這個(gè)flash下載下來(lái)。下載之后得到這個(gè)文件名的東西:music_player_dq.widget.v26.swf
抄起閃客精靈,反編譯之…
然后查看一共21個(gè)動(dòng)作的Script腳本。。。
功夫不負(fù)有心人,在名稱為sprite64的動(dòng)作腳本中發(fā)現(xiàn)了比較敏感的東西:
function loadXMl()
{
myxml = new com.makeit.xmlClass("music_playlist.xml");
var _l2 = new Object();
function xmlComplete(albumArr, musicArray, parameterArr)
{
com.makeit.musicDocument.thisObj.albumArr = albumArr.slice();
com.makeit.musicDocument.thisObj.musicArray = musicArray.slice();
com.makeit.musicDocument.thisObj.parameterObj = parameterArr;
com.makeit.musicDocument.thisObj.setFunc();
} // End of the function
myxml.addListener(albumArr);
} // End of the function
啊哈,Load Xml。而且xml文件的名稱都有了,恩,立馬蹭蹭蹭的構(gòu)造了幾個(gè)xml的路徑:
http://www.neocha.com/naivete/music_playlist.xml
http://www.neocha.com/-/flash/music_playlist.xml
http://www.neocha.com/-/xml/music_playlist.xml
….
啥都沒(méi)有。。sad。。不泄餒,繼續(xù)尋尋覓覓,終于,在這個(gè)動(dòng)作的下一個(gè)動(dòng)作里面發(fā)現(xiàn)了感興趣的東西:
function loadXml()
{
static function onLoad(success)
{
if (success)
{
com.makeit.xmlClass.thisObj.parseAlbum_fun();
} // end if
} // End of the function
if (_root.id == undefined)
{
id = "3378";
} // end if
if (_root.un == undefined)
{
un = "banana_monkey";
} // end if
myxml.load("http://www.neocha.com/-/xml/music_player.jsp?id=" + _root.id +
"&un=" + _root.un + "&a=" + Math.random() * 9999);
} // End of the function
看到這里俺就開(kāi)始得意了,勝利就在眼前了,迅速構(gòu)造一地址:
http://www.neocha.com/-/xml/music_player.jsp?id=3378&un= banana_monkey&a=9999
使用IE打開(kāi)去,結(jié)果很差很失望,打不開(kāi),找不到這個(gè)地址。恩,轉(zhuǎn)變思路,這個(gè)jsp文件應(yīng)該是負(fù)責(zé)后臺(tái)的某些邏輯處理的,關(guān)掉IE,迅雷上。
果然,出現(xiàn)重大轉(zhuǎn)機(jī),下載得到的文件打開(kāi)如下:
<?xml version='1.0' encoding='UTF-8'?>
<music-player>
<albums>
<album>
<album-id>0</album-id>
<album-title>未分類 </album-title> <album-picture>http://www.neocha.com/-/res/banana_monkey/20080414131625686093_t.jpg</album-picture>
<album-link>http://www.neocha.com/banana_monkey/record!0.html</album-link>
<musics>
<music>
<music-id>3378</music-id>
<music-title>Baby in Red (Lovely Version)</music-title> <music-picture>http://www.neocha.com/-/res/banana_monkey/20080414131625686093_o.jpg</music-picture> <music-file>http://www1.neocha.com:90/-/res/banana_monkey/20080414131625702094.mp3</music-file> <music-link>http://www.neocha.com/banana_monkey/music!3378.html</music-link>
<music-artist>Banana Monkey </music-artist>
<music-album>未分類 </music-album>
<music-corp> </music-corp>
<music-publish> </music-publish>
<music-genres>Rock搖滾,8-Bit8比特 </music-genres>
<music-comment-cnt>0</music-comment-cnt> <music-comment-url>http://www.neocha.com/banana_monkey/music!3378.html#comment</music-comment-url>
<music-favorite-cnt>0</music-favorite-cnt> <music-favorite-url>http://www.neocha.com/banana_monkey/music!3378.html</music-favorite-url>
<music-vote-cnt>0</music-vote-cnt> <music-vote-url>http://www.neocha.com/banana_monkey/music!3378.html</music-vote-url>
<music-favorited>2</music-favorited>
</music>
</musics>
</album>
</albums>
<username>banana_monkey</username>
<user-url> </user-url>
<user-picture> </user-picture>
<default-album-id>0</default-album-id>
<!-- 默認(rèn)播放的專輯 -->
<auto-start>1</auto-start>
<!-- 1自動(dòng) 0 手動(dòng) 播放-->
<color1>#000000</color1>
<color2>#999999</color2>
<color3>#FFFF00</color3>
<color4>#FFFF00</color4>
</music-player>
<script src="http://www.neocha.com/-/js/urchin.js" type="text/javascript"></script>
<script type="text/javascript">
_uacct = "UA-828246-1";
urchinTracker();
</script>
看到?jīng)],看到MP3這個(gè)后綴的時(shí)候,第一感覺(jué)找到了。
不過(guò)很遺憾,下載了這首MP3之后發(fā)現(xiàn),是一首Rock…
感覺(jué)世界一下滅了。。這個(gè)時(shí)候決定轉(zhuǎn)變思路。。
抄起嗅探工具,好多年前的winsock也不在身邊了,唉,只好問(wèn)liunice要一個(gè)ie的插件,裝了起來(lái)….
看來(lái)又要分析IE的數(shù)據(jù)包了…
安裝插件的時(shí)候,仔細(xì)的看了下載的這個(gè)文件的格式,忽然靈光一現(xiàn),music標(biāo)簽下面的不就是動(dòng)作script里面的好多的參數(shù)的么。?;砣婚_(kāi)朗了:
這個(gè)文件就是上面的那個(gè)jsp文件根據(jù)參數(shù)讀取數(shù)據(jù)庫(kù)動(dòng)態(tài)生成的flash的MP3文件地址的xml配置文件。
找到了key Point:
<music-link>http://www.neocha.com/banana_monkey/music!3378.html</music-link>
打開(kāi)這個(gè)鏈接,鏈接的格式是如此的熟悉,打開(kāi)之后,出現(xiàn)了剛才的那個(gè)下載的熟悉的banana的Rock,oh yeah!
搞定!
回到開(kāi)頭的最開(kāi)始安小落MM發(fā)的URL:
http://www.neocha.com/naivete/music!1657.html
根據(jù)這個(gè)URL來(lái)構(gòu)造這首MP3:
http://www.neocha.com/-/xml/music_player.jsp?id=3378&un= banana_monkey&a=9999
兩個(gè)地址相加,得到最終地址:
http://www.neocha.com/-/xml/music_player.jsp?id=1657&un=naivete&a=9999
迅雷下載這個(gè)URL,在<music-file>標(biāo)簽找到了想要的東西:
<music-file>http://www1.neocha.com:90/-/res/naivete/20071124214646754207.mp3</music-file>
呵呵,剩下的事情,就是永久的擁有這首好聽(tīng)的“穿格子襯衫的teddy熊”了。
恩,還有,破解和這個(gè)網(wǎng)站整個(gè)的flash播放音樂(lè)隱藏真實(shí)地址是如何實(shí)現(xiàn)的。。不過(guò)這不是主要目的。。
lbq1221119 5/24/2008 11:26:19 PM 首發(fā)lbq1221119.cnblogs.com
posted on 2008-05-24 23:36 lbq1221119 閱讀(6809) 評(píng)論(57) 收藏 舉報(bào)
浙公網(wǎng)安備 33010602011771號(hào)