日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

前言

本文基于anhkgg大佬的文章《微信PC端技術(shù)研究(2)-拿下語(yǔ)音》原文鏈接:
https://bbs.pediy.com/thread-249274.htm

anhkgg大佬的這篇文章找到了保存語(yǔ)音消息的接口,這里直接給出相關(guān)特征碼,方便定位(我使用的微信版本依舊是2.6.8.52)

偏移為0x30E326,下面的特征碼

PC微信逆向:自動(dòng)保存加密的聊天圖片

 

基于保存語(yǔ)音的相關(guān)延伸

其實(shí)這個(gè)地方不單單有語(yǔ)音消息,還有圖片消息,當(dāng)我們發(fā)送一條圖片消息時(shí)

PC微信逆向:自動(dòng)保存加密的聊天圖片

 

[edi+0x30]的內(nèi)容里面保存有這一次發(fā)送圖片的相關(guān)數(shù)據(jù),包括微信ID等一系列原始的數(shù)據(jù)。我們當(dāng)然可以在這個(gè)地方寫(xiě)HOOK來(lái)保存圖片,但是沒(méi)有必要。因?yàn)檫@里的消息內(nèi)容過(guò)多,處理起來(lái)相對(duì)會(huì)比較麻煩。

圖片處理的相關(guān)流程

既然這個(gè)地方是最原始的消息內(nèi)容,那么后面肯定會(huì)對(duì)消息進(jìn)行相關(guān)處理。而且我們已經(jīng)知道微信的接收的圖片會(huì)用異或加密的方式保存到本地。那么我們不妨猜測(cè)一下圖片相關(guān)的處理流程。

首先接收到原始的消息后,會(huì)對(duì)消息進(jìn)行一系列的處理,其中就包括判斷消息是否是圖片。那么如果是圖片則會(huì)取出圖片數(shù)據(jù),然后在內(nèi)存中對(duì)圖片進(jìn)行加密。加密完成之后調(diào)用文件操作的API,寫(xiě)入加密后的圖片到本地。

整個(gè)過(guò)程如圖所示:

PC微信逆向:自動(dòng)保存加密的聊天圖片

 

自動(dòng)保存圖片相關(guān)思路

既然了解圖片處理的流程,而且已經(jīng)有了接收?qǐng)D片消息的call,那么我們就可以在接收到圖片消息之后,在CreateFileW創(chuàng)建圖片之前,找到對(duì)圖片進(jìn)行加密的算法和函數(shù),將未加密前的圖片保存出來(lái)。

實(shí)戰(zhàn)保存聊天圖片

PC微信逆向:自動(dòng)保存加密的聊天圖片

 

在OD中找到保存語(yǔ)音的call,發(fā)送圖片消息讓程序斷下的同時(shí),對(duì)CreateFileW進(jìn)行下斷。之后F9運(yùn)行

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


此時(shí)文件路徑為xlog,這個(gè)明顯不符合我們的要求,繼續(xù)F9運(yùn)行

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


一直找到圖片路徑帶有Image關(guān)鍵字時(shí),在創(chuàng)建圖片

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


此時(shí)我們點(diǎn)擊K顯示堆棧,找到第一層返回地址,右鍵顯示調(diào)用

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


當(dāng)微信運(yùn)行到這里的時(shí)候,圖片加密已經(jīng)完成,我們要在這個(gè)函數(shù)之前找到圖片的加密算法,其實(shí)就在上面一點(diǎn)點(diǎn)的位置,鼠標(biāo)稍微往上翻一下就能看到

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


找到這個(gè)地方之后清除剩下的所有的斷點(diǎn),只保留這一個(gè)

對(duì)保存圖片call的相關(guān)分析

再次發(fā)送一張圖片,程序斷下。這段代碼首先用循環(huán)的方式對(duì)圖片進(jìn)行加密,循環(huán)的次數(shù)即ecx的值,也就是圖片的大小。其中有兩個(gè)數(shù)據(jù)比較重要。

PC微信逆向:自動(dòng)保存加密的聊天圖片

 

我們先在內(nèi)存中查看[ebp-0x14]的內(nèi)容,想要知道這段數(shù)據(jù)是什么其實(shí)很簡(jiǎn)單。先下CreateFileW斷點(diǎn)

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


當(dāng)CreateFileW斷點(diǎn)斷下后,執(zhí)行到返回,查看打開(kāi)的文件句柄

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


此時(shí)打開(kāi)的圖片句柄為0xF80,此時(shí)再下WriteFile斷點(diǎn)

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


WriteFile斷下后可以看到句柄為F80,寫(xiě)入的緩沖區(qū)地址為39FE820,而[ebp-0x14]的地址正好也是39FE820。也就是說(shuō)[ebp-0x14]這個(gè)位置保存的是加密后的圖片數(shù)據(jù)

回到之前的斷點(diǎn),再次發(fā)送一張圖片,查看[ebp-0x4]的數(shù)據(jù)

PC微信逆向:自動(dòng)保存加密的聊天圖片

 

此時(shí)[ebp-0x4]中保存了接收的圖片,而ecx保存了圖片的大小

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


PC微信逆向:自動(dòng)保存加密的聊天圖片

 


這里借用PCHunter查看->進(jìn)程內(nèi)存,將這一段數(shù)據(jù)dump下來(lái)

PC微信逆向:自動(dòng)保存加密的聊天圖片

 

問(wèn)題就在于這里只是一張大小為4KB的縮略圖,回到OD,再次按F9運(yùn)行

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


斷點(diǎn)斷下,但是此時(shí)ecx的值變成0x5A140

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


用同樣的方法dump下內(nèi)存,大小為360KB,這個(gè)就是我們需要的原圖了。

也就是說(shuō)這個(gè)地方會(huì)端下來(lái)兩次,第一次是縮略圖,第二次才是我們要的原圖。

代碼實(shí)現(xiàn)保存聊天圖片

示例代碼如下:

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


PC微信逆向:自動(dòng)保存加密的聊天圖片

 


PC微信逆向:自動(dòng)保存加密的聊天圖片

 

實(shí)際效果

PC微信逆向:自動(dòng)保存加密的聊天圖片

 


原文鏈接:
https://blog.csdn.net/qq_38474570/article/details/101755586

分享到:
標(biāo)簽:逆向 PC
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定