-
-
[原创]某宝千牛浏览器开启远程调试
-
发表于:
2023-9-1 14:07
12910
-
Chrome 的远程调试端口一般可以通过命令行参数进行开启, --remote-debugging-port=9222。但千牛的浏览器是通过程序代码启动的,加命令行参数行不通。
1. 查看安装目录有 libcef.dll 文件,标出了 cef 的版本,文件大小有 127 MB,cef 大部分的代码应该都在这里。数字签名是淘宝的,应该经过了重新编译。
2. 直接上 x32 dbg,调试 AliWorkbench.exe,会出现反调试,程序会退出。使用 x32 dbg 的 调试——》高级——》隐藏调试器(PEB)也不行。
3. 打开 ProcessExplorer ,查看程序的命令行参数,看到 AliApp.exe 进程的命令行参数,有点眼熟,像是传给 cef 的。
4. 通过调试知道千牛是使用 C++ 写的,然后就去搜索 C++ 的 cef 的源代码,在这里找到了
https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding,然后 clone 一份到本地。
5.使用 notepad++ 打开, Open Folder as Workspace,右击根目录搜索 remote_debugging_port,成功搜到一个地方,并且只有这一个地方是赋值的。
6. 如果能在内存当中定位到这个地方,事情就简单了。这个赋值的前后没有一些字符串可以搜索,只有大段的 cef_string_set,通过搜索 cef_string_set,定位到了 3 个宏定义。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
最后于 2023-9-12 15:45
被kanxue编辑
,原因: