Modifica TCC.db per bypassare "'Foo.app' vuole accedere al controllo 'Bar.app'" sulla propria macchina

9

Uso estensivamente Apple Event per controllare un'ampia varietà di applicazioni sulla mia macchina. I nuovi messaggi di sicurezza introdotti in Mojave sono paralizzanti .

NelleversioniprecedentidimacOS,unavoltacheaun'appvenivaconcessal'autorizzazioneper"controllare il tuo computer", era in grado di inviare eventi Apple a qualsiasi altra app sul tuo computer. In Mojave, questa autorizzazione deve essere concessa manualmente una volta per ogni app controllata.

Una volta che un utente concede l'accesso, la sua selezione viene archiviata in uno dei due database sqlite:

  1. ~/Library/Application Support/com.apple.TCC/TCC.db
  2. /Library/Application Support/com.apple.TCC/TCC.db

    • Si noti che # 2 è visibile solo all'utente root.
    • Tieni presente che System Integrity Protection è disattivato.

Sarebbe possibile modificare questi database SQLite direttamente o indirettamente  per concedere automaticamente le autorizzazioni e ignorare questi messaggi di sicurezza?

    
posta Wowfunhappy 13.10.2018 - 23:49
fonte

2 risposte

6

Per accedere direttamente al database TCC.db non è più supportato da Apple, anche se disabiliti SIP , a causa della loro politica di protezione degli utenti dalle grandi aziende che amano tenere traccia di tutto ciò che fai online, e anche usato per fare questo bypass furtivo senza chiedere il permesso agli utenti. Tuttavia, anche a Mojave, c'è un modo per aggirare questo problema, ma con una presa: che funziona solo se un determinato computer è iscritto in un programma MDM . Per saperne di più sul programma MDM, vai qui .

Per aggirare questo problema per diversi computer, puoi utilizzare lo script python tccprofile.py disponibile su GitHub .

È possibile trovare una discussione approfondita su ciò che puoi o non puoi fare qui .

Per quanto ne so, questo è l'unico modo per evitare la necessità di chiedere il permesso dell'utente da Mojave in poi.

    
risposta data 15.11.2018 - 03:48
fonte
2

Ho trovato questo:

sudo sqlite3 /Library/Application\ Support/com.apple.TCC/Tcc.db 'delete from access where client like "%appnamehere%"'

Replace "appnamehere" with the name of the app as it appears in the Accessibility list (keep the % signs).

    
risposta data 14.11.2018 - 22:20
fonte

Leggi altre domande sui tag