Appleのコード署名APIに実際にAppleの証明書を利用していない署名が有効に見える不具合が確認されたそうです。詳細は以下から。
通常、開発者がmacOS/iOSプラットフォームでアプリを配布するさい、そのアプリが信頼できるものであることを証明するためにAppleが発行したコード署名証明書を利用しアプリに署名することで、開発したアプリをAppStoreで配布したり、Appleのセキュリティ機能であるGatekeeperでブロックされることなくユーザーに利用してもらうことが出来ますが、
Signing an application allows the system to identify who signed the application and to verify that the application has not been modified since it was signed. Signing is a requirement for submitting to the App Store (both for iOS and Mac apps). OS X and iOS verify the signature of applications downloaded from the App Store or the Mac App Store to ensure that they they do not run applications with invalid signatures. This lets users trust that the application was signed by an Apple source and hasn’t been modified since it was signed.
IDaaS(ID As a Service)を提供している米Okta, IncのセキュリティエンジニアJosh Pittsさんによると、Appleのコード署名APIには実際に正規のコード署名証明書を持っていないユーザーがコード署名APIを利用し署名しても、正規の署名がされたという表示されてしまう不具合があるそうです。
I found this interesting code signing bug in macOS. I took the 2011/2012 flashback malware and 'signed' it with a cert from Apple. VirusTotal and WhatsYourSign (@patrickwardle's @objective_see tool) both agree that it's signed by Apple. I have some bug reporting to do… 🤓 pic.twitter.com/vMb9SVSf8a
— Josh Pitts (@midnite_runr) 2018年2月21日
このバグにより、VirusTotalやWhatsYourSign、Little Flocker、Googleが現在開発中のSantaなど多くのセキュリティアプリが実際には正規の署名がされていないアプリでも、Appleが発行した正規のコード署名証明書を持って署名されたという誤った表示をしてしまうそうで、
Apple’s SecStaticCodeCheckValidity() API, when invoked with ‘kSecCSDefaultFlags’ flags, may incorrectly identify a file as being signed by Apple #fml (bug credit: Josh Pitts, aka @midnite_runr)
Vimeoより
WhatsYourSignを開発しているObjective-SeeのPatrick Wardleさんによると、この問題はAppleが提供している“SecStaticCodeCheckValidity() API”にあり、このAPIを利用したサードパーティ製のセキュリティアプリは誤った表示をしてしまうそうですが、幸いにもAppleのGatekeeperには影響がなく、PatrickさんはWhatsYourSignをv1.4.1ヘアップデートし、一時的にこの問題に対処したそうなのでユーザーの方はアップデートしてみて下さい。
the 'good news' is Apple's utils/defenses such as Gatekeeper & vm.cs_enforcement=1 aren't tricked….just basically every 3rd-party security tool 😭😭 Until Apple fixes this – don't invoke said API with 'kSecCSDefaultFlags' #ThanksApple #MacBugBounty!? #Kudos2Josh
— patrick wardle (@patrickwardle) 2018年2月22日
WhatsYourSign VERSION 1.4.1 (02/20/2018)
- now checks all architectures (in fat files)
- UI improvements
WhatsYourSign – Objective-See
- WhatsYourSign – Objective-See
コメント
えー、ダメじゃんw