isotopp, German
@isotopp@chaos.social avatar

Wir müssen mal über den Security Software Development Non-Lifecycle reden.

Heute ist nämlich Fortigate Patchday:

https://www.fortiguard.com/psirt/FG-IR-24-029
CVE-2024-23113, CVSSV3 Score 9.8, Unauthorized Code Execution

Und was ist es?
Ein Format String Bug. In 2024.

mcfly,
@mcfly@milliways.social avatar

@isotopp Super thread.💯 Compliments.
Hast Du den auch in Englisch damit ich den mit den nicht deutsch sprechenden Kollegen teilen kann?

Ich kann auch am Sonntag mal ne Rohfassung uebersetzen.

isotopp,
@isotopp@chaos.social avatar

@mcfly

https://blog.koehntopp.info/2024/02/10/snake-oil.html

English Version of https://blog.koehntopp.info/2024/02/09/schlangenoel.html

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.

isotopp,
@isotopp@chaos.social avatar

Gestern war auch Fortigate Patchday:

https://www.fortiguard.com/psirt/FG-IR-24-015
CVE-2024-21762, CVSSV3 Score 9.6, Unauthorized Code Execution.

Und was ist es?
Ein Out Of Bounds Write, in SSL/TLS.

isotopp, (edited )
@isotopp@chaos.social avatar

Vorgestern war auch Fortigate Patchday:

https://www.bleepingcomputer.com/news/security/fortinet-warns-of-new-fortisiem-rce-bugs-in-confusing-disclosure/
CVE-2024-23108, CVE-2024-23109 als Patch für einen failed Patch CVE-2023-34992.

isotopp,
@isotopp@chaos.social avatar

"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.

isotopp,
@isotopp@chaos.social avatar

Unterdessen fordert die US CISA von allen US Institutionen das Abschalten von Ivanti VPN (vormals Juniper Pulse Secure):

https://twitter.resolvt.net/@zaphodb/111857221592137558

Während man die Originaldirektive ursprünglich noch als Update und Reinstallation sowie Neukonfiguration lesen konnte

https://www.cisa.gov/news-events/directives/supplemental-direction-v1-ed-24-01-mitigate-ivanti-connect-secure-and-ivanti-policy-secure

hat sich diese Hoffnung mittlerweilse zerschlagen.

isotopp,
@isotopp@chaos.social avatar

Die Patches, von denen dort die Rede ist, sind nicht geeignet, den Fehler zu beheben.
Brian Krebs hat das zusammengefasst:

https://infosec.exchange/@briankrebs/111863433959430768

isotopp,
@isotopp@chaos.social avatar

Unterdessen hat jemand das Ivanti Image mal aufgemacht und

https://infosec.exchange/@wdormann/111880313720252008

Things on a currrent Ivanti VPN box:
curl 7.19.7 2009-11-04 (14 years)
openssl 1.0.2n-fips 2017-12-07 (6 years)
perl 5.6.1 2001-04-09 (23 years)
psql 9.6.14 2019-06-20 (5 years)
cabextract 0.5 2001-08-20 (22 years)
ssh 5.3p1 2009-10-01 (14 years)
unzip 6.00 2009-04-29 (15 years)

Oder, wie @icing es formuliert: "Leichenteile und Zombie Software".

isotopp,
@isotopp@chaos.social avatar

Und, es kommt wie es kommen muß:

https://www.bleepingcomputer.com/news/security/ivanti-patch-new-connect-secure-auth-bypass-bug-immediately/

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.

isotopp,
@isotopp@chaos.social avatar

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".

Meine eigenen publizierten Beispiele:

https://blog.koehntopp.info/2017/10/20/aslr.html
MacOS Trendmicro Binary mit ohne ASLR, jeder Explot (ja, es gib welche) ist automatisch stabil über die ganze Flotte

isotopp, (edited )
@isotopp@chaos.social avatar

https://blog.koehntopp.info/2018/06/18/websense-dlp-gives-instant-root.html
WebSense DLP veraltete Softwareversionen und exploitbares Kernelmodul, vermutlich fehlende QA und defekter Shipping Prozeß

Das ist bei Endpoint Security so verbreitet, daß zum Beispiel @joxean ein ganzes Buch darüber geschrieben hat:

https://www.amazon.de/Antivirus-Hackers-Handbook-English-ebook/dp/B014MJ6AKS
The Antivirus Hacker's Handbook

beschreibt, wie man Sicherheitslücken dieser Art in jeder, wirklich jeder AV Software findet.

isotopp,
@isotopp@chaos.social avatar

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.

isotopp,
@isotopp@chaos.social avatar

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.

isotopp,
@isotopp@chaos.social avatar

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 ist keine gewinnbare Position.

isotopp,
@isotopp@chaos.social avatar

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!

isotopp,
@isotopp@chaos.social avatar

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.

Gut so.

isotopp,
@isotopp@chaos.social avatar

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.

isotopp,
@isotopp@chaos.social avatar

Das sind Fails entlang der ganzen Software Development Chain:

Auf der Architekturebene (nicht rechteminimal),

auf der Toolebene (keine Scanner für triviale Fehler, veraltete Dependencies, keine Automation beim Build und Release)

auf der Packaging Ebene (die defekten Permissions bei Websense zum Beispiel)

und an jeder anderen Stelle, bei der man von außen durch die Fehler auf den Prozeß rückschließen kann.

isotopp,
@isotopp@chaos.social avatar

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.

isotopp,
@isotopp@chaos.social avatar

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.

lobingera,
@lobingera@chaos.social avatar

@isotopp Ja? (iSv: where's the news?)

https://fosstodon.org/

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.”

mig,
isotopp, (edited )
@isotopp@chaos.social avatar
slothrop,
@slothrop@chaos.social avatar

@isotopp 10/10 company full of 10x engineers

scnr

isotopp, (edited )
@isotopp@chaos.social avatar

"Vielen Dank!"

https://discord.gg/nCy7bd2KUQ
"Cybergenesungswerk", ein Discord zum Thema IT Sicherheit und Informationssicherheitsbeauftragte (ISB).

t0fur0cker,
@t0fur0cker@troet.cafe avatar

@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. 🙈

isotopp,
@isotopp@chaos.social avatar

@t0fur0cker "'Es gibt eine andere Theorie, nach der das schon passiert ist."

Douglas Adams, "Per Anhalter durch die Galaxis"

bastelwombat,
@bastelwombat@chaos.social avatar

@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,
@isotopp@chaos.social avatar

@bastelwombat

Bwahahaha.
"Viel Glück"

@t0fur0cker

isotopp, (edited )
@isotopp@chaos.social avatar

Dieser Thread ist nun auch in der Renderpipeline und wird als http://blog.koehntopp.info/2024/02/09/schlangenoel.html veröffentlicht werden.

isotopp, (edited )
@isotopp@chaos.social avatar

https://www.heise.de/news/IT-Sicherheitsloesungen-von-Sophos-verschlucken-sich-am-Schaltjahr-9642801.html

Leute, die "Sicherheitslösungen" und verläßliche Software programmieren sollen, aber die keine Schaltjahre behandeln können.

Man fragt sich schon, was die beruflich so machen.

AndreasSebayang,
@AndreasSebayang@chaos.social avatar

@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! 🤪

xahteiwi,
@xahteiwi@mastodon.social avatar

@isotopp "Schaltjahr unterstützen" war offensichtlich kein Key Result, und es war keine Quartalsprämie damit zu holen.

isotopp,
@isotopp@chaos.social avatar

@xahteiwi

/me wirft ein JIRA EPIC nach @xahteiwi

xahteiwi,
@xahteiwi@mastodon.social avatar

@isotopp Nicht ohne Sprint Planning Meeting, du Ama

paddi,

@isotopp und wenn man fertig mit Weinen ist, gibts auch noch nen kleinen Lacher: "[…] wenn in den Einstellungen unter Thread [sic!] Protection […]" 😆

vampirdaddy,
@vampirdaddy@chaos.social avatar

@isotopp verkaufen - so lange, bis sie die zugekaufte Technik nicht mehr flicken können (siehe Astaro / USG / UTM).

cm,
@cm@chaos.social avatar

@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?

m_berberich,
@m_berberich@chaos.social avatar

@isotopp

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.

isotopp,
@isotopp@chaos.social avatar

@m_berberich

Das ist so "üblich".

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…

isotopp,
@isotopp@chaos.social avatar

@m_berberich

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 …

isotopp,
@isotopp@chaos.social avatar

@m_berberich

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.

waldi,
@waldi@chaos.social avatar

@isotopp Und ich schaue mir wieder die Praktiken bei an. Ich frage mich da schon länger ob da wirklich kaum was passiert oder ob das nur niemand bemerkt.

brahms,
@brahms@chaos.social avatar

@isotopp schade, dass sich da nicht für eine offene plattform entschieden wurde :s

aber sonst guter thread !

metaphil,
@metaphil@chaos.social avatar

@isotopp ausdruck- und einrahmgeräusche

nblr,
@nblr@chaos.social avatar

@isotopp Amen.

srslypascal,
@srslypascal@chaos.social avatar

@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.

srslypascal,
@srslypascal@chaos.social avatar

@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:

https://landave.io

isotopp,
@isotopp@chaos.social avatar

@srslypascal

Ooooh, sehr schön, gleich in den Feedreader damit!

cm,
@cm@chaos.social avatar

@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...

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • DreamBathrooms
  • ethstaker
  • osvaldo12
  • magazineikmin
  • GTA5RPClips
  • rosin
  • mdbf
  • Youngstown
  • Durango
  • slotface
  • everett
  • kavyap
  • InstantRegret
  • thenastyranch
  • provamag3
  • tacticalgear
  • modclub
  • cisconetworking
  • tester
  • cubers
  • khanakhh
  • ngwrru68w68
  • megavids
  • normalnudes
  • anitta
  • Leos
  • JUstTest
  • lostlight
  • All magazines