2015年2月2日 星期一

[分析][漏洞]破解酷狗音樂IP不在大陸無法聽的限制+解放VIP等級功能(附補釘)

有人問這個奇怪的問題...XD
然後就去抓了一下酷狗在線音樂這套軟體,然後逆逆看.

首先連去酷狗音樂官網,然後下載這套軟體
接著,安裝完之後就可以看到酷狗軟體介面了
不過很不幸的事情是,會顯示國家不在大陸地區就無法觀看電台、樂庫、MV功能
可以手動用Fiddler抓個包
很快就會發現樂庫、電台、MV這三個功能是用一個IE控件框架+網頁來實現的
所以就有人會想,那是不是跟知名的芊芊靜聽一樣,本機端檢測IP然後做擋掉
很不幸的不是這樣T___T...
可以攔截發送出去的封包會發現,在GET出去之後返回的就是
伺服器直接檢測IP然後return告訴使用者,因為不在大陸地區所以拒絕服務.

所以到這邊可以說的是,
如果想要使用酷狗音樂的功能你就得掛個VPN把IP掛去大陸才能使用了

不過
不過
不過
很重要 說三次
雖然它的服務寫的檢測很穩定,放雲端伺服器比對IP地區然後拒絕服務
但是如果細心的話翻一下返回回來的原始碼
有個很有趣的東西在這裡
如果有登入&帳號等級是vip,那麼就開通vip等級的服務?
我們試試看用台灣IP瀏覽看看VIP等級的頁面試試看
用Chrome瀏覽器+台灣IP直接瀏覽VIP頁面是ok的
那如果我們對酷狗音樂播放器的HTTP請求下Hook直接跳轉到VIP頁面呢?
測試了一下

把酷狗音樂播放器的HTTP GET請求Hook後修改掉連線頁面位置在丟回去讓它繼續run
接著就可以看到酷狗音樂伺服器給了個漂亮的頁面回應
看看酷狗音樂上跑的結果
成功把VIP功能解放出來啦~而且不用登入帳號也不用跳VPN.

最後小記:我本來想把這個需要Hook的點直接打patch上去程式本身,不過這支程式本身我還找不到辦法patch...它的手法很特別的是,

  1. 酷狗播放器本身完全不負責連線請求,則是由另個Client端的程式進行連線然後回應給播放器本身.(用IE框架發送)
  2. 我本來有想直接對Client端的程式打patch...封包撈了一下,UA顯示它的GET請求是.NET發出的,但是用了一系列ildasm,ilspy...工具去分析這支程式都沒辦法打patch...
如果有人研究出怎麼對這支程式打patch,求教學一下<(_ _)>

2015/2/3補充:
感謝Kenny大神提供了一種辦法做出HTTP重導向的辦法
(對DNS做重新導向然後再回覆的資料)
感謝一下Inndy給了幾個Socket Code,XD

最後用C#對HOST做Ptach然後在做本地端的HTTP重導向,效果:
有興趣的話可以玩玩看,不過不保證功能的完整性XD
(我也懶得在更新了啦XD)
載點:https://www.mediafire.com/?sdbdxjgv8747igd
GitHub Source Code:https://github.com/aaaddress1/CSharp-Hosts-HTTP-Hook