Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

6.3.27以后朋友圈的图片被加密为image/wxpc #16

Open
zhao007z4 opened this issue Nov 16, 2016 · 62 comments
Open

6.3.27以后朋友圈的图片被加密为image/wxpc #16

zhao007z4 opened this issue Nov 16, 2016 · 62 comments

Comments

@zhao007z4
Copy link

朋友圈的图片已不能直接通过url下载了,貌似后面加了一些东西。简单的抓了下吧,直接通过抓包的url还是不能下载。不知道啥原因。你知道微信加载的图片缓存在那里吗? 我用app遍历文件内容没有找到。加密了还是?

@zhao007z4 zhao007z4 changed the title 6.3.27以后朋友圈的图片加载问题不出来 6.3.27以后朋友圈的图片加载不出来 Nov 16, 2016
@Chion82
Copy link
Owner

Chion82 commented Nov 17, 2016

是的。url参数增加了token认证,而且Content-Type是image/wxpc,这应该是微信加密过的图片格式,就算抓包得到完整请求参数也不能下载明文的图片数据。

@Chion82 Chion82 changed the title 6.3.27以后朋友圈的图片加载不出来 6.3.27以后朋友圈的图片被加密为image/wxpc Nov 17, 2016
@Ben56
Copy link

Ben56 commented Nov 28, 2016

这个问题还能解决吗?希望作者加油把它搞定!!

@HYcms
Copy link

HYcms commented Dec 1, 2016

朋友圈导出的数据,部分图片可以正常获取到,部分图片获取不到路径(和正确的图片路径不一样)

@z8313568
Copy link

对的,我看着有的图片可以显示,大部分都显示不出来,有没有反编译研究的方法,共享出来,大家一块研究研究。

@zhiguicai
Copy link

我也是卡在图片被加密为image/wxpc ,token可以取到。图片加密如何破求告诉

@perklet
Copy link

perklet commented Feb 10, 2017

@z8313568 可以显示的是自己的图片

@hyhnet
Copy link

hyhnet commented Feb 11, 2017

图片有思路了吗?

@Chion82
Copy link
Owner

Chion82 commented Feb 12, 2017

解密算法在.so字节码中,另外token生成算法未知,希望有心人跟进。

@hyhnet
Copy link

hyhnet commented Feb 12, 2017

看到有网站依然可以用,不知道是本地导上去,还是已经有算法了!

@AfricanGigolo
Copy link

我也卡在这 想问一下文字信息是抓包抓到的还是本地就有的呀?

@perklet
Copy link

perklet commented Mar 5, 2017

@AfricanGigolo 文字信息本地就有

@usxue
Copy link

usxue commented Mar 17, 2017

谁能告诉我,朋友圈的文字是怎么获取的?谢谢啊

@AfricanGigolo
Copy link

AfricanGigolo commented Mar 18, 2017 via email

@perklet
Copy link

perklet commented Mar 30, 2017

得到了一个这种地址的图片,总是返回 400 bad request,有谁知道怎么打开么?
http://mmsns.qpic.cn/mmsns/1QGfF3jLt8cDxZwEQgFmL5TaIJam0mTEibibf1Ccx69eNpY36ECYbSQ6MDicwEHNVaxgSgvIYKzcjY/0

@usxue
Copy link

usxue commented Mar 30, 2017

这wxpc应该是加密了,无法打开啊

@AfricanGigolo
Copy link

AfricanGigolo commented Apr 3, 2017 via email

@huanglongyu
Copy link

图片也应该是缓存在本地了的吧, 只是现在还找到微信是如何加载的

@rock117
Copy link

rock117 commented May 9, 2017

我也卡在这里了, 像有些网站比如 心书, 把朋友圈做成书,不知他们用的什么技术获取数据的,也是跟这个项目类似的技术么。

@bruceCzK
Copy link

bruceCzK commented May 9, 2017

腾讯推出新图片格式 TPG
说不定是这个格式的,后续应该会有更多信息

@rock117
Copy link

rock117 commented May 10, 2017

