當前位置:
首頁 > 知識 > 神秘技術, 防好友撤回QQ消息神器, Python碼農神發明!

神秘技術, 防好友撤回QQ消息神器, Python碼農神發明!

點擊上方「

Python開發

」,選擇「置頂公眾號」


關鍵時刻,第一時間送達!






作者:Python新世界

       

https://www.jianshu.com/p/d7e4ec86a64c


Python開發整理髮布,轉載請聯繫作者獲得授權




序言


前段時間學到了利用Python查看微信撤回消息,從中受到啟發,不如讓 QQ 也不被撤回吧。



開始


準備工作



實驗開始


按照慣例,先 otool 一下看看是不是解密的,不過在越獄軟體下肯定是解密的了。



otool -l 


/Users/TsuiYuenHong/Downloads/PP 下載/應用/QQ-6.5.8(越獄應用)/Payload/QQ.app/QQ | grep crypt



然後,使用 class-dump 看看有什麼可用的信息



class-dump-H 


/Users/TsuiYuenHong/Downloads/PP 下載/應用/QQ-6.5.8(越獄應用)/Payload/QQ.app -o qq



class-dump


這裡就要用到 目測估計法,哈哈,就是這麼簡單粗暴。撤回無非就幾個單詞,revoke / recall / withdraw,(⊙v⊙) 那就都試試吧。不過這次運氣比較好,試到 recall 就發現了可能有用的信息。 


在頭文件中發現一個叫


 QQMessageRecallModule 的類,這翻譯過來不就是 QQ信息撤回模塊 嗎?


還發現了裡面有個 處理撤回通知 的方法



● 

(void)handleRecallNotify:(struct RecallModel *)arg1 isOnline:(BOOL)arg2;


那就直接從這個方法入手吧。


QQ可執行文件

丟進

hooper

,搜索

handleRecallNotify



返回值是

void

,那我就再次簡單粗暴直接在函數一開始就

return

吧。然後使用

hooper

重新生成可執行文件,替換掉原本的

QQ可執行文件


然後將

QQ.app

放到

payload

文件夾下,然後壓縮並重命名為

QQ.ipa

,裝到越獄設備上運行。


因為手上沒有iPhone越獄設備,所以就丟到iPad運行。


這是用 iPhone 發的信息,並且間隔 1 分鐘後撤回。



iphone


這是我在 iPad 運行的修改版本,可以看見之前被撤回的信息還在。



iPad


後記


 其實這個過程並不像文本一樣簡單,期間還試過烏龍,例如在找撤回方法的時候就試過iPad弄到自己不能撤回,hhhhh。

關於為什麼不能在非越獄設備上運行,我也有嘗試過,不過QQ會檢測簽名問題,所以當我重簽名之後,會提示簽名被修改,而不能正常運行。目前還在嘗試...


不過總算也是成功了,快去試試吧!



哈哈~



【點擊成為Java大神】

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Python開發 的精彩文章:

「我以前很瘦,未來也很瘦,所以」

TAG:Python開發 |