# Cloud-Backup-Lösungen

Verwenden Sie diese Seite, um einen Cloud-Backup-Ansatz auszuwählen, der auch nach Ransomware noch funktioniert.

Fokus: Wiederherstellbarkeit, Aufbewahrung und Schutz vor Löschung von Backups.

## Google Drive und OneDrive

Google Drive- und OneDrive-Umgebungen verfügen nicht über native Funktionen, mit denen sie ihre Daten nach einem Ransomware-Angriff wiederherstellen können, der ihre früheren Versionen gelöscht hat. Daher ist es notwendig, bestimmte Lösungen in Betracht zu ziehen, um ihre Daten regelmäßig zu sichern und zu schützen.

Mehrere Lösungen können in Betracht gezogen werden, um dieses Ziel zu erreichen, jede mit ihren Vor- und Nachteilen.

#### Lösung #1: Festplatte

Diese Lösung besteht darin, Dateien aus der Google Drive- oder OneDrive-Umgebung manuell auf eine externe Festplatte zu sichern. Idealerweise sollte ein Backup einer OneDrive- oder Google Drive-Umgebung auf mindestens zwei externen Festplatten erstellt werden, um Datenverlust zu verhindern, falls eine der Festplatten ausfällt. Obwohl diese Lösung am einfachsten zu implementieren ist, ist sie auch die restriktivste.

#### Lösung #2: NAS

Ein NAS (Network Attached Storage) ist ein physischer Netzwerkspeicherserver. Diese Lösung besteht darin, eine Synchronisationsanwendung auf dem NAS zu installieren — nämlich Google Drive Desktop für eine Google-Workspace-Umgebung und OneDrive für eine O365-Umgebung —, um freigegebene Laufwerke (Google Drive) und SharePoint-Websites (OneDrive) regelmäßig zu synchronisieren und Backups auf den NAS-Festplatten zu erstellen. Es ist auch möglich, bestimmte RAID-Typen zu verwenden, um die Festplattensicherheit oder Fehlertoleranz auf dem NAS zu verbessern.

#### Lösung #3: AWS/Azure Storage Space

Azure (Microsoft) und AWS (Amazon) bieten kostengünstige Cloud-Speicherplätze zum Speichern von Backups an. Die Idee besteht darin, regelmäßig alle Daten aus Google Drive- und OneDrive-Umgebungen in einen dieser Speicherplätze zu übertragen, entweder manuell oder automatisch mithilfe eines Skripts und eines mit einer dieser Umgebungen verbundenen Rechners. Mehrere kostenlose Tools werden zu diesem Zweck entwickelt und regelmäßig aktualisiert, nämlich rclone und duplicity, die darauf ausgelegt sind, diese Art der Übertragung zu ermöglichen.

#### Lösung #4: Lösungen von Drittanbietern

Bestimmte Lösungen von Drittanbietern können in Betracht gezogen werden, wenn keine der vorherigen Lösungen geeignet ist. Diese Lösungen machen Backups sehr einfach zu verwenden, sind jedoch mit erheblichen finanziellen Kosten verbunden. Diese Art von Lösung beinhaltet, einem Drittanbieterdienst Zugriff auf Ihre Google Drive- und OneDrive-Umgebung zu gewähren, damit er regelmäßig automatisch Daten abrufen kann. Diese Lösungen bieten auch Funktionen zur Datenwiederherstellung. Beispiele sind Afi, Backupify, Spanning und SpinBackup.

#### Zusammenfassungstabelle

Durch die Analyse all dieser Szenarien ist es möglich, bestimmte Kriterien zu definieren und alle diese Lösungen entsprechend zu klassifizieren, wie in der folgenden Tabelle dargestellt:

<figure><img src="/files/c96a50c9ab55291d15679e727d6229524bee515b" alt=""><figcaption></figcaption></figure>

## Azure

### Unveränderliche Azure-Backups

Azure-Backups können je nach Datenmodell zwei Arten haben: Backup Vault oder Recovery Services:

