Blog

Coders meistern Sicherheit: Die „Share & Learn“-Reihe – Probleme mit der Geschäftslogik

March 28, 2019
Jaap Karan Singh

Im Gegensatz zu den meisten anderen Schwachstellen, die wir in dieser „Share & Learn“-Reihe behandelt haben, stehen Probleme mit der Geschäftslogik nicht in direktem Zusammenhang mit Programmierfehlern. Obwohl Codierungsprobleme Teil des Problems sein können, sind Fehler in der Geschäftslogik meist das Ergebnis von Designmängeln oder falschen logischen Annahmen bei der ersten Erstellung einer Anwendung.

Probleme mit der Geschäftslogik können auftreten, wenn ein Benutzer bei der Verwendung einer Anwendung eine unerwartete Aktion ausführt. Das kann fast alles sein – vom unerwarteten Abbrechen einer Bestellung über die mehrfache Anwendung eines Gutscheincodes bis hin zum einfachen Überspringen eines erwarteten Schritts und dem Ausführen einer Aktion, mit der die Anwendung nicht umzugehen weiß. Die Ausnutzung von Schwachstellen in der Geschäftslogik erfordert nicht einmal eine spezielle Ausbildung, sondern nur einen böswilligen Benutzer mit einem neugierigen Geist, der bereit ist, über den Tellerrand hinauszuschauen.

In dieser Folge erfahren Sie:

  • Wie Angreifer Schwachstellen in der Geschäftslogik ausnutzen
  • Warum Anwendungen mit Fehlern in der Geschäftslogik gefährlich sind
  • Techniken zur Vermeidung von Fehlern in der Geschäftslogik.

Wie nutzen Angreifer Probleme in der Geschäftslogik aus?

Im Gegensatz zu den meisten Exploits können wir nicht auf bestimmte Codezeilen verweisen, die diese Schwachstelle verursachen könnten. Stattdessen läuft es darauf hinaus, dass Benutzer Aktionen ausführen, die nicht vorhergesehen wurden und mit denen Programme nicht umgehen können. Nehmen wir als Beispiel eine Banking-Anwendung, die es Benutzern ermöglicht, Geld auf andere Konten zu überweisen. Anstatt Geld zu senden, versucht ein böswilliger Benutzer, einen negativen Betrag an ein anderes Konto zu senden. Wie wird die Banking-Anwendung reagieren? Wird sie abstürzen? Wird sie die Überweisung verweigern? Oder sendet sie möglicherweise sogar Geld an den Benutzer zurück, der die Überweisung initiiert hat, um die negative Zahl auszugleichen?

E-Commerce-Websites sind besonders, wenn auch nicht ausschließlich, anfällig für Fehler in der Geschäftslogik, da sie für die Interaktion mit vielen Benutzern konzipiert sind und über zahlreiche Komponenten verfügen. Wenn Benutzer unerwartet Bestellungen stornieren, versuchen, einzelne Gutscheine mehrfach einzulösen oder sogar ihre Einkaufswagen überladen, können Anwendungen mit Bedingungen konfrontiert werden, die nicht vorhergesehen wurden. Es gibt wirklich keine Möglichkeit zu wissen, wie ein Programm reagiert, wenn es mit einer unbekannten Situation konfrontiert wird. Im besten Fall wird eine Fehlermeldung generiert, aber es gibt keine Garantie dafür, dass eine App nicht eine schlimmere Aktion ausführt, wie zum Beispiel Waren kostenlos bereitzustellen.

Warum sind Probleme mit der Geschäftslogik gefährlich?

Probleme mit der Geschäftslogik können extrem gefährlich sein, da sie von jedem ausgenutzt werden können, selbst von jemandem ohne Programmier- oder Hacker-Ausbildung. Es erfordert eigentlich nur Experimentierfreude und Zeit, sich durchzuklicken und zu versuchen, Schwachstellen in der Art und Weise zu finden, wie eine Anwendung auf Eingaben reagiert. Und sobald ein böswilliger Benutzer eine Schwachstelle in der Geschäftslogik einer Website entdeckt, können Sie darauf wetten, dass er sie so weit wie möglich ausnutzen wird.

Die größte Gefahr ist normalerweise finanzieller Natur, etwa wenn ein Benutzer 20 Großbildfernseher kauft, ohne dafür zu bezahlen, oder Ähnliches. Aber Fehler in der Geschäftslogik können auch andere Probleme verursachen. Wenn beispielsweise die Passwortfunktion, die eine Website schützt, nicht weiß, was zu tun ist, wenn ein Benutzer ständig auf „Abbrechen“ klickt, könnte dies dazu führen, dass der Anmeldevorgang vollständig umgangen wird.

Es gibt wirklich keine Möglichkeit vorherzusehen, wie viel Schaden ein Problem mit der Geschäftslogik verursachen könnte. Oft kommt der erste Hinweis auf ein Problem erst lange nachdem Benutzer es bereits ausgenutzt haben.

Behebung von Problemen mit der Geschäftslogik

Leider helfen gängige Tools wie Schwachstellen-Scanner nicht dabei, Probleme mit der Geschäftslogik zu identifizieren oder zu beheben, da das Testen auf solche Probleme nicht einfach automatisiert werden kann. Der beste Weg, sie zu vermeiden, besteht darin, während der Entwicklung einer Anwendung eine gute Planung, Fehlerbehandlung und Tests für negative Testfälle zu implementieren. Dies erfordert zunächst ein klar definiertes Regelwerk, das alle möglichen und gewünschten Aktionen enthält, die eine Anwendung ausführen soll.

