加密解密

关注公众号 jb51net

关闭
网络安全 > 加密解密 >

QQScreenShot之逆向并提取QQ截图--OCR和其他功能

脚本之家

 0x0 前言

上一篇文章 逆向并提取QQ截图--基本功能 没有提取OCR功能, 再次逆向我发现是可以本地调用QQ的OCR的。 但翻译按钮确实没啥用, 于是Patch了翻译按钮事件, 改为了将截图用百度以图搜图搜索. 并Patch掉了长截图的标签显示, 这样win10下就也可以用长截图功能了.

0x1 Patch OCR按钮事件

QQ在调用OCR之前会进行一些判断, 只有是win10及以上版本的64位系统才会去本地调用OCR, 其余条件都会调用网络OCR, 所以Patch掉就好了:

//本地调用QQOcrHelper.exe
Patch QQOcrHelper:
{
    00000001406B3D88 QQ.exe -> QQScreenShot.exe
    000000014003008E cmp rcx, 0x7 -> cmp rcx, 0x10
}
 
Cameral.dll:
将上传OcrImg的函数(Camera+41F1C)Patch掉: Camera + 3BDA2: call sub_52FE1F1C -> nop (E8 75 61 00 00 -> 90 90 90 90 90)
Patch判断网络还是本地OCR的函数: Camera + 765A: jnz short loc_52FA76C0 -> nop (75 64 -> 90 90)

0x2 Patch 翻译按钮事件

将翻译改百度识图(以图搜图), 原理就是向百度识图POST一个上传图片的请求, 然后打开返回的网址, 具体代码见附件

0x3 效果

0x31 OCR

OCR

0x32 识图(以图搜图)

shitu

0x33 长截图

long

0x34 滚轮音量

volume

0x6 后续

根据前辈的方法, 后续有空了可能可以把屏幕录制功能给逆出来