錦州市廣廈電腦維修|上門維修電腦|上門做系統|0416-3905144熱誠服務,錦州廣廈維修電腦,公司IT外包服務
topFlag1 設為首頁
topFlag3 收藏本站
 
maojin003 首 頁 公司介紹 服務項目 服務報價 維修流程 IT外包服務 服務器維護 技術文章 常見故障
錦州市廣廈電腦維修|上門維修電腦|上門做系統|0416-3905144熱誠服務技術文章
用Fiddler實現某干教網App學習記錄修改

作者: 佚名  日期:2023-07-26 13:58:50   來源: 本站整理

 1.準備工作
        首先當然是下載安裝和配置Fiddler,基本上是按照論壇里bigbirdl大神寫的教程一步一步做的,https://www.52pojie.cn/thread-1171662-1-1.html
        因為我用的是MACOS,只能在虛擬機里進行安裝,需要注意的是因為Fiddler所運行的主機(既我的Windows虛擬機)需要和手機在同一個局域網(Wifi)里,所以在虛擬機的網絡設置里,需要改為“橋接網絡(Wifi)”,否則無法正常抓取手機上的數據包。Fiddler設置好并運行后如下圖
 
        另外,個人習慣是把“Rules”菜單下的“Hide CONNECTs”選項給勾選上,這樣可以不看建立連接用的數據包(這些數據包里沒有我們關心的數據),避免刷屏。另外,抓手機的數據包里,可以暫停本機(電腦)數據包的抓取,方法是單擊一下左下角的那個“Capturing”字樣處,該處無顯示時即可。
2.開始抓包
        手機打開某干教網程序,登錄后進入在線學習頁面,在開始學習前,可以在Fiddler當前Session列表(即顯示一大堆已經抓到的數據包相關信息的窗口)里按“Ctrl+X”快捷鍵把之前操作過程中抓到的數據清除,準備尋找和分析學習記錄上傳的相關數據包。
  
        選了一個2學時的課程,獲得學時需要1小時2分24秒。老實說課講得都非常好,但是我們只要學時,就對不起王老師了😂。開始播放后,我點擊了暫停(實際上在后來的分析中發現,App會定時自動回傳學習記錄,也會在用戶暫停的時候馬上回傳一次學習記錄)。Fiddler上馬上抓到了一系列數據包,我們來逐個看一看。
 
        先是幾個"isLogin",應該是判斷登錄信息是否過期的,跳過。然后重點來了,這個"addStudyRecord.json"你們覺得可疑不可疑?這命名簡直太規范了,還有下面那個"addNtStudyTime.json",初步鎖定就是這兩個文件之一了,至于后面的coursedetail這些課程信息相關的,直接忽略不計了。然后分別點開兩個包觀察了一下,addNtStudyTime.json里并沒有相關數據,而addStudyRecord.json這個請求里,可以看到如上圖中的studyRecordList這個值,里面的字段也很好辨認(確實是命名很規范),前面是課程和學生的ID,然后是進入視頻的時間accessTimeStr、退出(暫停)時間exitTimeStr,接下來是playlength和playTime這兩個字段,從兩個字段的值可以明顯看出來應該是playlength,因為它的值正好就是退出時間減進入時間,單位看來是秒。那么只要把這個值改為我們想要的時長,在服務器端不作數據驗證(比如用exitTime減accessTime,算一下是否和playlength一致)的情況下,應該就可以達到我們速刷的目的了。
3.手動修改數據包
        在Fiddler里設置斷點,當App向服務器上傳數據的時候截獲并暫停,待我們修改相關數據以后再放行。
  
        上面兩個圖中的辦法都可以,也可以參考右圖上的快捷鍵,我們需要設的斷點是“Before Requests”,也就是App的請求發出前。然后回到手機上,恢復播放后再一次暫停。這時Fiddler上會顯示有請求被截獲并暫停,一開始可能并沒有我們關心的addStudyRecord請求,可以直接點工具欄上的“Go”(綠色小三角那個圖標)放行,直到addStudyRecord出現,直接雙擊該數據包session,在右邊的窗口中修改。
 
        將playlength改為3600(即1小時),修改完以后一定要按“回車(好像要這樣才能保存修改,新手小白表示不明真相),之后點“Go”放行。在手機上看一下,修改生效了。
 
        學習進度從0%直接到96%了,實際上剛才修改的時候再多改一點(比如7200秒),就能直接學完課程拿學時。至此,目的達到,學時到手。不過還沒完,還有一個小彩蛋。
4.自動修改數據包
        既然上一章叫手動修改數據包,當然會有一個自動修改數據包的彩蛋。雖然能夠直接修改學習時長,比拿手機看1小時快多了,但是還是需要反復操作,挺麻煩不是。Fiddler還有一個很強大的功能,可以自動修改request數據(response當然也能)。進入Fiddler的Rules菜單,點擊Customize Rules...,快捷鍵CTRL+R,進入Fiddler ScriptEditor,直接修改Fiddler的自動化腳本。
   
        方便起見,幾張圖我就放一起了。在Fiddler ScriptEditor中進入Go菜單下的to OnBeforeRequest,跳轉到相應的函數里,然后在函數的最后面加上如下代碼。