@bruceCzK 这种格式 ,普通软件渲染不了,最后还得转成普通格式吧

@kongwu-
Copy link

kongwu- commented May 16, 2017

我看到新书这个网站生成的朋友圈数据图片还是用的微信服务器的图片,和我们解析本地缓存数据得到的地址看起来类似,不过他的能展示,真想知道他们是怎么做到的

@Chion82
Copy link
Owner

Chion82 commented Jun 14, 2017

@dake 这种没有token校验的URL应该是自己发的图片或者是分享文章的缩略图吧?

@yayanet
Copy link

yayanet commented Jun 20, 2017

现在用老版本微信还能正常导出图片吗?
我试了6.3.13提示“查询微信缓存失败。请允许root权限后重试”
使用新版本微信一切正常只是图片无法下载

@yayanet
Copy link

yayanet commented Jun 20, 2017

找到原因了,是版本不匹配,应该使用旧版工具

@glovebx
Copy link

glovebx commented Jul 10, 2017

获取到了这样的地址,图片下载失败,错误信息:HTTP Error 400: Bad Request

http://shmmsns.qpic.cn/mmsns/FibU4bs9lLFKhqn18tnB3Hb2yXhibQNPHSsQ712qAkFtXuibVjcKA1rBq96aqWsp9ibCQYG6OkgdO2M/0

@AndrosEt
Copy link

@dake 你用的是什么ios抓包工具?

@Chion82
Copy link
Owner

Chion82 commented Nov 8, 2017

凉了凉了。。。大家可以看看这个项目有什么可以开发的地方?Natoto/WeChatPlugin

@fanchengkong21
Copy link

大神们,有没有解决的呀?给一点帮助

@yankeeshadow
Copy link

@zhiguicai 请问如何获取token?

@wikiInit
Copy link

wikiInit commented Jan 9, 2018

url key token idx @changxiaokang 我已经拿到了上面的那些资源,应该怎么解密

@MichaelMai2000
Copy link

@Chion82 https://cloud.tencent.com/community/article/196510
这篇腾讯自己的文章里面提到了:

图片大小的持续压榨。不同等级质量业务可选,满足不同需求。并在原格式基础上持续挖掘,去除图片元信息,gif绛色处理及相同帧合并等,小细节也能省出大流量。为了同等尺寸及同级视觉效果下让图片更小一点,时刻关注业界最新技术,先后引入了Webp、Hevc(wxpc/sharp)图片格式, webp图片可比jpg节省20%到30%,hevc又比webp节省近30%,hevc在gif上的节省更为可观,可节省80%。经过上述不断优化,图片大小保持在行业内优势明显。

Hevc(wxpc/sharp)图片格式 看起来 貌似就是BPG的兄弟啊。。。
不知道有没有帮助。

@tontion123
Copy link

@zhiguicai 请问token怎么拿的,是在哪个数据库

@zhiguicai
Copy link

@tontion123 在SnsInfo表的content中去解析

@tontion123
Copy link

@zhiguicai 解码怎么样了?您有弄出来吗?

@tontion123
Copy link

@youkpan 请问你那wxpc文件是从哪里下载的啊?

@wqsui
Copy link

wqsui commented Mar 5, 2018

已经完成解码,做了几套工具,实用方便透明,感谢大家的讨论。有交流的可以加qq:2428375119

@wqsui
Copy link

wqsui commented Mar 25, 2018

已经完成微信朋友圈数据导出工具,支持最新版微信,自动化,导出,解码一步完成,并把数据发给服务器,加qq交流。

@wqsui
Copy link

wqsui commented Oct 12, 2018 via email

@hukejia
Copy link

hukejia commented Nov 9, 2018

已经完成解码,做了几套工具,实用方便透明,感谢大家的讨论。有交流的可以加qq:2428375119

加你q了,同意一下

@wqsui
Copy link

wqsui commented Nov 9, 2018 via email

@hukejia
Copy link

hukejia commented Nov 13, 2018

好像没收到,哪个qq? 在2018年11月09日 17:58,hukejia 写道: 已经完成解码,做了几套工具,实用方便透明,感谢大家的讨论。有交流的可以加qq:2428375119 加你q了,同意一下 — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

就你留的这个

@KangXiaoan0416
Copy link

朋友圈导出的数据,部分图片可以正常获取到,部分图片获取不到路径(和正确的图片路径不一样)

能正常获取的应该都是自己发的朋友圈中的照片,别人的朋友圈图片链接是不好用的,,

@wqsui
Copy link

wqsui commented Dec 25, 2018 via email

@johnjack1984
Copy link

johnjack1984 commented Jan 9, 2019

想进一步和godcok大神交流一下解码问题,能留个联系方式吗?
在2018年10月11日 15:19,godcok 写道: 图片解密已经完成,关键代码com.tencent.mm.modelcdntran.b.a(String,String,String,String,String[],String[], int,boolean,String,String,String,int,int,int),下载后直接调用MMBitmapFactory.decodeStream就可以获取bitmap,鄙视那些解密了不分享,还跑这里来炫耀装逼,最恶心的是还有人拿着作者这个项目去卖钱,不要脸 ,有问题可以联系我 — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

@Jungle68
Copy link

希望分享解码代码,你搞定了吗?你测试了吗?样本是哪个版本的微信? 在2018年10月11日 15:19,godcok 写道: 图片解密已经完成,关键代码com.tencent.mm.modelcdntran.b.a(String,String,String,String,String[],String[], int,boolean,String,String,String,int,int,int),下载后直接调用MMBitmapFactory.decodeStream就可以获取bitmap,鄙视那些解密了不分享,还跑这里来炫耀装逼,最恶心的是还有人拿着作者这个项目去卖钱,不要脸 ,有问题可以联系我 — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

加Q了,同意下,287616...

@diylcy
Copy link

diylcy commented Mar 22, 2019

wxpc解密稳定运行,随时可测。
qq83474196

@Jungle68
Copy link

@diylcy

wxpc解密稳定运行,随时可测。
qq83474196

@diylcy 加q了,同意下,287616

@z-houbin
Copy link

z-houbin commented Dec 3, 2019

贴一段Xposed 708 版本的取图代码

private Bitmap getImage(Object bfn) {
    Class aoClass = mainHook.loadClass("com.tencent.mm.plugin.sns.model.ao");
    Class agClass = mainHook.loadClass("com.tencent.mm.plugin.sns.model.ag");
    Object v4 = XposedHelpers.callStaticMethod(aoClass, "hm", XposedHelpers.callStaticMethod(agClass, "getAccSnsPath"), XposedHelpers.getObjectField(bfn, "Id"));
    Logs.e("v4--->" + v4);
    Class kClass = mainHook.loadClass("com.tencent.mm.plugin.sns.data.k");
    Object v5 = XposedHelpers.callStaticMethod(kClass, "e", bfn);
    Logs.e("v5--->" + v5);
    Object n = XposedHelpers.callStaticMethod(kClass, "acg", v4.toString().concat(v5.toString()));
    if (n == null) {
        return null;
    }
    return (Bitmap) XposedHelpers.getObjectField(n, "bitmap");
}

@yangfan069
Copy link

贴一段Xposed 708 版本的取图代码

private Bitmap getImage(Object bfn) {
    Class aoClass = mainHook.loadClass("com.tencent.mm.plugin.sns.model.ao");
    Class agClass = mainHook.loadClass("com.tencent.mm.plugin.sns.model.ag");
    Object v4 = XposedHelpers.callStaticMethod(aoClass, "hm", XposedHelpers.callStaticMethod(agClass, "getAccSnsPath"), XposedHelpers.getObjectField(bfn, "Id"));
    Logs.e("v4--->" + v4);
    Class kClass = mainHook.loadClass("com.tencent.mm.plugin.sns.data.k");
    Object v5 = XposedHelpers.callStaticMethod(kClass, "e", bfn);
    Logs.e("v5--->" + v5);
    Object n = XposedHelpers.callStaticMethod(kClass, "acg", v4.toString().concat(v5.toString()));
    if (n == null) {
        return null;
    }
    return (Bitmap) XposedHelpers.getObjectField(n, "bitmap");
}

