2017-11-10 3 views
0

Was halten Sie von der Sicherheitsanfälligkeit in Angular 4? Weil es im Client ist.Angular 4 - Verschlüsseln von Daten (AES) aus eckigen und schickte es

Ich möchte eine Daten mit einem Schlüssel (Javascript AES) verschlüsseln und an meine API senden. Danach entschlüssele ich die Daten in meiner API.

Glaubst du, dass es eine Schwachstelle ist?

Vielen Dank

+0

Wenn Sie "Verwundbarkeit" sagen, meinen Sie "Sicherheit?" Eine Schwachstelle ist eine spezifische Schwachstelle, die angegriffen werden kann. Meinst du eine bestimmte Sicherheitslücke in Angular 4? Es ist unklar, was du mit "Denkst du, es ist eine Schwachstelle?" Meinst du "ist das sicher?" Das hängt ganz davon ab, was genau Sie senden, vor wem Sie es schützen wollen, genau wie Sie es senden, wie Sie den Schlüssel erstellen und teilen und viele andere Faktoren. Es ist nicht möglich, das von Ihnen beschriebene System zu bewerten. –

+0

Sorry, es war unklar, ich wollte wissen, ob es sicher ist. Ich benutze eine Authentifizierung mit Google und es gibt mir ein Objekt mit allen Benutzerinformationen zurück. Ich möchte dieses Objekt an eine API senden, um die Benutzerinformationen zu speichern. – Fasco

+0

Wie vereinbaren der Client und der Server einen AES-Schlüssel? Wenn es im Client fest codiert ist, ist es schwer zu erkennen, welchen Nutzen dies bietet. Was erwarten Sie, dass HTTPS dies nicht tut? Während HTTPS bestimmte Probleme hat, glauben Sie, dass Sie den Hintergrund haben, etwas sicherer als HTTPS zu erstellen? –

Antwort

1

Erstens, um zu klären. Die Verwendung von HTTP (S) verschlüsselt Ihre Daten bereits. Verwenden Sie eine Anwendung wie WireShark, um dies zu bestätigen. Die Verwendung von HTTP (nicht HTTPS) wird nicht empfohlen, da die Payload im Netzwerk als reiner Text gelesen werden kann.

Wenn Sie noch weitere Verschlüsselung benötigen (ich würde fragen, warum).

Zweitens hängt es davon ab, wo Sie Ihre Daten speichern (ich nehme an, dass es empfindlich ist). Wenn Sie etwas im Browser speichern (Lokaler Speicher), rate ich dringend davon ab, da es nicht sicher ist. Der Grund dafür ist, dass jemand eine solche Daten unter Verwendung lesen konnte:

var yourSensitiveData = localStorage.getItem("your-data"); 

Wenn Sie Daten speichern zu Session Speicher, dann ist dies sicher, wenn richtig umgesetzt, da die Daten nur zugänglich zwischen dem Client und dem Server, in dem die Sitzung wird ausgeführt.

Hoffe, das hilft.

+0

Wenn ich meine Daten verschlüsseln möchte, verwende ich eine Authentifizierung mit Google in meiner Angular-Anwendung. Google gibt ein Objekt mit den Benutzerinformationen zurück, und ich möchte dieses Objekt in meiner Datenbank speichern.Allerdings muss ich dieses Objekt in meiner API senden und dieses ist überall zugänglich! Also möchte ich das Objekt in eckig verschlüsseln, es dann in meine API senden und mit dem Schlüssel in meiner API entschlüsseln. (Ich benutze HTTPS) – Fasco

+0

@ Fasco Ich sehe. Meinst du "überall zugänglich" wie in, jeder kann eine GET-Anfrage für die Daten (in Ihrer Datenbank) mit der API durchführen? – jburtondev

Verwandte Themen