DE112014002789T5 - Netzwerksicherheitssystem - Google Patents

Netzwerksicherheitssystem Download PDF

Info

Publication number
DE112014002789T5
DE112014002789T5 DE112014002789.8T DE112014002789T DE112014002789T5 DE 112014002789 T5 DE112014002789 T5 DE 112014002789T5 DE 112014002789 T DE112014002789 T DE 112014002789T DE 112014002789 T5 DE112014002789 T5 DE 112014002789T5
Authority
DE
Germany
Prior art keywords
proxy server
type
output
component
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112014002789.8T
Other languages
English (en)
Inventor
Ian Robertson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112014002789T5 publication Critical patent/DE112014002789T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Abstract

Ein Netzwerksicherheitssystem zum Erzeugen eines Warnsignals als Reaktion darauf, dass eine Sicherheitslücke in einem Proxy-Server in einem Datenverarbeitungsnetzwerk erkannt wird, wobei das System Folgendes aufweist: eine Verteilungskomponente fängt eine Anforderung für eine Ressource von einer Client-Einheit ab; sie erzeugt ein doppeltes Exemplar der abgefangenen Anforderung und leitet die abgefangene Anforderung an eine erste Art von Proxy-Server weiter und leitet das doppelte Exemplar der abgefangenen Anforderung an eine zweite Art von Proxy-Server weiter, wobei die erste Art von Proxy-Server und die zweite Art von Proxy-Server nicht identische Arten von Proxy-Servern sind; eine Vergleichskomponente empfängt die Ausgabe von der ersten Art von Proxy-Server und von der zweiten Art von Proxy-Server; sie vergleicht die Ausgabe der ersten Art von Proxy-Server mit der Ausgabe der zweiten Art von Proxy-Server; sie ermittelt, ob sich die Ausgabe der ersten Art von Proxy-Server und die Ausgabe der zweiten Art von Proxy-Server voneinander unterscheiden, und erzeugt als Reaktion auf ein Ermitteln eines Unterschieds ein Warnsignal.

