Zoom for Mac 4.6.9 、これは 怖いセキュリティ上の欠陥 に対処し、 disable-library-validation 資格を削除します。
同じリリースの仮想WebカメラアプリであるSnap Camera stopped working 。
仮想ウェブカメラの構築に使用する特定のAPIについてはよく知りませんが、CoreMediaIO
プラグインが含まれているようです。
> otool -L /Library/CoreMediaIO/Plug-Ins/DAL/SnapCamera.plugin/Contents/MacOS/SnapCamera
/Library/CoreMediaIO/Plug-Ins/DAL/SnapCamera.plugin/Contents/MacOS/SnapCamera:
libSnapCamera.dylib (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1452.23.0)
/System/Library/Frameworks/CoreMedia.framework/Versions/A/CoreMedia (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/CoreMediaIO.framework/Versions/A/CoreMediaIO (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo (compatibility version 1.2.0, current version 1.5.0)
/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1452.23.0)
/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
/System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 400.9.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.50.4)
好奇心から、他のいくつかの仮想Webカメラ- Iriun Webcam および EpocCam -を試しましたが、それらは同様に動作します。どちらにもCoreMediaIOプラグインがあり、どちらも最近のズームでは機能しません。
3つの仮想カメラはすべて、Microsoft Teamsで機能します。
> codesign -d --entitlements :- /Applications/Microsoft\ Teams.app/ |grep valid
Executable=/Applications/Microsoft Teams.app/Contents/MacOS/Teams
<key>com.Apple.security.cs.disable-library-validation</key>
これらはGoogleでも機能しますChrome(on this test page )。Chromeのヘルパーの少なくとも1人に次の資格があるようです:
codesign -d --entitlements :- /Applications/Google\ Chrome.app/Contents/Frameworks/Google\ Chrome\ Framework.framework/Versions/81.0.4044.92/Helpers/Google\ Chrome\ Helper\ \(Plugin\).app
Executable=/Applications/Google Chrome.app/Contents/Frameworks/Google Chrome Framework.framework/Versions/81.0.4044.92/Helpers/Google Chrome Helper (Plugin).app/Contents/MacOS/Google Chrome Helper (Plugin)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.Apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.Apple.security.cs.allow-unsigned-executable-memory</key>
<true/>
<key>com.Apple.security.cs.disable-library-validation</key>
<true/>
</dict>
</plist>
また、プラグインがアクティビティモニターのオープンファイルとポートに表示され、チームとChromeに属するいくつかのプロセスに対応していることにも気付きました。 (/Library/CoreMediaIO/Plug-Ins/DAL/SnapCamera.plugin/Contents/MacOS/SnapCamera
)
CoreMedia Virtual Webcamプラグインはどのように機能し、ライブラリ検証と本質的に競合しますか? (たとえば、許可されなくなった方法でカメラを使用するプロセスにライブラリをロードする)
Hardened Runtimeを実行せずにMacOSで仮想Webカメラを作成することはできなくなりましたか?
更新4/19:4.6.10のズームの changelog は「ズームは一時的に仮想カメラのサポートを削除しました。」と表示されます。彼らがそれを再び有効にするかどうか/どのようにして有効にするかを見てみるのは興味深いでしょう。 (おそらく、資格を必要なときにのみ使用されるヘルパープロセスに制限しますか?)
Catalina 10.15.5のMicrosoft Skype for MacOS(8.61.0.95)でも同じ問題が発生しました
私はに行くことによってこれを修正することができました
_
cd /Applications/Skype.app/Contents/Frameworks
_
allの署名を削除して、Skypeの.app部分、つまり.
_codesign --remove-signature Skype\ Helper.app
_
codesign --remove-signature Skype\ Helper\ \(GPU\).app
codesign --remove-signature Skype\ Helper\ \(Plugin\).app
codesign --remove-signature Skype\ Helper\ \(Renderer\).app
その後、Skypeを再起動します。
設定で、カメラを選択すると、CamTwistとCamTwist(2VUY)が表示されます。
同様の修正がズームでも機能します。
_codesign --remove-signature /Applications/zoom.us.app\
_