• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            我的玻璃盒子

            【原創】陽光牧場外掛的主要編寫思路介紹

            終于有點時間寫這樣一些文字,來介紹我前些時間寫的搜狐陽光牧場外掛。
            其實這樣的一個外掛沒有什么高深的技術,只需要使用2個輔助工具和1門你熟悉的編程語言就OK了。

            廢話不多說,我就開門見山直接介紹了。

            你需要準備2個工具:HttpWatch(或HttpAnalyzer),以及JSONViewer(http://www.codeplex.com/JsonViewer)
            HttpWatch(或HttpAnalyzer)是收費軟件,JSONViewer是free的。另外你也可以安裝Firefox的JSONView插件,也可以不用JSONViewer。

            編寫任何一個WEB應用外掛,第一步肯定都是登錄。只有正確登錄了,才能繼續后面的操作。

            我們先拿HttpWatch來分析一下搜狐白社會的登錄過程。

            第一部分:登錄
            1、打開http://bai.sohu.com,如果你以前已經登錄了,先退出來到要求你輸入email和密碼的頁面
            2、按下HttpWatch的Record按鈕,然后在頁面上輸入Email和密碼,點登錄。然后你會進入白社會首頁。這個時候看一下HttpWatch記錄的軌跡,如下:

            上面的圖中我添加了filter,把圖片什么的過濾掉了。
            3、通過上面HttpWatch記錄的軌跡,我們很容易看到,登錄的真實URL是:
            http://passport.sohu.com/sso/login.jsp?userid=你的E-MAIL賬號&password=密碼串&appid=1062&persistentcookie=1&s=1248665199215&b=2&w=1440&pwdtype=1
            上面地址中,userid是你登錄時輸入的email地址,password是經過md5加密的字符串,s是時間(1970-1-1到現在的秒數,應該是這個賬號注冊的時間。在C語言中可以用time()函數來產生),w應該是計算機屏幕X方向的分辨率,persistentcookie表示保存cookie,b和pwdtype是一個常量,不知道具體含義(我們也不需要關心)。

            OK,通過上面我們看到的URL,就可以完成賬號登錄了。

            第二部分:進入陽光牧場
            1、打開HttpWatch的Record,點擊首頁左側的“陽光牧場”,HttpWatch會將每個頁面動作都記錄下來。我們可以看到,陽光牧場的真實地址是http://bai.sohu.com/app/farm/。在HttpWatch中選中http://bai.sohu.com/app/farm/這條記錄,在下方的Content頁簽中,可以看到這個頁面的source code:

            2、你可以把這個頁面的source code復制出來,到dreamweaver或其他編輯器中查看,你會發現,這個網頁其實包含了幾個iframe。其中有一個iframe,才是真正的、中間那個陽光牧場的大flash的地址:<iframe src="http://sh_farm.rekoo.com/embed_swf/?so_sig_uid=6位數字&so_sig_session_key=UXdkRmZMaUxFQjg9&so_sig_sig=049fa15390e4c9acffbecac8870e83c1" frameborder="0" width="796" height="590" scrolling="no"></iframe>
            在上面的地址中,so_sig_uid就是你在搜狐白社會網站的用戶ID,這個ID對一般用戶來說沒什么用,是每個用戶在數據庫中的標識。但是對我們編寫外掛來說,就很有用了,所以在這個地方,你需要將這個ID保存下來,以后要用到。

            3、在瀏覽器中輸入http://sh_farm.rekoo.com/embed_swf /?so_sig_uid=6位數字&so_sig_session_key=UXdkRmZMaUxFQjg9&so_sig_sig=049fa15390e4c9acffbecac8870e83c1,你會發現瀏覽器中只留下剛才我們看到的中間的那個大flash了,其他的通通都沒有了。事實證明我們找到的這個iframe是正確的。(注:執行此步驟時,別忘了打開HttpWatch的Record)

            4、在HttpWatch中選中上面的地址,觀察一下返回的Content:


            5、在上面我選中的高亮部分中,你能看到session_name、session_value、uid等一些信息。其中對我們非常重要的一個值就是session_value。有過web開發經驗的朋友都知道,登錄后,在站點中是有一個session在client端維護著用戶的一些信息,并且這個session是每次登錄都會產生的隨機字符串,并且有一定的有效期(由管理權配置)。所以,我們要模擬web的動作,就需要拿到正確的session字符串,也就是上面我們看到的那個session_value。

            其實到目前為止,我們的分析工作已經進行了一大半了。簡單總結一下:
            我們上面做了那么多事情,最重要達到兩個目的:
            (1)如何模擬用戶登錄
            (2)獲得正確的UID和sessionid

            另外,關于sessionid的獲取還有其他方法,例如,如果你使用的是Java,可以從cookie中讀取到sessionid。

            第三部分、分析陽光牧場各種操作
            有了上面的基礎,下面的分析簡直是易如反掌了。
            1、打開HttpWatch的Record,將上面的http://sh_farm.rekoo.com/embed_swf /?so_sig_uid=6位數字&so_sig_session_key=UXdkRmZMaUxFQjg9&so_sig_sig=049fa15390e4c9acffbecac8870e83c1 重新刷新一下。
            2、在HttpWatch中,你會看到很多這樣的地址:http://sh_farm.rekoo.com/get_api/,這個地址那可是相當的重要啊,幾乎所有的命令請求都是往這個地方發。
            3、選中http://sh_farm.rekoo.com/get_api/ ,在下面的POST Data中可以看到:

            原來這是一個標準的http post請求,完整的URL就是:http://sh_farm.rekoo.com/get_api/?method=user.get_friends&rekoo_killer=你的6位UID&sessionid=剛才我們從頁面上獲取到的session_value
            然后我們點擊旁邊的Content頁簽,看到服務器返回的內容如下:


            上面是典型的JSON數據,接下來怎么做不用我說了吧。你可以把上面的內容復制到JSONViewer中,它提供了樹形結構供你方便的展開每個節點,以分析父子關系、每個節點的類型等信息:

            4、上面我們看到的是獲取好友列表的請求,其他的諸如獲取商店信息、殺蟲澆水、播種、收割……請求地址都是http://sh_farm.rekoo.com/get_api/,只不過post的參數不同而已。將正確的參數post給服務器,服務器就會返回相應操作的JSON數據給你,有了這些數據,你就可以進行后期的分析處理了。

            OK,通過上面文字的介紹,相信各位已經明白了,這樣的一個外掛是怎么工作的了。


            posted on 2009-07-27 12:38 深藍色系統 閱讀(9301) 評論(23)  編輯 收藏 引用

            評論

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹[未登錄] 2009-07-27 12:45 megax

            不錯  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹[未登錄] 2009-07-27 13:15 expter

            :)
            好像外掛一般都是通過抓包分析數據實現。

              回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-07-27 14:26 evoup

            膜拜,夠黑客級了  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-07-27 22:50 grafield

            為什么開心網的登錄和你這上面講不一樣呢?
            他上面只有一個UID,沒有你后面講的這些東西
            http://passport.sohu.com/sso/login.jsp?userid=你的E-MAIL賬號&password=密碼串&appid=1062&persistentcookie=1&s=1248665199215&b=2&w=1440&pwdtype=1
            上面地址中,userid是你登錄時輸入的email地址,password是經過md5加密的字符串,s是時間(1970-1-1到現在的秒數,應該是這個賬號注冊的時間。在C語言中可以用time()函數來產生),w應該是計算機屏幕X方向的分辨率,persistentcookie表示保存cookie,b和pwdtype是一個常量,不知道具體含義(我們也不需要關心)。

              回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-07-27 23:36 pear_li

            不錯,改天過來好好看  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-07-28 08:19 guest

            開心網怎么會一樣呢?不同程序員開發的,思維肯定不一樣。要重新分析。  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-07-28 20:57 88

            @grafield


            別問這樣的問題,不同的人做的能一樣么  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-07-29 10:40 深藍色系統

            這個不是開心網的外掛啊,我明明寫了是搜狐白社會的陽光牧場么,呵呵。
            開心網現在已經有很多很好的外掛了,分析手段應該差不多,都是用http分析軟件了解頁面請求,然后用編程語言模擬這些請求,然后對數據做解析。

            不過千橡的山寨開心網和其他的有些不同,它的那個開心農場應該是用as3開發的,諸如種植、澆水、殺蟲、收割這些都是內嵌在as3中的代碼(應該是一個類的方法在接收內部的一些請求命令),不是普通的http請求方式,所以這些行為不太好通過常規手段模擬。

              回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-07-29 21:56 hnnling

            在巡視獲取數據時,偶爾會發生光標不能準確定位的情況,也就無法打字,不知道是什么原因,這樣就不能一邊工作一邊掛機,這是一大缺憾  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-07-30 21:20 曾經白云飛

            閱讀博主的文章大有所悟, 根據你的原理分析了開心網的爭車位, 確實可以成功.
            多謝博主, 呵呵, 根據你的思路我寫了開心網爭車位的外掛思路
            開心網爭車位外掛制作的編程思路
            http://www.shnenglu.com/summericeyl/archive/2009/07/30/91654.html  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-07-31 15:41 blgzs QQ249062253

            沒發現我需要的東西。
            如果通信走的https,數據包都是加密的,截取的包都是密文,這個方法就不行了  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-08-04 21:16 不戒大師

            我想問一下JSON這里你是怎么讀取的啊,今天看了一下TinyJSON,感覺不怎么方便呢  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-08-05 10:15 深藍色系統

            回復 不戒大師:
            我今天抽空寫一篇關于TinyJSON使用的文章吧。
              回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-09-05 14:14 喬丹

            能否實現這個功能:好友的某種果實成熟后,馬上通知外掛去采摘?  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-09-08 14:13 yyy

            0904版今天不能獲取陽光牧場的頁面了,每次重試三次后都不行。  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-09-16 17:29 alan

            老大能不能搞一個池塘邊的外掛啊?  回復  更多評論   

            # 校內網的陽光牧場外掛的主要編寫思路是怎么樣的? 2009-10-01 23:29 笑看人間

            校內網的陽光牧場外掛的主要編寫思路是怎么樣的?能介紹一下嗎?謝謝!  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-10-17 16:01 小刀

            最近看了下這篇文章很好,自己是新手,有很多地方不是太懂,而且開心網花園玩的人是最多的了,如果哪位朋友能從頭分析教大家作作外掛就最好了,希望中~  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2009-10-21 15:22 學會等待

            自己平時比較喜歡編程,,想學學編外掛,,能不能把陽光牧場外掛的封包前的文件發給我學習一下,這個外掛確實不錯??梢缘脑挵l到我的郵箱yefeng1860@163.com謝謝?;蛘呶业膓q,342871756  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2010-02-20 22:57 上海MFC

            能不能把陽光牧場外掛的封包前的文件發給我學習一下,這個外掛確實不錯??梢缘脑挵l到我的郵箱mounaiqiu@163.com謝謝  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹[未登錄] 2011-01-02 02:15 xxx

            @blgzs QQ249062253
            腦殘呀!
            這涉及到瀏覽器的兼容性的問題,以及,現在不少瀏覽器引擎都是開源的!!!加密可以解密!!!  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹 2011-01-29 07:43 金牛

            我的神呀 現在不能用了 請再次施展法術吧  回復  更多評論   

            # re: 【原創】陽光牧場外掛的主要編寫思路介紹[未登錄] 2011-07-01 00:54 K

            你的文章都寫得挺好的,我的網站www.qungege.com  回復  更多評論   

            導航

            <2009年8月>
            2627282930311
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345

            統計

            常用鏈接

            留言簿(75)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久综合给合综合久久| 青青国产成人久久91网| 亚洲国产香蕉人人爽成AV片久久 | 久久精品亚洲福利| 久久九色综合九色99伊人| 思思久久好好热精品国产 | 久久99国产精品一区二区| 久久久久亚洲AV无码专区网站| 一级女性全黄久久生活片免费| 久久国产色AV免费看| 日韩中文久久| 免费观看久久精彩视频| 99久久精品国产一区二区| 99久久国产亚洲高清观看2024| 中文字幕乱码人妻无码久久| 久久香蕉综合色一综合色88| 亚洲精品无码久久久久久| 99久久精品无码一区二区毛片| 亚洲AV日韩精品久久久久| 狠狠色综合网站久久久久久久| 亚洲国产精品久久久天堂| 色综合久久天天综线观看| 夜夜亚洲天天久久| 久久精品国产99国产精品澳门| 久久精品卫校国产小美女| 欧美与黑人午夜性猛交久久久| 国产午夜精品久久久久免费视| 色综合久久夜色精品国产| 国产成人无码精品久久久免费| 97热久久免费频精品99| 亚洲色欲久久久综合网东京热| 久久久久99这里有精品10 | 日本道色综合久久影院| 国产精品99精品久久免费| 久久精品人人做人人爽电影蜜月| 伊人久久大香线蕉综合热线| 亚洲国产精品无码久久久久久曰| 久久综合给合综合久久| 久久久WWW成人| 伊人久久五月天| 新狼窝色AV性久久久久久|