Description

  • Gebiet der Erfindung
  • Die Erfindung bezieht sich auf das Gebiet einer Netzwerksicherheit, und im Besonderen bezieht sich die vorliegende Erfindung auf ein System, Verfahren und ein Computerprogramm zum Erkennen einer Sicherheitslücke in einem Datenverarbeitungsnetzwerk.
  • Hintergrund der Erfindung
  • Ein Web-Proxy-Server ist ein Server, der als eine zwischengeschaltete Einheit für Anforderungen von Client-Einheiten dient, die von Servern in einem Netzwerk Ressourcen anfordern. Eine Client-Einheit sendet üblicherweise eine Anforderung für eine Ressource über das Netzwerk und beginnt, indem sie eine Verbindung mit einem Web-Proxy-Server herstellt. Der Web-Proxy-Server beurteilt die Anforderung, führt eine Anzahl von Funktionen aus und ruft die angeforderte Ressource ab und sendet sie zurück an den anfordernden Client. Ein Web-Proxy-Server kann eine Anzahl von Funktionen durchführen, z. B. kann er dem Proxy-Server nachgelagerten Client-Einheiten ermöglichen, ihre Anonymität zu wahren, einen Zugriff auf Ressourcen unter Verwendung von Techniken wie das Zwischenspeichern beschleunigen, um zu verhindern, dass derselbe Inhalt mehrfach heruntergeladen wird, einen Zugriff auf Internet-Ressourcen überwachen, übertragenen Inhalt vor der Übermittlung an anfordernde Clients auf Schadsoftware untersuchen und ausgehenden Inhalt untersuchen, um einem Datenverlust vorzubeugen, sowie andere Zugriffs- und Verwaltungsaufgaben.
  • Proxy-Server, insbesondere Web-Proxy-Server sind anfällig für Angriffe. Dabei suchen die Angreifer häufig nach Schwachstellen im Entwurf und im Quellcode von Komponenten, die einige der oben erwähnten Funktionen durchführen. Schwachstellen können ausgenutzt werden, um das Verhalten der Softwarekomponenten zu verändern und unter Umständen die Vertraulichkeit, Integrität und/oder Verfügbarkeit von Daten innerhalb des Proxy-Servers selbst oder innerhalb eines größeren Netzwerks zu gefährden, zu dem der Proxy-Server gehört.
  • In der Regel wird dieser Art von Angriff zur Schwachstellenausnutzung entgegengewirkt, indem eine oder mehrere Spezialkomponenten verwendet werden, um den Web-Proxy-Server zu schützen. Diese Komponenten können Firewalls, Systeme zur Erkennung von unbefugten Zugriffen, Firewalls für Web-Anwendungen und Virenscanner beinhalten. Typische Schwachstellen von Web-Proxy-Servern ermöglichen einem Angreifer, sorgfältig erstellte Nachrichten an eine Komponente zu senden, die einen Angreifer in die Lage versetzen können, die Kontrolle über den Web-Proxy-Server zu übernehmen und den Web-Proxy-Server als eine Plattform für Angriffe auf nachgelagerte Komponenten des Netzwerksystems zu nutzen. Die Wirkung derartiger Angriffe kann darin bestehen, dass die Vertraulichkeit, Integrität oder Verfügbarkeit von Daten innerhalb des Gesamtsystems beeinträchtigt wird.
  • Hersteller von Web-Proxy-Software unternehmen große Anstrengungen, um die Entstehung von Schwachstellen in ihren Produkten zu verhindern, und reagieren in der Regel schnell, um etwaige festgestellte Probleme zu beheben, indem sie Softwareprogrammkorrekturen veröffentlichen, die den schadhaften Code ersetzen oder ergänzen. Allerdings hat sich diese Herangehensweise aus mehreren Gründen als unbefriedigend erwiesen:
    • • Schwachstellen werden häufig schneller ausgenutzt, als Hersteller Programmkorrekturen erstellen und verteilen können;
    • • Mittel, mit denen sich bekannte Schwachstellen ausnutzen lassen, werden häufig (im Internet) veröffentlicht, woraufhin breit angelegte Angriffe von Angreifern durchgeführt werden können, die selbst nur geringe Fähigkeiten oder Kenntnisse haben; und
    • • der Prozess des Anwendens von Programmkorrekturen verzögert sich häufig, während mit einer Programmkorrektur versehene Kopien der Web-Proxys getestet werden. Hierdurch erhöhen sich Kosten und Komplexität des Prozesses, weshalb viele groß dimensionierte gewerbliche Systeme für eine beträchtliche Zeit ohne Programmkorrektur verbleiben. Die britische Regierungsbehörde für IT-Sicherheit CESG geht davon aus, dass die Mehrheit (70 bis 80%) der erfolgreichen Angriffe auf IT-Systeme im öffentlichen Sektor vermieden werden könnten, wenn alle Komponenten einwandfrei mit einer Programmkorrektur versehen wären.
  • Trotz technischer Fortschritte, die beim Entwurf derartiger Spezialkomponenten im Laufe der Jahre erzielt wurden, dauern erfolgreiche Angriffe auf Web-Proxy-Server an und sind eine der Hauptgefahrenquellen bei großen gewerblichen Datenverarbeitungssystemen.
  • Kurzdarstellung der Erfindung
  • Unter einem ersten Aspekt betrachtet, stellt die vorliegende Erfindung ein Netzwerksicherheitssystem zum Erzeugen eines Warnsignals als Reaktion darauf bereit, dass eine Sicherheitslücke in einem Proxy-Server in einem Datenverarbeitungsnetzwerk erkannt wird, wobei das System aufweist: eine Verteilungskomponente, aufweisend: eine Abfangkomponente zum Abfangen einer Anforderung für eine Ressource von einer Client-Einheit; und eine Verdoppelungskomponente zum Erzeugen eines doppelten Exemplars der abgefangenen Anforderung sowie zum Weiterleiten der abgefangenen Anforderung an eine erste Art von Proxy-Server sowie zum Weiterleiten des doppelten Exemplars der abgefangenen Anforderung an eine zweite Art von Proxy-Server, wobei die erste Art von Proxy-Server und die zweite Art von Proxy-Server nicht identische Arten von Proxy-Servern sind; eine Vergleichskomponente, aufweisend: eine Abfangkomponente zum Abfangen der Ausgabe von der ersten Art von Proxy-Server und von der zweiten Art von Proxy-Server; eine Vergleichskomponente zum Vergleichen der Ausgabe der ersten Art von Proxy-Server mit der Ausgabe der zweiten Art von Proxy-Server; eine Ermittlungskomponente zum Ermitteln – als Reaktion auf ein Vergleichen der Ausgaben –, ob sich die Ausgabe der ersten Art von Proxy-Server und die Ausgabe der zweiten Art von Proxy-Server voneinander unterscheiden, und eine Warnsignalerzeugungskomponente zum Erzeugen eines Warnsignals als Reaktion auf ein Ermitteln eines Unterschieds zwischen den Ausgaben.
  • Vorzugsweise stellt die vorliegende Erfindung ein System bereit, das des Weiteren aufweist, dass eine Ausgabeblockiereinheit der Vergleichskomponente erkennt, dass ein Warnsignal erzeugt wurde, und dass sie die Ausgabe von einer oder beiden der ersten Art von Proxy-Server und der zweiten Art von Proxy-Server blockiert.
  • Vorzugsweise stellt die vorliegende Erfindung ein System bereit, das des Weiteren aufweist, dass die Ermittlungskomponente ermittelt, dass sich die Ausgabe von der ersten Art von Proxy-Server und von der zweiten Art von Proxy-Server nicht voneinander unterscheiden, und das des Weiteren eine Durchleitungskomponente zum Durchleiten der Ausgabe entweder von der ersten Art von Proxy-Server oder von einer zweiten Art von Proxy-Server an einen Server aufweist, um die angeforderte Ressource abzurufen.
  • Vorzugsweise stellt die vorliegende Erfindung ein System bereit, das des Weiteren aufweist, dass die Ermittlungskomponente eine Aktion erkennt, die für jede der beiden Ausgaben durchgeführt werden soll, und dass sie des Weiteren ermittelt, dass eine oder beide der durchzuführenden Aktionen unterschiedliche Aktionen sind.
  • Vorzugsweise stellt die vorliegende Erfindung ein System bereit, das des Weiteren aufweist, dass die Ermittlungskomponente ermittelt, dass eine der durchzuführenden Aktionen einen Verarbeitungsfehler in einer oder beiden der ersten Art und der zweiten Art von Web-Proxy-Servern oder dem Server verursachen wird.
  • Vorzugsweise stellt die vorliegende Erfindung ein System bereit, das des Weiteren aufweist, dass die Ermittlungskomponente ermittelt, dass der Verarbeitungsfehler eine Sicherheitslücke ist.
  • Unter einem zweiten Aspekt betrachtet, stellt die vorliegende Erfindung ein Netzwerksicherheitssystem zum Erzeugen eines Warnsignals als Reaktion darauf bereit, dass eine Sicherheitslücke in einem Proxy-Server in einem Datenverarbeitungsnetzwerk erkannt wird, wobei das System aufweist: eine Verteilungskomponente, aufweisend: eine Abfangkomponente zum Abfangen einer angeforderten Ressource von einem Server; und eine Verdoppelungskomponente zum Erzeugen eines doppelten Exemplars der abgefangenen angeforderten Ressource sowie zum Weiterleiten der abgefangenen angeforderten Ressource an eine erste Art von Proxy-Server und zum Weiterleiten des doppelten Exemplars der abgefangenen angeforderten Ressource an eine zweite Art von Proxy-Server, wobei die erste Art von Proxy-Server und die zweite Art von Proxy-Server nicht identische Proxy-Server sind; eine Vergleichskomponente, aufweisend: eine Abfangkomponente zum Abfangen der Ausgabe von der ersten Art von Proxy-Server und von der zweiten Art von Proxy-Server; eine Vergleichskomponente zum Vergleichen der Ausgabe der ersten Art von Proxy-Server mit der Ausgabe der zweiten Art von Proxy-Server; eine Ermittlungskomponente zum Ermitteln – als Reaktion auf ein Vergleichen der Ausgaben –, ob sich die Ausgabe der ersten Art von Proxy-Server und die Ausgabe der zweiten Art von Proxy-Server voneinander unterscheiden, und eine Warnsignalerzeugungskomponente zum Erzeugen eines Warnsignals als Reaktion auf ein Ermitteln eines Unterschieds zwischen den Ausgaben.
  • Vorzugsweise stellt die vorliegende Erfindung ein System bereit, das des Weiteren aufweist, dass eine Ausgabeblockiereinheit der Vergleichskomponente erkennt, dass ein Warnsignal erzeugt wurde, und dass sie die Ausgabe von einer oder beiden der ersten Art von Proxy-Server und der zweiten Art von Proxy-Server blockiert.
  • Vorzugsweise stellt die vorliegende Erfindung ein System bereit, das des Weiteren aufweist, dass die Ermittlungskomponente ermittelt, dass sich die Ausgabe von der ersten Art von Proxy-Server und von der zweiten Art von Proxy-Server nicht voneinander unterscheiden, und dass sie die Ausgabe entweder von der ersten Art von Proxy-Server oder von der zweiten Art von Proxy-Server an eine Client-Einheit durchleitet.
  • Vorzugsweise stellt die vorliegende Erfindung ein System bereit, das des Weiteren aufweist, dass die Ermittlungskomponente eine Aktion erkennt, die für jede der beiden Ausgaben durchgeführt werden soll, und dass sie des Weiteren ermittelt, dass eine oder beide der durchzuführenden Aktionen unterschiedliche Aktionen sind.
  • Vorzugsweise stellt die vorliegende Erfindung ein System bereit, das des Weiteren aufweist, dass die Ermittlungskomponente ermittelt, dass eine der durchzuführenden Aktionen einen Verarbeitungsfehler in einer oder beiden der ersten Art und der zweiten Art von Web-Proxy-Servern oder der Client-Einheit verursachen wird.
  • Vorzugsweise stellt die vorliegende Erfindung ein System bereit, das des Weiteren aufweist, dass die Ermittlungskomponente ermittelt, dass der Verarbeitungsfehler eine Sicherheitslücke ist.
  • Unter einem dritten Aspekt betrachtet, stellt die vorliegende Erfindung ein Verfahren zum Erzeugen eines Warnsignals als Reaktion darauf bereit, dass eine Sicherheitslücke in einem Proxy-Server in einem Datenverarbeitungsnetzwerk erkannt wird, wobei das Verfahren aufweist: Abfangen einer Anforderung für eine Ressource von einer Client-Einheit; Erzeugen eines doppelten Exemplars der abgefangenen Anforderung und Weiterleiten der abgefangenen Anforderung an eine erste Art von Proxy-Server und Weiterleiten des doppelten Exemplars der abgefangenen Anforderung an eine zweite Art von Proxy-Server, wobei die erste Art von Proxy-Server und die zweite Art von Proxy-Server nicht identische Arten von Proxy-Servern sind; Abfangen der Ausgabe von der ersten Art von Proxy-Server und von der zweiten Art von Proxy-Server; Vergleichen der Ausgabe der ersten Art von Proxy-Server mit der Ausgabe der zweiten Art von Proxy-Server; Ermitteln – als Reaktion auf ein Vergleichen der Ausgaben –, ob sich die Ausgabe der ersten Art von Proxy-Server und die Ausgabe der zweiten Art von Proxy-Server voneinander unterscheiden, und Erzeugen eines Warnsignals als Reaktion auf ein Ermitteln eines Unterschieds zwischen den Ausgaben.
  • Unter einem vierten Aspekt betrachtet, stellt die vorliegende Erfindung ein Verfahren zum Erzeugen eines Warnsignals als Reaktion darauf bereit, dass eine Sicherheitslücke in einem Proxy-Server eines Datenverarbeitungsnetzwerks erkannt wird, wobei das System aufweist: Abfangen einer angeforderten Ressource von einem Server; und Erzeugen eines doppelten Exemplars der abgefangenen angeforderten Ressource und Weiterleiten der abgefangenen angeforderten Ressource an eine erste Art von Proxy-Server und Weiterleiten des doppelten Exemplars der abgefangenen angeforderten Ressource an eine zweite Art von Proxy-Server, wobei die erste Art von Proxy-Server und die zweite Art von Proxy-Server nicht identische Proxy-Server sind; Abfangen der Ausgabe von der ersten Art von Proxy-Server und von der zweiten Art von Proxy-Server; Vergleichen der Ausgabe der ersten Art von Proxy-Server mit der Ausgabe der zweiten Art von Proxy-Server; als Reaktion auf ein Vergleichen der Ausgaben, Ermitteln, ob sich die Ausgabe der ersten Art von Proxy-Server und die Ausgabe der zweiten Art von Proxy-Server voneinander unterscheiden, und Erzeugen eines Warnsignals als Reaktion auf ein Ermitteln eines Unterschieds zwischen den Ausgaben.
  • Unter einem fünften Aspekt betrachtet, stellt die vorliegende Erfindung ein Computerprogramm bereit, das Computerprogrammcode aufweist, um, wenn er in ein Computersystem geladen und ausgeführt wird, alle Schritte des Verfahrens wie oben beschrieben durchzuführen.
  • Kurzbeschreibung der Zeichnungen
  • Im Folgenden wird mit Blick auf die beigefügten Zeichnungen eine bevorzugte Ausführungsform der vorliegenden Erfindung beschrieben, die lediglich als Beispiel zu verstehen ist, wobei:
  • 1 ein Blockschaubild ist, das ein Netzwerksicherheitssystem darstellt, in dem die vorliegende Erfindung gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung realisiert sein kann;
  • 2 ein Blockschaubild ist, das die Komponenten eines Proxy-Servers nach dem Stand der Technik darstellt;
  • 3 ein Blockschaubild ist, das einen Prozessfluss einer Anforderung für Ressourcen von einer Vielzahl von Client-Einheiten an eine Verteilungskomponente und eine Vergleichskomponente gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung darstellt;
  • 4 ein Blockschaubild ist, das gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung einen Prozessfluss darstellt, bei dem die Anforderung für Ressourcen aus 4 von einem Server erfüllt und einer Verteilungskomponente sowie einer Vergleichskomponente mitgeteilt wird;
  • die 5a und 5b Blockschaubilder sind, die Teilkomponenten der Vergleichs- und der Verteilungskomponente aus 3 und 4 darstellen;
  • 6 ein Ablaufplan ist, der einen Prozessfluss einer HTTP-Anforderung durch eine Verteilungskomponente und eine Vergleichskomponente gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung darstellt; und
  • 7 ein Ablaufplan ist, der einen Prozessfluss einer abgerufenen Anforderung durch eine Verteilungskomponente und eine Vergleichskomponente gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung darstellt.
  • Ausführliche Beschreibung der Erfindung
  • Im Folgenden werden Aspekte der vorliegenden Erfindung unter Bezugnahme auf Darstellungen von Ablaufplänen und/oder Blockschaubilder von Verfahren, Systemen und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Dabei dürfte klar sein, dass jeder Block der Ablaufplan-Darstellungen und/oder Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplan-Darstellungen und/oder Blockschaubildern durch Computerprogrammbefehle realisiert werden kann/können. Diese Computerprogrammbefehle können einem Prozessor eines Universalcomputers, Spezialcomputers oder einer anderweitigen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die Befehle, die über den Prozessor des Computers oder der anderweitigen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, ein Mittel erzeugen, mit dem die Funktionen/Handlungen realisiert werden können, die in dem Block bzw. den Blöcken des Ablaufplans und/oder Blockschaubilds angegeben werden.
  • Diese Computerprogrammbefehle können auch auf einem computerlesbaren Medium gespeichert werden, das einen Computer, eine anderweitige programmierbare Datenverarbeitungsvorrichtung oder andere Einheiten anweisen kann, auf eine bestimmte Art und Weise zu funktionieren, so dass die auf dem computerlesbaren Medium gespeicherten Befehle einen Herstellungsgegenstand hervorbringen, der Befehle aufweist, mit denen die Funktion/Handlung, die in dem Block bzw. den Blöcken des Ablaufplans und/oder Blockschaubilds angegeben ist, realisiert wird.
  • Die Computerprogrammbefehle können zudem in einen Computer, eine anderweitige programmierbare Datenverarbeitungsvorrichtung oder andere Einheiten geladen werden, um zu veranlassen, dass eine Reihe von Betriebsschritten auf dem Computer, der anderweitigen programmierbaren Datenvorrichtung oder den anderen Einheiten ausgeführt wird, so dass die Befehle, die auf dem Computer oder der anderweitigen Datenverarbeitungsvorrichtung ausgeführt werden, Prozesse bereitstellen, mit denen die in dem Block bzw. den Blöcken des Ablaufplans und/oder Blockschaubilds angegebenen Funktionen/Handlungen realisiert werden.
  • Mit Blick auf 1 wird ein vereinfachtes Beispiel eines bekannten vernetzten Sicherheitssystems 100 gezeigt, in dem eine bevorzugte Ausführungsform der vorliegenden Erfindung realisiert sein kann. Das Netzwerksicherheitssystem aus 1 weist eine Client-Einheit 105, einen Server 115, ein Netzwerk 120 und einen Web-Proxy-Server 110 auf.
  • Beispiele von Client-Einheiten 105 beinhalten, ohne darauf beschränkt zu sein, Personal-Computer-Systeme, Thin Clients, Handheld- oder Laptop-Einheiten, mobile Einheiten, Set-Top-Boxen, programmierbare Unterhaltungselektronik, Netzwerk-PCs, Mini-Computersystem usw.
  • Client-Einheiten 105 senden über ein Netzwerk 120 Anforderungen für Ressourcen und verwenden dabei einen Web-Browser oder eine andere Art von Software, die geeignet ist, um Anforderungen für Ressourcen über das Netzwerk 120 zu senden und zu empfangen.
  • Ein Beispiel für ein Netzwerk 120 ist das Internet, wobei jedoch jede andere Art von Netzwerk 120 geeignet sein kann, bei der eine erste Einheit eine Anforderung/Mitteilung für Ressourcen an eine zweite Einheit sendet.
  • Die Client-Einheit 105 übergibt in der Regel eine HTTP-Anforderungsnachricht (Hypertext Transfer Protocol) an einen Server. Die HTTP-Anforderung weist in der Regel eine Anforderung für eine Ressource auf. Eine Ressource ist als ein Block von Informationen oder Daten definiert, der durch einen URL kenntlich gemacht werden kann. Eine gängige Art von Ressource ist eine Datei, aber eine Ressource kann auch ein dynamisch erzeugtes Abfrageergebnis, die Ausgabe eines CGI-Skripts, ein Dokument, ein Bild oder eine Musikdatei usw. sein.
  • Ein Server 115 empfängt die HTTP-Anforderungsnachricht und sendet entweder die angeforderte Ressource an die Client-Einheit 105 zurück, oder er sendet die Anforderung an einen weiteren Server 115, der die Client-Anforderung erfüllen kann. Die angeforderte Ressource wird in Form einer Antwortnachricht zurückgesendet, die zusätzliche Informationen wie Statusinformationen, Nachrichtenlänge usw. enthält. Bei dem Server 115 kann es sich um jede Art von Server 115 handeln, der in der Lage ist, Anforderungen von Client-Einheiten 115 zu speichern und zu erfüllen.
  • Ein Web-Proxy-Server 110 fängt Anforderungen für Ressourcen von dem Client 105 an den Server 115 und umgekehrt ab, wenn der Server 115 die Ressource abruft, um sie zurück an die Client-Einheit 105 zu senden (Reverse-Proxy-Modus). Üblicherweise sendet eine Client-Einheit 105 an einen Server 115 eine Anforderung, die eine Ressource wie beispielsweise eine Datei, Verbindung, Webseite oder eine andere Art von Ressource von einem oder mehreren Servern 115 anfordert. Die Anforderung wird von dem Web-Proxy-Server 110 abgefangen, und der Web-Proxy-Server 110 bewertet die empfangene Anforderung, bevor er die angeforderten Ressourcen von einem oder mehreren Servern 115 abruft.
  • Ein Web-Proxy-Server 110 kann viele verschiedene Arten von Funktionen durchführen. Einige der Hauptaufgaben, die von einem Web-Proxy-Server 100 durchgeführt werden, lauten:
    • • Bereitstellen von Sicherheitsfunktionen wie z. B. die IP-Adresse von Client-Rechnern anonym zu halten,
    • • Zwischenspeichern von Ressourcen,
    • • Überprüfen von ausgehenden und eingehenden Ressourcen auf Viren.
  • Dabei dürfte einem Fachmann jedoch bewusst sein, dass es viele andere Arten von Funktionen gibt, die ein Web-Proxy-Server durchführen kann, und dass die oben erwähnten Funktionen lediglich zur Veranschaulichung dienen und nicht als Beschränkung des Geltungsumfangs gedacht sind.
  • Ein vereinfachtes Beispiel eines Prozessflusses von dem Client 105 über den Web-Proxy-Server 110 zu einem Server 115 wird im Folgenden gegeben:
    • • Mitarbeiter A startet einen Web-Browser auf einer Client-Einheit 105 und gibt den URL www.IBM.com ein.
    • • Die Ressource wird an einen Web-Proxy-Server 110 durchgeleitet, und der Web-Proxy-Server 110 überprüft die IP-Adresse der Anforderungen unter Zugrundelegung einer vom Administrator definierten Zugriffskontrolle.
    • • Wenn ermittelt wird, dass die IP-Adresse nicht untersagt ist, führt der Web-Proxy-Server 110 die Anforderung aus, indem er eine Anforderungsnachricht an den Server 115 sendet, auf dem die Ressource gespeichert ist.
    • • Der Web-Proxy-Server 115 empfängt die angeforderte Ressource und speichert eine Kopie der Ressource in seinem Zwischenspeicher.
    • • Der Proxy-Server überträgt die angeforderte Ressource an die anfordernde Client-Einheit 105.
  • Typische Komponenten eines Web-Proxy-Servers 110 sind in 2 dargestellt und beinhalten eine Administratorkonsole 200a, 200b, eine Lastausgleichseinheit 210a, 210b, einen Zwischenspeicherungs-Proxy 205a, 205b, eine Versenderkomponente 215a, 215b und eine Komponente 220a, 220b zum Durchleiten von Inhalt. Für einen Fachmann dürfte offensichtlich sein, dass auch andere Teilkomponenten in den Web-Proxy-Server 110 integriert sein können oder eine Schnittstelle zu diesem aufweisen können, ohne vorn Geltungsumfang abzuweichen.
  • Die Administratorkonsole 200a, 200b stellt eine Schnittstelle für einen Administrator bereit, um den Web-Proxy-Server 110a, 110b und seine Teilkomponenten zu konfigurieren, zu verwalten und zu steuern.
  • Ein Zwischenspeicherungs-Proxy 205a, 205b wird eingesetzt, um zu verhindern, dass derselbe Inhalt mehrfach heruntergeladen wird. Dabei kommt entweder ein passives Zwischenspeichern oder ein aktives Zwischenspeichern zum Einsatz. Der Zwischenspeicherungs-Proxy 205a, 205b verringert die Bandbreitennutzung und verbesserte die Geschwindigkeit und Zuverlässigkeit einer Website, indem er einen Bereitstellungspunktknoten für einen oder mehrere nachgeschaltete Inhalts-Server 115 bereitstellt. Der Zwischenspeicherungs-Proxy 205a, 205b kann statischen Inhalt sowie Inhalt zwischenspeichern und übermitteln, der dynamisch z. B. von dem IBM WebSphere Application Server erzeugt wurde.
  • Der Zwischenspeicherungs-Proxy 205a, 205b kann in der Funktion eines Reverse-Proxy-Servers 110 oder eines Forward-Proxy-Servers 110 konfiguriert sein und stellt entweder einen Bereitstellungspunkt für ein externes Netzwerk wie z. B. das Internet 120 oder für ein (nicht abgebildetes) internes Netzwerk bereit.
  • Der Zwischenspeicherungs-Proxy 205a, 205b fängt Datenanforderungen von dem Client 105 ab, ruft die angeforderten Daten von dem/den Server(n) 115 ab und übermittelt den Inhalt zurück an den Client 105. In den meisten Fällen werden Anforderungen für Dokumente auf Servern gespeichert und unter Verwendung des HTTP-Protokolls übermittelt. Einem Fachmann dürfte jedoch klar sein, dass ein Proxy-Server so konfiguriert sein kann, dass er auch andere Protokolle wie z. B. FTP (File Transfer Protocol) und Gopher usw. verarbeitet.
  • Der Zwischenspeicherungs-Proxy 205a, 205b speichert zwischenspeicherbaren Inhalt in einem lokalen Zwischenspeicher, bevor er ihn an den anfordernden Client 105 übermittelt. Zwischenspeicherbarer Inhalt können z. B. statische Webseiten und JavaServer-Pages-Dateien sein, die dynamisch erzeugte, aber nur selten geänderte Informationen enthalten können. Java und alle Handelsmarken und Logos auf Grundlage von Java sind Handelsmarken oder eingetragene Handelsmarken von Oracle und/oder seinen Tochtergesellschaften. Anhand einer Zwischenspeicherung kann der Proxy-Server 110 nachfolgende Anforderungen für denselben Inhalt erfüllen, indem er ihn direkt aus dem lokalen Zwischenspeicher übermittelt, was sehr viel schneller ist, als ihn erneut von dem Inhalts-Host abzurufen.
  • Eine Lastausgleichseinheit 210a, 210b erzeugt am Netzwerkrand angesiedelte Systeme, die den Netzwerkverkehr steuern, Engpässe reduzieren und die Last verschiedener anderer Dienste und Systeme ausgleichen. Die Lastausgleichseinheit 210a, 210b stellt Standortauswahl, Auslastungsmanagement, Sitzungsaffinität und transparente Funktionsübernahme bereit.
  • Die Lastausgleichseinheit 210a, 210b fängt Datenanforderungen von Clients 105 ab und leitet jede Anforderung an den Server 115 weiter, der momentan in der Lage ist, die Anforderung zu erfüllen. Anders ausgedrückt gleicht sie die Last von eingehenden Anforderungen innerhalb eines definierten Satzes von Servern 115 aus, welche dieselbe Art von Anforderungen verarbeiten.
  • Eine Komponente 220a, 220b für die inhaltsbasierte Durchleitung ermöglicht gemeinsam mit dem Zwischenspeicherungs-Proxy-Server 205a, 205b, dass HTTP- und HTTPS-Anforderungen auf Grundlage von URLs oder anderen vom Administrator festgelegten Merkmalen verteilt werden, wodurch es nicht notwendig ist, identischen Inhalt auf allen Servern 115 zu speichern.
  • Jeder Web-Proxy-Server 110 kann eine Kombination aus den obigen Komponenten aufweisen. Allerdings kann jede der obigen Komponenten auf eine andere Art und Weise funktionieren. Dies hat Ähnlichkeit mit einem Auto, wobei ein Auto eine Karosserie, Räder, einen Motor, ein Lenkrad und einen Schaltknüppel usw. aufweist. Die verschiedenen Autohersteller stellen zwar durchweg Autos mit den oben erwähnten technischen Merkmalen her, jedes der Teile wird aber auf eine einzigartige Weise entworfen und produziert, die es den Autoherstellern ermöglicht, sich voneinander zu unterscheiden; so verbraucht z. B. Auto A aufgrund der aerodynamischen Eigenschaften der Karosserie weniger Kraftstoff als Auto B usw.
  • Wenn daher Web-Proxy-Server 110 von verschiedenen Herstellern entworfen/hergestellt werden (Web-Proxy-Server des Typs A und Web-Proxy-Server des Typs B), können sich die Web-Proxy-Server des Typs A und des Typs B als Reaktion auf eine gegebene Art von Sicherheitsangriff in der Regel unterschiedlich verhalten. Unter Umständen hat der Hersteller des Web-Proxy-Servers vom Typ A z. B. eine Sicherheitsprogrammkorrektur veröffentlicht, um eine Sicherheitslücke von Typ A zu beheben. Der Hersteller des Web-Proxy-Servers vom Typ B hat dagegen womöglich keine Sicherheitsprogrammkorrektur veröffentlicht, so dass in dem Web-Proxy-Server des Typs B die Schwachstelle noch vorhanden ist. Das Erzeugen einer Sicherheitsprogrammkorrektur kann viele Tage in Anspruch nehmen und dazu führen, dass der Web-Proxy-Server 110 und das gesamte Netzwerk 100 für Sicherheitsangriffe verletzbar ist.
  • Um den Web-Proxy-Server 110 zu schützen und den Prozess der Programmkorrektur einfacher und zuverlässiger zu gestalten, wird das Netzwerksicherheitssystem 100 mit Blick auf die 3, 4 und 5 gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung mit einer Verteilungskomponente 300 und einer Vergleichskomponente 305 ausgestattet. Die Verteilungskomponente 300 fängt Anforderungen für Ressourcen von Clients 105 ab oder fängt die angeforderten Ressourcen von Servern 115 ab, wenn sich diese Anforderungen auf dem Weg zu dem Web-Proxy-Server 110 befinden. Bei einer bevorzugten Ausführungsform werden mindestens zwei nicht identische Web-Proxy-Server 110a, 110b eingesetzt. Der Begriff „nicht identisch” bedeutet innerhalb dieser Patentschrift verschiedene Arten von Web-Proxy-Servern, d. h. „nicht gleich” oder nicht „übereinstimmend”. Dies kann bedeuten, dass es sich um Web-Proxy-Server 110 von verschiedenen Herstellern, von verschiedenen Anbietern oder um verschiedene Versionen von Software handelt, die sich auf dem Server 115 befindet.
  • Die Verteilungskomponente 300 leitet die abgefangene Anforderung an mindestens zwei nicht identische Web-Proxy-Server 110a, 110b durch, und die Web-Proxy-Server 110a, 110b fahren damit fort, die empfangenen Anforderungen auf die übliche Art und Weise zu verarbeiten.
  • Die Vergleichskomponente 305 analysiert die Ausgabe der beiden nicht identischen Web-Proxy-Server 110a, 110b. Die Vergleichskomponente 300 und die Verteilungskomponente 305 interagieren und kommunizieren mit Clients 105, Servern 115 und Web-Proxy-Servern 110, um die Netzwerksicherheit zu verbessern und ungewollte Sicherheitsangriffe abzuwehren.
  • Bei einer bevorzugten Ausführungsform ist das Netzwerksicherheitssystem 100 für eingehende Nachrichten, d. h. für Nachrichten, die von dem Client 105 an den Web-Proxy-Server 110a, 110b gesendet werden, mit einer Verteilungskomponente 300 ausgestattet, die den Web-Proxy-Servern 110a, 110b vorgelagert ist. Dabei bedeutet „vorgelagert”, dass die Verteilungskomponente 300 in dem Netzwerk 100 zwischen einem oder mehreren anfordernden Clients 105 und mindestens zwei nicht identischen Web-Proxy-Servern 110a, 110b angesiedelt ist.
  • Bei einer bevorzugten Ausführungsform ist das Netzwerksicherheitssystem 100 für eingehende Nachrichten, d. h. für Nachrichten, die von dem Client 105 an den Web-Proxy-Server 110a, 110b gesendet werden, mit einer Vergleichskomponente 305 ausgestattet, die den Web-Proxy-Servern 110a, 110b nachgelagert ist. Dabei bedeutet „nachgelagert”, dass die Vergleichskomponente 305 in dem Netzwerk 100 zwischen zwei oder mehr Web-Proxy-Servern 110a, 110b und einem oder mehreren Servern 115 angesiedelt ist, welche die Anforderung für Ressourcen erfüllen können.
  • Bei einer bevorzugten Ausführungsform ist die Netzwerksicherheitsarchitektur 100 für ausgehende Nachrichten, d. h. für Nachrichten, die für eine laufende Verteilung an einen anfordernden Client 105 von dem Server 115 an mindestens zwei Web-Proxy-Server 110a, 110b gesendet werden, mit einer Verteilungskomponente 300 ausgestattet, die den Web-Proxy-Servern 110a, 110b vorgelagert ist. Dabei bedeutet „vorgelagert”, dass die Verteilungskomponente 300 Anforderungen von Servern 115 empfängt, die an zwei oder mehr Web-Proxy-Server 110a, 110b gesendet werden sollen.
  • Bei einer bevorzugten Ausführungsform ist die Netzwerksicherheitsarchitektur für ausgehende Nachrichten, d. h. für Nachrichten, die von dem Server 115 an mindestens zwei Web-Proxy-Server 110a, 110b gesendet werden, mit einer Vergleichskomponente 305 ausgestattet, die den Web-Proxy-Servern 110a, 110b nachgelagert ist. Dabei bedeutet „nachgelagert”, dass die Vergleichskomponente 305 in dem Netzwerk 120 zwischen zwei oder mehr Web-Proxy-Servern 110a, 110b und einer oder mehreren anfordernden Client-Einheiten 115 angesiedelt ist.
  • Die Vergleichskomponente 305 und die Verteilungskomponente 300 können separate Komponenten sein, die sich auf demselben Server befinden, oder die separaten Komponenten können sich alternativ auf separaten Servern befinden, die in demselben geografischen Bereich angesiedelt oder räumlich verteilt sind. Alternativ können die Vergleichskomponente 305 und die Verteilungskomponente 300 als eine einzige Softwarekomponente realisiert sein und sich auf demselben Server befinden, d. h. die Verteilungskomponente 300 fängt Anforderungen von Clients 105 und Servern 115 ab, und die Vergleichskomponente 305 fängt Ausgaben von den nicht identischen Web-Proxy-Servern 110a, 110b ab. Für einen Fachmann dürfte offensichtlich sein, dass auch andere Arten von Anordnungen möglich sind, ohne vom inhaltlichen Umfang der Erfindung abzuweichen.
  • Mit Blick auf 5a und 6 weist die Verteilungskomponente 300 eine Anzahl von Teilkomponenten auf, die über Schnittstellen zueinander verfügen und miteinander interagieren, um HTTP-Anforderungen von anfordernden Client-Einheiten 105 zu verarbeiten. Die Teilkomponenten weisen eine Abfangkomponente 505 zum Abfangen und Empfangen von Anforderungen von anfordernden Client-Einheiten 105 auf, eine Verdoppelungskomponente 510 zum Erzeugen von Kopien der empfangenen Anforderung, eine Verfolgungskomponente 515 zum Zuweisen eines eindeutigen Bezeichners zu den Kopien der empfangenen Anforderungen und eine Übertragungskomponente 520 zum Weiterleiten einer jeden der Kopien der empfangenen Anforderungen an die nicht identischen Web-Proxy-Server des Typs A 110a und des Typs B 110b.
  • Der Prozess beginnt damit, dass die Abfangkomponente 505 die HTTP-Anforderung von der anfordernden Client-Einheit 105 empfängt (Schritt 600). Ein vereinfachtes Beispiel einer empfangenen HTTP-Anforderung wird im Folgenden gezeigt:
  • HTTP-Anforderung
  • GET/index.html HTTP/1.1
  • Host: www.IBM.com
  • Ein typischer Angriff besteht darin, unter Verwendung standardmäßiger „Get”- oder „Post”-HTTP-Befehle eine Anforderung für einen URL zu stellen, dabei jedoch ausreichend Daten einzuschließen, um das Zielprogramm zu veranlassen, die Daten so im Arbeitsspeicher zu speichern, dass es die vorhandenen Arbeitsspeicherwerte überschreibt, bei denen es sich um ausführbare Befehle handeln kann. Auf diese Weise kann ein Angreifer das Verhalten eines Web-Servers ändern und ihn unter Umständen dazu bringen, dass er ausfällt oder dass er Befehle ausführt, die von dem Angreifer bereitgestellt werden.
  • Dies wird als Pufferüberlaufzustand bezeichnet, wobei ein Pufferüberlaufzustand vorliegt, wenn ein Programm versucht, mehr Daten in einem Pufferspeicher abzulegen, als dieser aufnehmen kann, oder wenn ein Programm versucht, Daten in einem Arbeitsspeicherbereich außerhalb des angegebenen Adressraums abzulegen. In diesem Fall ist ein Pufferspeicher ein sequenzieller Abschnitt des Arbeitsspeichers, der für die Aufnahme beliebiger Daten von einer Zeichenfolge bis zu einer Anordnung von Ganzzahlen reserviert ist. Wenn außerhalb der Grenzen eines Blocks von reserviertem Arbeitsspeicher geschrieben wird, kann dies zu Datenfehlern führen, das Programm abstürzen lassen oder die Ausführung von zerstörerischem Programmcode verursachen.
  • Dabei lässt sich die Schwachstelle auf eine unangemessene Prüfung der Datengröße zurückführen. Die Daten sind in der URL-Anforderung durch eine Zeichenfolge repräsentiert. Eine unangemessene Prüfung der Zeichenfolgenlänge ist in der Regel dann gegeben, wenn Zeichenfolgen mit breiten Zeichen oder Mehrbyte-Zeichenfolgen irrtümlicherweise für Standardzeichenfolgen gehalten werden.
  • Das folgende Beispiel veranschaulicht den Quellcode in der Programmsprache „C”, mit dem häufig Pufferspeicherplatz für die Aufnahme von Daten zugeordnet wird. Der Pufferspeicher wird unter Verwendung der „C”-Routine „malloc” dynamisch zugeordnet.
  • Das folgende Beispiel würde durch einen Angreifer ausnutzbar, wenn einer der kommentierten fehlerhaften „,malloc”-Aufrufe verwendet würde. Beispielcode
    Figure DE112014002789T5_0002
  • Die Ausgabe der printf()-Anweisung würde wie folgt lauten:
    Strlen() output: 0
    Wcslen() output: 53
    Quelle: https://www.owasp.org/index.php/Improper_string_length_checking, erhältlich unter der „Creative ””-Urheberrechtslizenz.
  • Eine Verdoppelungskomponente 510 der Verteilungskomponente 300 erzeugt eine Kopie der empfangenen HTTP-Anforderung (Schritt 605).
  • Die Verfolgungskomponente 515 hängt einen eindeutigen Bezeichner an die empfangene Anforderung und an die Kopie der empfangenen Anforderung an. Der eindeutige Bezeichner dient zum Verfolgen der Anforderungen (ursprüngliche Anforderung und doppelte Anforderung) innerhalb des Sicherheitsnetzwerks, so dass die Vergleichskomponente 305 die empfangene Anforderung und die doppelte Anforderung einwandfrei erkennen kann.
  • Die Übertragungskomponente 520 überträgt die empfangene Anforderung an einen Web-Proxy-Server 110a des Typs A und die doppelte Anforderung an einen zweiten Web-Proxy-Server 110b des Typs B (Schritt 610). Dem Fachmann dürfte klar sein, dass es unerheblich ist, an welchen Web-Proxy-Server 110a, 110b die empfangene Anforderung oder die doppelte Anforderung gesendet werden, so lange die ausgewählten beiden Web-Proxy-Server 110a, 110b nicht identisch sind, d. h. solange sie von unterschiedlicher Art sind.
  • Die beiden Web-Proxy-Server 110a, 110b empfangen die HTTP-Anforderung für Ressourcen und fahren fort, indem sie die Anforderung verarbeiten. Da die beiden Web-Proxy-Server 110a, 110b nicht identisch sind und auf verschiedene Art und Weise funktionieren, kann das folgende Szenario auftreten.
  • Der Web-Proxy 110a des Typs A fährt fort, indem er die empfangene Anforderung verarbeitet. In diesem Beispiel misst der Web-Proxy-Server 110a des Typs A die Größe oder Art der in der empfangenen Anforderung enthaltenen Daten nicht korrekt und ordnet Arbeitsspeicherplatz zu, indem er eines der fehlerhaften Verfahren aus den oben erwähnten Codefragmentbeispielen verwendet. Infolgedessen kommt es in dem Web-Proxy-Server 110a des Typs A zu einem Pufferüberlauf, bei dem Codeanweisungen durch Benutzerdaten überschrieben werden können. Das Ergebnis ist abhängig von den Anweisungen, die von dem Angreifer bereitgestellt werden, wobei jedoch in der Regel keine Daten an das übrige Netzwerksystem 100 weitergeleitet werden, sondern anstelle dessen die Steuerung des Web-Proxy-Servers 110a vom Typ A an den Benutzer übergeben wird, d. h. der Benutzer hat sich erfolgreich als Systemadministrator an dem Web-Proxy-Server 110 des Typs A angemeldet.
  • Der Web-Proxy-Server 110b des Typs B empfängt die doppelte Anforderung und fährt fort, indem er die Anforderung verarbeitet. In diesem Beispiel bewertet der Web-Proxy des Typs B die Größe der Daten in der empfangenen URL-Anforderung und ordnet auf korrekte Art und Weise Arbeitsspeicher zu.
  • Infolgedessen verarbeitet der Web-Proxy-Server 110b des Typs B die empfangene Anforderung, indem er:
    • • eine Fehlermeldung an den Benutzer zurückgibt und keinerlei Daten an das übrige System weiterleitet, oder
    • • die von dem Benutzer bereitgestellten Daten abschneidet, bis sie eine gültige Länge aufweisen, und nur die verbleibenden Daten an das übrige Netzwerksystem 100 weiterleitet, oder
    • • ausreichend Arbeitsspeicher für die Daten in der empfangenen Anforderung zuordnet und vermeidet, dass Codebefehle durch Daten überschrieben werden.
  • Mit Blick auf 5b und 6 weist die Vergleichskomponente 305 eine Abfangkomponente 525 auf, um die Ausgabe von den Web-Proxy-Servern 110a, 110b abzufangen (Schritt 615). Die Abfangkomponente 505 empfängt die Ausgabe von dem Web-Proxy-Server 110a des Typs A (Pufferüberlauf – Daten werden überschrieben) sowie die Ausgabe von dem Web-Proxy-Server 110b des Typs B (korrekte Ausgabe).
  • Eine Vergleichskomponente 530 analysiert und vergleicht jede der empfangenen Ausgaben. Die Vergleichskomponente 530 verfügt über eine Schnittstelle zu einer Ermittlungskomponente 540. Die Ermittlungskomponente 540 ermittelt in Kombination mit einer Datenbank von Regeln 545, ob es einen Unterschied zwischen den beiden Ausgaben gibt (Schritt 620). Wenn kein Unterschied ermittelt wird, leitet eine Durchleitungskomponente 550 die HTTP-Anforderung (die empfangene Anforderung oder die Kopie der empfangenen Anforderung) an einen geeigneten Server 115 weiter, um die Anforderung zu erfüllen. Wenn die Ermittlungskomponente 540 einen Unterschied zwischen der Ausgabe von Typ A und der Ausgabe von Typ B ermittelt, wird von einer Warnsignalerzeugungskomponente 535 ein Warnsignal erzeugt (Schritt 625), um die Ausführung der Ausgabe von den beiden Web-Proxy-Servern 110a, 110b zu blockieren (Schritt 630).
  • Bei einer weiteren Ausführungsform weisen die Ermittlungskomponente 540 und die Datenbank 545 zusätzliche Logik auf, welche die Ermittlungskomponente 540 in die Lage versetzt, eine „erwartete” Ausgabe von einem Web-Proxy-Server 110a, 110b eines bestimmten Typs zu erkennen. Auf diese Weise kann die Ermittlungskomponente 540 erkennen, welche Ausgabe von einem Web-Proxy-Server 110a, 110b an einen Server 115 weitergeleitet werden kann und welche Ausgabe von einem Web-Proxy-Server 110a, 110b blockiert werden sollte.
  • Die Vergleichskomponente 305 und die Verteilungskomponente 300 funktionieren auch in umgekehrter Richtung (4 und 7). Sobald der Server 115 die Anforderung für Ressourcen erfüllt hat, wird eine Antwortnachricht, welche die angeforderten Ressourcen aufweist, über das Netzwerk 120 an eine Verteilungskomponente 300 und ihre Teilkomponenten 505 bis 515 zurück übertragen (Schritt 700). Die Verteilungskomponente 300 fährt fort, indem sie eine Kopie der Antwortnachricht erstellt (Schritt 705) und einen eindeutigen Bezeichner an die Antwortnachricht und an die Kopie der Antwortnachricht anhängt. Die empfangene Antwortnachricht und die Kopie der Antwortnachricht werden zur Verarbeitung an nicht identische Web-Proxy-Server 110a, 110b übertragen.
  • Die Ausgabe der nicht identischen Web-Proxy-Server 110a, 110b wird zur Verarbeitung an eine Vergleichskomponente 305 gesendet (Schritt 710). Die Vergleichskomponente 305 und ihre Teilkomponenten 525 bis 560 empfangen die Ausgabe von dem Web-Proxy-Server des Typs A und dem Web-Proxy-Server des Typs B (Schritt 715). Eine Vergleichskomponente 530 vergleicht die beiden Ausgaben miteinander. Die Vergleichskomponente 530 verfügt über eine Schnittstelle zu einer Ermittlungskomponente 540 (in Kombination mit einer Datenbank von Regeln 545) und ermittelt, ob es einen Unterschied zwischen den beiden Ausgaben gibt (Schritt 730). Wenn kein Unterschied ermittelt wird, sendet die Ermittlungskomponente 540 die Antwortnachricht, welche die angeforderten Ressourcen enthält, an eine Durchleitungskomponente 550 zur Übertragung an den anfordernden Client 105. Wenn die Ermittlungskomponente 540 einen Unterschied zwischen den beiden Ausgaben ermittelt, wird ein Warnsignal erzeugt (Schritt 725), um die Ausführung der Ausgabe von den beiden Web-Proxy-Servern 110a, 110b zu blockieren (Schritt 730).
  • Ein Warnsignal wird von der Warnsignalerzeugungskomponente 535 der Vergleichskomponente 305 erzeugt. Das Warnsignal veranlasst nicht nur die Ausgabeblockierkomponente 555, eine oder beide Ausgaben der Web-Proxy-Server 110a, 110b zu blockieren, weil ein zerstörerischer Angriff erkannt wurde, sondern eine Klassifizierungskomponente 560 interagiert mit der Warnsignalerzeugungskomponente 535, um die Art von Angriff zu klassifizieren, so dass ein Bericht erstellt werden kann, der angibt, welche Aktion der Web-Proxy-Server 110a, 110b gerade durchführen wollte und warum dies als ein zerstörerischer Angriff eingestuft wurde. Angriffsarten können z. B. eine SQL-Injection-Attacke, eine fehlerhafte Sicherheitskonfiguration oder ein Pufferüberlaufangriff sein.
  • Obwohl eine bevorzugte Ausführungsform mit Blick auf ein Verwenden von zwei nicht identischen Web-Proxy-Servern und ein Vergleichen der Ausgaben beschrieben wurde, dürfte für einen Fachmann offensichtlich sein, dass auch mehr als zwei nicht identische Web-Proxy-Server verwendet werden können, ohne vom inhaltlichen Umfang der Erfindung abzuweichen.
  • Der Fachmann weiß, dass Aspekte der vorliegenden Erfindung als ein System, Verfahren oder Computerprogrammprodukt ausgeführt werden können.
  • Entsprechend können Aspekte der vorliegenden Erfindung in Gestalt einer vollständig in Hardware realisierten Ausführungsform, einer vollständig in Software realisierten Ausführungsform (z. B. Firmware, residente Software, Mikrocode usw.) oder in Gestalt einer Ausführungsform vorliegen, die Software- und Hardware-Aspekte vereint, welche zusammenfassend als „Schaltung”, „Modul” oder „System” bezeichnet werden können. Zudem können Aspekte der vorliegenden Erfindung in Gestalt eines Computerprogrammprodukts vorliegen, das in einem oder mehreren computerlesbaren Medien ausgeführt ist, auf denen computerlesbarer Programmcode enthalten ist.
  • Dabei kann eine beliebige Kombination aus einem oder mehreren computerlesbaren Medien genutzt werden. Das computerlesbare Medium kann ein computerlesbares Signalmedium oder ein computerlesbares Speichermedium sein. Ein computerlesbares Speichermedium kann z. B. ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleitersystem bzw. eine entsprechende Vorrichtung oder Einheit oder aber eine beliebige geeignete Kombination der vorgenannten Elemente sein, ohne jedoch auf diese beschränkt zu sein. Konkretere Beispiel des computerlesbaren Speichermediums würden Folgendes beinhalten (wobei dies eine nicht vollständige Liste darstellt): eine elektrische Verbindung mit einem oder mehreren Leitern, eine tragbare Computerdiskette, eine Festplatte, einen Direktzugriffsspeicher (RAM), einen Festwertspeicher (ROM), einen löschbaren, programmierbaren Nur-Lese-Speicher (EPROM- oder Flash-Speicher), einen Lichtwellenleiter, einen tragbaren Compact-Disc-Festwertspeicher (CD-ROM), eine optische Speichereinheit, eine magnetische Speichereinheit oder eine beliebige geeignete Kombination der vorgenannten Elemente. In Verbindung mit diesem Dokument kann ein computerlesbares Speichermedium jedes physische Medium sein, das ein Programm enthalten oder speichern kann, welches von oder in Zusammenhang mit einem der Befehlsausführung dienenden System, einer Vorrichtung oder Einheit verwendet wird.
  • Ein computerlesbares Signalmedium kann ein weitergeleitetes Datensignal mit darin enthaltenem computerlesbarem Programmcode enthalten, z. B. als Basisband oder als Teil einer Trägerwelle. Ein derartiges weitergeleitetes Signal kann eine beliebige Vielfalt von unterschiedlichen Formen annehmen, einschließlich, ohne auf diese beschränkt zu sein, eine elektromagnetische Form, eine optische Form oder auch jede geeignete Kombination derselben. Ein computerlesbares Signalmedium kann ein beliebiges computerlesbares Medium sein, das kein computerlesbares Speichermedium ist und das ein Programm übermitteln, weiterleiten oder übertragen kann, welches für die Nutzung durch oder in Verbindung mit einem/einer der Befehlsausführung dienenden System, Vorrichtung oder Einheit vorgesehen ist.
  • Auf einem computerlesbaren Medium enthaltener Programmcode kann unter Verwendung eines beliebigen geeigneten Mediums übertragen werden, einschließlich, ohne auf diese beschränkt zu sein, drahtlose, drahtgebundene, Lichtwellenleiterkabel-, HF- und andere Medien oder eine beliebige Kombination derselben.
  • Computerprogrammcode für das Ausführen von Arbeitsschritten für Aspekte der vorliegenden Erfindung kann in einer beliebigen Kombination von einer oder mehreren Programmiersprachen geschrieben sein, unter anderem eine objektorientierte Programmiersprache wie Java, Smalltalk, C++ oder ähnliche sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C” oder ähnliche Programmiersprachen. Der Programmcode kann vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Softwarepaket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder aber vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. Im letztgenannten Szenario kann der entfernt angeordnete Computer über eine beliebige Art von Netzwerk, unter anderem lokales Netz (Local Area Network, LAN) oder ein Weitverkehrsnetz (Wide Area Network, WAN), mit dem Computer des Benutzers verbunden sein, oder die Verbindung kann mit einem externen Computer (z. B. über das Internet unter Verwendung eines Internet-Dienstanbieters) hergestellt werden.

