In which we infer existing implementation deficits in the development process from the error patterns of endpoint security software and, in the end, resort to pictures of cute guinea pigs out of desperation to calm down.
"In this instance, due to an issue with the API which we are currently investigating, rather than an edit, this resulted in two new CVEs being created, duplicates of the original CVE-2023-34992," Fortinet told BleepingComputer.
However, it turns out that CVE-2024-23108 and CVE-2024-23109 are actually patch bypasses for the CVE-2023-34992 flaw discovered by Horizon3 vulnerability expert Zach Hanley.
CVE-2024-22024, XML eXternal Entities in SAML, lets remote attackers gain access to restricted resources on unpatched appliances in low-complexity attacks without requiring user interaction or authentication.
Das ist alles keine Ausnahme und auch nicht auf VPN Gateways beschränkt, sondern Hersteller von Security Software setzen fröhlich auf "Security-Relevante Software mit Privilegien und Programmiersprachen und Programmiermethoden aus den 90er Jahren des letzten Jahrtausends".
Das ist systematisch, in der Art und Weise, wie diese Software designed und entwickelt wird. Das ist auch mit Patchen nicht zu beheben.
Ich weiß das, weil ich das einige Jahre mit einem Firmenmac gespielt habe, also "Security Tools, die Corp auf meinem Mac installiert verwenden, um auf meinem Mac Privilegien zu bekommen". Das ist zuverlässig wiederholbar, und ich habe in keinem Fall mehr als einen langsamen Freitag Nachmittag dafür investieren müssen.
Es ist diese Software, die angeblich schützen soll, die am Ende dazu führt, daß der Rechner exploitbar wird.
Wenn jemand wie Fefe von Schlangenöl redet, dann ist das wortwörtlich zu verstehen.
https://en.wikipedia.org/wiki/Snake_oil
Snake oil is a term used to describe deceptive marketing, health care fraud, or a scam. Similarly, snake oil salesman is a common label used to describe someone who sells, promotes, or is a general proponent of some valueless or fraudulent cure, remedy, or solution.
Das alles sind Fehler, die keine groß problematischen Auswirkungen hatten, wenn die Software von vorherherein rechteminimal geschrieben worden wäre.
Aber Parser für komplexe, unbekannte Datenformate, die potentiell bösartige Payloads enthalten mit Privilegien laufen zu lassen und dann noch elementare Sicherheitsmechanismen des Betriebssystems abzuschalten ist halt sich für Maximalschaden aufzustellen.
Das alles in 2024 in C zu tun, wenn man Go oder Rust zur Verfügung hatte ist auch nicht sonderlich schlau.
Das alles mit Software voll zu packen, die im Fall von Ivanti zwei Dekaden ohne Patches auf dem Buckel hat, statt einen automatisierten Release-Prozeß zu haben, der ein neues Release aus den neusten Versionen von allem zusammenschraubt und automatisch testen ist auch nicht Stand der Technik, sondern grob fahrlässig.
Man stelle sich vor: Security-Software mit 20 Jahre alten CVEs!
Das alles dann in einem verschlüsselten Image auszuliefern, statt mit einer SBOM of Shame ist inzwischen bald ein Federal Crime in den USA, und auch die EU ist auf diesem Weg.
Und ein Format String Bug oder eine XML External Entities Vulnerability sind so triviale Fehler, daß die von diesen Security Firmen selbst beworbenen oder gar im Hause mit entwickelten typischen Sourcecode und Vulnerability Scanner so etwas anmerken würden und einen Commit oder Merge nach main oder release verhindern würden, hätte man solche Produkte im Einsatz.
Alles in allem kann man nur zu dem Ergebnis kommen, daß hier verantwortungslose Hackerbuden ohne elementare Software-Entwicklungsprozesse als "Security"-Firmen cosplayen und radioaktiven Giftmüll in Hochglanzpackungen abfüllen, um so eine Autobahn für Nation State Actors ins Herz von kritischen Infrastrukturen zu bauen.
Teilweise grenzt die Art der Fehler an mutwillige Sabotage, bzw. auch mit mutwilliger Sabotage könnte man es kaum schlimmer machen.
Oh, richtig, wir müssen noch den Weltmeister in statischen einkompilierten Admin-Backdoorpaßworten, die Firma Cisco, erwähnen, wenn wir von Kritis-Autobahnen reden.
Mein Fehler.
Wie dem auch sei, gäbe es funktionierende Code-Review und Audit-Prozesse in Ciscos Software Development Lifecycle, dann existieren diese Dinge nicht, weil der Prozeß sie verhindern würde. Auch hier Techniken aus dem 90er Jahren von außen sichtbar in der Art der Fehler.
eben dort (zitiert): "“[T]here are two methods in software design. One is to make the program so simple, there are obviously no errors. The other is to make it so complicated, there are no obvious errors.”
@isotopp ich bin da jetzt nicht so tief drin aber nach dem überfliegen deines Threads beschleicht mich das ungute Gefühl das die mittlerweile gefühlt täglichen Angriffsmeldungen auf Firmen, Behörden, Universitäten etc. erst der Anfang sind und das uns kurz- oder mittelfristig die komplette IT Infrastruktur von vielen Firmen und Behörden um die Ohren fliegen wird. 🙈
@t0fur0cker@isotopp Das gute ist: Der Fachkräftemangel trifft auch die Hackerszene. Es gibt nicht genug Angreifer für all die schlecht gesicherten Systeme.
@isotopp Der Tag ist aber auch verdächtig! Überleg mal, 29. Februar? Wann haste das schon mal gehört und gesehen, dass eine Webseite dieses Datum trägt? Letztes Jahr? Vorletztes Jahr? In Bielefeld vielleicht! 🤪
@isotopp ich programmier ja mehr so nebenbei, aber es würd mir im leben nicht einfallen, irgendwas mit datum und uhrzeit selber zu schnitzen, da nehm ich doch eine entsprechende library? WTF?
Wenn ich das richtig interpretiere macht Sofos eine Man-in-the-middle-attack auf https Verbindungen, ist dazu aber zu blöd und fällt deswegen auf die Nase.
TLS 1.3 im Browser macht das eigentlich unmöglich, daher ist es "best practice", auf TLS 1.2 zu downgraden und dann ein Appliance-generiertes Zertifikat zu präsentieren. Dessen Root-CA wird vorher in den "gemanagten" Browser per Device Management injeziert, damit der Browser da keinen Krach macht.
Die Appliance schlüsselt dann um.
Es ist in Javascript mit Browser-Extensions nicht möglich, eine Extension zu schreiben, die Dir das Appliance Root-Cert erkennt…
und mit einem Indikatorböppel anzeigt, ob Du gerade das Appliance Root-Cert siehst oder ein richtiges Root-Cert, wenn Du auf eine Site zugreifst.
Sophos ist jetzt in einen bedauerlichen Fehler gelaufen, der die Appliance am 29. Februar hat Fehler machen lassen mit dem Appliance-Cert.
Fehler bei Schaltjahren sind Indikatorfehler. Sie sind selbst nicht schlimm, zeigen aber grundsätzlich das Vorhandensein komplett defekter Softwareprozesse an, weil zum Beispiel …
die Standsardbibliotheken von Programmiersprachen und Plattformen nicht oder inkorrekt genutzt werden. Diese haben alle selbstverständlich korrekte Funktionen, die Schaltjahre, Schaltsekunden und Zeitzonen richtig handhaben.
Wenn solche Fehler also auftreten, ist das indikativ für selbstgekochte, ungetestete und schlampig re-engineerte Scheiße, ein sogenannter Software-Smell.
Dieser disqualifiziert das Produkt oder rechtfertig einen sehr, sehr tiefen Audit.
@isotopp Und ich schaue mir wieder die Praktiken bei #Debian an. Ich frage mich da schon länger ob da wirklich kaum was passiert oder ob das nur niemand bemerkt.
@isotopp IMO ist der Hauptgrund, warum diese ganzen Ranzbuden für ihre unzähligen Implementierungen komplexer Formate C benutzen, dass sie meist gar nicht erst anfangen, selber "from scratch" nen neuen Parser dafür zu schreiben, sondern lieber als Ausgangsbasis bereits existierende OpenSource-Implementierungen nehmen, die aus historischen Gründen halt meist in C geschrieben sind. Also genau die Software, vor deren potenziellen Sicherheitslücken die AV-Software überhaupt schützen soll.
@isotopp Wenn man dann irgendwelche Third-Party-Implementierungen als Ausgangsbasis nimmt und da selber nochmal im Quellcode rumfrickelt, dann hat man natürlich schon wieder die technical debt, die es erschwert, zukünftige (Sicherheits)updates vom Upstream-Projekt zeitnah in die eigene Codebase einzupflegen. Und das Ergebnis sind dann eben Blogs wie das hier:
@isotopp@joxean eines der trivialeren weitverbreiteten issues: die liste der vom "schutz" ausgenommen directories mit sprechenden namen in der registry abspeichern. sehr zuvorkommend, wenn ich weiss, wo ich mein mimikatz.exe ablegen muss, ohne dass es die nerv-software wegräumt...
Add comment