Ako zobraziť & overenie podpisov kódu pre aplikácie v systéme Mac OS X

Obsah:

Anonim

Aplikácie s podpísaným kódom umožňujú používateľom uvedomujúcim si bezpečnosť overiť tvorcu a hash konkrétnej aplikácie, aby sa potvrdilo, že nebola poškodená alebo s ňou nemanipulované. Toto je zriedka potrebné pre priemerných používateľov počítačov Mac, najmä tých, ktorí získavajú svoj softvér z obchodu Mac App Store alebo iných dôveryhodných zdrojov, pretože aplikácie sú certifikované, ale overenie digitálneho podpisu aplikácie môže byť mimoriadne užitočné pre používateľov, ktorí získavajú aplikácie od tretích strán. zdrojov.

Overenie podpisu kódu je obzvlášť dôležité pre tých, ktorí získavajú softvér a inštalačné programy z p2p a distribuovaných zdrojov, napríklad z torrentu alebo diskusných skupín, IRC, verejného ftp alebo iného sieťového zdroja. Pre praktický príklad povedzme, že používateľ nemá z akéhokoľvek dôvodu prístup do obchodu Mac App Store, ale potrebuje si stiahnuť inštalačný program Mac OS X, a preto sa spolieha na zdroj tretej strany. Takáto situácia nastáva, keď by bolo dôležité vedieť a overiť, že s inštalátorom nebolo manipulované a že legitímne pochádza od spoločnosti Apple, a okrem priamej kontroly sha1 hash je najjednoduchším spôsobom, ako to urobiť, skontrolovať podpis kódu a kryptografický hash príslušnej aplikácie.

Ako skontrolovať podpis kódu pre aplikácie na Mac

Ak chcete začať, spustite Terminál, ktorý nájdete v /Applications/Utilities/. Na zobrazenie identifikačných informácií o akejkoľvek aplikácii, vrátane jej typu hash, kontrolného súčtu hash a podpisového oprávnenia, použijeme vhodne pomenovaný príkaz „codesign“ doplnený príznakmi -dv a –verbose=4.

Základná syntax je nasledovná:

codesign -dv --verbose=4 /Path/To/Application.app

Napríklad skontrolujte podpis na Terminal.app, ktorý sa nachádza v /Applications/Utilities/

codesign -dv --verbose=4 /Applications/Utilities/Terminal.app Executable=/Applications/Utilities/Terminal.app/Contents/MacOS/Terminal Identifier=com.apple.Terminal Format=bundle with Mach-O thin (x86_64) CodeDirectory v=20100 size=5227 flags=0x0(none) hash=255+3 location=embedded Platform identifier=1 Hash type=sha1 size=20 CDHash=0941049019f9fa3499333fb5b52b53735b498aed6cde6a23 Veľkosť podpisu=4105 Authority=Autorita na podpisovanie softvéru=Autorita certifikácie na podpisovanie kódu Apple size=Koreňová CA Apple Info.plist entries=34 TeamIdentifiers6=nenastavené 3 pravidlá=Zapečatené súbory=9 Zapečatené súbory

To, čo hľadáte, sú typ hash, hash a položky oprávnenia. V tomto prípade je typ hash sha1 a podpísaná autorita je Apple, čo by ste očakávali.

Áno, môžete tiež použiť príkazový riadok na kontrolu sha1 alebo md5 hash inštalátorov aplikácií a stiahnutí a porovnať ich s legitímnym zdrojom, ale neprezradí to podpis kódu a podrobnosti o certifikáte.

Majte na pamäti, že väčšinu softvéru s kódom podpísaným, ktorý bol upravený neoprávnenou stranou, odmietne Gatekeeper v systéme Mac OS X, pokiaľ Gatekeeper nebol zakázaný alebo inak obídený, ale aj keď je Gatekeeper ponechaný na ňom Teoreticky je možné, aby to podnikavý podvodník našiel cestu, a samozrejme softvér, ktorý nebol certifikovaný identifikovaným vývojárom, môže byť vždy spustený okolo Gatekeepera.

O podpisovaní kódu sa dozviete na Wikipédii a v príručke Apple Developer pre podpisovanie kódu tu.

Kontrolujete niekedy, či sú aplikácie podpísané? Môže to byť platný spôsob, ako určiť, aké sú niektoré procesy a aplikácie, a tiež môže byť užitočný pri riešení problémov. Skúste to nabudúce, keď vás bude zaujímať, čo to je a či je to podpísané alebo nie!

Ako zobraziť & overenie podpisov kódu pre aplikácie v systéme Mac OS X