macOS 调试任意webview

关于iOS 调试任意webview 可以参考 Tweak 全局开启任意 App 的 WebView 调试
本篇参考该文章,重点说一下不同。macOS WeChat不允许调试webview,其中的entitlements如下





    com.apple.security.device.camera
    
    com.apple.developer.team-identifier
    5A4RE8SF68
    com.apple.security.device.microphone
    
    com.apple.application-identifier
    5A4RE8SF68.com.tencent.xinWeChat
    com.apple.security.network.client
    
    com.apple.security.files.user-selected.read-write
    
    com.apple.security.app-sandbox
    
    com.apple.security.application-groups
    
        5A4RE8SF68.com.tencent.xinWeChat
    
    com.apple.security.network.server
    
    com.apple.security.files.downloads.read-write
    


虾米音乐macOS 客户端允许调试,entitlements如下





    com.apple.application-identifier
    597MX98Y4L.com.xiami.client
    com.apple.developer.team-identifier
    597MX98Y4L
    com.apple.security.app-sandbox
    
    com.apple.security.get-task-allow
    


可以发现虾米音乐中多了com.apple.security.get-task-allow。在macOS中也有名为webinspectord的daemon,webinspectord中与iOS相比唯一的不同就是函数名为RWIRelayDelegateMac,该函数位于/System/Library/PrivateFrameworks/WebInspector.framework/Versions/A/WebInspector库中。其中函数也是_allowApplication:bundleIdentifier:,通过frida hook webinspectord进程会报错,这是因为SIP,如果想通过hook的方式修改只能关闭SIP。

ps:先打开safari再启动被调试程序

你可能感兴趣的:(macOS 调试任意webview)