
コーダーがセキュリティを征服する:共有して学ぶシリーズ-ビジネスロジックの問題
Im Gegensatz zu den meisten anderen Schwachstellen, die wir in dieser Share & Learn-Reihe behandelt haben, sind Probleme mit der Geschäftslogik nicht direkt mit Codierungsfehlern verbunden. Obwohl Codierungsprobleme Teil des Problems sein können, sind Geschäftslogikfehler am häufigsten das Ergebnis von Designfehlern oder falschen logischen Annahmen bei der ersten Erstellung einer App.
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 - von der unerwarteten Stornierung einer Bestellung über die zu häufige Anwendung eines Gutscheincodes bis hin zum einfachen Überspringen eines erwarteten Schritts und einer Aktion, die die Anwendung nicht zu bewältigen weiß. Für das Ausnutzen von Fehlern in der Geschäftslogik ist nicht einmal eine Schulung erforderlich, sondern nur ein böswilliger Benutzer mit einem wissbegierigen Geist, der bereit ist, über den Tellerrand zu schauen.
In dieser Folge lernen wir:
- Wie Angreifer Schwachstellen in der Geschäftslogik ausnutzen
- Warum Anwendungen mit Fehlern in der Geschäftslogik gefährlich sind
- Techniken, die Fehler in der Geschäftslogik verhindern können.
Wie nutzen Angreifer Probleme in der Geschäftslogik aus?
Im Gegensatz zu den meisten Exploits können wir nicht auf bestimmte Code-Strings hinweisen, die diese Schwachstelle verursachen könnten. Stattdessen kommt es darauf an, dass Benutzer Aktionen ausführen, die nicht vorhergesehen wurden und mit denen die Programme nicht umgehen können. Nehmen wir als Beispiel an, dass eine Bankanwendung es Benutzern ermöglicht, Geld auf andere Konten zu überweisen. Doch anstatt Geld zu überweisen, versucht ein böswilliger Benutzer, einen negativen Betrag auf ein anderes Konto zu überweisen. Wie wird die Bankanwendung reagieren? Wird sie abstürzen? Wird sie die Überweisung verweigern? Oder schickt sie vielleicht sogar Geld an den Benutzer zurück, der die Überweisung initiiert hat, um den negativen Betrag 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 viele Komponenten haben. Benutzer, die Bestellungen unerwartet stornieren, versuchen, einzelne Gutscheine mehrfach anzuwenden, oder sogar ihre Einkaufswagen überladen, können Anwendungen vor Bedingungen stellen, die nicht vorhergesehen wurden. Es gibt wirklich keine Möglichkeit zu wissen, wie ein Programm reagieren wird, 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 noch schlimmere Aktion durchführt, wie z. B. das kostenlose Anbieten von Waren.
Warum sind Business-Logik-Probleme gefährlich?
Probleme in der Geschäftslogik können extrem gefährlich sein, weil sie von jedem ausgenutzt werden können, sogar von jemandem, der keine Programmier- oder Hackerausbildung hat. Es erfordert wirklich nur Experimentierfreude und Zeit, herumzuklicken und zu versuchen, Fehler in der Art und Weise zu finden, wie eine Anwendung reagieren soll. 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, wenn ein Benutzer 20 Großbildfernseher kauft, ohne dafür zu bezahlen, oder etwas Ähnliches. Aber Fehler in der Geschäftslogik können auch andere Probleme verursachen. Wenn z. B. die Kennwortfunktion, die eine Website schützt, nicht weiß, was zu tun ist, wenn ein Benutzer ständig auf "Abbrechen" drückt, könnte sie ihn den Anmeldevorgang ganz umgehen lassen.
Es gibt wirklich keine Möglichkeit, vorherzusehen, wie viel Schaden ein Problem mit der Geschäftslogik anrichten könnte. Oft kommt der erste Hinweis auf ein Problem lange nachdem die Benutzer es ausgenutzt haben.
Probleme mit der Geschäftslogik beheben
Leider hilft der Einsatz gängiger Tools wie Schwachstellen-Scanner nicht dabei, Probleme mit der Geschäftslogik zu identifizieren oder zu beheben, da sich das Testen auf Probleme mit der Geschäftslogik nicht einfach automatisieren lässt. Der beste Weg, sie zu vermeiden, ist die Implementierung einer guten Planung, Fehlerbehandlung und Prüfung für negative Testfälle während der Entwicklung einer Anwendung. Dies erfordert zunächst einen klar definierten Satz von Geschäftsregeln, der alle möglichen und gewünschten Aktionen enthält, die eine Anwendung ausführen soll.
Eine der besten Möglichkeiten, um zu verhindern, dass sich Fehler in der Geschäftslogik einschleichen, besteht darin, ein Flussdiagramm zu erstellen, das alle möglichen Wege aufzeigt, auf denen Daten und Transaktionen innerhalb einer Anwendung fließen sollen. Dazu gehört die Modellierung des Verhaltens für jede Instanz, in der ein Benutzer eine Auswahl 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 die Bedrohungsmodellierung, um Schwachstellen in der Geschäftslogik während der Entwurfs-, Implementierungs- und Testphasen zu identifizieren. Erstellen Sie als Ausfallsicherung 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 die Verweigerung der Aktion und die Benachrichtigung eines Administrators über das aufgetretene Problem.
Weitere Informationen zu Business Logic Problems
Für weitere Lektüre können Sie einen Blick auf die OWASP-Seiten zu Problemen mit der Geschäftslogik werfen. Sie können Ihr neu erworbenes Verteidigungswissen auch mit der kostenlosen Demo der Plattform Secure Code Warrior testen, die Cybersecurity-Teams zu den ultimativen Cyber-Kriegern ausbildet. Um mehr über die Beseitigung dieser Schwachstelle und eine Schurkengalerie anderer Bedrohungen zu erfahren, besuchen Sie den BlogSecure Code Warrior .
Sind Sie bereit, jetzt Schwachstellen in der Geschäftslogik zu suchen und zu beseitigen? Gehen Sie auf die Plattform und testen Sie Ihre Fähigkeiten: [Hier starten]
Jaap Karan Singhは、セキュア・コーディング・エバンジェリストであり、チーフ・シンであり、セキュア・コード・ウォリアーの共同創設者です。

