Promptinjektion – Sicherheit - Amazon Bedrock

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Promptinjektion – Sicherheit

Gemäß dem AWS-Modell der geteilten Verantwortung ist AWS für die Sicherung der zugrundeliegenden Cloud-Infrastruktur verantwortlich, einschließlich Hardware, Software, Netzwerk und der Einrichtungen, in denen AWS-Services ausgeführt werden. Kunden sind jedoch für die Sicherung ihrer Anwendungen, Daten und Ressourcen verantwortlich, die in AWS bereitgestellt werden.

Im Kontext von Amazon Bedrock kümmert sich AWS um die Sicherheit der zugrundeliegenden Infrastruktur, einschließlich der physischen Rechenzentren, Netzwerke und des Amazon-Bedrock-Service selbst. Die Verantwortung für die sichere Anwendungsentwicklung und die Vermeidung von Schwachstellen wie Promptinjektion liegt jedoch beim Kunden.

Promptinjektion ist ein Sicherheitsproblem auf Anwendungsebene, ähnlich wie SQL-Injektion in Datenbankanwendungen. So wie AWS-Services wie Amazon RDS und Amazon Aurora sichere Datenbank-Engines bereitstellen, sind Kunden dafür verantwortlich, SQL-Injektion in ihren Anwendungen zu verhindern. Amazon Bedrock bietet eine sichere Grundlage für die natürliche Sprachverarbeitung, aber Kunden müssen Maßnahmen ergreifen, um Schwachstellen durch Promptinjektion in ihrem Code zu verhindern. Darüber hinaus bietet AWS ausführliche Dokumentation, Best Practices und Anleitungen zu sicheren Programmierpraktiken für Bedrock und andere AWS-Services.

Kunden sollten die folgenden bewährten Methoden einhalten, um sich vor Promptinjektion und anderen Schwachstellen bei der Verwendung von Amazon Bedrock zu schützen:

  • Eingabevalidierung – Validieren und bereinigen Sie alle Benutzereingaben, bevor Sie sie an die Amazon-Bedrock-API oder den Tokenizer weiterleiten. Dazu gehören das Entfernen oder Verbergen von Sonderzeichen und die Sicherstellung, dass die Eingabe den erwarteten Formaten entspricht.

  • Sichere Codierungspraktiken – Halten Sie sich an sichere Codierungsmethoden, wie z. B. die Verwendung parametrisierter Abfragen, die Vermeidung von Zeichenfolgenverkettung bei der Eingabe und das Prinzip der geringsten Berechtigung bei der Gewährung des Zugriffs auf Ressourcen.

  • Sicherheitstests – Testen Sie Ihre Anwendungen regelmäßig auf Promptinjektion und andere Schwachstellen mithilfe von Techniken wie Penetrationstests, statischer Codeanalyse und dynamischen Anwendungssicherheitstests (DAST).

  • Bleiben Sie auf dem neuesten Stand – Halten Sie Ihr Amazon Bedrock SDK, Ihre Bibliotheken und Ihre Abhängigkeiten mit den neuesten Sicherheitspatches und -updates auf dem neuesten Stand. Halten Sie Ausschau nach relevanten Updates oder Hinweisen in AWS-Sicherheitsbulletins und Ankündigungen. AWS bietet ausführliche Dokumentation, Blogbeiträge und Beispielcode, um Kunden bei der Entwicklung sicherer Anwendungen mit Bedrock und anderen AWS-Services zu unterstützen. Kunden sollten sich diese Ressourcen ansehen und die empfohlenen bewährten Sicherheitsmethoden befolgen, um ihre Anwendungen vor Promptinjektion und anderen Schwachstellen zu schützen.

Sie können einen Amazon-Bedrock-Integritätsschutz verwenden, um sich vor Promptinjektion-Angriffen zu schützen. Weitere Informationen finden Sie unter So erkennen Sie Prompt-Angriffe im Integritätsschutz für Amazon Bedrock.

Verwenden Sie bei der Erstellung eines Agenten für Amazon Bedrock die folgenden Techniken, um sich vor Promptinjektion-Angriffen zu schützen.

  • Ordnen Sie dem Agenten einen Integritätsschutz zu. Weitere Informationen finden Sie unter Implementieren von Schutzmaßnahmen für Ihre Anwendung, indem Sie Ihrem Agenten einen Integritätsschutz zuordnen.

  • Verwenden Sie erweiterte Prompts, um den standardmäßige Vorverarbeitungs-Prompt zu aktivieren. Jeder Agent verfügt über einen Standard-Prompt für die Vorverarbeitung, den Sie aktivieren können. Dies ist ein einfacher Prompt, bei der anhand eines Basismodells bestimmt wird, ob Benutzereingaben sicher verarbeitet werden können. Sie können das Standardverhalten verwenden oder den Prompt vollständig anpassen, sodass er alle anderen Klassifizierungskategorien einschließt. Optional können Sie Ihren eigenen Antwortparser für das Basismodell in einer Funktion von AWS Lambdaerstellen, um Ihre eigenen benutzerdefinierten Regeln zu implementieren.

    Weitere Informationen finden Sie unter Funktionsweise von Agenten für Amazon Bedrock.

  • Aktualisieren Sie den System-Prompt mithilfe erweiterter Prompt-Features. Neuere Modelle unterscheiden zwischen System- und Benutzer-Prompts. Wenn Sie System-Prompts in einem Agenten verwenden, empfehlen wir, den Umfang der Möglichkeiten des Agenten klar zu definieren. Informationen zu modellspezifischen Anleitungen finden Sie auch in der Dokumentation des Modellanbieters. Informationen darüber, welche Serverless-Modelle in Amazon Bedrock System-Prompts unterstützen, finden Sie unter Inferenzanforderungsparameter und Antwortfelder für Basismodelle.