FIF口語訓練利用漏洞刷分教程+完全破解版APP(Fiddler對Android應用進行抓包)
阿新 • • 發佈:2019-01-26
目前很多大學的英語口語訓練都在用"FIF口語訓練"這款軟體。為了讓一些同學脫離英語的苦海,現公佈刷分漏洞+破解版APP,當然,我也希望該公司能儘快修補漏洞,以保證軟體可以正常使用,軟體介面如下:
2017-11-15更新:破解版注入對話方塊,可修改任何分數
【1】利用漏洞刷分原理
使用過軟體的同學,應該都知道,咱們每次通關一次測驗後,在本地生成分數,然後上傳到伺服器資料。問題就在這裡,我們是否可以在上傳資料的時候,截斷資料,再修改資料呢?答案是肯定的。如下圖所示。在這裡,咱們用到的工具就是著名的抓包軟體Fiddler和一個Android模擬器。
【2】漏洞利用過程
接下來,咱們實測,我們先將Fiddler配置好,為了節約時間,我為大家找了篇百科,大家按照它配置下fiddler和Android模擬器, https://jingyan.baidu.com/article/03b2f78c7b6bb05ea237aed2.html。
然後,開啟軟體,找一篇英語教程,我這裡找了一片雅思英語的教程,關於愛好興趣類的電影,如下圖所示:
然後,咱們再看看他的排行榜,最高分是多少分,如下圖所示,截至現在,最高分是來自中國海洋大學的一個同學,97分。
咱們退出排行榜,回到上一級頁面,在挑戰前,還有一個重要的事情,設定fiddler(如下圖所示,點選一下紅框,出現如圖所示圖示即表示設定好),然後再點選“挑戰“。
這時,你可以隨便讀,但一定要讀準幾個單詞,0分不會上傳資料,然後讀完後,會上傳報告
沒辦法,我只得了10分,不過10分就夠了,咱們改成98分,第一名,我們來到fiddler,fiddler會幫助我們攔截請求,如下圖:
最後那一長條資料就是咱們上傳的分數了。提取到記事本檢視,我這裡用的是sublime,我截取了其中的一條。complete,fluency,learn_time,accuracy,score分別對應,完整度、流暢度、學習時間、發音、分數,然後咱們利用正則表示式來修改後面的數值
部分正則表示式:
完整度:"complete":"[0-9]{1,2}" 替換為 "complete":"XX"
流暢度: "fluency":"[0-9]{1,2}" 替換為 "fluency":"XX"
其他的以此類推了,我就不寫了,XX代表你要改成多少分,這裡的分可以超過100分,但是超過100分就太假了。
其實這裡如果想要懶一點,就可以只改分數,但是推薦自己好好讀一下,如果成績不理想,可以適當提高下分數。
改好後,再次複製到fiddler中
複製後,點選那個綠色的框,Run to Completion,退出軟體檢視分數即可
我們成功獲取了,第一的名次,名字和大學是隨便寫的。
【3】APP破解
看過上面的過程是不是感覺到很繁瑣,接下來還有一種方便的方法,可以一勞永逸。就是對APP進行逆向,修改上傳資料。
用JEB進行反編譯,檢視原始碼,找到關鍵類,Report類,關鍵函式uploadAnsDetail()(關鍵函式查詢小提示:這裡可以在Androidkiller裡利用搜索learn_time,fluency等這些關鍵詞,找到關鍵函式)
我習慣用Jeb看原始碼,感覺比jd-jui清楚,如上圖,這些資料是一個一個設定的,然後去Android killer修改smali程式碼,打包程式,
找到smali程式碼中設定分數的地方,在前一句加上 const-string v15, "89" ,打包程式。
安裝打包後的程式,無論咱們怎麼讀,最後都會是89分,這種方法一勞永逸。哈哈哈
最後附上,我修改的任意修改分數的破解版本:
執行後,截圖是這樣,在課程裡面點選右上角滑稽,可彈出右側介面,在每次讀英語之前輸入分數,即可,如果輸入0或者空白或者點選預設,則不會修改任何資料,將會按照實際分數上傳。
下載連結:連結:http://pan.baidu.com/s/1bP8ike 密碼:kc9l
2017-11-15更新:破解版注入對話方塊,可修改任何分數
【1】利用漏洞刷分原理
使用過軟體的同學,應該都知道,咱們每次通關一次測驗後,在本地生成分數,然後上傳到伺服器資料。問題就在這裡,我們是否可以在上傳資料的時候,截斷資料,再修改資料呢?答案是肯定的。如下圖所示。在這裡,咱們用到的工具就是著名的抓包軟體Fiddler和一個Android模擬器。
【2】漏洞利用過程
接下來,咱們實測,我們先將Fiddler配置好,為了節約時間,我為大家找了篇百科,大家按照它配置下fiddler和Android模擬器,
然後,開啟軟體,找一篇英語教程,我這裡找了一片雅思英語的教程,關於愛好興趣類的電影,如下圖所示:
然後,咱們再看看他的排行榜,最高分是多少分,如下圖所示,截至現在,最高分是來自中國海洋大學的一個同學,97分。
咱們退出排行榜,回到上一級頁面,在挑戰前,還有一個重要的事情,設定fiddler(如下圖所示,點選一下紅框,出現如圖所示圖示即表示設定好),然後再點選“挑戰“。
這時,你可以隨便讀,但一定要讀準幾個單詞,0分不會上傳資料,然後讀完後,會上傳報告
沒辦法,我只得了10分,不過10分就夠了,咱們改成98分,第一名,我們來到fiddler,fiddler會幫助我們攔截請求,如下圖:
最後那一長條資料就是咱們上傳的分數了。提取到記事本檢視,我這裡用的是sublime,我截取了其中的一條。complete,fluency,learn_time,accuracy,score分別對應,完整度、流暢度、學習時間、發音、分數,然後咱們利用正則表示式來修改後面的數值
部分正則表示式:
完整度:"complete":"[0-9]{1,2}" 替換為 "complete":"XX"
流暢度: "fluency":"[0-9]{1,2}" 替換為 "fluency":"XX"
其他的以此類推了,我就不寫了,XX代表你要改成多少分,這裡的分可以超過100分,但是超過100分就太假了。
其實這裡如果想要懶一點,就可以只改分數,但是推薦自己好好讀一下,如果成績不理想,可以適當提高下分數。
改好後,再次複製到fiddler中
複製後,點選那個綠色的框,Run to Completion,退出軟體檢視分數即可
我們成功獲取了,第一的名次,名字和大學是隨便寫的。
【3】APP破解
看過上面的過程是不是感覺到很繁瑣,接下來還有一種方便的方法,可以一勞永逸。就是對APP進行逆向,修改上傳資料。
用JEB進行反編譯,檢視原始碼,找到關鍵類,Report類,關鍵函式uploadAnsDetail()(關鍵函式查詢小提示:這裡可以在Androidkiller裡利用搜索learn_time,fluency等這些關鍵詞,找到關鍵函式)
我習慣用Jeb看原始碼,感覺比jd-jui清楚,如上圖,這些資料是一個一個設定的,然後去Android killer修改smali程式碼,打包程式,
找到smali程式碼中設定分數的地方,在前一句加上 const-string v15, "89" ,打包程式。
安裝打包後的程式,無論咱們怎麼讀,最後都會是89分,這種方法一勞永逸。哈哈哈
最後附上,我修改的任意修改分數的破解版本:
1232.png
執行後,截圖是這樣,在課程裡面點選右上角滑稽,可彈出右側介面,在每次讀英語之前輸入分數,即可,如果輸入0或者空白或者點選預設,則不會修改任何資料,將會按照實際分數上傳。
下載連結:連結:http://pan.baidu.com/s/1bP8ike 密碼:kc9l