Secure Code Warrior schützt Ihren Code während des gesamten Softwareentwicklungszyklus und hilft Ihnen dabei, eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie Anwendungs-Sicherheitsmanager, Entwickler, CISO oder Sicherheitsbeauftragter sind – wir helfen Ihnen dabei, die mit unsicherem Code verbundenen Risiken zu minimieren.
デモを予約Jaap Karan Singhは、セキュア・コーディング・エバンジェリストであり、チーフ・シンであり、セキュア・コード・ウォリアーの共同創設者です。


Im Gegensatz zu den meisten anderen Schwachstellen, die wir in dieser Share & Learn-Reihe behandelt haben, sind Probleme mit der Geschäftslogik nicht direkt mit Codierungsfehlern verbunden. Obwohl Codierungsprobleme Teil des Problems sein können, sind Geschäftslogikfehler am häufigsten das Ergebnis von Designfehlern oder falschen logischen Annahmen bei der ersten Erstellung einer App.
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 - von der unerwarteten Stornierung einer Bestellung über die zu häufige Anwendung eines Gutscheincodes bis hin zum einfachen Überspringen eines erwarteten Schritts und einer Aktion, die die Anwendung nicht zu bewältigen weiß. Für das Ausnutzen von Fehlern in der Geschäftslogik ist nicht einmal eine Schulung erforderlich, sondern nur ein böswilliger Benutzer mit einem wissbegierigen Geist, der bereit ist, über den Tellerrand zu schauen.
In dieser Folge lernen wir:
- Wie Angreifer Schwachstellen in der Geschäftslogik ausnutzen
- Warum Anwendungen mit Fehlern in der Geschäftslogik gefährlich sind
- Techniken, die Fehler in der Geschäftslogik verhindern können.
Wie nutzen Angreifer Probleme in der Geschäftslogik aus?
Im Gegensatz zu den meisten Exploits können wir nicht auf bestimmte Code-Strings hinweisen, die diese Schwachstelle verursachen könnten. Stattdessen kommt es darauf an, dass Benutzer Aktionen ausführen, die nicht vorhergesehen wurden und mit denen die Programme nicht umgehen können. Nehmen wir als Beispiel an, dass eine Bankanwendung es Benutzern ermöglicht, Geld auf andere Konten zu überweisen. Doch anstatt Geld zu überweisen, versucht ein böswilliger Benutzer, einen negativen Betrag auf ein anderes Konto zu überweisen. Wie wird die Bankanwendung reagieren? Wird sie abstürzen? Wird sie die Überweisung verweigern? Oder schickt sie vielleicht sogar Geld an den Benutzer zurück, der die Überweisung initiiert hat, um den negativen Betrag 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 viele Komponenten haben. Benutzer, die Bestellungen unerwartet stornieren, versuchen, einzelne Gutscheine mehrfach anzuwenden, oder sogar ihre Einkaufswagen überladen, können Anwendungen vor Bedingungen stellen, die nicht vorhergesehen wurden. Es gibt wirklich keine Möglichkeit zu wissen, wie ein Programm reagieren wird, 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 noch schlimmere Aktion durchführt, wie z. B. das kostenlose Anbieten von Waren.
Warum sind Business-Logik-Probleme gefährlich?
Probleme in der Geschäftslogik können extrem gefährlich sein, weil sie von jedem ausgenutzt werden können, sogar von jemandem, der keine Programmier- oder Hackerausbildung hat. Es erfordert wirklich nur Experimentierfreude und Zeit, herumzuklicken und zu versuchen, Fehler in der Art und Weise zu finden, wie eine Anwendung reagieren soll. 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, wenn ein Benutzer 20 Großbildfernseher kauft, ohne dafür zu bezahlen, oder etwas Ähnliches. Aber Fehler in der Geschäftslogik können auch andere Probleme verursachen. Wenn z. B. die Kennwortfunktion, die eine Website schützt, nicht weiß, was zu tun ist, wenn ein Benutzer ständig auf "Abbrechen" drückt, könnte sie ihn den Anmeldevorgang ganz umgehen lassen.
Es gibt wirklich keine Möglichkeit, vorherzusehen, wie viel Schaden ein Problem mit der Geschäftslogik anrichten könnte. Oft kommt der erste Hinweis auf ein Problem lange nachdem die Benutzer es ausgenutzt haben.
Probleme mit der Geschäftslogik beheben
Leider hilft der Einsatz gängiger Tools wie Schwachstellen-Scanner nicht dabei, Probleme mit der Geschäftslogik zu identifizieren oder zu beheben, da sich das Testen auf Probleme mit der Geschäftslogik nicht einfach automatisieren lässt. Der beste Weg, sie zu vermeiden, ist die Implementierung einer guten Planung, Fehlerbehandlung und Prüfung für negative Testfälle während der Entwicklung einer Anwendung. Dies erfordert zunächst einen klar definierten Satz von Geschäftsregeln, der alle möglichen und gewünschten Aktionen enthält, die eine Anwendung ausführen soll.
Eine der besten Möglichkeiten, um zu verhindern, dass sich Fehler in der Geschäftslogik einschleichen, besteht darin, ein Flussdiagramm zu erstellen, das alle möglichen Wege aufzeigt, auf denen Daten und Transaktionen innerhalb einer Anwendung fließen sollen. Dazu gehört die Modellierung des Verhaltens für jede Instanz, in der ein Benutzer eine Auswahl 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 die Bedrohungsmodellierung, um Schwachstellen in der Geschäftslogik während der Entwurfs-, Implementierungs- und Testphasen zu identifizieren. Erstellen Sie als Ausfallsicherung 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 die Verweigerung der Aktion und die Benachrichtigung eines Administrators über das aufgetretene Problem.
Weitere Informationen zu Business Logic Problems
Für weitere Lektüre können Sie einen Blick auf die OWASP-Seiten zu Problemen mit der Geschäftslogik werfen. Sie können Ihr neu erworbenes Verteidigungswissen auch mit der kostenlosen Demo der Plattform Secure Code Warrior testen, die Cybersecurity-Teams zu den ultimativen Cyber-Kriegern ausbildet. Um mehr über die Beseitigung dieser Schwachstelle und eine Schurkengalerie anderer Bedrohungen zu erfahren, besuchen Sie den BlogSecure Code Warrior .
Sind Sie bereit, jetzt Schwachstellen in der Geschäftslogik zu suchen und zu beseitigen? Gehen Sie auf die Plattform und testen Sie Ihre Fähigkeiten: [Hier starten]

