Ich habe den Veracode-Bericht für meine JavaEE App. Es hatte einen Fehler bei jeder Protokollierung (mit log4j), also füge ich die StringEscapeUtils.escapeJava(log)
zu allen hinzu, aber veracode meldet sie weiterhin als Sicherheitsfehler.Sicherheitsfehler - Veracode Bericht - Crlf Injektion
Ist dies eine richtige Lösung? Was kann ich noch tun?
Dies ist der Bericht Informationen: Titel: Falsche Ausgangs Neutralization für Logs
Beschreibung: Ein Funktionsaufruf in einem Protokoll schmieden Angriff führen könnte. Durch das Schreiben unsanisierter benutzerspezifizierter Daten in eine Protokolldatei kann ein Angreifer Protokolleinträge fälschen oder schädliche Inhalte in Protokolldateien einfügen. Beschädigte Protokolldateien können verwendet werden, um eine Angreiferspur abzudecken oder als Übermittlungsmechanismus für einen Angriff auf ein Protokollanzeige- oder Verarbeitungsdienstprogramm. Wenn beispielsweise ein Webadministrator ein browserbasiertes Dienstprogramm zum Überprüfen von Protokollen verwendet, ist möglicherweise ein Cross-Site-Scripting-Angriff möglich.
Empfehlungen: Vermeiden Sie die direkte Einbettung von Benutzereingaben in Protokolldateien, wenn dies möglich ist. Bereinigen Sie vom Benutzer angegebene Daten zum Erstellen von Protokolleinträgen mithilfe eines sicheren Protokollierungsmechanismus wie dem OWASP ESAPI-Protokollierer, der automatisch unerwartete Zeilenumbrüche und Zeilenvorschübe entfernt und die HTML-Entitätscodierung für nicht alphanumerische -Daten verwenden kann . Schreiben Sie nur bei Bedarf einen benutzerdefinierten Blacklist-Code. Überprüfen Sie die vom Benutzer bereitgestellten Eingaben immer, um sicherzustellen, dass dem erwarteten Format entspricht. Verwenden Sie dabei möglichst zentralisierte Datenvalidierungsroutinen.
Sie empfehlen ESAPI zu verwenden, aber es ist ein sehr großes Projekt, um die einfachste Lösung, die ich brauche, tht ist, warum ich mit String.escape ‚StringEscapeUtils.escapeJava (log)‘ versucht
Thx im fortgeschrittenen!
Können Sie weitere Informationen aus dem Veracode-Bericht bereitstellen? Natürlich strippen Sie es von jeder identifizierenden Info –