当前位置:主页 > 英国365bet体育在线 >
PC端微信的逆向分析
浏览: 发布日期:2019-02-10
最近一位朋友问我如何将libcef注入js,他谈到了libcef的小额信贷云。
经过一个愉快的下午后,我学会了如何注入js并发现我的朋友需要自动控制ui。
它立刻崩溃了....
确实,微信浏览器的某些功能使用了cef,但主界面是由duilib编写的。
在基金之间的关系就没有了,(libcef是启动浏览器并钩打包在qbcore.dll的.libcef导出功能,调用替换回来。)
主题可以追溯到在PC端获取微信自动控制UI信息和“控制”的方式。
下面是开头的截图,我不知道,请检查duilib的来源。
GetWindowLongPtr可以获取CWindowWnd指针
CWindowWnd指针== WindowImplBase指针
我会交出来的
static_castINotifyUI *(pWinImplBase)
转换INotifyUI指针后,通过虚函数地址表找到Notify指针。
最后,您可以使用通知指针监视所有duilib事件。
事件的结构允许pSender触发事件并检索稍后检索根节点的所有CControlUI。
在此结构被篡改后,可以直接调用原始的Notify回调来模拟接口的行为。
当每个xml创建一个CControlUI树时,将调用CDialogBu?? ?? ilder :: Create。
您可以通过挂钩此函数来获取根节点。
这是平衡容器节点的开始。如果父级是容器节点,则连接到父级。
一旦我们有了节点树,我们就需要列出所有节点。
看看这些虚函数非常好,不是很有用,?我正在考虑技术com
这个虚拟功能更漂亮(笑)。
被吸引到对我来说,你并不需要确定数量,你只会造成以确定它是否为NULL,就可以知道枚举是否已经完成。
该方案发布后,建议看到duilib源代码,计算机端的WeChat接口是由duilib编写的,基本的虚函数替换没有改变。虚拟功能)。
当然,由于一些结构已经改变,它不走这里,duilib消息流,请看看源代码。
以下是代码的一部分,请自行完成您的完整版本
最后,它是一个效果图像。
本文来自原始的通泽宇雪论坛。
转载请从雪社区展示。
热门阅读
打电话问题。2017安全开发者峰会
ARM在互联网上爆炸。
基本组装教程ARM - ARM组装概述
ARM基本组装教程 - 数据类型和记录
基本组装教程ARM - ARM指令集
CVE-2017-10661原理,触发分析
修改源代码以实现全局反注入注入检测(无根)
点击阅读/阅读原文,
更干的物品等着你?