倍可親

回復: 1
列印 上一主題 下一主題

寶刀不老:Flash歌曲播放網站MP3地址隱藏機制完全破解[轉帖]

[複製鏈接]

1萬

主題

2萬

帖子

1萬

積分

版主

倍可親決策會員(三十九級)

Rank: 7Rank: 7Rank: 7

積分
18510
跳轉到指定樓層
樓主
一個中國人 發表於 2011-12-15 11:19 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
2011年12月15日

晚上,小落給推薦了一首非常好聽的Folk名謠,說是網上很難找到的。給了一個地址:http://www.neocha.com/naivete/music!1657.html
聽了之後,很是喜歡這種風格。然後baidu了一個下載地址發給她,說是這個flash的MP3的地址,後來非要讓我如何找到的….冂冏囧….只好拾起塵封了n久的hack技術…

首先查看Page Source,找到相關的一段:

<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的相關的信息保存在一個xml文件裡面,只需要找到這個xml,然後找到裡面的mp3的對應地址就ok了。這也是類似的網站經常使用的技術。。。
根據上面的object的信息,拼起來了這個地址然後打開:
http://www.neocha.com/-/flash/mu ... 1657&un=naivete
恩,這個是一個flash,初步思路是獲取到這個flash,然後反編譯一下,看看是讀取的哪個地方的MP3的URL就ok了。
抄起迅雷,添加下載信息,直接填上這個鏈接,把這個flash下載下來。下載之後得到這個文件名的東西:music_player_dq.widget.v26.swf
抄起閃客精靈,反編譯之…

然後查看一共21個動作的Script腳本。。。
功夫不負有心人,在名稱為sprite64的動作腳本中發現了比較敏感的東西:

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();
挀漀洀.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文件的名稱都有了,恩,立馬蹭蹭蹭的構造了幾個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
….
啥都沒有。。sad。。不泄餒,繼續尋尋覓覓,終於,在這個動作的下一個動作裡面發現了感興趣的東西:
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

看到這裡俺就開始得意了,勝利就在眼前了,迅速構造一地址:
http://www.neocha.com/-/xml/music_player.jsp?id=3378&un= banana_monkey&a=9999
使用IE打開去,結果很差很失望,打不開,找不到這個地址。恩,轉變思路,這個jsp文件應該是負責後台的某些邏輯處理的,關掉IE,迅雷上。
果然,出現重大轉機,下載得到的文件打開如下:

<?xml version='1.0' encoding='UTF-8'?>
<music-player>
<albums>
<album>
<album-id>0</album-id>
<album-title>未分類&nbsp;</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&nbsp;</music-artist>
<music-album>未分類&nbsp;</music-album>
<music-corp>&nbsp;</music-corp>
<music-publish>&nbsp;</music-publish>
<music-genres>Rock搖滾,8-Bit8比特&nbsp;</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>&nbsp;</user-url>
<user-picture>&nbsp;</user-picture>
<default-album-id>0</default-album-id>
<!-- 默認播放的專輯 -->
<auto-start>1</auto-start>
<!-- 1自動 0 手動 播放-->
<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>

看到沒,看到MP3這個後綴的時候,第一感覺找到了。
不過很遺憾,下載了這首MP3之後發現,是一首Rock…

感覺世界一下滅了。。這個時候決定轉變思路。。

抄起嗅探工具,好多年前的winsock也不在身邊了,唉,只好問liunice要一個ie的插件,裝了起來….
看來又要分析IE的數據包了…

安裝插件的時候,仔細的看了下載的這個文件的格式,忽然靈光一現,music標籤下面的不就是動作script裡面的好多的參數的么。。豁然開朗了:
這個文件就是上面的那個jsp文件根據參數讀取資料庫動態生成的flash的MP3文件地址的xml配置文件。
找到了key Point:
<music-link>http://www.neocha.com/banana_monkey/music!3378.html</music-link>
打開這個鏈接,鏈接的格式是如此的熟悉,打開之後,出現了剛才的那個下載的熟悉的banana的Rock,oh yeah!

搞定!

回到開頭的最開始安小落MM發的URL:
http://www.neocha.com/naivete/music!1657.html
根據這個URL來構造這首MP3:
http://www.neocha.com/-/xml/music_player.jsp?id=3378&un= banana_monkey&a=9999
兩個地址相加,得到最終地址:
http://www.neocha.com/-/xml/musi ... =naivete&a=9999

迅雷下載這個URL,在<music-file>標籤找到了想要的東西:
<music-file>http://www1.neocha.com:90/-/res/naivete/20071124214646754207.mp3</music-file>
呵呵,剩下的事情,就是永久的擁有這首好聽的「穿格子襯衫的teddy熊」了。
恩,還有,破解和這個網站整個的flash播放音樂隱藏真實地址是如何實現的。。不過這不是主要目的。。
我是一個熱愛自己祖國的中國人,我健康,我快樂。
細節成就完美。
圖片類未註明[原創]的均為轉帖!

1萬

主題

2萬

帖子

1萬

積分

版主

倍可親決策會員(三十九級)

Rank: 7Rank: 7Rank: 7

積分
18510
沙發
 樓主| 一個中國人 發表於 2011-12-15 11:20 | 只看該作者
2011年12月15日

我沒有研究過,不知道是否有效,只是覺得這個帖子不錯,轉帖一下。
我是一個熱愛自己祖國的中國人,我健康,我快樂。
細節成就完美。
圖片類未註明[原創]的均為轉帖!
回復 支持 反對

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 註冊

本版積分規則

關於本站 | 隱私權政策 | 免責條款 | 版權聲明 | 聯絡我們

Copyright © 2001-2013 海外華人中文門戶:倍可親 (http://big5.backchina.com) All Rights Reserved.

程序系統基於 Discuz! X3.1 商業版 優化 Discuz! © 2001-2013 Comsenz Inc.

本站時間採用京港台時間 GMT+8, 2025-8-4 08:13

快速回復 返回頂部 返回列表