Im Gegensatz zu den meisten anderen Schwachstellen, die wir in dieser Share & Learn-Reihe behandelt haben, sind Probleme mit der Geschäftslogik nicht direkt mit Codierungsfehlern verbunden. Obwohl Codierungsprobleme Teil des Problems sein können, sind Geschäftslogikfehler am häufigsten das Ergebnis von Designfehlern oder falschen logischen Annahmen bei der ersten Erstellung einer App.
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 - von der unerwarteten Stornierung einer Bestellung über die zu häufige Anwendung eines Gutscheincodes bis hin zum einfachen Überspringen eines erwarteten Schritts und einer Aktion, die die Anwendung nicht zu bewältigen weiß. Für das Ausnutzen von Fehlern in der Geschäftslogik ist nicht einmal eine Schulung erforderlich, sondern nur ein böswilliger Benutzer mit einem wissbegierigen Geist, der bereit ist, über den Tellerrand zu schauen.
In dieser Folge lernen wir:
- Wie Angreifer Schwachstellen in der Geschäftslogik ausnutzen
- Warum Anwendungen mit Fehlern in der Geschäftslogik gefährlich sind
- Techniken, die Fehler in der Geschäftslogik verhindern können.
Wie nutzen Angreifer Probleme in der Geschäftslogik aus?
Im Gegensatz zu den meisten Exploits können wir nicht auf bestimmte Code-Strings hinweisen, die diese Schwachstelle verursachen könnten. Stattdessen kommt es darauf an, dass Benutzer Aktionen ausführen, die nicht vorhergesehen wurden und mit denen die Programme nicht umgehen können. Nehmen wir als Beispiel an, dass eine Bankanwendung es Benutzern ermöglicht, Geld auf andere Konten zu überweisen. Doch anstatt Geld zu überweisen, versucht ein böswilliger Benutzer, einen negativen Betrag auf ein anderes Konto zu überweisen. Wie wird die Bankanwendung reagieren? Wird sie abstürzen? Wird sie die Überweisung verweigern? Oder schickt sie vielleicht sogar Geld an den Benutzer zurück, der die Überweisung initiiert hat, um den negativen Betrag 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 viele Komponenten haben. Benutzer, die Bestellungen unerwartet stornieren, versuchen, einzelne Gutscheine mehrfach anzuwenden, oder sogar ihre Einkaufswagen überladen, können Anwendungen vor Bedingungen stellen, die nicht vorhergesehen wurden. Es gibt wirklich keine Möglichkeit zu wissen, wie ein Programm reagieren wird, 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 noch schlimmere Aktion durchführt, wie z. B. das kostenlose Anbieten von Waren.
Warum sind Business-Logik-Probleme gefährlich?
Probleme in der Geschäftslogik können extrem gefährlich sein, weil sie von jedem ausgenutzt werden können, sogar von jemandem, der keine Programmier- oder Hackerausbildung hat. Es erfordert wirklich nur Experimentierfreude und Zeit, herumzuklicken und zu versuchen, Fehler in der Art und Weise zu finden, wie eine Anwendung reagieren soll. 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, wenn ein Benutzer 20 Großbildfernseher kauft, ohne dafür zu bezahlen, oder etwas Ähnliches. Aber Fehler in der Geschäftslogik können auch andere Probleme verursachen. Wenn z. B. die Kennwortfunktion, die eine Website schützt, nicht weiß, was zu tun ist, wenn ein Benutzer ständig auf "Abbrechen" drückt, könnte sie ihn den Anmeldevorgang ganz umgehen lassen.
Es gibt wirklich keine Möglichkeit, vorherzusehen, wie viel Schaden ein Problem mit der Geschäftslogik anrichten könnte. Oft kommt der erste Hinweis auf ein Problem lange nachdem die Benutzer es ausgenutzt haben.
Probleme mit der Geschäftslogik beheben
Leider hilft der Einsatz gängiger Tools wie Schwachstellen-Scanner nicht dabei, Probleme mit der Geschäftslogik zu identifizieren oder zu beheben, da sich das Testen auf Probleme mit der Geschäftslogik nicht einfach automatisieren lässt. Der beste Weg, sie zu vermeiden, ist die Implementierung einer guten Planung, Fehlerbehandlung und Prüfung für negative Testfälle während der Entwicklung einer Anwendung. Dies erfordert zunächst einen klar definierten Satz von Geschäftsregeln, der alle möglichen und gewünschten Aktionen enthält, die eine Anwendung ausführen soll.
Eine der besten Möglichkeiten, um zu verhindern, dass sich Fehler in der Geschäftslogik einschleichen, besteht darin, ein Flussdiagramm zu erstellen, das alle möglichen Wege aufzeigt, auf denen Daten und Transaktionen innerhalb einer Anwendung fließen sollen. Dazu gehört die Modellierung des Verhaltens für jede Instanz, in der ein Benutzer eine Auswahl 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 die Bedrohungsmodellierung, um Schwachstellen in der Geschäftslogik während der Entwurfs-, Implementierungs- und Testphasen zu identifizieren. Erstellen Sie als Ausfallsicherung 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 die Verweigerung der Aktion und die Benachrichtigung eines Administrators über das aufgetretene Problem.
Weitere Informationen zu Business Logic Problems
Für weitere Lektüre können Sie einen Blick auf die OWASP-Seiten zu Problemen mit der Geschäftslogik werfen. Sie können Ihr neu erworbenes Verteidigungswissen auch mit der kostenlosen Demo der Plattform Secure Code Warrior testen, die Cybersecurity-Teams zu den ultimativen Cyber-Kriegern ausbildet. Um mehr über die Beseitigung dieser Schwachstelle und eine Schurkengalerie anderer Bedrohungen zu erfahren, besuchen Sie den BlogSecure Code Warrior .
Sind Sie bereit, jetzt Schwachstellen in der Geschäftslogik zu suchen und zu beseitigen? Gehen Sie auf die Plattform und testen Sie Ihre Fähigkeiten: [Hier starten]

