Prompt Injection und Abuse-Prävention implementieren
Implementiere Input-Validierung und Fuzzy-Matching um schädliche oder unerwartete Eingaben zu erkennen. Dies schützt vor Prompt Injection und Missbrauch von AI-Tools.
Originalvideo ansehen: Tragic mistake... Anthropic leaks Claude’s source code3 Schritte
1
Erstelle Regex-Pattern für verdächtige Eingaben
Definiere Pattern die auf Missbrauch oder schädliche Eingaben hindeuten
const suspiciousPatterns = {
// Erkenne Frustration oder Schimpfwörter
frustration: /\b(balls|sucks|shit|useless|broken)\b/gi,
// Erkenne SQL Injection Versuche
sqlInjection: /(drop|delete|insert|update|select)\s+(from|into|table|database)/gi,
// Erkenne Prompt Injection
promptInjection: /(ignore previous|forget|disregard|system prompt)/gi
};
function detectSuspiciousContent(input) {
const results = {};
for (const [key, pattern] of Object.entries(suspiciousPatterns)) {
const matches = input.match(pattern);
if (matches) {
results[key] = matches;
}
}
return results;
}Tipp: Verwende case-insensitive Flag (i) um Umgehungen zu verhindern
Warnung: Blockiere die Eingabe nicht automatisch - logge und analysiere stattdessen
2
Implementiere Input-Sanitization
Bereinige Eingaben bevor sie an AI-Modelle gesendet werden
function sanitizeInput(input) {
// Entferne verdächtige Zeichen und Patterns
let sanitized = input
.replace(/[<>{}\[\]]/g, '') // Entferne potentiell gefährliche Zeichen
.trim();
// Limitiere Länge
if (sanitized.length > 5000) {
sanitized = sanitized.substring(0, 5000);
}
return sanitized;
}Tipp: Setze vernünftige Längenlimits um DoS-Attacken zu vermeiden
Warnung: Sanitization sollte nicht die legitime Funktionalität beeinträchtigen
3
Logge und monitore verdächtige Aktivität
Erstelle Logging-Mechanismen um Missbrauch zu tracken
function logSuspiciousActivity(userId, input, detectedIssues) {
const log = {
timestamp: new Date(),
userId,
input: input.substring(0, 200), // Limitiere Log-Größe
issues: Object.keys(detectedIssues),
severity: Object.keys(detectedIssues).length > 2 ? 'high' : 'medium'
};
console.warn('Suspicious activity detected:', log);
// Sende zu Monitoring-Service (z.B. Sentry, DataDog)
monitoringService.captureEvent(log);
}Tipp: Verwende ein zentrales Logging-System um Patterns zu erkennen
Warnung: Logge keine sensitiven Daten wie Passwörter oder API Keys