Informationen, die aus den Terraform-Debugprotokollen entfernt werden sollen?

Informationen, die aus den Terraform-Debugprotokollen entfernt werden sollen?

Beim Senden von GitHub-Problemen werden wir gebeten, Debugprotokolle mit dem Ticket bereitzustellen. Weiß jemand, welche Felder/Daten aus dem Protokoll entfernt werden sollten?

Die Ausgabe enthält beispielsweise Anfragen an den STS-Dienst von AWS, der Authentifizierungsdaten bereitstellt. Ich denke, es wäre gut, diese zu entfernen, oder? Sollten Benutzernamen, Konto-IDs, Benutzer-ARNs usw. ebenfalls entfernt werden?

Antwort1

Erstens erhalten Sie beim Einreichen einen GPG-Schlüssel, um Ihre Geheimnisse vor dem gesamten Internet zu verbergen. Tun Sie das unbedingt.

Zweitens habe ich, als ich es tun musste, alles durchgeblättert. Einige der Dinge, die ich ausgeblendet habe:

  • Netblock-Informationen. Die Übertragung erfolgt meist in verschiedene Subnetze. Wenn Daten durchsickern, wird es für gezielte Angreifer unerwartet schwer, unser internes Netzwerk zu kartieren, sobald sie eine Möglichkeit haben, es zu untersuchen.
  • Genaue Namen. Das war mit etwas Arbeit verbunden, aber durch umsichtige Sed-Arbeit wurden alle „ chicago-bindwith“ dns01und dergleichen ersetzt. Bind für DNS ist keine schlechte Vermutung, aber MongoDB vs. Cassandra ist nützlicher, um einen gezielten Angriff zu erkennen.
  • AWS-Kontonummern.. Diese sind Teil des ARN und können problemlos sediert werden.
  • Tatsächliche Geheimnisse. Einige Terraform-Ressourcen erfordern Dinge wie Passwörter und Zugriffsschlüssel. Sie werden überrascht sein, wie viel davon darin enthalten ist, wenn Sie sich noch nie zuvor einen Debug-Dump angesehen haben.

Es ist eine Menge Arbeit, ein Teil davon erfolgt manuell.

verwandte Informationen