 Heute Abend wird über Internet Scanning sein und wie man seiner EYE selber eine Internet Service Provider wird. Also ein Internet-Verhöhungssteller. Hallo. Willkommen zum Vortrag Internet Scanning, Herausforderungen und neue Herangehensweisen. Ich arbeite mit Internet Scanning und mein zweitlieftes Projekt ist das Hacken von Industrial Control Systemen. In den Control Systemen für Industrieanlagen und ich habe da Sicherheits-Sachen Probleme gefunden und ich war bei der Bleckheit USA, habe dort doch übergedeht, wie man Industrial Control Systeme im Internet findet und wie man sie übernimmt. Und ich habe auch etwas bei anderen Konferenzen veröffentlicht. Was ist die Idee hinter dem Vortrag? Wie man die Infrastruktur für das zum Scanning des Internets aufsetzt. Mein Problem war, dass Shodan I.O. die Rohdaten nicht gratis zur Verfügung stellt und als Forscher möchte man die Rohdaten haben. Vielleicht sind da Fehler oder keine Fehler in den Daten des Baut auf. Außerdem hat Shodan.io keine klaren Schnappschüsse vom Internet darstellt. Sie scannen das Internet, aber sie löschen die Alten nicht weg. Neue Informationen kommen hinzu, aber die Alten bleiben drin. Wenn wir die dynamischen IP-Adressen anschauen, dann haben wir jeden einen Server mehrmals in diesem Datenbank. Und das bedeutet, dass wir keine sauberen Daten haben. Zensus I.O. ist auch sehr gut. Sie sind jetzt ein Start-up. Das heißt, es gibt immer noch die Rohdaten nicht mehr gratis und sie haben auch Inkonsistenzen in der Datenbank, die ich später beschreiben möchte. Außerdem müssen wir doch überdenken, dass die Menschen, die diese Plattformen laufen lassen, sie wissen, wonach wir suchen. Und die Frage ist, was machen sie mit diesen Daten? Zweitens, wer hätte vielleicht Interesse daran, was wir suchen? Und darum ist es besser, das Internet selber zu scannen. Hier ein Beispiel von Shodan. Ihr Telnet Shodan sagt, wir haben 4.800.000 Hausten. Andere sagen, dass es ungefähr 3,1 Millionen sind. Unsere Gans zeigen, dass wir 3... Man kann erkennen, dass Shodan sehr viele Systeme in ihrer Datenbank hat und deswegen wird davon ausgehen, dass sie einfach keine sauberen Scans des Internets bereitstellen. Man sieht sehr oft, wenn man es dann selber scannt, dass sie gar nicht erreichbar sind. Und im nächsten Fall sieht man, dass sie weitere Inkonsistenzen sind. Ich frage hier, gibt mir alle HTTPS-Hosts, die auf Port 443 reagiert haben. Ich habe das selbe mal schon mal gemacht. Und das beginnt mit einem Statuscode, also mit dem HTTPS-Statuscode, um zu sehen, wer wirklich antwortet. Und man braucht den Statuscode, um einen vollen HTTPS-Handshake kriegen. Und eigentlich sollte das dasselbe sein, aber da sind 6 Millionen Unterschied zwischen 41 und 35 Millionen. Das zeigt, dass es deutliche Inkonsistenzen gibt und deswegen kann ich die auch nicht ernsthaft verwenden für meine Forschung. Aber ich habe auch keinen Zugang zu den Rohdaten. Und mal am Anfang des Jahres gab es ein anderes Projekt, das hieß Packetel. Das waren ein paar andere Forscher, die gesagt haben, man kann einfach das Internet-Scan mit einem Mass-Scan... ...braucht ungefähr 2 Stunden und dann geben wir es an alle raus, um sonst raus. Und das Problem ist, dass sie dann bei Spam-Networks ein Problem hatten. Sie kriegen, dann werden sie als Botnet identifiziert, weil sie einfach so viele Pakete rausschicken. Und das Problem führte dann zu Packetel. Ihr ISP hat sie dann rausgeworfen. Ihr könnt nicht einfach mehr scannen. Und dann gab es noch ein paar weitere Geschichten, die sich dann so ergeben haben. Also zum Beispiel haben sie Spam-Hos versucht anzenerven. Und am Schluss wurden sie dann gedosst und dann wurde ihr Service einfach abgeschaltet. Also der Talk soll jetzt darum gehen, wie man eine Infrastruktur aufsetzt, die für große Scans, Massenscans im Internet ereignet. Ich bin meistens interessiert an relativ exotischen Dingen, zum Beispiel BGP oder autonome Systeme. Und dieses Talk wird jetzt darüber zu reden in diesem Vortrag, wie wir dieses Framework aufsetzen müssen. Also das erste ist, wie wir das Ganze richtig scannen. Und das zweite, wie wir die Ergebnisse richtig importieren müssen. So, was ist jetzt die Historie dazu? Unser erster Ansatz war, nimm einen sehr schnellen Scanner und lasst ihn einmal über das gesamte Netz laufen lassen von einer einzigen IP. Aber die Idee ist natürlich sehr schlecht, weil man wird relativ schnell lockiert werden. Und du kriegst eine Menge Abuse-Notifications an deinen ISP und dann bist du im Prinzip schon weg vom Fenster. Dann war die Idee, nimm einfach 20 virtuelle Surfer, vielleicht global verteilt für 4 bis 10 Dollar pro Monat. Die Resultate dürften besser sein. Aber du hast immer noch das Problem, dass du ein Haufen Abuse-Nachrichten an deinen Provider erleben wirst. Und dann wissen wir uns immer wieder, neue Visa war. Und wir werden rausgeworfen werden, genau wie das mit Packetel versucht ist. Die Idee war dann, als nächstes wir holen uns ein Slash 29 V4-Adressblock von unserem ISP. Dann machen wir den eigenen HUSDB-Eintrag mit einer speziellen Abuse-Adresse. Aber das Problem ist, dass manche Abuse-Nachrichten nicht nur zu dem Mail-Kontakt gehen, sondern auch zu dem Maintainer, also zu deinem ISP. Und dann hast du immer noch das gleiche Problem, dass die Abuse-Messages und dass das Locken unserer Pakete weiterhin passieren wird. Also am Ende haben wir immer noch Probleme und nicht wirklich was gelöst. Wir haben ein Haufen von unseren Abuse-Messages selber gehandelt, aber es war letzten Endes zu kompliziert und hat auch nicht zum Ziel geführt. Die letzte Idee war dann noch, wir machen einfach unseren eigenen ISP auf. Das heißt, wir wurden ein RIP-Mitglied und haben unser eigenes autonomes System aufgemacht und ein eigenes Slash 22 Netzwerk gekriegt. Das kostet ungefähr 2.000 Euro im Jahr für das Sign-Up und dann noch mal 1.400 pro Jahr für die Mitgliedschaft. Dann haben wir uns zwei verschiedene Kolos gesucht, also Räume bei einem Internetanbindung. Und noch mal ein Slash 29, das kostet uns ungefähr 350 Euro im Monat. Dann benutzen wir Auto-Replies für unsere Abuses-E-Mails. Wenn sie von uns genervt werden, dann kriegen sie automatisch eine Antwort, mit der wir erklären, was unser Forschungsansatz ist und warum wir das machen. Und das Ergebnis war, dass die Abuse-Nachrichten sich auf ungefähr 90 Prozent reduziert haben. Nach die Anzahl der Listungen auf einer Blacklist sind auch massiv runtergegangen, auch ungefähr um 90 Prozent. Das heißt, wir haben 1.024 verschiedene, also ein Slash 24, und das war eine wirklich gute Idee, um das Ganze zu verteilen. Wir sagen im Prinzip meistens 0.0.0.0, also das ganze Internet. Dann müssen wir gucken, was für ein Scan-Algorithmus wir verwenden, und dann nehmen wir den ganzen IP4-Adressraum, machen kleine Teilchen daraus und geben jede dieser kleinen Pakete an, irgendwie Knoten im Cluster, die das dann ausführen und den Scan auf diesen IPs durchführen. Und deswegen hier ist jetzt, wenn jetzt Suchknoten fehlschlagen, und wenn das Paket, an dem die gearbeitet haben, muss dann nochmal zugewiesen werden durch den Scanmaster an einen anderen Knoten. Das ist ein Rückfall, also ein Backup, das wir haben, weil Leute, die Setmap das viel verwenden, merken, dass es manchmal schief geht, und dann muss man zurücklaufen, und dann muss man den Kommando selber rausfinden, uns nochmal ausführen, und das ist ziemlich kompliziert. Und wenn wir unsere globale Infrastruktur aufsetzen wollen, dann brauchen wir einen Scanmaster, der das alles für uns macht, so dass wir dieses Vikaver nicht selber durchführen müssen. Und der Suchklasse, den wir haben, der besteht aus verschiedenen Bestandteilen, die beide in der Kohle sitzen. Also das erste ist der Suchscanner, der das aus dem Internet zieht. Dann haben wir einen App-Scanner, das ist SetGrab, den wir ein bisschen verändert haben. Und die ganze Daten, die wir dann haben, geht dann am Schluss zum Aggregator, der dann prüft, wenn ein Entsuchknoten viel schlägt und ein anderer das holt, dann kann es passieren, dass man hier ein Ergebnis mehrfach hat. Der Aggregator muss das dann rausfiltern und muss darauf achten, dass man nicht mehrere Dinge von dem gleichen Netz im Ergebnis hat. Und das ist aber natürlich noch nicht genug, weil man muss ja auch noch die Ports auflisten, die ganzen Applikationen, die darauf laufen, und das muss man alles anreichern. Und dazu benutzen wir auch eine WHOIS-Datenbank. Das heißt, wir fragen ab, WHOIS, der ist 8.8.8.8. Und dann kriegt man halt das Ergebnis der Anfrage, wer, wie ihm gehört, dieses AS, das sind ein paar Google. Dann kann man auch noch rausfinden, wie Wurstiness und GOIP, also rausfinden, was ist der Hausname, wo ist es, dann kann man gucken, welcher AS ist Gehörn dazu und welches BGP-Routing liegt da an. Und für die Storage-Lösung haben wir am Ende Elasticsearch benutzt. Das ist mit die Beste, die ich bisher gesehen habe. Wir haben riesige Daten wegen der Reihen gepumpt, das ist überhaupt kein Problem. Und das ist im Moment, was die suchen, die wir im Moment unterstützen. Wir haben offensichtlichen Fokus auf industriellen Protokollen, aber wir haben auch ein paar andere, die Self-Graph einfach nativ unterstützt. So, jetzt ein paar Zahlen und auch ein paar Einstellungen. Wir haben ungefähr 4,3 Milliarden IP-Adressen, also IPv4, und nur 2,8 Milliarden IP-Adressen sind überhaupt nur in der Routik-Tabelle. Das heißt, man kann 35% weniger Sympakete schicken, als man sonst müsste, um das erst mal zu durchsuchen. Das heißt, wenn man diese Informationen, was davon überhaupt nicht routbar ist, reduzieren kann, dann kann man das sofort ausschließen. Wenn man nicht einfach sinnlos rausbläst, dann kann man sich eine Haufen Arbeit sparen. Der ist zum Beispiel auch keinen Sinn darin, dass man irgendwie private Adressen abfragt. Das kann man natürlich lassen. Aber jetzt muss man sich überlegen, ein Sympaket ist ungefähr 70, weit groß. Das heißt, mal 2,8 Milliarden IPv4-Adressen ist nur für das SynScan braucht man schon 200 Gigabyte Daten. Aber das Interessante daran ist, man wird wahrscheinlich nur 2% Antworten davor aufkriegen, maximal. Das meist genutzte Protokoll im Internet ist die HTTP. Das sind ungefähr 56 Millionen Hosts durch 2,8 Milliarden. Das heißt, man hat eine maximale Hitrate von 2%. Das heißt, 98% aller Sinnpakete ist einfach nur overhead und fliegt raus. Jetzt ist die Frage, muss man ein oder zwei Sins machen? Wir haben es ausprobiert und zwei Sins macht keinen großen Unterschied, weil fast nichts sich ändert dabei. Es ist vielleicht ein bisschen bessere Ergebnisse. Aber in manchen Fällen, wie bei SSH, ist es sogar so, dass es schlechter wird. Wenn ihr es jetzt vergleicht mit Senses, seht ihr, dass unsere Ergebnisse relativ identisch sind mit deren. Das heißt, unser Setup funktioniert im Büro. Wir haben mehr Source-Adressen als die, weil wir einen Slash 23 verwinsten, statt einem Slash 24. Man muss dazu sagen, Senses lässt deutlich mehr scannen. Das heißt, die sind wahrscheinlich auf mehr Blacklist. Also daher kommen auch unsere besseren Ergebnisse her. Jetzt ist die Frage, wie geht es mit der Geschwindigkeit weiter? Was ist unser Durchsetzter? Wir haben für 70 Ambit pro Sekunde, die wir raushauen können. Das heißt, wir brauchen 6 bis 7 Stunden pro Scan. Was passiert jetzt, wenn ich jetzt von einer Adresse rausschicke, was jeder kann, dass ich von einer auch scanne, dann macht der Scan zwar zwei Stunden schneller, aber dann wird durch die Blacklisting und andere Faktoren deine Ergebnisse so viel schlechter werden, dass dir ungefähr ein Drittel wegfällt. Ein paar Ideen. Stellen wir uns mal vor, es gibt einen neuen Remote Exploit, Zero Day auf der Erde. Wir wollen, dass Internet sehr schnell, sehr häufig scannen. Also es ist nicht jede Woche, sondern jeden Tag oder alle 10 Stunden oder alle 20 Stunden oder sowas. Dann ist es eine sehr gute Idee, dafür zu sagen, dass Internet einmal zu scannen und dann die Bereiche, wo mindestens ein Haus drinnen ist, also die Internetbereiche, wo ein Haus drinnen ist, noch mal zu scannen. Das spart 25 bis 50 Prozent der IP-Adress-Bereich und des Scan-Times. Also ich nenne das BGP Prefix-Hitlist. Es ist hier veröffentlicht. Schaut es euch an, wenn es euch interessiert. Das ist sehr interessant. Das nächste Problem ist, wir sind unsere eigenen Internet-Service-Provider und auf einmal kamen dann die Polizei und sagten, ihr macht so komische Sachen. Sie haben gefragt, wer ist der Besitzer von dieser IP-Adresse? Wer benutzt diese IP-Adresse? Weil wir unsere Internet-Service-Provider sind und dann haben wir das bekommen, dann haben wir mit ihnen angerufen, nein, wir sind die Besitzer der IP-Adresse und wir benutzen sie für Internet Scans. Sie haben Angst. Normalerweise darf man sich selber informiert werden, dass man in IP-Adressen bereich bekommt. Wir sagen, hey, wir sind IT-Sicherheitsforscher, wir machen gute Sachen, wir informieren die Leute darüber und wir veröffentlichen. Das war kein Problem. Aber im ersten Moment habe ich sie e-mail gelesen und gesagt, das war sehr interessant. Hardware Setup. Es ist sehr wichtig, wenn wir viel Internet-Scan machen wollen, unterschiedliche Prozesse und die Daten aufreichend wollen. Die Menge der Daten ist ziemlich unterschiedlich, aber es sind ziemlich große Namen zu nummern. Ein einzelner Scan sind 700 Gigabyte, HTTPS sind 300 Gigabyte und Telnet sind einfach noch 2 Gigabyte in Daten. Also haben wir einen großen Zerwahl gekauft, der einen AMD-Epic 7551 hat. Wir haben zwei von diesen CPUs, einen Terabyte Arbeitsspeicher. Wir nutzen 40 Prozent von diesem Arbeitsspeicher für die Elastisch-Search und den Rest für Caching. Dann haben wir 40 Terabyte SSD-Daten. Die Daten, die nicht im Arbeitsspeicher liegen, müssen auf den SSD liegen. Wir haben viel HIO-Interaktion. Dann haben wir das Ganze auf einem Rate mit 0, damit es einfach schneller wird und damit wir es besser speichern können, also Langzeitspeichern können und da haben wir 27 Terabyte Festplatten, die in einem Rate 5 laufen. Also, unser erstes Problem war, wenn wir unser Server bekommen haben, haben wir Hardtop gestartet und wir konnten unsere Prozesse nicht sehen, weil wir hatten so viele CPUs und die hatten Hyperthreading, das heißt 128 CPUs und wir mussten uns erstes mal überhaupt anschauen, wie wir H-Top konfigurieren können, um uns ganze Prozesse sehen zu können. Außerdem, das ist ein interessanter Punkt. Elastic Search hat auch, muss auch ein bisschen angepasst werden oder konfiguriert werden. Die meisten Menschen achten riesigen Fehler. Sie haben viel Arbeitsspeicher und sie machen nur eine elastisch Search-Node oder Knoten. Wenn der Knoten mehr als 26 Gigabyte Arbeitsspeicher allociert, dann benutzt die virtuelle Maschine 64-Bit-Polzer einen stellevollen komprimierten 32-Bit-Pointer. Java macht einmal Key und wenn Sie jetzt die 64-Bit-Pointer benutzen, dann dauert jeder Lad, den Pointer laden, zweimal mehr Bandbreiter, weil die 64-Bit-Pointer viel größer sind als 32-Bit-Pointer. Und das, warum haben wir Elastic Search in mehrere Search Slots aufgeteilt und jeder Knoten hat maximal 26 Gigabyte und hat dazu geführt, dass wir eine Verbesserung von 30 bis 40 Prozent hatten, nur dadurch, dass wir die Datenbank in mehrere Server-Prozesse aufgespittelt haben. Wenn euch das interessiert, wie Java-Memory-Sachen mit Elastic Search macht, das ist hier ein sehr guten Artikel. Schauten euch an. So, erst uns mal die Ergebnisse anschauen. Was wir hier sehen, in Skibana ist eine Anzeige für Elastic Search und hier haben wir die interaktiven Möglichkeit, dass wir rund über sich über die AS, über autonome Systeme, die Struktur des Internets ist. Die meisten HTTP-Hosts von Amazon gehostet werden. Und das nächste größere System ist Akamai. Akamai ist ein Inhalt-Anlieferungssystem, das größte auf der Erde. Und im zweiten Ring haben wir die BGP-Prefixe. So, wo, die sind. Hier ist ein Slash 12 und hier ist noch ein 12 und ein Slash 13. Und im dritten Ring können wir sehen, oh, das ist Amazon. Das ist dieser spezifische BGP-Prefixe. Wir können uns auch anschauen, wie sind die Services da drin verteilt. Und das ist die Art und Weise, wie ich das Internet verstehe. Das Internet ist nicht über ein Blender, sondern über autonome Systeme, deren Prefixe und die internen Aufbauten von diesen Prefixen. Welche Services benutzen Sie? Hier sehen wir das Apache und Angex benutzt wird und ein paar andere Server. Wir können auch sehen, das ist Amazon und Akamai. Bei Akamai können wir sehen, jeder Server in diesem Prefix hat denselben Serverbanner. Akamai G-Host immer sehen nicht, was dafür ein Web-Server ist. Wir wissen nicht, was es ist. Es sind Engineics, aber sie haben den Banner angepasst. Und hier können wir den Unterschied zwischen zwei AS sehen. Amazon ist ein Hoster und Akamai ist ein Content Delivery Network. Und da haben Sie eine heterogelere Struktur. Wir haben auf Amazon geklickt und jetzt können wir uns anschauen, wie sieht Amazon genauer aus? Wie ist Amazon aufgebaut? Hier sehen wir die eigenen Prfixen. Die Serververteilung sind die Top 10 oder die Top 12 Prfixen und jetzt sehen wir die Whois-Information dazu. Jetzt wird es sehr interessant. Innen ist das AS außen ist das Prefix. Jetzt haben wir die Whois-Erklärung und den Whois-Prefix. Und wir sehen, dass Amazon ihr Netzwerk strukturiert. Sie haben ein Slash 12 und in diesem Slash ist ein Slash 26 in der US-Datenbank. Und wir können auch den Kunden sehen. Hier ist das Octa-Incooperation. Und hier sind die unterschiedlichen Amazon-Kunden und wir können uns anschauen, wie strukturiert Amazon ihr Internet-Bereich? Das ist der Kunden der X, Y und Z. Das ist Whois-Prefix von Themen. Und jetzt können wir uns anschauen, wie sieht die Server-Infrastruktur innerhalb des Netzes? Wir teilen es in kleinere und kleinere Schichten. Wir sehen die Struktur eines autonomen Systems aus. Das ist ein Video-Konferenzsystem und hier können wir uns sehen, welches Service sie benutzen. Wir können darauf klicken, wie die Zoom-Struktur die bei Amazon gehostet werden. Sie haben auch EngineX-Service und Zoom-Server und auch ein paar EngineX ohne Versionsinformation. Und wenn wir die Autonomensysteme benutzen und BGP-Prefix und Whois-Information dann haben wir eine gute Idee, wie das Ganze aufgebaut ist und wie das Internet aufgebaut ist. So, jetzt nochmal zurück. Hier lass uns mal OVH anschauen. OVH ist einer der größten europäischen Hausten und hier können wir auch den BGP-Prefix sehen. Also nochmal im Präsentationsmodus. Und hier sehen wir, sie benutzen dieses Slash 6.16 für ditizierte Server und sie benutzen das Slash 18 davon für was anderes. Wir benutzen dieses Slash 24 von einem anderen Netzwerk für Failover-IPs. Wir sehen Infrastruktur, Informationen, wie organisieren sie sich das selber. Das wäre vielleicht interessant für einen Angreifer oder sowas. Zudem sehen wir, welche Services sie anbieten. Alle Failover-IP-Adressen haben denselben Webserver, der draufläuft. Und was wir aus dem sehen können, ist welche Informationen benutzt OVS überhaupt im größten Teil Apache oder Ingenix und hier ist ein Liste von oben nach unten von der größeren, von der Anzahl. Jetzt haben wir ein komplett anderes autonomes System. Hier haben wir SSH ein anderes Protokoll und können sehen, dass GoDaddy keine internen Informationen daraus gibt. Alle WhoIsVlogs sind gleich und sie haben denselben Namen wie das autonomes System selber. Und außerdem sehr interessant, sie benutzen überall die selbe OpenSSH Version. Und so, wir können sehen, dass GoDaddy ein Hoster ist. Das heißt, er ist ein Webhoster. Das heißt, die Managen sind komplett anders gemanagt, wie OVH oder Amazon oder Akamai. Also wenn wir uns das hier anschauen, dann sehen wir unterschiedliche Kunden und wenn wir die WhoIs Informationen anschauen, dann kann die Customer von Amazon haben. Wir haben Cisco, Samsung, Zoom, unser Reiter. Das Nächstes. Wir können auch anschauen, wie strukturiert Amazon selbe AC2 in verschiedenen Fällen. SE2. Viele Hosts in Asia Pacific. Da haben sie ein großes 616 und wir können auch sehen, dass sie Airport-Abkürzungen für ihre Cluster benutzen. Also wir haben Dublin CDG, das ist Charles de Gaulle in Frankreich. Wir sehen FHA, das ist die Frankfurter und so weiter. Sehr interessant. Die ganzen WhoIs Informationen benalten sehr viele interessante Informationen, wie sie aufgebaut sind, wie sich die Firmen strukturiert und wir sehen auch, was sie mit ihren Subnetzen machen. Dann können wir noch ein paar weitere interessante Analysen durchführen. Ich habe gebeten, hey, sagt mir alle Microsoft iS 5.0. Was ist das Betriebssystem von diesen Servern? Es ist Windows 2000. Und dann habe ich gerade mal gesagt, hey, es hält mir die Subject Common Names. Also die Namen, die Servern-Hausnahmen auf einem Windows 2000-Server laufen, also einem alten System. Und dann sehen wir, dass die Leute ein paar alte Server ist noch nicht ausgeschaltet, aber dann können wir uns anschauen. Auf der rechten Seite ist der Startdatum. Wann das die Zertifikat gültig wurde und manche liefen seit langem weiter. Alte Vergästen des Servers bekommen keinen neuen. Es ist L-Zertifikate. Die Leute haben immer noch Windows 2000-Server laufen, die seit 10 oder 15 Jahren nicht mehr supportet werden und sie kriegen neue Zertifikate. Das ist für mich unglaublich, dass Menschen das machen. Außerdem ist es toll, dass diese Windows-Systeme noch am Laufen sind. Okay, die dunkle Seite uns angeschaut haben. Was wir uns auch anschauen können, ist, dass wir ein paar Hard-Bleed-Analysen, das ist ein alter Sicherheitslücke in den SSL und ich habe der Datenbank gesagt, Hallo, gibt mir mal eine Information über alle österreichischen Regierungsorganisationen, die ein TLS-Zertifikat haben, dass ein Fortinet-Zertifikat haben. Sie sind alle Hard-Bleed-Analysen. Und wir haben hier viele Informationen und deutsche Informationen. Das Büro des D-1 und so weiter. Wir können sehen, wer den Zertifikat ausgestellt hat, Fortinet ist und rechts sehen wir die unterschiedlichen Versionen der Firewall. Das war ein Scan von 2017. Das habe ich das ganze später gescannt. Und Sie haben die Fortinet- Firewalls ersetzt mit Sophos Firewalls. Jetzt können wir da nicht, dass wir unterschiedliche Zeitschichten uns anschauen und unterschiedliche Sachen sehen. Wenn man den Industrial Control System scannt, das ist jetzt ein S7 in einer Distribution, als eine Korrelations von den ökonomisch reichen Orten. Zum Beispiel die alte DDR, hier sind weniger Skada-Systeme. Hier im Westen, im Norditalien haben wir viele davon. Eine starke Bereich in Süddeutschland, in Südfrankreich auch weniger, ähnlich wie Stadtenland und England. Man kann das ökonomische Wert Stärke vom Internet ablesen. Wir sehen, es ist auch ein großes Problem überall gibt es Industrial Control Systeme im Internet. Also Panazahlen, es kommen, es Siemens in den S7 größtenteils in Deutschland. So, in den nächsten Analysen ich wollte schauen, ob nach Handbleed-Server suchen und April 2017 insbesondere in Afghanistan und im Autonomensystem, im Regierungs-Netzwerk und das ist etwas, das ich so noch nie so detailliert habe, das Netzwerk ist für die Kommunikation von 35 Bereichen Afghanistan. Und jetzt ist die Frage, wer hat das Zertifikat ausgestellt und das ist eine BF-Send Firewall. Das heißt, wenn wir diese eine Detailung machen zusammensetzt mit anderen Konfigurationen, kriegen wir sehr interessante Informationen. Ich bin sicher, dass die CAA euch das Ganze anschaut. So, jetzt ist es wirklich schlechte. In den Whois-Informations ist viele interessante Informationen. Das ist die Power Kraftwerk XYZ und hier sehen wir, das ist ein größerer Kohlenkraftwerk und wir sehen VPN Endpoints, die HTTPS benutzen und das ist ein Kapazität von ungefähr 5 Millionen Megawatt, das ist kein kleines Kraftwerk. Und jetzt das Scannendatum ist von 2018 wo wir die Daten herhaben im August 2018 und wir können sehen, dass das Zertifikat im Juli deaktiv ungültig wurde. Es ist kritische Infrastruktur mit einem ungültigen VPN-Zertifikat. Ich habe sie kontaktiert, ich habe nie eine Antwort bekommen, ich habe sie geschrieben und ich habe im November nochmal Nacht gescannt und immer noch das Zertifikat ist veraltet und jetzt habe ich einen neuen Scan gemacht und sie haben das Zertifikat im April 2019 geupdatet haben und das sind kritische Infrastruktur und das Leute sollten sich darum kümmern. Ich lebe in Deutschland, ich finde das nicht witzig. Jetzt ein paar weitere Powerplant noch ein weiteres Kraftwerk. Ist gerade nicht. Was wir hier sehen ist, wir suchen jetzt nach Kraftwerk und hier sehen wir die AS-Namen, die BGP-Präfixe und den Serverbanner. Die finde ich eben in Shodan und jetzt wollen wir hohes Informationen hinzufügen. Dann können wir ein paar Dinge sehen, die deutlich interessanter noch sind. Dann sehen wir hier RWE, also den Stromerzeuger und hier sehen wir das Kraftwerk Niederhausen. Niederhausen ist das zweitgrößte Braunkohlekraftwerk in Deutschland. Das hat ungefähr 4 Gigawatt. Was ist das für ein Service, den wir da am Endpunkt finden? Es ist ein Lancome VPN Gateway. Lancome in kritischer Infrastruktur ist an sich schon mal ziemlich gruselig. Dann sehen wir hier auch gleich welche End-of-Lives-Devices. Dann sehen wir doch mal wie seit wann das outdated ist bzw. nicht mehr supportet. Seit Mai 2010. Das heißt, seit neun Jahren ist hier ein VPN Gateway out of support und läuft immer noch in dem Braunkohlekraftwerk. Und wir können es immer noch live im Internet sehen. Toll, nicht? Danke euch. Jetzt wird es noch besser. Welche Schiffren unterstützt das? Das heißt, es ist ein TLSS-RSA mit RC-A4. Das ist so alt, deswegen ist es nicht wahnsinnig überraschend, aber oh mein Gott wir haben kritis Gesetze hier in Deutschland Unternehmen geben einen Haufen Geld dafür aus. Wie kann es sein, dass hier ein neun Jahre altes VPN Gateway in kritischer Infrastruktur läuft, das ist schon offen wie ein Scheunentor. Ich könnte jetzt noch 20, 30 Minuten so weiter machen mit den ganzen Daten, die ich habe, aber meine Frau sagt, ich muss aufhören weniger, ich muss aufhören, so viel Zeit mit der Daten zu verbringen. Und jetzt kommen wir noch zur Zusammenfassung und dann möchte ich mit euch noch ein bisschen die Ergebnisse diskutieren. Also ums zusammenzufassen um Rohdaten von Scans mit WGP und so was zu verwenden, ist extrem wichtig. Es gibt euch die Fähigkeit richtig mächtige Abfragen über den Internet zu fahren. Es ist sehr wichtig, dass ihr dabei die Topologie versteht, die Struktur der Netzwerke und es ist sehr einfach eure eigenen Scans um die Daten anzureichern zu machen. Dann könnt ihr verstehen, ob das zu einer Firma gehört zu einer vielleicht sogar kritischen Infrastruktur oder irgendeinem Amt. Und jetzt ist die Frage, wie macht man das? Hier ist nochmal mein Cheat. Sucht euch eure Ereignisse erst mit 1024 IPv4-Adressen mindestens, eine Kolos, ihr dürft nicht schneller als 70 Ambit scannen, weil schneller macht eure Daten kaputt, ihr braucht effektiv länger und ihr braucht mehr und ihr kriegt mehr Take-Down-Notes, das ist eine böse Anrufe. Ihr dürft das Internet in 2 Stunden durchsucht, also mit ungefähr 200 Ambit pro Sekunde mit einer einzigen IP, werden eure Daten zwischen 10 und 30 % schlechter. Ihr solltet nur geroutete BGP-Präfixe durchsuchen, das spart euch ungefähr 35 % vom Synn-Traffic und eurer Zeit. Und bei euren Modeausführbaren Verwundungen wollt ihr relativ oft neu scannen, immer mal wieder und das spart euch nochmal 25-50 %. Danke euch, wenn ihr mir eine E-Mail schicken wollt oder wenn ihr mich antwittern wollt. Ich bin hier auf dem Camp, bin ich im Giraffe, im großen Zelt, kommt einfach zu mir und wenn ihr euch dafür interessiert, fragt mich, deswegen bin ich hier, um euch das zu erklären. Ich bin jemand, eine Scanner-Community aufsetzen will. Die gibt es in den USA, hier gibt es sie leider nicht in Deutschland. Vielleicht bringt er ein Bier mit und er kümmert uns rum und erhalten und wie wir das scannen und vielleicht haben wir auch noch mehr Informationen, die euch helfen können. Vielen Dank. So, die Übersetzung nähert sich dem Ende. Wenn ihr Feedback für uns habt, tweetet uns an rcfrilinko oder benutzt den Hashtag Franz T. Und jetzt kommen wir noch zu den Fragen. Das erste ist eine Frage aus dem Internet. Ob es möglich ist, eure Scann-Daten zu benutzen, beziehungsweise, ob ihr eure Ergebnisse irgendwo veröffentlicht. Im Moment veröffentlicht meine Ergebnisse noch nicht, weil dieser war gedacht, dass jeder seine eigenen Infrastruktur aufsetzt, so dass man nicht so viel Infrastruktur braucht. Ich habe relativ viel gebraucht, damit ich sehr, sehr viel Ports auf einmal scannen kann. Dieser Talk war nur dafür gedacht, dass ihr das selber machen könnt. Und diese Information ist in ersten für die Penetration Trester gedacht. Damit sie die komplette Angriffsoberfläche der Firma sehen können, an der sie arbeiten. Und ich will nicht so einer sein wie die anderen, die dann nur überwachen, was die anderen Leute im Internet machen. Deswegen wollte ich euch nur die Information geben, wie man es macht. Ich mache ein Projekt in Italien, wo wir auch große Scanns durchführen haben. Wir hatten dabei ein interessantes Problem, das ihr vielleicht auch hattet. Im Prinzip, diese Scanns, die wir machen, sind nicht aggressive Angriff auf Verletzbarkeiten. Im Prinzip ist es eher nur so ein Service Director, was ihr da aufmacht. Und mein Problem war, dass ich nach einem Scan will ich im Prinzip die ganzen Endpunkte mit dem Service angreifbar oder nicht. Und mein Ansatz war eine CVE-Matching zu betreiben. Aber mir wurde von verschiedenen Leuten gesagt, dass der Anteil der falsch-positiven extrem hoch ist dabei. Da musst du ja nur gucken bei Debian. Da passiert relativ oft, dass wenn eine Vulnerability für 1.1 oder so was von einer Software rausgegeben wird. Also dann fixen sie den Service, aber sie erhöhen die meiner Version nicht. Das heißt, du hast wirklich nur ein Potential, ob das da eine Verletzbarkeit ist, aber du kannst es dann versuchen, das auszunutzen, aber als Forscher ist das ziemlich mies, weil du weißt halt nie genau, ob sie verwundbar ist oder nicht, weil das Banner im Prinzip unzuverlässig ist. Also es hängt ein bisschen davon ab, dass es ein großes Problem ist. Ich habe damit auch noch keine gute Lösung für gefunden. Danke für den Talk. Danke für den Talk. Dann hast du schon mal drüber nachgedacht, IPv6-Präfixe zu scanen. Klar haben wir. Ist es ein weiteres Forschungsprojekt, das wir am Laufen haben? Vielleicht nächstes Jahr. Danke. Ist es eine weitere Frage? Gut, Danke, dann sind wir fertig, großen Applaus für Johannes. Danke, dass du da warst. Damit verabschieden wir uns.