Ich habe diesen folgenden Fehler erhalten, als meine Website geprüft wurde. Ich habe meine Website mit Jsp, Servlets, Java-Klassen entwickelt.
Fehlendes HttpOnly-Attribut in Session-Cookie
Sicherheitsrisiken
Es ist möglich, Kundensitzungen und Cookies zu stehlen oder zu manipulieren wird verwendet, um sich als legitimer Benutzer auszugeben, so dass der Hacker Benutzerdatensätze anzeigen oder ändern kann. und um Transaktionen als dieser Benutzer auszuführen
Ursachen:
Die Webanwendung legt Sitzungscookies ohne HttpOnly fest Attribut
Korrekturmaßnahmen:
Fügen Sie allen Sitzungscookies das Attribut 'HttpOnly' hinzu
Ich übergebe das Java-Sicherheitstoken als versteckten Parameter, während ich auf "Senden" klicke. Wie kann ich dieses HttpOnly-Attribut in diesem Token hinzufügen?
Das HttpOnly-Attribut wird auf Cookies festgelegt, und diese werden (normalerweise) nicht vom Server an den Client übergeben vom Client zum Server. HttpOnly ist kein Attribut, das Sie für einen Formular- oder Formularparameter festlegen können. Hier ist der Client der Browser und der Server ist der Java EE-Server, der Ihre Java-Anwendung ausführt.
Cookies werden in der Regel von einem Server erstellt, an den Browser weitergegeben und dann zurückgegeben. Jetzt ist es möglich, Cookies mit JavaScript zu erstellen und zu manipulieren, was hilfreich sein kann, aber auch ein Sicherheitsloch sein kann. So ein HttpOnly Cookie ist nur vom Server zugänglich oder in anderen Wörter, auf die nicht zugegriffen werden kann, von clientseitigem JavaScript, das Ihre Site vor einigen Formen von XSS-Angriffen schützt. Der Browser speichert also einen HttpOnly-Cookie und gibt ihn zurück, ändert ihn jedoch nicht und lässt ihn nicht auf dem Client erstellen. Ein HttpOnly Cookie muss auf dem Server erstellt werden.
Wenn Sie JSP verwenden, erstellt Ihr Server wahrscheinlich automatisch einen Cookie, um Sitzungen für Sie zu verwalten. Dies ist der Cookie, für den Sie das HttpOnly-Attribut festlegen müssen. Die Methode, mit der HttpOnly auf Ihrem SESSIONID Cooke festgelegt wird, ist containerspezifisch. a>
Verwenden Sie das Attribut <http-only>
, um HttpOnly in der Datei web.xml festzulegen.