java解密手機QQ聊天記錄

轉載鏈接:http://blogjava.sinaapp.com/?p=38


手機QQ聊天記錄需要手機root纔可以獲取到,這是個雞肋,但是網上還有許多想解密的,還有收費的。如果查小三,估計可以有這麼大的手筆。

經過網上的資料和自己對大量數據的測試,現在知道解密的方式了。
手機單卡常規手機,數據加密方式爲待加密數據按位與手機IMEI循環進行異或加密,如果數據爲中文,只對中文數據中的第三位按位異或加密。
手機如果爲雙卡手機,加密數據的密鑰(先這麼叫這吧)就不是IMEI了,而是手機的設備id,也就是mediaID,這個非中文字符加密還是和上面一樣,中文加密和上面稍微有些區別,第三位也是異或加密,只不過第二位也需要異或加密,這兩位加密的密鑰有些變化。因爲mediaID含有非數字字符,也就是英文字母,IMEI是全數字的。非中文說過了,和上面一樣;中文如果碰到密鑰中的數字部分,解密也和上一樣;如果中文碰上英文字母,加密的時候,第二位就需要和0x01異或,第三位需要和字母的16進制數值減去0x40結果進行異或。

以上前提是知道手機的IMEI或者mediaID(手機聊天記錄獲取不算的),如果不知道(丟失或者其他,你懂得),我們可以怎麼樣處理呢?首先我們要知道加密數據的明文,這不可能吧,知道還解密什麼。不是的,是可以知道一部分的,首先聊天記錄的QQ號是知道的,因爲它的命名就是QQ.db,QQ指的是QQ號。然後db文件中有seluin字段,就是指的這個QQ號了,這兩個異或一下,就可以生成該QQ號長度的IMEI碼了(或者mediaID,注意是該QQ號長度),這個殘缺的IMEI碼有可能就是我們揭開整個祕密的鑰匙,通過殘缺的IMEI我們就可以暴力解密其中的數據了,QQ分組名稱,QQ用戶名,QQ暱稱,QQ輔助賬號(多數爲手機號碼和郵箱賬號,通過輔助賬號就可以搜索QQ好友,輔助賬號也可以設置成主顯賬號)。

以上只是得到了殘缺的IMEI和殘缺的數據,怎麼能解密全部數據呢,再就是利用數據庫中的輔助賬號,這個可以通過搜索QQ號得到(貌似只有好友才能看到輔助賬號),通過輔助賬號就可以解密出完整IMEI碼了。當然這裏的輔助賬號最好是郵箱,不要是手機號碼,因爲手機號碼只是11位,解密出的IMEI碼也是殘缺的11位,郵箱的長度基本就夠了。

我們實在是得不到輔助賬號呢,別忘了我們有殘缺的IMEI碼,剩下的幾位你可以去手工一位一位測試(IMEI爲15位,mediaID爲14位,不過mediaID裏有英文字符,夠你玩的了)。再就是靠運氣,也就是社會工程學的部分內容了。

案例:
http://bbs.kafan.cn/thread-1828632-1-1.html
卡飯的孫居士把自己的手機聊天記錄發到論壇了,想找人解密,完全不知道個人隱私的重要性,我們下載下來,暴力破解一番,已經拿下他殘缺的小菊花了,得到了殘缺的IMEI碼,然後看看解密的殘缺數據,看到了他的一個好友的輔助賬號,這裏是前9位,推測是名字的開頭字母縮寫+QQ號+@+某某郵箱,這裏試了4次(qq.com,vip.qq.com,等等),得到了完整的郵箱,也就是輔助賬號了,進而得到IMEI,進而解密整個聊天記錄文件,至此他的菊花已被完全攻入,不知道他在不在打着冷戰,渾身一激靈。

附圖一張,孫海恆居士,就不爆手機號了


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章