Claims (15)

  1. Netzwerksicherheitssystem zum Erzeugen eines Warnsignals als Reaktion darauf, dass eine Sicherheitslücke in einem Proxy-Server in einem Datenverarbeitungsnetzwerk erkannt wird, wobei das System aufweist: eine Verteilungskomponente, aufweisend: eine Abfangkomponente zum Abfangen einer Anforderung für eine Ressource von einer Client-Einheit; und eine Verdoppelungskomponente zum Erzeugen eines doppelten Exemplars der abgefangenen Anforderung und zum Weiterleiten der abgefangenen Anforderung an eine erste Art von Proxy-Server sowie zum Weiterleiten des doppelten Exemplars der abgefangenen Anforderung an eine zweite Art von Proxy-Server, wobei die erste Art von Proxy-Server und die zweite Art von Proxy-Server nicht identische Arten von Proxy-Servern sind; eine Vergleichskomponente, aufweisend: eine Abfangkomponente zum Empfangen der Ausgabe von der ersten Art von Proxy-Server und von der zweiten Art von Proxy-Server; eine Vergleichskomponente zum Vergleichen der Ausgabe der ersten Art von Proxy-Server mit der Ausgabe der zweiten Art von Proxy-Server; eine Ermittlungskomponente, die als Reaktion auf ein Vergleichen der Ausgaben ermittelt, ob sich die Ausgabe der ersten Art von Proxy-Server und die Ausgabe der zweiten Art von Proxy-Server voneinander unterscheiden, und eine Warnsignalerzeugungskomponente zum Erzeugen eines Warnsignals als Reaktion auf ein Ermitteln eines Unterschieds zwischen den Ausgaben.
  2. System nach Anspruch 1, des Weiteren aufweisend, dass eine Ausgabeblockiereinheit der Vergleichskomponente erkennt, dass ein Warnsignal erzeugt wurde, und die Ausgabe von einer oder beiden der ersten Art von Proxy-Server und der zweiten Art von Proxy-Server blockiert.
  3. System nach einem beliebigen vorangegangenen Anspruch, des Weiteren aufweisend, dass die Ermittlungskomponente ermittelt, dass sich die Ausgabe von der ersten Art von Proxy-Server und von der zweiten Art von Proxy-Server nicht voneinander unterscheiden, sowie eine Durchleitungskomponente zum Durchleiten der Ausgabe entweder von der ersten Art von Proxy-Server oder von der zweiten Art von Proxy-Server an einen Server, um die angeforderte Ressource abzurufen.
  4. System nach Anspruch 1, des Weiteren aufweisend, dass die Ermittlungskomponente eine Aktion erkennt, die für jede der Ausgaben durchgeführt werden soll, und dass sie des Weiteren ermittelt, dass eine oder beide der durchzuführenden Aktion unterschiedliche Aktionen sind.
  5. System nach Anspruch 4, des Weiteren aufweisend, dass die Ermittlungskomponente ermittelt, dass eine der durchzuführenden Aktionen einen Verarbeitungsfehler in einer oder beiden der ersten Art und der zweiten Art von Web-Proxy-Servern oder dem Server verursachen wird.
  6. System nach Anspruch 5, des Weiteren aufweisend, dass die Ermittlungskomponente ermittelt, dass der Verarbeitungsfehler eine Sicherheitslücke ist.
  7. Netzwerksicherheitssystem zum Erzeugen eines Warnsignals als Reaktion darauf, dass eine Sicherheitslücke in einem Proxy-Server in einem Datenverarbeitungsnetzwerk erkannt wird, wobei das System aufweist: eine Verteilungskomponente, aufweisend: eine Abfangkomponente zum Abfangen einer angeforderten Ressource von einem Server; und eine Verdoppelungskomponente zum Erzeugen eines doppelten Exemplars der abgefangenen angeforderten Ressource und zum Weiterleiten der abgefangenen angeforderten Ressource an eine erste Art von Proxy-Server sowie zum Weiterleiten des doppelten Exemplars der abgefangenen angeforderten Ressource an eine zweite Art von Proxy-Server, wobei die erste Art von Proxy-Server und die zweite Art von Proxy-Server nicht identische Proxy-Server sind; eine Vergleichskomponente, aufweisend: eine Abfangkomponente zum Empfangen der Ausgabe von der ersten Art von Proxy-Server und von der zweiten Art von Proxy-Server; eine Vergleichskomponente zum Vergleichen der Ausgabe der ersten Art von Proxy-Server mit der Ausgabe der zweiten Art von Proxy-Server; eine Ermittlungskomponente zum Ermitteln – als Reaktion auf ein Vergleichen der Ausgaben –, ob sich die Ausgabe der ersten Art von Proxy-Server und die Ausgabe der zweiten Art von Proxy-Server voneinander unterscheiden, und eine Warnsignalerzeugungskomponente zum Erzeugen eines Warnsignals als Reaktion auf ein Ermitteln eines Unterschieds zwischen den Ausgaben.
  8. System nach Anspruch 7, des Weiteren aufweisend, dass eine Ausgabeblockiereinheit der Vergleichskomponente erkennt, dass ein Warnsignal erzeugt wurde, und die Ausgabe von einer oder beiden der ersten Art von Proxy-Server und der zweiten Art von Proxy-Server blockiert.
  9. System nach einem beliebigen vorangegangenen Anspruch, des Weiteren aufweisend, dass die Ermittlungskomponente ermittelt, dass sich die Ausgabe der ersten Art von Proxy-Server und der zweiten Art von Proxy-Server nicht voneinander unterscheiden, und dass sie die Ausgabe entweder von der ersten Art von Proxy-Server oder von der zweiten Art von Proxy-Server an eine Client-Einheit durchleitet.
  10. System nach Anspruch 7, des Weiteren aufweisend, dass die Ermittlungskomponente eine Aktion erkennt, die für jede der beiden Ausgaben durchgeführt werden soll, und dass sie des Weiteren ermittelt, dass eine oder beide der durchzuführenden Aktion unterschiedliche Aktionen sind.
  11. System nach Anspruch 10, des Weiteren aufweisend, dass die Ermittlungskomponente ermittelt, dass eine der durchzuführenden Aktionen einen Verarbeitungsfehler in einer oder beiden der ersten Art und der zweiten Art von Web-Proxy-Servern oder der Client-Einheit verursachen wird.
  12. System nach Anspruch 11, des Weiteren aufweisend, dass die Ermittlungskomponente ermittelt, dass der Verarbeitungsfehler eine Sicherheitslücke ist.
  13. Verfahren zum Erzeugen eines Warnsignals als Reaktion darauf, dass eine Sicherheitslücke in einem Proxy-Server in einem Datenverarbeitungsnetzwerk erkannt wird, wobei das System aufweist: Abfangen einer Anforderung für eine Ressource von einer Client-Einheit; Erzeugen eines doppelten Exemplars der abgefangenen Anforderung und Weiterleiten der abgefangenen Anforderung an eine erste Art von Proxy-Server sowie Weiterleiten des doppelten Exemplars der abgefangenen Anforderung an eine zweite Art von Proxy-Server, wobei die erste Art von Proxy-Server und die zweite Art von Proxy-Server nicht identische Arten von Proxy-Servern sind; Abfangen der Ausgabe von der ersten Art von Proxy-Server und von der zweiten Art von Proxy-Server; Vergleichen der Ausgabe der ersten Art von Proxy-Server mit der Ausgabe der zweiten Art von Proxy-Server; Ermitteln – als Reaktion auf ein Vergleichen der Ausgaben –, ob sich die Ausgabe der ersten Art von Proxy-Server und die Ausgabe der zweiten Art von Proxy-Server voneinander unterscheiden, und Erzeugen eines Warnsignals als Reaktion auf ein Ermitteln eines Unterschieds zwischen den Ausgaben.
  14. Verfahren zum Erzeugen eines Warnsignals als Reaktion darauf, dass eine Sicherheitslücke in einem Proxy-Server eines Datenverarbeitungsnetzwerks erkannt wird, wobei das System aufweist: Abfangen einer angeforderten Ressource von einem Server; und Erzeugen eines doppelten Exemplars der abgefangenen angeforderten Ressource und Weiterleiten der abgefangenen angeforderten Ressource an eine erste Art von Proxy-Server sowie Weiterleiten des doppelten Exemplars der abgefangenen angeforderten Ressource an eine zweite Art von Proxy-Server, wobei die erste Art von Proxy-Server und die zweite Art von Proxy-Server nicht identische Proxy-Server sind; Abfangen der Ausgabe von der ersten Art von Proxy-Server und von der zweiten Art von Proxy-Server; Vergleichen der Ausgabe der ersten Art von Proxy-Server mit der Ausgabe der zweiten Art von Proxy-Server; Ermitteln – als Reaktion auf ein Vergleichen der Ausgaben –, ob sich die Ausgabe der ersten Art von Proxy-Server und die Ausgabe der zweiten Art von Proxy-Server voneinander unterscheiden, und Erzeugen eines Warnsignals als Reaktion auf ein Ermitteln eines Unterschieds zwischen den Ausgaben.
  15. Computerprogramm, das Computerprogrammcode aufweist, um alle Schritte des Verfahrens gemäß einem beliebigen der Ansprüche 13 und 14 durchzuführen, wenn er in ein Computersystem geladen und ausgeführt wird.