Es gibt 2 Methoden, um die Unveränderlichkeit dieser Backups zu gewährleisten:

![datasources$ (1)](/files/f0522d6a0fc40733ff79701e7e288ef7da531989)

{% stepper %}
{% step %}

### Stellen Sie sicher, dass die Soft-Delete-Funktion aktiviert ist.

Standardmäßig ist Soft Delete in Azure Recovery Services Vaults aktiviert. Diese Funktion schützt Backups 14 Tage lang und ohne zusätzliche Kosten vor versehentlichem oder böswilligem Löschen. Wenn Backups gelöscht werden und Soft Delete nicht aktiviert ist, können weder Sie noch Microsoft die gelöschten Daten wiederherstellen. Es ist notwendig, den folgenden Schutz zu implementieren, um das folgende Szenario zu vermeiden:

1. Kompromittierung des Azure-Tenants und der Vaults;
2. Deaktivieren von Soft Delete;
3. Löschen von Backups;
4. Wiederherstellung;
5. Dauerhaftes Löschen.
   {% endstep %}

{% step %}

### Verwenden Sie die Multi-User-Autorisierung (MUA) für die Soft-Delete-Funktion.

MUA für Azure Backup verwendet eine neue Ressource namens Resource Guard, um sicherzustellen, dass kritische Vorgänge wie das Deaktivieren von Soft Delete, das Stoppen und Löschen von Backups oder das Reduzieren der Aufbewahrung von Backup-Richtlinien nur mit entsprechender Autorisierung durchgeführt werden. Um den Prozess zu verstehen, ist es notwendig, 2 Rollen zu verstehen, die innerhalb der Azure-Organisation definiert werden müssen:

1. Backup-Administrator: Eigentümer des Recovery Services Vault oder Backup Vault, der Verwaltungs- und Managementvorgänge daran durchführt;
2. Sicherheitsadministrator: Eigentümer des Resource Guard, der als Wächter kritischer Vorgänge am Vault fungiert. Daher kontrolliert der Sicherheitsadministrator die Berechtigungen, die der Backup-Administrator benötigt, um kritische Vorgänge am Vault auszuführen.

Um MUA zu konfigurieren, müssen Sie:

