Permalink

Review: Little Snitch 4 · macOS Firewall (Gewinnspiel inside)

Über den Sinn oder Unsinn einer Software Firewall kann man sich vortrefflich streiten. Vor gut einem Jahr hatte ich mal einen passenden Artikel dazu verlinkt.

Fakt ist auf jeden Fall, dass derartige Tools nicht nur positive Seiten haben. Durch eine Kernel-Erweiterung hat die Software beispielsweise root-Rechte, was die potentielle Angriffsfläche eher vergrößert als minimiert.

01-Bildschirmfoto 2018-05-08 um 17.03.69-fs8

Ich möchte heute dennoch Little Snitch 4, die wohl bekannteste Software Firewall für den Mac, genauer vorstellen. Auf die Sinnfrage komme ich dann noch mal im Fazit am Ende dieser Review zurück 😉

Grundlagen

Little Snitch begleitet uns hier im Blog schon seit etlichen Jahren. Die letzte große Version wurde im September 2012 veröffentlicht und ist somit über fünf Jahre alt. Vor gut einem Jahr gab es dann erste Beta-Versionen zur neuen Version 4.0, die schlussendlich im Juli 2017 final veröffentlicht wurde.

Was macht die App überhaupt?

Einfach gesagt überwacht Little Snitch die Netzwerkaktivität des Macs. Das betrifft alle ein- und ausgehenden Verbindungen, die man auf unterschiedliche Weisen zulassen bzw. verbieten kann.

Die daraus resultierenden Regeln finden sich in der Little Snitch Konfiguration wieder. Dort können sie jederzeit angepasst oder deaktiviert werden. Dazu gibt es Profile, die auf Wunsch anhand des verbundenen WLANs (Stichwort: Hotspot) oder der geografischen Position des Macs automatisch gewechselt werden können. Über einen Leise-Modus, einer speziellen Betriebsart, läuft LS unauffällig und ohne Verbindungsalarme im Hintergrund.

02-Bildschirmfoto 2018-05-08 um 15.43.27-minishadow-fs8

Außerdem verfügt die App über einen Netzwerkmonitor, mit dem man den gesamten Datenverkehr der letzten Stunde für jeden laufenden Prozess, Server, Protokoll und Port analysieren und den Traffic über Snapshots auch aufzeichnen kann.

Was ist neu?

Generell ist es ja so, dass sich LS immer dann mit einem Verbindungsalarm meldet, sobald eine App oder ein Service auf das Internet zugreifen will. Die Alarme sind je nach Konfiguration in den LS Einstellungen mal mehr, mal weniger geschwätzig.

03-Bildschirmfoto 2018-05-08 um 17.02.69-fs8

Gerade bei der Ersteinrichtung von LS bzw. beim Starten einer neu installierten App (liest hier zufällig jemand von Adobe mit?!) können diese Alarme recht nervig sein.

Aus diesem Grund wurde der Leise Modus gründlich überarbeitet.

04-Bildschirmfoto 2018-05-08 um 16.09.16-fs8

Ist dieser spezielle Betriebsmodus aktiv, läuft LS unaufgeregt im Hintergrund und lässt alle Verbindungen zu (ausgenommen die, die per bestehender Regel schon verboten sind). Gleichzeitig werden jetzt aber alle auflaufenden Verbindungen in einer Liste im Netzwerkmonitor dokumentiert.

Die dort mit einem blauen Klippschalter gekennzeichneten Verbindungen kann man jetzt per Klick oder über ein Kontextmenü in Regeln umwandeln. Auf diese Art kann man eine Vielzahl von Verbindungsalarmen umgehen, um zu einem späteren Zeitpunkt in Ruhe eine Entscheidung zu treffen.

05-Bildschirmfoto 2018-05-08 um 15.69.69-minishadow-fs8

Auch der Netzwerkmonitor, der gerade schon in Ansätzen zu sehen war, wurde komplett neugestaltet.