Klicken Sie auf den folgenden Link, um die PDF-Datei dieser Ressource herunterzuladen.
Secure Code Warrior schützt Ihren Code während des gesamten Softwareentwicklungszyklus und hilft Ihnen dabei, eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie Anwendungs-Sicherheitsmanager, Entwickler, CISO oder Sicherheitsbeauftragter sind – wir helfen Ihnen dabei, die mit unsicherem Code verbundenen Risiken zu minimieren.
Bericht anzeigenデモを予約Jaap Karan Singhは、セキュア・コーディング・エバンジェリストであり、チーフ・シンであり、セキュア・コード・ウォリアーの共同創設者です。
Im Gegensatz zu den meisten anderen Schwachstellen, die wir in dieser Share & Learn-Reihe behandelt haben, sind Probleme mit der Geschäftslogik nicht direkt mit Codierungsfehlern verbunden. Obwohl Codierungsprobleme Teil des Problems sein können, sind Geschäftslogikfehler am häufigsten das Ergebnis von Designfehlern oder falschen logischen Annahmen bei der ersten Erstellung einer App.
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 - von der unerwarteten Stornierung einer Bestellung über die zu häufige Anwendung eines Gutscheincodes bis hin zum einfachen Überspringen eines erwarteten Schritts und einer Aktion, die die Anwendung nicht zu bewältigen weiß. Für das Ausnutzen von Fehlern in der Geschäftslogik ist nicht einmal eine Schulung erforderlich, sondern nur ein böswilliger Benutzer mit einem wissbegierigen Geist, der bereit ist, über den Tellerrand zu schauen.
In dieser Folge lernen wir:
- Wie Angreifer Schwachstellen in der Geschäftslogik ausnutzen
- Warum Anwendungen mit Fehlern in der Geschäftslogik gefährlich sind
- Techniken, die Fehler in der Geschäftslogik verhindern können.
Wie nutzen Angreifer Probleme in der Geschäftslogik aus?
Im Gegensatz zu den meisten Exploits können wir nicht auf bestimmte Code-Strings hinweisen, die diese Schwachstelle verursachen könnten. Stattdessen kommt es darauf an, dass Benutzer Aktionen ausführen, die nicht vorhergesehen wurden und mit denen die Programme nicht umgehen können. Nehmen wir als Beispiel an, dass eine Bankanwendung es Benutzern ermöglicht, Geld auf andere Konten zu überweisen. Doch anstatt Geld zu überweisen, versucht ein böswilliger Benutzer, einen negativen Betrag auf ein anderes Konto zu überweisen. Wie wird die Bankanwendung reagieren? Wird sie abstürzen? Wird sie die Überweisung verweigern? Oder schickt sie vielleicht sogar Geld an den Benutzer zurück, der die Überweisung initiiert hat, um den negativen Betrag 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 viele Komponenten haben. Benutzer, die Bestellungen unerwartet stornieren, versuchen, einzelne Gutscheine mehrfach anzuwenden, oder sogar ihre Einkaufswagen überladen, können Anwendungen vor Bedingungen stellen, die nicht vorhergesehen wurden. Es gibt wirklich keine Möglichkeit zu wissen, wie ein Programm reagieren wird, 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 noch schlimmere Aktion durchführt, wie z. B. das kostenlose Anbieten von Waren.
Warum sind Business-Logik-Probleme gefährlich?
Probleme in der Geschäftslogik können extrem gefährlich sein, weil sie von jedem ausgenutzt werden können, sogar von jemandem, der keine Programmier- oder Hackerausbildung hat. Es erfordert wirklich nur Experimentierfreude und Zeit, herumzuklicken und zu versuchen, Fehler in der Art und Weise zu finden, wie eine Anwendung reagieren soll. 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, wenn ein Benutzer 20 Großbildfernseher kauft, ohne dafür zu bezahlen, oder etwas Ähnliches. Aber Fehler in der Geschäftslogik können auch andere Probleme verursachen. Wenn z. B. die Kennwortfunktion, die eine Website schützt, nicht weiß, was zu tun ist, wenn ein Benutzer ständig auf "Abbrechen" drückt, könnte sie ihn den Anmeldevorgang ganz umgehen lassen.
Es gibt wirklich keine Möglichkeit, vorherzusehen, wie viel Schaden ein Problem mit der Geschäftslogik anrichten könnte. Oft kommt der erste Hinweis auf ein Problem lange nachdem die Benutzer es ausgenutzt haben.
Probleme mit der Geschäftslogik beheben
Leider hilft der Einsatz gängiger Tools wie Schwachstellen-Scanner nicht dabei, Probleme mit der Geschäftslogik zu identifizieren oder zu beheben, da sich das Testen auf Probleme mit der Geschäftslogik nicht einfach automatisieren lässt. Der beste Weg, sie zu vermeiden, ist die Implementierung einer guten Planung, Fehlerbehandlung und Prüfung für negative Testfälle während der Entwicklung einer Anwendung. Dies erfordert zunächst einen klar definierten Satz von Geschäftsregeln, der alle möglichen und gewünschten Aktionen enthält, die eine Anwendung ausführen soll.
Eine der besten Möglichkeiten, um zu verhindern, dass sich Fehler in der Geschäftslogik einschleichen, besteht darin, ein Flussdiagramm zu erstellen, das alle möglichen Wege aufzeigt, auf denen Daten und Transaktionen innerhalb einer Anwendung fließen sollen. Dazu gehört die Modellierung des Verhaltens für jede Instanz, in der ein Benutzer eine Auswahl 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 die Bedrohungsmodellierung, um Schwachstellen in der Geschäftslogik während der Entwurfs-, Implementierungs- und Testphasen zu identifizieren. Erstellen Sie als Ausfallsicherung 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 die Verweigerung der Aktion und die Benachrichtigung eines Administrators über das aufgetretene Problem.
Weitere Informationen zu Business Logic Problems
Für weitere Lektüre können Sie einen Blick auf die OWASP-Seiten zu Problemen mit der Geschäftslogik werfen. Sie können Ihr neu erworbenes Verteidigungswissen auch mit der kostenlosen Demo der Plattform Secure Code Warrior testen, die Cybersecurity-Teams zu den ultimativen Cyber-Kriegern ausbildet. Um mehr über die Beseitigung dieser Schwachstelle und eine Schurkengalerie anderer Bedrohungen zu erfahren, besuchen Sie den BlogSecure Code Warrior .
Sind Sie bereit, jetzt Schwachstellen in der Geschäftslogik zu suchen und zu beseitigen? Gehen Sie auf die Plattform und testen Sie Ihre Fähigkeiten: [Hier starten]
目次
Jaap Karan Singhは、セキュア・コーディング・エバンジェリストであり、チーフ・シンであり、セキュア・コード・ウォリアーの共同創設者です。