* Prüfen, ob sich Resource Guard und Azure Recovery Services Vault in derselben Azure-Region befinden;
* Prüfen, dass der Backup-Administrator keine Mitwirkendenrechte auf Resource Guard hat. Sie können Resource Guard in einem anderen Abonnement desselben Mandanten oder in einem anderen Mandanten haben;
* Befolgen Sie die [offizielle Azure-Vorgehensweise](https://learn.microsoft.com/en-us/azure/backup/multi-user-authorization?pivots=vaults-recovery-services-vault\&tabs=azure-portal).
  {% endstep %}
  {% endstepper %}

### Schützen Ihrer kritischen Azure-Vorgänge

Das Konfigurieren unveränderlicher Vaults ermöglicht die folgenden Schutzfunktionen:

* Recovery Services: Schützt Daten vor Löschung; Verhindert die Änderung oder Löschung der Backup-Richtlinie, um die Dauer der Datenaufbewahrung zu verkürzen.
* Backup Vaults: Schützt Daten vor Löschung

{% stepper %}
{% step %}

### Melden Sie sich im Azure-Portal an und suchen Sie nach Recovery Services Vaults, Backup Vaults oder dem Vault, den Sie schützen möchten:

<figure><img src="/files/0d77a76705c29a6524436ccc95d1da5c2f930d20" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Klicken Sie auf die Registerkarte Eigenschaften, um den unveränderlichen Vault zu aktivieren und den Vault für die Dauer der Backup-Richtlinie zu sperren

<figure><img src="/files/4e0576dba7b1dcbb657d9d5b2c1b892a5bd2f82c" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/9d1dd614ef894f5a5cabfad84a171fc998b5b32a" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Hinweis: Dieser Schritt kann nicht rückgängig gemacht werden, verwenden Sie ihn mit Vorsicht für sensible Daten.
{% endhint %}
{% endstep %}

{% step %}

### Wiederholen Sie diesen Vorgang für die anderen Vaults, die für die Geschäftskontinuität erforderlich sind.

{% endstep %}
{% endstepper %}

## AWS

### Verschlechterte Lösung (ohne SCP-Rechte)

Hinweis: Der erste Schritt muss für jeden S3-Bucket wiederholt werden, der sensible oder technische Daten enthält, die für die Produktion benötigt werden könnten.

{% stepper %}
{% step %}

### Erstellen Sie eine S3-Bucket-Richtlinie, die das Löschen von S3-Bucket-Versionen verhindert.

1. In der [Amazon S3-Konsole](https://console.aws.amazon.com/s3/), öffnen Sie den Bucket, dann **Berechtigungen**.

   <figure><img src="/files/d878e98878cd021a8769f4ee5e0b28a28b61f6d0" alt=""><figcaption></figcaption></figure>
2. Unter **Bucket-Richtlinie**, klicken Sie auf **Bearbeiten**.
3. Ersetzen Sie die vorhandene Bucket-Richtlinie (falls vorhanden) durch das untenstehende JSON.

```json
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "DenyVersionDeletion",
            "Effect": "Deny",
            "Principal": "*",
            "Action": "s3:DeleteObject*",
            "Resource": "arn:aws:s3:::my-bucket-name/*"
        }
    ]
}
```

{% hint style="info" %}
Ersetzen Sie `my-bucket-name` durch Ihren Bucket-Namen.
{% endhint %}
{% endstep %}

{% step %}

### Erstellen Sie einen Alarmmechanismus, um jede Änderung oder Löschung dieses Buckets zu erkennen.

1. Aktivieren Sie [AWS CloudTrail](https://console.aws.amazon.com/cloudtrail/) falls es noch nicht aktiviert ist.
2. Öffnen Sie die [Amazon EventBridge-Konsole](https://console.aws.amazon.com/events/) (CloudWatch Events), und gehen Sie dann zu **Regeln**.

   <figure><img src="/files/d616c99312d10513eccee483c4cae3e35986a23c" alt=""><figcaption></figcaption></figure>
3. Klicken Sie auf **Regel erstellen**. Wählen Sie **AWS API Call via CloudTrail** als Ereignistyp aus.

   <figure><img src="/files/2650174d45a1b49537c82a3c19b2d6607840cd69" alt=""><figcaption></figcaption></figure>
4. Wählen Sie **Bestimmte Operationen** und fügen Sie hinzu:
   1. PutBucketPolicy
   2. DeleteBucketPolicy
   3. DeleteBucketLifecycle
   4. DeleteBucketPublicAccessBlock
   5. PutBucketPublicAccessBlock
   6. DeleteBucket als die Operationen, für die wir benachrichtigt werden möchten.
5. Verwenden Sie das folgende Ereignismuster:

```json
{
  "source": ["aws.s3"],
  "detail-type": ["AWS API Call via CloudTrail"],
  "detail": {
    "eventSource": ["s3.amazonaws.com"],
    "eventName": ["DeleteBucket", "DeleteBucketLifecycle", "DeleteBucketPolicy", "PutBucketPolicy", "DeleteBucketPublicAccessBlock", "PutBucketPublicAccessBlock"],
    "requestParameters": {
      "bucketName": ["my-bucket-name"]
    }
  }
}
```

{% hint style="info" %}
Ersetzen Sie `my-bucket-name` mit dem Bucket, den Sie schützen möchten.
{% endhint %}
{% endstep %}
{% endstepper %}

6. Konfigurieren Sie das Alarmziel (zum Beispiel ein SNS-Topic für Benachrichtigungen oder eine Lambda-Funktion).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.stoik.io/cyber-best-practices/cyber-best-practices-de/cloud-backup-losungen.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