Ausgestattet mit einem Plan für Geschäftsregeln ist eine der besten Methoden, um das Einschleichen von Fehlern in der Geschäftslogik zu verhindern, die Erstellung eines Flussdiagramms, das alle möglichen Wege aufzeigt, wie Daten und Transaktionen innerhalb einer Anwendung fließen sollten. Dies beinhaltet die Modellierung des Verhaltens für jeden Fall, in dem ein Benutzer eine Wahl treffen oder Daten eingeben kann. Überprüfen Sie ständig, ob die möglichen Aktionen im Flussdiagramm mit den Funktionen im Geschäftsregelplan übereinstimmen.

Verwenden Sie schließlich Threat Modeling, um Schwachstellen in der Geschäftslogik während der Design-, Implementierungs- und Testphasen zu identifizieren. Erstellen Sie als Sicherheitsmaßnahme eine Aktion, die das Programm ausführen soll, wenn es auf eine Situation stößt, die nicht ausdrücklich vorhergesehen wurde. Dies könnte so einfach sein wie das Verweigern der Aktion und das Benachrichtigen eines Administrators über das aufgetretene Problem.

Weitere Informationen zu Problemen mit der Geschäftslogik

Für weiterführende Informationen können Sie einen Blick auf die OWASP-Seiten zu Problemen mit der Geschäftslogik werfen. Sie können Ihr neu gewonnenes Verteidigungswissen auch mit der kostenlosen Demo der Secure Code Warrior-Plattform auf die Probe stellen, die Cybersicherheitsteams zu ultimativen Cyber-Kriegern ausbildet. Um mehr darüber zu erfahren, wie Sie diese Schwachstelle und eine ganze Reihe anderer Bedrohungen besiegen können, besuchen Sie den Secure Code Warrior-Blog.

Bereit, Schwachstellen in der Geschäftslogik sofort aufzuspüren und zu beseitigen? Besuchen Sie die Plattform und testen Sie Ihre Fähigkeiten: [Hier starten]

Slogan

Kontrollieren Sie KI-gestützte Entwicklung, bevor sie in Produktion geht

Bewerten Sie KI-gestützte Risiken, setzen Sie Richtlinien für sicheren Code direkt beim Commit durch und beschleunigen Sie die sichere Bereitstellung über Ihren gesamten SDLC hinweg.

Demo buchen
Ressourcenbibliothek

Weitere Blogs entdecken

Erhalten Sie Zugang zu Experteninhalten über sichere Programmierung, KI-Governance und Software-Risikomanagement.

alle anzeigen
Fallstudie
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Supercharged Security Awareness: How Tournaments are Inspiring Developers at Erste Group

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Mehr erfahren
Fallstudie
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Security as culture: How Blue Prism cultivates world-class secure developers

Learn how Blue Prism, the global leader in intelligent automation for the enterprise, used Secure Code Warrior's agile learning platform to create a security-first culture with their developers, achieve their business goals, and ship secure code at speed

Mehr erfahren
Fallstudie
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Eine Sicherheitskultur: Wie Sage sein Champions-Programm aufgebaut hat

Erfahren Sie, wie Sage die Sicherheit durch einen flexiblen, beziehungsorientierten Ansatz gestärkt, über 200 Security Champions ausgebildet und eine messbare Risikoreduzierung erzielt hat.

Mehr erfahren
Blog
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Cybersecurity Awareness Month 2026: Das Verständnis von KI-Sicherheit ist entscheidend für die Unternehmensverteidigung

Wir haben einen Punkt erreicht, an dem die meisten führenden KI-Unternehmen öffentlich eine weltweite Verlangsamung der KI-Entwicklung gefordert haben, damit die Sicherheitsvorkehrungen Schritt halten können. Doch die Wahrheit ist: Ernsthafte Sicherheitsprobleme sind bereits Realität geworden. Dies bringt unzählige Sicherheitsverantwortliche und Führungsteams in eine dringliche Lage, da die finanziellen Kosten und Risiken durch die Implementierung von KI stetig steigen.

Mehr erfahren
Blog
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Enabler 8: Branding für Ihr Programm

Ein Programm für sicheres Programmieren braucht mehr als nur großartige Inhalte, um erfolgreich zu sein. Enabler 8 zeigt, wie Branding die Teilnahme zu einem begehrten, statusorientierten Erlebnis macht.

Mehr erfahren
Blog
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Jeder Mitarbeiter steht jetzt an vorderster Front der KI-Cybersicherheit

Die Unternehmenslandschaft wandelt sich mit einer Geschwindigkeit, die kaum jemand vorhergesehen hat, bis es zu spät war. Wir haben offiziell die Schwelle von handgeschriebenem Code und einfacher Copilot-Unterstützung hin zur Ära des Agentic Development Lifecycle (ADLC) überschritten. Während autonome KI-Agenten eine beispiellose Effizienz in vielen Bereichen versprechen, bringen sie auch eine völlig neue Klasse von Sicherheits- und Regulierungsrisiken mit sich.

Mehr erfahren

Sichere KI-gestützte Entwicklung vor dem Release

Erkennen Sie Entwicklerrisiken, setzen Sie Richtlinien durch und verhindern Sie Schwachstellen über den gesamten Softwareentwicklungszyklus hinweg.

Demo buchen
Keine Elemente gefunden.