Secure Code Warrior schützt Ihren Code während des gesamten Softwareentwicklungszyklus und hilft Ihnen dabei, eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie Anwendungs-Sicherheitsmanager, Entwickler, CISO oder Sicherheitsbeauftragter sind – wir helfen Ihnen dabei, die mit unsicherem Code verbundenen Risiken zu minimieren.
デモを予約[ダウンロード]Ressourcen für den Einstieg
Themen und Inhalte der Secure-Code-Schulung
Unsere branchenführenden Inhalte werden unter Berücksichtigung der Aufgaben unserer Kunden ständig weiterentwickelt, um mit der sich ständig verändernden Softwareentwicklungsumgebung Schritt zu halten. Sie decken alle Themen von KI bis hin zu XQuery-Injection ab und sind für verschiedene Aufgabenbereiche konzipiert, von Architekten und Ingenieuren bis hin zu Produktmanagern und Qualitätssicherungsfachleuten. Werfen Sie einen Blick auf die Inhalte unseres Content-Katalogs, sortiert nach Themen und Aufgabenbereichen.
Die Kamer van Koophandel setzt Maßstäbe für entwicklergesteuerte Sicherheit in großem Maßstab
Die Kamer van Koophandel berichtet, wie sie sicheres Codieren durch rollenbasierte Zertifizierungen, Trust Score-Benchmarking und eine Kultur der gemeinsamen Verantwortung für Sicherheit in die tägliche Entwicklungsarbeit integriert hat.
Bedrohungsmodellierung mit KI: So wird jeder Entwickler zum Bedrohungsmodellierer
Sie werden besser gerüstet sein, um Entwicklern dabei zu helfen, Ideen und Techniken zur Bedrohungsmodellierung mit den KI-Tools zu kombinieren, die sie bereits verwenden, um die Sicherheit zu erhöhen, die Zusammenarbeit zu verbessern und von Anfang an widerstandsfähigere Software zu entwickeln.
Ressourcen für den Einstieg
Cybermon ist zurück: Die KI-Mission zum Besiegen des Bosses ist jetzt auf Abruf verfügbar.
「Cybermon 2025 Beat the Boss」 kann nun das ganze Jahr über bei SCW gespielt werden. Führen Sie anspruchsvolle AI/LLM-Sicherheitsherausforderungen ein, um die sichere AI-Entwicklung in großem Maßstab zu stärken.
Erläuterung des Cyber-Resilience-Gesetzes: Bedeutung für die Entwicklung sicherer Software
Erfahren Sie, was das EU-Gesetz zur Cyberresilienz (CRA) verlangt, für wen es gilt und wie sich Ingenieurteams auf Secure-by-Design-Praktiken, Schwachstellenprävention und die Kompetenzentwicklung von Entwicklern vorbereiten können.
Enabler 1: Definierte und messbare Erfolgskriterien
Enabler 1 ist der erste Teil der zehnteiligen Reihe „Enablers of Success“ und zeigt, wie sichere Programmierung mit geschäftlichen Ergebnissen wie Risikominderung und Geschwindigkeit verknüpft werden kann, um Programme langfristig zu optimieren.




%20(1).avif)
.avif)