Auf der linken Seite werden nun die Verbindungen und der Traffic der letzten Stunde angezeigt. Hier ist auch eine umfangreiche Suche integriert. In der Mitte findet sich eine Karte wieder, die in Echtzeit alle aktuellen und vergangenen Netzwerkverbindungen visualisiert. Dafür nutzt LS die geografische Position der IP-Adresse. Die angezeigten Orte müssen daher nicht immer zu 100% korrekt sein. Schlussendlich befindet sich auf der rechten Seite der Inspektor, der weiterführende Informationen zu allen laufenden oder dem gerade markierten Prozess anzeigt.

Teil dieses Inspektors ist der neue Recherche-Assistent, der zusätzlich auch in der Little Snitch Konfiguration und den Verbindungsalarmen verfügbar ist.

07-Bildschirmfoto 2018-05-08 um 17.02.53-fs8

Dahinter verbirgt sich im Prinzip ein Tool, dass es App-Entwicklern ermöglicht zusätzliche Informationen zur Regelerstellung bereitzustellen und ggf. Warnungen bei einer (eher ungewöhnlichen) Entscheidungsfindung auszugeben.

…we’ve introduced the Internet Access Policy (IAP) in Little Snitch 4. This allows third party app developers to bundle a policy file with their app that contains information about the Internet connections the app establishes and what purpose they serve. Little Snitch uses this information to help you decide whether to allow or deny a connection.

08-Bildschirmfoto 2018-05-08 um 17.14.19-fs8

Auch bei den etwas fortgeschrittenen Features hält LS Neuerungen parat.

So wird jede in LS mit Regeln vorsorgte App auf ihre Code-Signatur hin geprüft. Außerdem wird man vor Apps mit ungültiger oder (nach einem Update) veränderter Code-Signatur gewarnt, was schlussendlich der Sicherheit dient.

09-Bildschirmfoto 2018-05-08 um 17.45.24-minishadow-fs8 10-Bildschirmfoto 2018-05-08 um 17.28.69-fs8

Darüber hinaus wurde die Filtertechnik verbessert. Die Netzwerkfilter setzen jetzt auf Deep Packet Inspection, was deren Zuverlässigkeit erhöht bzw. ungewollte DNS-Sperren verhindert. Gerade wenn ein und dieselbe IP-Adresse mehreren Hostnamen zugeordnet ist (z.B. google.com vs. googleanalytics.com), ergeben sich nun Vorteile.

Nutzer des neuen MacBook Pro können sich zudem über die Unterstützung der Touch Bar freuen.

11a-Touch Bar Bild 2018-05-08 um 17.01.35-fs811b-Touch Bar Bild 2018-05-08 um 23.17.27-fs8 12-Bildschirmfoto 2018-05-08 um 17.02.07-fs8 Sonstiges

Von diesen größeren Veränderungen in LS4 abgesehen, gibt es auch wieder die etwas kleineren Features, die nicht unerwähnt bleiben sollen:

Nutzer von älteren Versionen der App werden sich über eine modernisierte Benutzeroberfläche freuen. Dazu kann man im Warn-Modus jetzt endlich auch einzelne Verbindungsalarme minimieren und die Entscheidung auf später verschieben. Außerdem kann man Regeln priorisieren, von vordefinierten Regeln für iCloud- und macOS-Diensten oder dem verbesserten Arbeiten mit Little Snitch Profilen profitieren.

13-Bildschirmfoto 2018-05-08 um 20.32.69-fs8

Preise und Verfügbarkeit

Little Snitch 4 wird ausschließlich über den Webstore seines österreichischen Entwicklers Objective Development Software GmbH verkauft. Eine Einzelplatzlizenz kostet 45 Euro. Dazu werden Mehrfach- sowie eine Familien-Lizenz zum Kauf angeboten.

Zum Testen steht eine kostenlose Demo bereit. Zur Installation wird OS X 10.11 El Capitan oder höher vorausgesetzt.

-> https://www.obdev.at/products/littlesnitch

tl;dr

Little Snitch ist ohne Frage auch in seiner vierten Version eine sehr gute Software Firewall, die im Vergleich zum Vorgänger an vielen Punkten verbessert wurde.

Das einzige offensichtliche Problem, das Little Snitch nach wie vor hat, sind die oft unklaren Auswirkungen von erstellten Regeln auf die Zukunft. Es kann nämlich durchaus vorkommen, dass irgendeine App oder ein Service (beispielsweise durch ein Update) von hier auf jetzt nicht mehr richtig funktioniert. Meiner Erfahrung nach sind dann meisten zu strikt gesetzte Regeln in LS ursächlich. Man muss also die bestehenden Regeln aufweichen, was hin und wieder zu einer sehr großzügigen Regelauslegung führt. In der Summe sind solche Anpassungen halt schade. Zumal der normale Endnutzer ohne eine entsprechende Suche bei Google & Co. oftmals gar nicht zu 100% entscheiden kann, ob eine Verbindung X für eine App lebensnotwendig ist oder nur den Zweck der Datenanalyse oder Werbung erfüllt. Gerade an diesem Punkt würde ich mir etwas mehr Führung durch Little Snitch wünschen.

Davon ab besteht natürlich das anfangs schon angesprochene (nicht sichtbare) Problem mit den root-Rechten der App. Ein potentieller Angreifer kann so im schlimmsten Fall die volle Kontrolle über Little Snitch und den Mac erhalten. Damit wird also genau das Gegenteil von dem erreicht, was man eigentlich von einer Firewall erwartet: die Absicherung des Systems bzw. die Reduzierung der Angriffsoberfläche.

Hinzu kommt, dass LS nur “gewollten” Netzwerkverkehr kontrollieren kann. Trojaner oder andere bösartige Softwareschnipsel, die ebenfalls mit root-Rechten unterwegs sind, können LS gewissermaßen blind machen bzw. den Netzwerkverkehr vor LS verstecken. Dagegen ist keine Software Firewall dieser Welt geschützt. Wer also ganz genau wissen möchte was sein Rechner im Internet treibt, muss den Netzwerkverkehr an seinem Router abfangen bzw. ihn dort kontrollieren.

Daher muss schlussendlich jeder für sich selbst entscheiden, ob die Kontrolle oder der Schutz vor Google Analytics & Co. wichtiger ist als potentielle Gefahren.

Gewinnspiel

Der österreichische Entwickler Objective Development Software GmbH hat aptgetupdateDE eine Lizenz von Little Snitch 4 für eine Verlosung zur Verfügung gestellt.

Zur Teilnahme kommt Gleam zum Einsatz, bei dem die folgenden optionalen und gleichwertigen Lose enthalten sind:

  • Frage beantworten
  • aptgetupdateDE bei Twitter folgen
  • Tweet zur Review bei Twitter retweeten
  • aptgetupdateDE bei Facebook besuchen
  • aptgetupdateDE bei Google+ besuchen

Die Auslosung findet Pfingstmontag, den 21.05.2018, statt. Viel Glück!

Permalink

Antivirus als Spionage-Tool

Moderne Antivirus-Software schickt lokal gefundene Malware zur weiteren Analyse an den Server des AV-Herstellers. Durch passende Signatur-Updates kann man damit jedoch auch heimlich nach beliebigen Daten suchen und diese unbemerkt herausschleusen.

Wissenswert 😊

Permalink

root-Benutzer auf Ihrem Mac aktivieren

Aus gegebenen Anlass sollte jeder Nutzer von macOS High Sierra ein Passwort für den root Nutzer setzen.

Der derzeit viel diskutierte Bug, bei dem man sich problemlos als „root“ ohne Passwort am Mac einloggen und so Veränderungen am System vornehmen kann, ist übrigens nicht ganz so neu.

Vor gut zwei Wochen wurde darüber schon in Apples Forum ausgiebig diskutiert. Bei Apple fühlte man sich aber anscheinend, bis zu dem entscheidenden Tweet von gestern Abend, nicht zuständig… 😧

UPDATE 29.11.2017 19:00 Uhr

Apple hat mittlerweile reagiert und verteilt derzeit ein passendes Sicherheits-Update über den Mac App Store.

Permalink

Von Apple-Softwareprodukten verwendete TCP- und UDP-Ports

In diesem Artikel erhalten Sie Informationen über die von Apple-Produkten wie macOS, macOS Server, Apple Remote Desktop und iCloud verwendeten TCP- und UDP-Ports. Bei vielen davon handelt es sich um Ports, die dem gängigen Industriestandard entsprechen.

Wissenswert 😉

Außerdem sei erwähnt, dass man in der „deutschen Version“ leider (nach rechts bzw. links) scrollen muss, um die ganze Tabelle zu sehen. Daher hier der Link zum englischen Pendant.

Permalink

Howto: Per Shortcut in macOS Apps einloggen (mit Hilfe von 1Password und Keyboard Maestro)

Trotz aller Kontroversen bin ich nach wie vor ein sehr großer Fan des Passwortmanagers 1Password.

Vor etwas mehr als zwei Jahren hatte ich auf die verfügbaren Tastaturkürzel der App aufmerksam gemacht und gezeigt, wie man sich über 1Password mini relativ einfach in Webseiten und Apps einloggen kann.

Bildschirmfoto 2017-08-25 um 11.02.06-minishadow

Während das Einloggen auf Webseiten (meistens) mit einem nur einem Klick oder Sprachbefehl erledigt ist, sind zum Einloggen in eine App schon mehrere Schritte notwendig.

Um diesen Workflow abzukürzen, hatte unser geschätzter Kollege Alexander vor gut zwei Wochen ein erstes Video-Tutorial erstellt, in dem er erklärt, wie man sich mit Hilfe von Keyboard Maestro und nur einem Mausklick, einem Shortcut oder auch nur durch das Starten einer App in Accounts einloggen kann.

Damit dieses erste Tutorial problemlos funktioniert, muss 1Password mini allerdings ständig entsperrt sein. Ist es das nicht, was bei vielen Nutzern der Standardfall sein sollte, funktioniert das Makro nicht und man muss sich etwas Neues einfallen lassen. Das hat Alexander auch getan und mit Hilfe des Keyboard Maestro Forums eine Lösung gefunden, die auf nur einem einzigen AppleScript basiert 😲

use AppleScript version "2.4" -- Yosemite (10.10) or later
use framework "Foundation"
use scripting additions

on run
  set searchTerm to "icloud"

  tell application "System Events"
    set preClip to (the clipboard) as text
    set elements to every UI element whose creator type is "1Ph*"
    if elements is {} then
      log "1Password Mini is not running"
      return false
    end if
    set mini to (first item of elements)
    set miniName to short name of mini
    log miniName & " is running as " & name of mini
    set isLocked to my isOPMiniLocked(miniName)
    open location "x-onepassword-helper://search/" & searchTerm
    if isLocked then
      if not (my waitForUnlock(miniName, 10)) then
        return false
      end if
    end if
    tell its UI element (name of mini)
      set frontmost to true
      set i to 0
      repeat
        try
          if (focused of text field 1 of window 1) is true then
            tell text field 1 of window 1
              set value to searchTerm
              perform action "AXConfirm"
            end tell
            delay 1.0
            keystroke "c" using {command down, shift down}
            delay 0.5
            set thePass to (the clipboard) as text
            exit repeat
          end if
        end try
        delay 0.1
        set i to i + 1
        if i > 100 then
          return false
        end if
      end repeat
  
      tell application "App Store" to activate
      delay 0.5
      keystroke thePass
      key code 36
      set the clipboard to preClip
    end tell
  end tell
end run

