Vigil: przegląd bezpieczeństwa Maca w dwie sekundy
Jedno okno pokazuje, czy Mac ma włączone najważniejsze zabezpieczenia, które aplikacje mają dostęp do kamery, mikrofonu i ekranu oraz co uruchamia się samo.
- 5grup kontroli: ochrona, logowanie, udostępnianie, uprawnienia, autostart
- ~2 sna pełny przegląd
- 0zmian w systemie i haseł administratora
Wyzwanie
Najważniejsze ustawienia bezpieczeństwa macOS są rozrzucone po kilkunastu miejscach Ustawień systemowych i poleceniach Terminala. Zwykły użytkownik nie sprawdzi ich wszystkich, a narzędzia, które to robią, często same chcą pełnych uprawnień albo wysyłają dane na zewnątrz.
Mój zakres
Cały projekt: pomysł, kod, dokumentacja i wydanie.
Co zrobiłem
- Ochrona: FileVault, zapora, SIP, Gatekeeper, automatyczne poprawki bezpieczeństwa i świeżość definicji XProtect.
- Logowanie i udostępnianie: blokada ekranu, automatyczne logowanie, konto gościa, zdalne logowanie, udostępnianie ekranu i plików, AirDrop oraz aplikacje, które nasłuchują w sieci.
- Uprawnienia: odczyt baz TCC tylko do odczytu, żeby pokazać, kto ma pełny dostęp do dysku, nagrywanie ekranu, kamerę i mikrofon.
- Autostart: każdy agent i demon jest sprawdzany przez Security framework (SecStaticCodeCheckValidity), tym samym API, którego używa Gatekeeper. Podpisy ad hoc i uszkodzone są oznaczane.
- Przy każdej uwadze przycisk otwiera właściwe miejsce w Ustawieniach. Jest też tryb tekstowy --report do Terminala.
Bezpieczeństwo
Każda kontrola korzysta z publicznego polecenia macOS albo czyta plik, nic nie działa jako root. Aplikacja nie zapisuje zmian, nie prosi o hasło administratora i nie łączy się z siecią. README opisuje źródło każdej kontroli i ograniczenia narzędzia, np. że nie jest antywirusem.
Efekt
- Wydanie v1.0 na licencji MIT, wersja uniwersalna dla Apple Silicon i Intel, macOS 14 lub nowszy.
Technologie
Swift, SwiftUI, Security framework, SQLite (tylko do odczytu), launchctl, lsof, fdesetup, spctl, csrutil