[JavaScript] 純文本查看 復制代碼
if (oSession.fullUrl.Contains("http://mstudy-bjce.bjdj.gov.cn/mobile/module/mobile/mobileinterface/v1/mobilecourse/addStudyRecord.json")){ var reqStr=oSession.GetRequestBodyAsString(); //將playlength中的值修改 var prevInd=reqStr.indexOf('playlength%22%3A')+16; var nextInd=reqStr.indexOf('%2C%22playTime'); var myReqStr=reqStr.substring(0,prevInd)+'3600'+reqStr.substr(nextInd); Fiddler.FiddlerApplication.Log.LogString(myReqStr); oSession.utilSetRequestBody(myReqStr);}


        需要說明的是if判斷里的那個URL是在抓到addStudyRecord數據包后,右擊該數據包,選擇copy菜單下的Just URL,然后再粘貼出來的,也就是只針對這個請求進行修改。實際上,我自己在寫這段代碼的時候遇到很多麻煩,首先是RequestBody的值我一開始一直以為是JSON格式,但后來仔細看了一下數據包的TextView,發現并非如此。想用正則來替換playlength部分,在網上查了半天,發現Fiddler Script好像并不支持正則(如果有大神知道如何用正則煩請告知為謝),于是就只好用了個笨辦法,先找到playlength的位置,再找到后面playtime的位置,把兩頭的字符串都截出來,再加上我想要的學習時長,拼接成想要的RequestBody,然后發送。



熱門文章
  • 打印機點擊OK才能進紙不點ok,它就...
  • 筆記本連投影自動擴展非復制【解決...
  • 顯卡顯示器刷新率與游戲幀率FPS的關...
  • 大華錄像機添加海康攝像頭的方法
  • 廢舊手機會泄露隱私 恢復手機出廠設...
  • Win11默認輸入法怎么設置?Win11開...
  • 用Fiddler實現某干教網App學習記錄...
  • 病毒分析小白嘗鮮-GANDCRAB勒索家族...
  • 隱馬爾可夫模型及其算法
  • 華碩 GTX1050Ti Expedition 和 STR...
  • 顯卡維修經驗分享,RTX3080,描述為...
  • 藍天主板改集顯維修
  • 錦州廣廈電腦上門維修

    報修電話:13840665804  QQ:174984393 (聯系人:毛先生)   
    E-Mail:174984393@qq.com
    維修中心地址:錦州廣廈電腦城
    ICP備案/許可證號:遼ICP備2023002984號-1
    上門服務區域: 遼寧錦州市區
    主要業務: 修電腦,電腦修理,電腦維護,上門維修電腦,黑屏藍屏死機故障排除,無線上網設置,IT服務外包,局域網組建,ADSL共享上網,路由器設置,數據恢復,密碼破解,光盤刻錄制作等服務

    技術支持:微軟等
    主站蜘蛛池模板: 办公室丝袜激情无码播放| 亚洲av永久无码一区二区三区| 日韩成人无码一区二区三区| 成人无码区免费视频观看| 免费无码专区毛片高潮喷水| 国产成人无码一二三区视频| 69ZXX少妇内射无码| 国产做无码视频在线观看| 国产精品无码av在线播放| 无码国产精成人午夜视频不卡| 国产午夜精华无码网站| 亚洲精品无码你懂的| 亚洲国产成人精品无码区在线观看| 亚洲Av永久无码精品一区二区| 中文字幕人妻无码系列第三区| 亚洲av无码一区二区三区在线播放 | 国产精品午夜无码av体验区| 亚洲AV永久无码精品成人| 无码日韩精品一区二区人妻| 2024你懂的网站无码内射| 国产成人A人亚洲精品无码| 亚洲?V无码成人精品区日韩 | 成人无码视频97免费| 亚洲精品无码人妻无码| 精品无码AV一区二区三区不卡 | 亚洲AV无码成人精品区狼人影院| 中文字幕av无码专区第一页| 亚洲AV无码不卡在线观看下载| 亚洲国产精品无码久久98| 精品国产一区二区三区无码| 无码日韩人妻精品久久蜜桃 | 无码免费午夜福利片在线| 2024你懂的网站无码内射| 人妻av无码一区二区三区| 久久久无码中文字幕久...| 亚洲av无码一区二区三区不卡 | 日韩人妻精品无码一区二区三区 | 18禁无遮挡无码国产免费网站| 亚洲av中文无码乱人伦在线播放 | 无码高潮爽到爆的喷水视频app| 色综合久久久无码网中文|