厉害!!

@yangliangguang
Copy link

贴一段Xposed 708 版本的取图代码

private Bitmap getImage(Object bfn) {
    Class aoClass = mainHook.loadClass("com.tencent.mm.plugin.sns.model.ao");
    Class agClass = mainHook.loadClass("com.tencent.mm.plugin.sns.model.ag");
    Object v4 = XposedHelpers.callStaticMethod(aoClass, "hm", XposedHelpers.callStaticMethod(agClass, "getAccSnsPath"), XposedHelpers.getObjectField(bfn, "Id"));
    Logs.e("v4--->" + v4);
    Class kClass = mainHook.loadClass("com.tencent.mm.plugin.sns.data.k");
    Object v5 = XposedHelpers.callStaticMethod(kClass, "e", bfn);
    Logs.e("v5--->" + v5);
    Object n = XposedHelpers.callStaticMethod(kClass, "acg", v4.toString().concat(v5.toString()));
    if (n == null) {
        return null;
    }
    return (Bitmap) XposedHelpers.getObjectField(n, "bitmap");
}

厉害厉害 能具体点更好

@z-houbin
Copy link

贴一段Xposed 708 版本的取图代码

private Bitmap getImage(Object bfn) {
    Class aoClass = mainHook.loadClass("com.tencent.mm.plugin.sns.model.ao");
    Class agClass = mainHook.loadClass("com.tencent.mm.plugin.sns.model.ag");
    Object v4 = XposedHelpers.callStaticMethod(aoClass, "hm", XposedHelpers.callStaticMethod(agClass, "getAccSnsPath"), XposedHelpers.getObjectField(bfn, "Id"));
    Logs.e("v4--->" + v4);
    Class kClass = mainHook.loadClass("com.tencent.mm.plugin.sns.data.k");
    Object v5 = XposedHelpers.callStaticMethod(kClass, "e", bfn);
    Logs.e("v5--->" + v5);
    Object n = XposedHelpers.callStaticMethod(kClass, "acg", v4.toString().concat(v5.toString()));
    if (n == null) {
        return null;
    }
    return (Bitmap) XposedHelpers.getObjectField(n, "bitmap");
}

厉害厉害 能具体点更好

好久没碰这个了,bfn搜类名就有了,关键函数加断点看堆栈就明白流程了

@704480904
Copy link

得到了一个这种地址的图片,总是返回 400 bad request,有谁知道怎么打开么? http://mmsns.qpic.cn/mmsns/1QGfF3jLt8cDxZwEQgFmL5TaIJam0mTEibibf1Ccx69eNpY36ECYbSQ6MDicwEHNVaxgSgvIYKzcjY/0

俺也一样!想问下你解出来了没,token去哪里搞?

@colarking
Copy link

http://shmmsns.qpic.cn/mmsns/5ibsJX2nXa2b8xT0mdEAq4okiaWBUb5KhF1QIcmmsXUZ4qM7KUCyQ8nlU7sHtfiaO57Fgoqd47Luj8/0
有大神能fix了吗?
我拿到了url跟urlToken;parentClassName=com.tencent.mm.protocal.protobuf.ecd,fieldName=txt,field=http://shmmsns.qpic.cn/mmsns/LkvP9YcCHtPwaq1FlH0lgVA3WcYHib0mNq44Ucv19KC03lNdFnttt1NQEPSSSbEP4uTPwHXKCVQY/0
parentClassName=com.tencent.mm.protocal.protobuf.ecd,fieldName=urlToken,field=r3MUdKBTQtokBVGyMoJg7qz1zGmgBLI6WBZBuciaIUAkrtR027qv7qPm6o7icZq47B2tewBdEhYpTB1kOT77GWNQ

@yangliangguang
Copy link

yangliangguang commented Jul 28, 2023 via email

@yangliangguang
Copy link

yangliangguang commented Nov 15, 2023 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests