it-swarm.com.de

Wie kann ein Administrator gegen einen Tag sichern, bevor Patches verfügbar sind?

Ich arbeite an einer Arbeit über die Security-Hacker-Community.

Wie kann ein Administrator bei der Veröffentlichung eines 0-Tages seine Anwendung/Website zwischen der Veröffentlichung des 0-Tages und der Entwicklung des Patches sichern?

Darüber hinaus wird dieser 0-Tag meistens monatelang von Blackhats verwendet. Sind die Blackhats also vor Whitehats?

29
K.Fanedoul

Die Person, die ein Sicherheitsproblem entdeckt, meldet es häufig zuerst dem Softwareanbieter oder Entwickler. Dies gibt dem Softwareanbieter Zeit, das Problem vor der Veröffentlichung zu beheben. Nachdem es behoben wurde, wird der Fehler öffentlich bekannt gegeben. Dieser Prozess heißt verantwortliche Offenlegung .

Manchmal gibt jemand den Zero-Day nicht an den Softwareanbieter weiter, sondern verwendet ihn, um andere Systeme zu hacken. Dies kann Sicherheitsfirmen einen Hinweis geben und den Fehler Brennen des Zero-Day aufdecken.

Ich glaube nicht, dass Ihre Aussage "die meiste Zeit wird derselbe Tag monatelang von schwarzen Hüten verwendet" ist wahr. Dies gilt für einige Sicherheitsprobleme, aber viele Zero-Day-Fehler werden zum ersten Mal von White-Hat-Hackern gefunden. Ich würde nicht sagen, dass Black-Hat-Hacker White-Hat-Hackern voraus sind. Beide finden Sicherheitsprobleme und einige davon überschneiden sich. Die Offensive hat es jedoch einfacher als die Verteidigung, da die Offensive nur einen Fehler finden muss und die Verteidigung all die Bugs beheben muss.

44
Sjoerd

Wie kann ein Administrator bei der Veröffentlichung eines 0-Tages seine Anwendung/Website zwischen der Veröffentlichung des 0-Tages und der Entwicklung des Patches sichern?

Sie verwenden temporäre Problemumgehungen, bis ein Patch verfügbar ist.

Wenn Nachrichten über einen 0-Tag veröffentlicht werden, werden häufig verschiedene Problemumgehungen veröffentlicht, die den Exploit unterbrechen, indem einige Voraussetzungen für den Missbrauch der Sicherheitsanfälligkeit beseitigt werden. Es gibt viele Möglichkeiten:

  • Durch Ändern einer Konfigurationseinstellung können anfällige Funktionen deaktiviert werden.

  • Das Deaktivieren anfälliger Dienste kann, wenn dies praktikabel ist, die Ausnutzung verhindern.

  • Das Aktivieren nicht standardmäßiger Sicherheitsmaßnahmen kann den Exploit unterbrechen.

Jeder Fehler ist anders und jede Schadensbegrenzung ist anders. Ein Administrator mit einem guten Sicherheitsverständnis kann Problemumgehungen selbst herausfinden, wenn ausreichende Details zur Sicherheitsanfälligkeit veröffentlicht werden. Die meisten Administratoren lesen jedoch die vom Softwareanbieter veröffentlichten Sicherheitshinweise.

Manchmal muss ein Administrator nichts tun . Dies kann der Fall sein, wenn die Sicherheitsanfälligkeit nur eine nicht standardmäßige Konfiguration oder eine Konfiguration betrifft, die nicht auf ihren Systemen festgelegt ist. Beispielsweise muss eine Sicherheitsanfälligkeit im DRM-Videosubsystem für Linux einen Systemadministrator mit einem LAMP-Stack nicht beunruhigen, da seine Server ohnehin kein DRM verwenden. Eine Sicherheitslücke in Apache könnte etwas sein, über das sie sich Sorgen machen sollten. Ein guter Systemadministrator weiß, was ein Risikofaktor ist und was nicht.

Darüber hinaus wird dieser 0-Tag meistens monatelang von Blackhats verwendet. Sind die Blackhats also vor Whitehats?

Whitehats sind anspruchsvoller, aber Blackhats sind effizienter.

Ob Blackhats Whitehats voraus sind oder nicht, ist eine sehr subjektive Frage. Blackhats verwenden alles, was funktioniert. Dies bedeutet, dass ihre Exploits effektiv, aber schmutzig und manchmal ungekünstelt sind. Während es beispielsweise möglich ist, das ASLR-Layout eines Browsers über Seitenkanalangriffe zu ermitteln, wird dies in freier Wildbahn nicht wirklich verwendet, da bereits allgegenwärtige, nicht anspruchsvolle ASLR-Bypässe vorhanden sind. Whitehats hingegen müssen sich Korrekturen ausdenken und den Softwareanbieter dazu bringen, den Bericht ernst zu nehmen. Dies wirkt sich nicht in nahezu gleichem Maße auf Blackhats aus, da sie häufig von ihrer Entdeckung profitieren können, sobald sie es schaffen. Sie müssen nicht auf einen Dritten warten.

Nach meiner eigenen Erfahrung haben Blackhats oft einen signifikanten Vorteil. Dies liegt hauptsächlich daran, dass die gegenwärtige Kultur unter Whitehats darin besteht, einzelne Käfer zu jagen und zu quetschen. Es wird weniger Wert darauf gelegt, ganze Klassen von Fehlern zu unterdrücken, und wenn dies der Fall ist, werden unterdurchschnittliche und überhypte Schadensbegrenzungen erstellt (wie bei KASLR). Dies bedeutet, dass Blackhats 0 Tage schneller abpumpen können, als sie gepatcht werden können, da der Angriffsfläche und den Ausnutzungsvektoren, die weiterhin verwendet und wiederverwendet werden, so wenig Aufmerksamkeit geschenkt wird.

34
forest

Wenn ein Zero-Day veröffentlicht oder veröffentlicht wird, enthält er mehr als nur einen ausgefallenen Namen und ein Symbol. Es gibt Details darüber, wie der Zero-Day verwendet wird, um das System auszunutzen. Diese Details bilden die Grundlage für die Antwort des Verteidigers, einschließlich der Art und Weise, wie der Patch entworfen werden muss.

Zum Beispiel wurde mit WannaCry/ EternalBlue die Sicherheitsanfälligkeit von NSA) gefunden und das Wissen für sich behalten (dasselbe passiert in der kriminellen Gemeinschaft, in der Sicherheitsanfälligkeiten auftreten können auf dem Schwarzmarkt gehandelt). Die Details wurden durchgesickert, was Microsoft darüber informierte, wie der Patch erstellt wird, und es informierte Administratoren darüber, wie sie sich dagegen verteidigen können: Deaktivieren Sie SMBv1 oder blockieren Sie zumindest den Port SMB from) das Internet.

So schützen sich Administratoren. Das Patchen ist nur ein Teil des "Schwachstellenmanagements". Es gibt viele Dinge, die ein Administrator tun kann, um Schwachstellen zu verwalten, selbst wenn er dies nicht kann oder will Patch.

Im Fall WannaCry hat der NHS nicht gepatcht, aber er hat auch nicht die anderen Verteidigungen eingesetzt, die sich selbst geschützt hätten.

Ein großer Teil meiner Arbeit besteht darin, Schwachstellen für Systeme zu entwickeln, die aus verschiedenen geschäftlichen Gründen nicht gepatcht werden können. Patchen ist im Allgemeinen die bessere Lösung, aber manchmal ist es zum Zeitpunkt des Pattens einfach nicht möglich.

... sind die Blackhats vor Whitehats?

Das ist ein interessantes Problem. Wenn ein Blackhat ein Problem findet und es nur mit anderen Blackhats (oder anderen Mitgliedern der Geheimdienstgemeinschaft) teilt, bedeutet das, dass Blackhats, insgesamt, Whitehats voraus sind? Ja. Sobald ein Zero-Day ausgesetzt ist, verliert er seine Kraft (das ist der springende Punkt bei der Offenlegung). Also, um es geheim zu halten, gibt es Kraft.

Sind Blackhats besser ausgebildet oder verwenden sie bessere Techniken als Whitehats? Nein. Aber die gemeinsamen Geheimnisse geben Blackhats insgesamt mehr Macht.

10
schroeder

Wie kann ein Weißer, der einen 0-Tag veröffentlicht, seine Anwendung/Website zwischen der Veröffentlichung des 0-Tages und der Entwicklung des Patches sichern?

Manchmal gibt es Problemumgehungen, die das Problem beheben oder mindern.

  • Manchmal können Sie eine Funktion deaktivieren oder eine Einstellung in der Software ändern, wodurch der Exploit nicht mehr funktioniert. Zum Beispiel könnte eine Infektion mit dem Morris Worm von 1988 verhindert werden, indem ein Verzeichnis /usr/tmp/sh Erstellt wird. Dies verwirrte den Wurm und verhinderte, dass er funktionierte.
  • Manchmal erfordert der Exploit eine Art Benutzerinteraktion. In diesem Fall können Sie die Benutzer warnen, dies nicht zu tun. (" Öffnen Sie keine E-Mails mit der Betreffzeile ILOVEYO "). Aber weil Menschen Menschen sind, ist dies normalerweise keine sehr zuverlässige Problemumgehung.
  • Manchmal ist der Angriff im Netzwerk leicht zu identifizieren, sodass Sie ihn mit einer mehr oder weniger komplizierten Firewall-Regel blockieren können. Der Conficker-Virus zielte beispielsweise auf eine Sicherheitsanfälligkeit im Windows Remote Procedure Call-Dienst ab. Es gibt normalerweise keinen Grund, auf diese Funktion von außerhalb des lokalen Netzwerks zuzugreifen. Daher war es möglich, ein gesamtes Netzwerk zu schützen, indem einfach externe Anforderungen an Port 445 TCP blockiert wurden.
  • Manchmal ist es sinnvoll, die anfällige Software durch eine Alternative zu ersetzen. Unsere Organisation installiert beispielsweise zwei verschiedene Webbrowser auf allen Windows-Clients. Wenn einer von ihnen eine bekannte Sicherheitsanfälligkeit aufweist, können die Administratoren diese über Gruppenrichtlinien deaktivieren und die Benutzer anweisen, den anderen zu verwenden, bis der Patch veröffentlicht wird.
  • Als letzten Ausweg können Sie einfach den Stecker auf den anfälligen Systemen ziehen. Ob die nicht verfügbaren Systeme mehr oder weniger Schaden verursachen als online und offen für Exploits, ist eine geschäftliche Überlegung, die Sie im Einzelfall bewerten müssen.

Aber manchmal ist keines davon eine praktikable Option. In diesem Fall können Sie nur hoffen, dass es bald einen Patch gibt.

Darüber hinaus wird derselbe Tag meistens monatelang von Blackhats verwendet. Sind die Blackhats also vor Whitehats?

Es kommt ziemlich häufig vor, dass Entwickler/Whitehats eine mögliche Sicherheitslücke in ihrer Software entdecken und diese patchen, bevor sie ausgenutzt wird. Der erste Schritt zur verantwortungsvollen Offenlegung besteht darin, die Entwickler zu informieren, damit sie die Sicherheitsanfälligkeit beheben können, bevor Sie sie veröffentlichen.

Aber davon hört man normalerweise in den Medien nichts. Wenn Punkt 59 der Patchnotizen für SomeTool 1.3.9.53 "Möglicher Pufferüberlauf bei der Verarbeitung fehlerhafter Foobar-Dateien behoben" lautet, ist dies normalerweise nicht besonders aktuell.

6
Philipp

Eine weitere wichtige Verteidigung ist die Überwachung und Kenntnis Ihres Systems.

Wo sind deine wertvollen Geheimnisse und wer hat Zugang zu ihnen?.

Wenn jemand versucht, über Port 80 eine Verbindung zu Ihrem Mailserver herzustellen, wird die rote Flagge angezeigt.

Warum sendet der Mailserver plötzlich Datenverkehr an eine ungewöhnliche IP-Adresse?.

Der Mailserver hat jetzt 10x den Verkehr warum?

Überwachen Sie Personen, die eine Verbindung zu den Adressen Ihrer externen IP herstellen. Löschen und/oder blockieren Sie alle externen Ports und Protokolle, die nicht verwendet werden.

Kein legitimer Benutzer wird auf etwas anderem als 80 oder 443 eine Verbindung zu Ihrem Webserver herstellen. Es sei denn, Sie haben zusätzliche Dienste hinzugefügt. Sie könnten erwägen, diese IP für einige Zeit zu blockieren. Manchmal ist IP Teil dynamischer Pools, und Sie können ein Problem mit einer Blacklist nicht immer lösen. Dann lassen Sie die Pakete einfach fallen.

Wenn Ihr Unternehmen nur in einem Land tätig ist, sollten Sie möglicherweise nur alle anderen Länder blockieren.

Sie können whois verwenden, um den globalen Eigentümer des IP-Adressbereichs zu finden, und, falls vorhanden, die Administrator-Kontaktinformationen verwenden, um den Eigentümer zu benachrichtigen. Sie können es an ihrem Ende aufspüren. (Es ist einen Versuch wert)

Sie sollten benachrichtigt werden, wenn ein System auf unerwartete Weise von einem anderen System kontaktiert wird. Nach dem ersten Mal haben Sie möglicherweise eine Menge Benachrichtigungen, aber wenn sich die Computer in Ihrem Netzwerk befinden, können Sie beide Seiten untersuchen. Dann entweder entfernen oder als erwarteten Datenverkehr auf die weiße Liste setzen.

Diese Überwachungstools benachrichtigen Sie auch über Port-Scans, es sei denn, Sie haben ein autorisiertes Sicherheitsteam. Niemand sonst sollte Port-Scans durchführen.

Achten Sie auf regelmäßige Ereignisse, und wenn sie auf mysteriöse Weise aufhören, warum?

Überprüfen Sie das Gerät auf Infektionen. Wenn Dienste deaktiviert sind, sollten Sie im Voraus benachrichtigt werden, damit die Änderungen erwartet werden und nicht mysteriös sind.

Blockieren Sie so viel wie möglich und überwachen Sie den Rest.

Sobald Sie einen Angriff haben, müssen Sie etwas dagegen tun.

Manchmal ist das vorübergehende Ausschalten des Systems die einzige Option. Möglicherweise müssen Sie ihre IP-Adresse für eine Weile blockieren.

Sie müssen weiterhin alle Ihre legitimen Dienste schützen und überwachen.

Zusätzlich zur Überwachung der Community auf Ankündigungen von Sicherheitslücken. Sie sollten Penetrationstester haben, um die Fehler vor den Hackern zu finden. Dann haben Sie die Möglichkeit, den Angriff zu Ihren Bedingungen abzuschwächen. Benachrichtigen Sie den Betreuer über das Effektsystem, damit er es patchen kann. Wenn es Open Source ist, können Sie es von jemandem für Sie patchen lassen.

Intrusion Detection-Systeme und Snort können auch eingehende Hacks untersuchen und möglicherweise blockieren, indem sie verdächtige Muster erkennen.

Abhängig von der Schwere des Problems müssen Sie möglicherweise ein alternatives Produkt finden, um das anfällige Produkt zu ersetzen.

Wie immer hilft es, Ihre Software auf dem neuesten Stand zu halten, um Sie zu schützen.

Auf diese Weise können Sie verdächtige Aktivitäten blockieren, bis Sie deren Legitimität festgestellt haben.

3
cybernard

Die meisten potenziellen Exploits erfordern eine Reihe von Schwachstellen, um ausgeführt zu werden. Durch Lesen des noch nicht gepatchten Zero-Day können Sie noch andere Schwachstellen oder Vorbedingungen identifizieren, die für den Zero-Day erforderlich wären.

Lassen Sie RDP nicht von außerhalb des Netzwerks zu, um sich gegen die Bedrohung durch einen RDP-Angriff von außerhalb des Netzwerks zu verteidigen (Zero-Day-RDP-Authentifizierungsfehler veröffentlicht). Wenn Sie RDP von außen nicht wirklich benötigen, ist dies eine Chance, ein Versehen zu korrigieren. Wenn Sie RDP von außerhalb benötigen, können Sie möglicherweise eine Whitelist mit IPs identifizieren, über die diese Verbindungen zugelassen werden können, und die Öffnung in der Firewall verkleinern.

Um sich gegen eine interne (und teilweise externe) RDP-Bedrohung zu verteidigen, beschränken Sie die Fähigkeit von A) Benutzern, RDP auszuführen, B) Maschinen, RDP auszuführen, C) dem Netzwerk, RDP zu übergeben, D) Maschinen, RDP zu akzeptieren, E) Benutzer, die RDP zulassen. Welche VLANs sollten in der Lage sein, ausgehendes RDP zu generieren? Welche Maschinen sollten dazu in der Lage sein? Und so weiter.

Jeder dieser Schritte, sowohl im Outsider- als auch im Insider-Szenario, schützt Ihr Netzwerk auch ohne Patch vor einem RDP-Authentifizierungs-Exploit.

Eine tiefgreifende Verteidigungsmentalität ermöglicht es Ihnen, die Kette von Schwachstellen/Bedingungen zu durchbrechen, die erforderlich sind, um selbst einem nicht gepatchten Zero-Day entgegenzuwirken. Manchmal.

Ich habe hier absichtlich ein ziemlich einfaches Problem gewählt, um den Punkt zu veranschaulichen.

Quelle - Ich habe das schon einmal gemacht.

2
user99573

Relativ wenige Hacks ermöglichen es dem Angreifer, in ein System einzudringen. Bei den meisten handelt es sich um Fehler bei der Eskalation von Berechtigungen, mit denen ein Angreifer eine bessere Kontrolle über das System hat, nachdem er Zugriff darauf hat. Es gibt so viele Möglichkeiten, die administrative Kontrolle über einen Computer zu erlangen, sobald ein Hacker Zugriff darauf hat, dass es mehr oder weniger Zeitverschwendung ist, einen Computer vor einer Eskalation von Berechtigungen zu schützen. Ihre beste Strategie besteht darin, sich darauf zu konzentrieren, zu verhindern, dass Hacker überhaupt in das Netzwerk eindringen, und Ihr Netzwerk auf Eindringlinge zu überwachen.

Fast alle Eingriffe erfolgen mit nur drei Methoden. Sie möchten alle verfügbaren Cyber-Verteidigungsressourcen ausgeben, um sich gegen diese zu verteidigen. Sie sind:

(1) Phishing-E-Mails mit vergifteten PDFs oder PPTs. Es gibt Unmengen von Null-Tagen, die auf PDFs und PPTs abzielen, und beide Anwendungsformate sind so beschaffen, dass es in beiden Fällen mehr oder weniger keine Möglichkeit gibt, sich gegen einen modernen Trojaner abzusichern. Daher haben Sie grundsätzlich zwei Möglichkeiten: Alle PDF/PPT-Anhänge müssen einen Überprüfungsprozess durchlaufen, der für die meisten Unternehmen nicht praktikabel ist, oder Sie müssen Ihre Mitarbeiter darin schulen, E-Mails selbst zu überprüfen, was in den meisten Fällen die beste Option ist. Eine dritte Möglichkeit besteht darin, alle an die Organisation gesendeten PDFs und PPTs nachträglich in einer Sandbox-Umgebung zu testen. Dies ist jedoch nur für fortgeschrittene Organisationen wie das Militär und nicht für ein durchschnittliches Unternehmen möglich. Option 3 verhindert natürlich nicht das Eindringen, sondern warnt Sie nur sofort, wenn eines auftritt.