DE112014002789.8T 2013-07-09 2014-04-04 Netzwerksicherheitssystem Pending DE112014002789T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1312298.1 2013-07-09
GB1312298.1A GB2516050A (en) 2013-07-09 2013-07-09 A Network Security System
PCT/IB2014/060428 WO2015004543A1 (en) 2013-07-09 2014-04-04 A network security system

Publications (1)

Publication Number Publication Date
DE112014002789T5 true DE112014002789T5 (de) 2016-03-17

Family

ID=49033548

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112014002789.8T Pending DE112014002789T5 (de) 2013-07-09 2014-04-04 Netzwerksicherheitssystem

Country Status (6)

Country Link
US (4) US9887963B2 (de)
JP (1) JP6271002B2 (de)
CN (1) CN105359157B (de)
DE (1) DE112014002789T5 (de)
GB (2) GB2516050A (de)
WO (1) WO2015004543A1 (de)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2516050A (en) 2013-07-09 2015-01-14 Ibm A Network Security System
EP3072261A4 (de) * 2013-11-19 2016-09-28 Ericsson Telefon Ab L M Prüfen der leistung einer schicht-3-proxyvorrichtung mittels datenverkehrsamplifizierung
US9571465B1 (en) 2014-09-18 2017-02-14 Amazon Technologies, Inc. Security verification by message interception and modification
WO2017044352A1 (en) 2015-09-11 2017-03-16 Curtail Security, Inc. Implementation comparison-based security system
US10462256B2 (en) 2016-02-10 2019-10-29 Curtail, Inc. Comparison of behavioral populations for security and compliance monitoring
US11818116B2 (en) * 2016-02-23 2023-11-14 Tokenex, Inc. Network gateway messaging systems and methods
US10200407B1 (en) * 2016-02-23 2019-02-05 TokenEx, LLC Network gateway messaging systems and methods
CN110875899B (zh) * 2018-08-30 2022-06-28 阿里巴巴集团控股有限公司 数据处理方法、系统以及网络系统
CN109508548B (zh) * 2018-11-19 2022-06-03 四川长虹电器股份有限公司 一种基于仿真器技术的威胁行为搜集系统及方法
CN110995640B (zh) * 2019-09-19 2022-04-05 中国银联股份有限公司 识别网络攻击的方法及蜜罐防护系统
US11336679B2 (en) * 2020-01-28 2022-05-17 International Business Machines Corporation Combinatorial test design for optimizing parameter list testing
CN111624869B (zh) * 2020-04-25 2023-03-28 中国人民解放军战略支援部队信息工程大学 自动感知攻击行为方法、系统及以太网交换机
CN114079634B (zh) * 2020-08-21 2024-03-12 深圳市中兴微电子技术有限公司 一种报文转发方法、装置及计算机可读存储介质
WO2022067835A1 (en) * 2020-10-01 2022-04-07 Nokia Shanghai Bell Co., Ltd. Method, apparatus and computer program
WO2022180690A1 (ja) * 2021-02-24 2022-09-01 日本電信電話株式会社 通信システム、通信装置、データ配信方法、及びプログラム

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2001237696A1 (en) 2000-03-03 2001-09-12 Sanctum Ltd. System for determining web application vulnerabilities
JP2003067269A (ja) * 2001-08-30 2003-03-07 Mitsubishi Electric Corp 不正アクセス検知装置及び不正アクセス検知方法
US7472421B2 (en) 2002-09-30 2008-12-30 Electronic Data Systems Corporation Computer model of security risks
US7203959B2 (en) * 2003-03-14 2007-04-10 Symantec Corporation Stream scanning through network proxy servers
US8533254B1 (en) * 2003-06-17 2013-09-10 F5 Networks, Inc. Method and system for replicating content over a network
US7757287B2 (en) 2004-04-19 2010-07-13 Computer Associates Think, Inc. Systems and methods for computer security
US7640245B1 (en) * 2004-06-08 2009-12-29 Microsoft Corporation System and method for auditing a network server configuration
US7657737B2 (en) * 2005-02-28 2010-02-02 International Business Machines Corporation Method for mapping an encrypted https network packet to a specific url name and other data without decryption outside of a secure web server
US8223965B2 (en) * 2006-05-05 2012-07-17 Broadcom Corporation Switching network supporting media rights management
US8156536B2 (en) * 2006-12-01 2012-04-10 Cisco Technology, Inc. Establishing secure communication sessions in a communication network
CN100449561C (zh) * 2007-03-05 2009-01-07 北京邮电大学 基于证书和透明加密的usb存储设备数据防泄密系统和方法
US20080282338A1 (en) 2007-05-09 2008-11-13 Beer Kevin J System and method for preventing the reception and transmission of malicious or objectionable content transmitted through a network
GB0804346D0 (en) * 2008-03-07 2008-04-16 Internet Business Group Ltd System and method of tracking internet use
US8286239B1 (en) 2008-07-24 2012-10-09 Zscaler, Inc. Identifying and managing web risks
JP5222662B2 (ja) * 2008-08-22 2013-06-26 株式会社日立製作所 コンテンツ制御システム
CN101571813B (zh) * 2009-01-04 2012-02-29 四川川大智胜软件股份有限公司 一种多机集群中主从调度方法
CN101888311B (zh) * 2009-05-11 2013-02-06 北京神州绿盟信息安全科技股份有限公司 一种防止网络内容被篡改的设备、方法和系统
US8370940B2 (en) 2010-04-01 2013-02-05 Cloudflare, Inc. Methods and apparatuses for providing internet-based proxy services
CN101877725B (zh) * 2010-06-25 2014-06-11 中兴通讯股份有限公司 分布式存储系统中的副本管理方法及装置
US9356951B2 (en) * 2010-07-09 2016-05-31 Hewlett Packard Enterprise Development Lp Responses to server challenges included in a hypertext transfer protocol header
EP2715600B1 (de) * 2011-05-31 2018-08-29 EntIT Software LLC Automatisierte sicherheitsprüfung
US20130019314A1 (en) 2011-07-14 2013-01-17 International Business Machines Corporation Interactive virtual patching using a web application server firewall
US8832264B2 (en) * 2012-03-01 2014-09-09 Justin Pauley Network appliance for monitoring network requests for multimedia content
US9203931B1 (en) * 2013-04-01 2015-12-01 Amazon Technologies, Inc. Proxy server testing
CN105284092B (zh) * 2013-06-13 2018-09-14 瑞典爱立信有限公司 通信系统中的业务优化
CN103346904B (zh) * 2013-06-21 2016-03-30 西安交通大学 一种容错的OpenFlow多控制器系统及其控制方法
GB2516050A (en) 2013-07-09 2015-01-14 Ibm A Network Security System