on isOPMiniLocked(miniName)
  tell application "System Events"
    tell application process miniName
      perform action "AXPress" of menu bar item 1 of menu bar 1
      set isLocked to (subrole of text field 1 of window 1 is "AXSecureTextField")
      delay 0.1
      key code 53 -- Escape key to close 1PMini window
      if isLocked then
        log "1Password Mini is locked"
        return true
      end if
      log "1Password Mini is unlocked"
      return false
    end tell
  end tell
end isOPMiniLocked

on waitForUnlock(pProcessName, pMaxTimeSec)
  local startTime, elapTime, errMsg
  set startTime to current application's NSDate's |date|()
  log startTime
  tell application "System Events"
    repeat
      set elapTime to (-(round ((startTime's timeIntervalSinceNow()) * 100)) / 100.0)
      if (elapTime > pMaxTimeSec) then
        set errMsg to "Max Time of " & pMaxTimeSec & " seconds exceeded waiting for " & pProcessName
        log errMsg
        return false
      end if
      try
        set roleMode to (subrole of text field 1 of window 1) of (application process pProcessName)
        if roleMode is "AXSearchField" then
          return true
        end if
      end try
      delay 0.1
    end repeat
  end tell
end waitForUnlock

Ohne jetzt in die Tiefen des Codes einzusteigen, muss gesagt werden, dass dieses Skript nur bedingt universell verwendbar ist. Je nachdem in welche App man sich einloggen möchte, muss das AppleScript an zwei Stellen angepasst werden.

Zum einen direkt am Anfang bei der Suche nach dem in 1Password hinterlegten Login. Zum anderen bei der App, für die ein Login benötigt wird.

KM_Macro_Screenshot_2017-09-08 um 09.52.01_1300px

Ist nun alles gut?! Mitnichten, denn für Leute wie mich, die eines dieser neumodischen MacBook Pro mit Touch ID verwenden, funktioniert das AppleScript nicht; zumindest wenn man Touch ID zum Entsperren von 1Password verwendet.

Aber auch hier kamen Alexander und ich nach einigen Überlegungen zum Ziel: Keyboard Maestro hat nämlich den Vorteil, dass man Bedingungen an am Bildschirm angezeigte Fenster bzw. Grafiken knüpfen kann.

Somit ist das vorherige AppleScript jetzt in zwei Teile zerhackt, funktioniert aber auch mit Touch ID 😎

KM_Macro_Screenshot_2017-09-08 um 09.51.21_1300px 2

Auch hier gilt wieder: das Makro ist nicht universell verwendbar, sondern muss für jeden App-Login an drei Stellen angepasst werden. Zu den aus dem ersten AppleScript bekannten Stellen kommt jetzt noch eine Grafik hinzu, die den gefundenen Login in 1Password mini identifiziert.

Zum finalen Anzeigen bzw. Nutzen der verschiedenen Logins empfiehlt es sich auf die von Keyboard Maestro zur Verfügung gestellten globalen Makro Paletten zu setzen. Hier genügt dann im Endeffekt ein Mausklick und man ist in App X oder App Y eingeloggt.

Bildschirmfoto 2017-09-08 um 11.19.40

Um jetzt das ganze Prozedere besser nachverfolgen und auch live in Aktion sehen zu können, hatte Alexander vor ein paar Tagen ein zweites Video erstellt, das das erste Tutorial ergänzt bzw. aktualisiert.

Viel Spaß beim Anschauen 📼

Die beiden hier vorgestellten Makros können übrigens hier heruntergeladen werden.

Permalink

Apple-ID: Bestätigungscode der Zwei-Faktor-Authentifizierung von vierstellig auf sechsstellig ändern

Ich persönlich nutze die Zwei-Faktor-Authentifizierung (2FA) bei meiner Apple-ID schon sehr lange. So lange, dass der Bestätigungs- bzw. Überprüfungscode bei mir in seiner ursprünglichen Form noch vierstellig ist und ich für den Fall der Fälle einen 14-stelligen Recovery Code habe.

Möchte man das Ganze auf den seit ca. einem Jahr verfügbaren sechsstelligen Code umstellen, steht man zunächst vor einem kleinen Problem. Denn Apple bietet nirgendwo einen Schalter an, der diese Aktualisierung zulässt; Namenswirrwarr inklusive.

snipaste20170802_091635

Der einzige Ausweg ist tatsächlich das Deaktivieren und erneute Aktivieren der 2FA.

Zweistufige Bestätigung deaktivieren

Hierfür habe ich den Browser verwendet und mich zunächst einmal mit meiner Apple-ID angemeldet. Anschließend klickt man im Bereich Sicherheit die Schaltfläche Bearbeiten und wählt beim letzten Punkt Zweistufige Bestätigung deaktivieren aus.

Bildschirmfoto 2017-08-02 um 15.42.41_1300pxBildschirmfoto 2017-08-02 um 15.42.54

Anschließend muss man das Ganze bestätigen und drei neue Sicherheitsfragen beantworten.

Die Antworten sind in diesem Fall völlig irrelevant. Sie müssen nur mindestens drei Zeichen lang sein und sich voneinander unterscheiden.

Bildschirmfoto 2017-08-02 um 15.43.59_1300px

Zwei-Faktor-Authentifizierung aktivieren

Das Aktivieren des vormals Zweistufige Bestätigung und jetzt Zwei-Faktor-Authentifizierung genannten Features erfolgt nun auf dem iPhone, iPad, iPod touch oder Mac. Voraussetzung sind iOS 9  bzw. OS X El Capitan oder neuer.

Ein Aktivieren der 2FA im Browser ist nicht mehr möglich. Man bekommt nur die unten im Screenshot zu sehenden Informationen angezeigt.

Bildschirmfoto 2017-08-02 um 15.45.44_1300px

Das ganze Prozedere wird von Apple mit etlichen E-Mails an sämtlichen hinterlegten E-Mail Adressen (die eine von der Apple-ID plus E-Mail-Adressen zur Wiederherstellung) dokumentiert.

Zusätzlich muss man sich bei all seinen Geräten mit der Apple-ID neu einloggen und ggf. FaceTime und iMessage neu aktivieren.

IMG_3829_aguDE

Ergebnis

Neben der etwas veränderten Anzeige des nun sechsstelligen Bestätigungscodes, wird vorneweg auch noch der ungefähre Ort angezeigt, von dem aus der Zugriff stattfindet.

Außerdem wird der Code ab sofort auf allen vertrauenswürdigen Geräten gleichzeitig angezeigt. Man muss im Gegensatz zur zweistufigen Bestätigung das Gerät also nicht mehr auswählen. Der 14-stellige Recovery Code entfällt komplett.

Bildschirmfoto 2017-08-04 um 19.43.05_1300px

Anwendungsspezifische Passwörter

Hatte man übrigens mit der zweistufigen Bestätigung anwendungsspezifische Passwörter für irgendwelche Apps erstellt, müssen diese für die Zwei-Faktor-Authentifizierung neu generiert werden.

Hierzu ist wieder die Anmeldung mit der Apple-ID im Browser notwendig. Anschließend führt der Punkt Passwort erstellen… unter Sicherheit > Anwendungsspezifische Passwörter zum Ziel.

Bildschirmfoto 2017-08-04 um 15.54.48_1300px

Permalink

CHMOD Command Calculator: Zugriffsrechte richtig setzen

Kurzer Hinweis auf den CHMOD Command Calculator.

Dabei handelt es sich um eine kleine Webanwendung, mit der man auf recht einfache Art und Weise das passende Terminalkommando für gewünschte Zugriffsrechte für Dateien oder Verzeichnisse generieren lassen kann.

snipaste20170627_133740_1300px

Dazu kann man über Checkboxen und Schieberegler weitere Optionen anwählen; Tooltips helfen beim Verständnis.

-> https://chmodcommand.com

(via)