(2) Sicherheitslücken im Browser. Die überwiegende Mehrheit der browserbasierten Exploits zielt auf Internet Explorer ab, sodass Sie wahrscheinlich 95% dieser Exploits verteidigen können, indem Sie Benutzer daran hindern, IE zu verwenden, und von ihnen verlangen, Chrome oder Firefox zu verwenden. Sie können 99% der browserbasierten Exploits verhindern, indem Sie Benutzer dazu verpflichten, NoScript zu verwenden und sie in seiner Verwendung zu schulen, was für die meisten Unternehmen leider nicht praktikabel ist.

(3) Server-Schwachstellen. Ein Beispiel wäre der Fehler NTP von vor einigen Jahren. Sie können sich weitgehend dagegen wehren, indem Sie sicherstellen, dass alle Unternehmensserver in isolierten Netzwerken (einer "entmilitarisierten Zone") ausgeführt werden und dass diese Server eng sind und keine unnötigen Dienste ausführen. Sie möchten insbesondere sicherstellen, dass alle Unternehmens-Webserver in isolierten Umgebungen von selbst ausgeführt werden und dass nichts in diese Umgebungen gelangen oder aus diesen herauskommen kann, ohne dass ein Mensch die Kopie explizit auf kontrollierte Weise ausführt.

Natürlich gibt es viele Exploits, die außerhalb dieser Kategorien liegen, aber Ihre Zeit wird am besten damit verbracht, die drei oben aufgeführten Schwachstellenklassen zu beheben.

2
Tyler Durden

Nun, es ist in Ordnung, 0 Tage von einem Angreifer zu haben. Das Problem ist, wie viele Null-Tage er hat und wie viel es für ihn kostet, alle 0 Tage in Ihrem Netzwerk zu brennen.

Wenn Sie keine aktuellen Patches haben, werden die Kosten für einen Angreifer gesenkt, um eine Kill-Kette zu entwickeln.

Wenn Sie darüber nachdenken, wie würden Sie anfangen, ein Netzwerk anzugreifen? Angenommen, Sie beginnen mit einem Phishing-/Wasserlochangriff.

Wenn es sich um einen Wasserlochangriff handelt, müssen Sie möglicherweise einen 0-Tage-Flash-Angriff finden, mit dem Sie Code im Browser ausführen können. Anschließend müssen Sie möglicherweise zuerst aus der Browser-Sandbox ausbrechen, was einen weiteren 0-Tage-Vorgang erfordert. Und als nächstes könnten Sie mit Appcontainer konfrontiert werden, für den ein weiterer Exploit erforderlich ist, um die Berechtigung auf Betriebssystemebene zu erreichen. Und es gibt Schutzmechanismen wie SIP in macOS, das heißt, selbst wenn Sie Root-Zugriff haben, können Sie nicht auf wichtigen Speicher zugreifen. Das bedeutet, dass Sie einen weiteren 0-Tage-Kernel-Exploit benötigen. Wenn Windows 10 ausgeführt wird Wenn Sie mit Credit Guard auf Lsass.exe zielen, benötigen Sie möglicherweise einen weiteren Tag, um den Hypervisor anzugreifen.

Es stellt sich also heraus, dass der Angriff sehr teuer ist und viel Forschungsaufwand erfordert. In der Zwischenzeit können Sie während der Ausnutzung möglicherweise einen Sicherheitsalarm auslösen.

Stellen Sie als Verteidiger sicher, dass Sie Ihr Netzwerk gut kennen, über Verteidigungskontrollen in jeder einzelnen Ebene verfügen und in der Lage sein sollten, sich gegen 0-Tage-Angriffe zu verteidigen.

1
user50312

Das Problem liegt nicht nur bei Zero-Days. Es gibt viele Unternehmen, die aus einer Vielzahl von Gründen (einige gute, andere schlechte) immer noch 200-Tage-Patches verwenden.

Sie haben eine große Liste von Lösungen, eine andere ist virtuelles Patching . Normalerweise wird das Problem behoben, bevor es in den Dienst kommt (ich habe es vor Jahren durch ein Trend Micro Produkt erfahren - keine Links zu ihnen, aber ich habe es getestet und es hat meistens funktioniert).

1
WoJ