Also Published As

Publication number Publication date
JP6271002B2 (ja) 2018-01-31
US10110565B2 (en) 2018-10-23
US11082405B2 (en) 2021-08-03
GB2531677B (en) 2020-07-22
US9887963B2 (en) 2018-02-06
CN105359157B (zh) 2017-12-29
GB201602072D0 (en) 2016-03-23
US10587581B2 (en) 2020-03-10
GB2516050A (en) 2015-01-14
US20200153799A1 (en) 2020-05-14
CN105359157A (zh) 2016-02-24
US20180103012A1 (en) 2018-04-12
JP2016524261A (ja) 2016-08-12
GB201312298D0 (en) 2013-08-21
US20180337890A1 (en) 2018-11-22
US20160164840A1 (en) 2016-06-09
WO2015004543A1 (en) 2015-01-15
GB2531677A (en) 2016-04-27

Similar Documents

Publication Publication Date Title
DE112014002789T5 (de) Netzwerksicherheitssystem
DE112014001229B4 (de) Verfahren, Datenverarbeitungssystem und Computerprogrammprodukt zum Verarbeiten einer Datenbank-Client-Anforderung
DE112011101831B4 (de) Schutz vor websiteübergreifenden Scripting-Attacken
DE10249428B4 (de) Verfahren zum Definieren der Sicherheitsanfälligkeiten eines Computersystems
DE60017319T2 (de) Verfahren und Vorrichtung zur Bereitstellung adaptierbarer Sicherheits- und Aufzeichnungsprotokolle in einer Servleteinrichtung
CN109274637B (zh) 确定分布式拒绝服务攻击的系统和方法
DE69922857T2 (de) Rechnersicherheit durch Virusuntersuchung
US9208309B2 (en) Dynamically scanning a web application through use of web traffic information
DE112013004315T5 (de) Überprüfen der geographischen Adresse einer Arbeitslast in einer Cloud-Computing-Umgebung
DE112015004500T5 (de) Automatisierte Verwaltung von vertraulichen Daten in Cloud-Umgebungen
DE102016203565A1 (de) Identifizieren von bösartigen Web-Infrastrukturen
DE112017004033T5 (de) Verfahren zum Erhalten von geprüften Zertifikaten durch Mikrodienste in elastischen Cloud-Umgebungen
DE10249427A1 (de) System und Verfahren zum Definieren des Sicherheitszustands eines Computersystems
DE112012002889T5 (de) Authentifizieren eines Rich Clients aus einer bestehenden Browser-Sitzung heraus
DE112012003977T5 (de) Eingriffsfreies Verfahren und Vorrichtung zum automatischen Zuteilen von Sicherheitsregelnin einer Cloud-Umgebung
DE202012013482U1 (de) Verteilung von Zugriffsinformationen auf Overlay-Netzwerken
DE102014206325A1 (de) Verteiltes Authentifizierungssystem
CN106131090B (zh) 一种web认证下的用户访问网络的方法和系统
DE112011102224T5 (de) Identitätsvermittlung zwischen Client- und Server-Anwendungen
DE102019104680A1 (de) Paketverarbeitung in einem Computersystem
DE102023201190A1 (de) Erkennung eines bösartigen domänenerzeugungsalgorithmus (dga) im speicher einer datenverarbeitungseinheit unter verwendung von maschinenlernenden erkennungsmodellen
DE102011077513A1 (de) Verfahren zur sicheren Verarbeitung von Daten
DE112021005862T5 (de) Selbstprüfende blockchain
DE112022000856T5 (de) Vereinheitlichte richtliniendurchsetzungsverwaltung in der cloud
DE112021006405T5 (de) System und Verfahren zur Eindringungserkennung von Malware-Datenverkehr

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication