Jeder weiß, dass Sie sensitiveInfo
Variable nicht an Ihrem Js-Code halten sollten. Der bessere Weg ist, es in den lokalen Speicher zu legen. Könntest du bitte anhand meines Beispiels Schwachstellen des ersten Ansatzes erklären?Sicherheitsmängel der Aufbewahrung sensibler Informationen innerhalb Javascript-Code
Beispiel: Sie verwenden Bündler, die alle Ihre js-Dateien zusammenfassen. sensitiveInfo
ist nicht global, aber in YourStorage.js
gespeichert. Für den Zugriff auf Dateien, die es hält Sie tun:
import YourStorage from 'somepath/YourStorage';
YourStorage.sensitiveInfo = newValue; // QUESTION: can you steal this value? Is it accessible from console?
Fragen:
- Ist
sensitiveInfo
Variable zugänglich von der Konsole? - Könnten Sie bitte Mechanismus beschreiben, wie jemand
sensitiveInfo
stehlen kann? - Wenn jemand kann es aus meinem Code stehlen, warum konnte er nicht aus dem lokalen Speicher?
UPDATE: (wem ich versuche, von zu schützen) Ich schreibe mobile Web-App, wo die Nutzer echtes Geld ausgeben können. Ich möchte sie vor allen Arten von Angriffen schützen, wo sie ihr Geld verlieren können (d. H. Lokal installierte Viren)
* Wen * versuchst du * vor * zu schützen? – deceze
Sie können alles aus dem lokalen Speicher zurückholen. Es ist einfach nur Text und sehr leicht zugänglich. Sie sollten sensible Daten wahrscheinlich nicht im lokalen Speicher speichern. –
@JosephMarikle wo authToken für autologin gespeichert werden soll? –