2016-06-03 32 views
0

Eine meiner EC2-Instanzen wurde vor ein paar Tagen gehackt.AWS EC2-Instanz gehackt

Ich versuchte, über SSH an den Server anmelden, aber ich konnte keine Verbindung herstellen. Ich bin der einzige mit Zugriff auf den privaten Schlüssel, und ich verwahre ihn an einem sicheren Ort.

Zum Glück hatte ich ein Backup von allem und konnte die Web-App ziemlich schnell auf eine neue Instanz verschieben.

Meine Sorge im Moment ist, dass ich nicht weiß, wie meine Instanz in erster Linie gehackt wurde.

Warum kann ich mich nicht über SSH mit meinem privaten Schlüssel anmelden? Ich nehme an, dass der private Schlüssel, der auf dem Server gespeichert ist, nicht (einfach) gelöscht werden kann.

Gibt es einen Weg, wie ich herausfinden kann, wie der Hacker Zugriff auf die Instanz bekam? Vielleicht eine Protokolldatei, die mich in die richtige Richtung weisen würde.

Sollte ich das fragliche EBS-Volume an eine neue Instanz anhängen und sehen, was darauf steht oder was sind meine Optionen in diesem Fall?

Im Moment scheint es, dass ich überhaupt auf die gehackte Instanz zugreifen muss.

Vielen Dank!

+0

Etwas macht keinen Sinn .. Der private Schlüssel ist nicht auf der Instanz, es hat nur den öffentlichen Schlüssel. Der private Schlüssel ist bei Ihnen auf Ihrem lokalen Rechner. Wurde das kompromittiert, teilen Sie es mit jemandem? – Shibashis

Antwort

1

Sie haben sich möglicherweise mit Ihrem Passwort an Ihrem Computer angemeldet. Überprüfen Sie in ssh config den Wert von: PasswordAuthentication. Wenn dies auf Ja eingestellt ist, können sich Benutzer per Passwort an der Instanz anmelden. Überprüfen Sie/var/log/secure für Remote-Logins. Es werden alle Logins angezeigt (basierend auf Passwort oder Schlüssel).

Wenn sich jemand als 'root' angemeldet hat, kann er die ssh-Schlüssel ändern.

+0

Wie kann ich dies überprüfen, wenn ich keine Verbindung zur Instanz herstellen kann? FTP oder SSH funktioniert nicht mehr. Ich bin aus der Instanz ausgesperrt. – LeuName

+1

als @Karen B erwähnt, nehmen Sie einen EBS-Snapshot des Root-Volumes und hängen Sie ihn an eine neue ec2-Instanz an (erstellen Sie daraus ein Volume). Mounten Sie das Volume und schauen Sie sich die Log-Dateien an –

1

@Krishna Kumar R ist richtig über den Hacker wahrscheinlich die SSH-Schlüssel ändern.

Nächste Schritte:

Sicherheitsbedenken (tun dies jetzt!):

  1. Stoppen Sie die Instanz, aber nicht beendet, noch

  2. Entziehen/verfallen alle sensiblen Zugangsdaten Diese wurden in der Instanz gespeichert, einschließlich Passwörtern und Schlüsseln für andere Websites und Dienste. Alles, was in dieser Instanz gespeichert ist, sollte als kompromittiert betrachtet werden.

Post-mortem

  1. einen EBS-Snapshot des Root-Volumes Beispiel nehmen (unter der Annahme, dass dort Protokolle gespeichert werden)

  2. ein neues Volume aus dem Schnappschuss machen und einen anhang (Nicht-Produktion) Instanz

  3. Montieren und starten Sie Protokolle zu lesen.Wenn dies ein Host-Linux ist, und Sie haben Port 22 offen in der Firewall, würde ich mit /<mount-point>/var/log/auth.log

0

Die Tatsache beginnen, dass Sie nicht an der Maschine einzuloggen ist nicht bedeuten, dass es gewesen ist " gehackt ". Dies könnte an einer Konfigurationsänderung der Instanz liegen, oder die IP-Adresse der Instanz wurde nach einem Stopp/Start möglicherweise geändert.

Führen Sie eine Suche auf Stackoverflow für Standard-Lösungen für Probleme auf eine Instanz verbinden und sehen, ob Sie (zB nochmals überprüfen IP-Adresse eine Verbindung herstellen können, Sicherheitsgruppe überprüfen, schalten Sie ssh -v Debugging, Netzwerkkonnektivität & VPC Einstellungen überprüfen, Ansicht Get System Log, etc).

Im schlimmsten Fall, ja, man könnte:

  • Stoppen Sie die Instanz
  • Detach die EBS Volumen
  • die EBS Volumen
  • Zugang der Inhalt des EBS Volumen
  • an einen anderen EC2-Instanz hinzufügen