GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Apparmor - wie kann man die Regel "alles zulassen" und dann verschärfen?

Das ist nicht der richtige Ansatz.

Im Allgemeinen ist Blacklisting eine schlechte Grundlage für eine Sicherheitsrichtlinie – es sollte auf Whitelisting basieren – und die Syntax von AppArmor basiert darauf. Zu diesem Zweck sollten Sie ohne Einzelheiten im Profil beginnen, aber die Profilaktion so einstellen, dass sie sich beschwert, anstatt sie zu erzwingen. Dies können Sie im Profil einstellen (flags=(complain) ) oder mit dem Befehl aa-complain. Dann werden die spezifischen Anweisungen zum Zulassen einer Operation überflüssig.

Ich glaube, die maßgebliche Dokumentation ist die von SuSE veröffentlichte. Aber, kurz gesagt, für den Dateizugriff ist das Konfigurationsformat:

<object> <permissions>,

Beachten Sie, dass sich das Globbing im Objekt (wenn es sich um einen Pfad handelt) geringfügig von dem unterscheidet, was Sie vielleicht von der Befehlszeile her kennen. Hier gibt es mehr dbus-spezifisches Zeug.


Aber ist die allow *, eine korrekte Syntax für 'alles zulassen'

Die korrekte Syntax für alles zulassen sieht so aus:

profile DAC /path/to/exec {
  # Allow all rules
  capability,
  network,
  mount,
  remount,
  umount,
  pivot_root,
  ptrace,
  signal,
  dbus,
  unix,
  file,
}

Eigentlich gibt es noch zwei weitere Regeln:

  1. rlimit (AppArmor kann die mit einem Profil verknüpften Ressourcenlimits festlegen und steuern)
  2. change_profile (Steuern Sie, welche Berechtigungen für welche Profile eine eingeschränkte Aufgabe übernehmen kann)

Aber das hat in diesem speziellen Fall keine Bedeutung.


Linux
  1. Wie kann man Gnome anweisen, das ~/.profile erneut zu lesen?

  2. So erlauben Sie eine Remote-Verbindung zum MySQL-Datenbankserver

  3. Wie kann man einen SSH-Benutzer darauf beschränken, nur SSH-Tunneling zuzulassen?

  4. AppArmor:Sind mehrere Profile pro Anwendung (Firefox, Thunderbird) möglich? Syntax?

  5. Wie deaktiviere ich alles in crontab -l?

Wie ich mit dem Budget ein Homelab gebaut habe

Gewusst wie:Grundlegende IPTables-Fehlerbehebung

So konfigurieren Sie eine Firewall auf Jelastic Cloud

Wie überprüfe ich die Syntax eines Bash-Skripts, ohne es auszuführen?

Wie kann ich C++-Code profilieren, der unter Linux ausgeführt wird?

Wie kann ich die Speichernutzung profilieren?