Fehlerhafte Syntax zu MSB (minimum security baseline)

Hinweis: In dem Thema Fehlerhafte Syntax zu MSB (minimum security baseline) gibt es 11 Antworten auf 2 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • Grüße!


    Ich habe mich frisch in diesem Forum registriert und war der Meinung das ich in dem Bereich "Sicherheit unter Linux" hier richtig bin. Sollte dies nicht der Fall sein darf man mich gerne eines besseren belehren ^^


    Zu meinem Problem:
    Ich bin momentan damit beschäftigt eine MSB (minimum security baseline) für unsere SLES Server zu schreiben. Version: Linux 3.0.80-0.5-default SUSE (SAP HANA).
    Parallel dazu schreibe ich ein Skript welches die Sicherheitskriterien automatisiert abfragt und die Resultate in eine phpMyAdmin Datenbank schreibt.


    Konkret: Es wird mitten im Skript aufgehört zu prozessieren, weil vermutlich irgendetwas mit der Syntax nicht stimmt... (meine Intuition).


    Code
    ################### Name: check 0008# World writable files must be avoided where possible especially on critical files and directories including /home.# check for world writable filescheck_0008 () 	{	result_0008=$(find / -path /proc -prune -o -perm -2 ! -type l -ls | wc -l)	raw_0008=$(find / -path /proc -prune -o -perm -2 ! -type l -ls)	insert_checkresult "8" "$result_0008" "$raw_0008"	}


    Genau bei diesem Abschnitt kriege ich keine Resultate mehr in meiner "Resultats-Datei".

    Zu deutsch ist der Sinn dieser Abfrage ob global beschreibbare Dateien auf dem Server existieren.


    Sollten Fragen zur Problemstellung bestehen nicht zögern!


    Gruß,
    Binary :smilie_pc_153:

    „Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber bei dem Universum bin ich mir noch nicht ganz sicher.“
    - Albert Einstein

    Für den Inhalt des Beitrages 70036 haftet ausdrücklich der jeweilige Autor: BinaryIT

  • *push*

    „Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber bei dem Universum bin ich mir noch nicht ganz sicher.“
    - Albert Einstein

    Für den Inhalt des Beitrages 70068 haftet ausdrücklich der jeweilige Autor: BinaryIT

  • Leider kann dir zu deinem Problem scheinbar keiner helfen, sry.


    Es ist keine Unhöflichkeit, wenn keiner antwortet, sondern einfach nur der Tatsache geschuldet, dass keiner helfen kann. Tut mir Leid, dir keine besseren Nachrichten bringen zu können.

  • Hi,


    Ich habe kurz bei mir ausprobiert - alles OK. Siehe Skript unten.


    Bash
    #!/bin/bash
    check_0008 () {
        	result_0008=$(find / -path /proc -prune -o -perm -2 ! -type l -ls | wc -l)
        	raw_0008=$(find / -path /proc -prune -o -perm -2 ! -type l -ls)
        	echo $result_0008
        	echo $raw_0008
    }
    
    
    check_0008


    Ich würde spontan auf die benötigte Speichermenge tippen. Bei raw_0008 muss maz evtl. das Ergebnis in mehrere trennen.


    Was macht "insert_checkresult"?

    Für den Inhalt des Beitrages 70086 haftet ausdrücklich der jeweilige Autor: toxa


  • So etwas ist hier verpönt.
    Vor allem nach einem Tag.

    Verzeihung... dessen war ich mir nicht bewusst.

    „Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber bei dem Universum bin ich mir noch nicht ganz sicher.“
    - Albert Einstein

    Für den Inhalt des Beitrages 70541 haftet ausdrücklich der jeweilige Autor: BinaryIT

  • Update:
    Wenn ich den Befehl ausführe..

    Code
    result_0008=$(find / -path /proc -prune -o -perm -2 ! -type l -ls | wc -l)



    Erhalte ich folgende Fehlermeldung:
    find: `/var/lib/ntp/proc/38912/task/38912/ns/net': No such file or directory
    find: `/var/lib/ntp/proc/38912/task/38912/ns/net': No such file or directory
    find: `/var/lib/ntp/proc/38912/task/38912/ns/uts': No such file or directory
    find: `/var/lib/ntp/proc/38912/task/38912/ns/uts': No such file or directory
    find: `/var/lib/ntp/proc/38912/task/38912/ns/ipc': No such file or directory
    find: `/var/lib/ntp/proc/38912/task/38912/ns/ipc': No such file or directory
    find: `/var/lib/ntp/proc/38912/ns/net': No such file or directory
    find: `/var/lib/ntp/proc/38912/ns/net': No such file or directory
    find: `/var/lib/ntp/proc/38912/ns/uts': No such file or directory
    find: `/var/lib/ntp/proc/38912/ns/uts': No such file or directory
    find: `/var/lib/ntp/proc/38912/ns/ipc': No such file or directory
    find: `/var/lib/ntp/proc/38912/ns/ipc': No such file or directory
    find: `/var/lib/ntp/proc/38912/net': Invalid argument
    find: `/var/lib/ntp/proc/90683/task/90683/fdinfo/4': No such file or directory
    find: `/var/lib/ntp/proc/90683/fdinfo/4': No such file or directory



    „Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber bei dem Universum bin ich mir noch nicht ganz sicher.“
    - Albert Einstein

    Für den Inhalt des Beitrages 70547 haftet ausdrücklich der jeweilige Autor: BinaryIT

  • Es ist natürlich lustig, wenn man auch unter /dev & Co. sucht :)


    Am besten spezielle Verzeichnisse weglassen.

    Für den Inhalt des Beitrages 70548 haftet ausdrücklich der jeweilige Autor: toxa

  • Also wenn ich den Code richtig verstehe suche ich in jedem Verzeichnis außer /proc nach Dateien welche von der Gruppe others beschrieben werden können. Der -prune Parameter steht dafür das er auch nicht weiter runter in der Directory-Hierarchie von /proc geht. Ausgeschlossen von der Suche werden aus symbolische Links (durch ! -type l ).

    „Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber bei dem Universum bin ich mir noch nicht ganz sicher.“
    - Albert Einstein

    Einmal editiert, zuletzt von BinaryIT ()

    Für den Inhalt des Beitrages 71553 haftet ausdrücklich der jeweilige Autor: BinaryIT

  • Anscheinend kann Dein Unterprogramm genau deswegen nichts mit den Ergebnissen, die in result_008 stehen, nichts anfangen - da sind auch Fehlermeldungen dabei.


    Normalerweise kommen die Fehlermeldungen nach std_err. Dass heißt, Du kannst die Ergebnisse von den Fehlern trennen.


    S. hier : das kann man z.B. damit umgehen:

    Code
    result_0008=$(find / -path /proc -prune -o -perm -2 ! -type l -ls 2> find_errors.log| wc -l)

    Für den Inhalt des Beitrages 71569 haftet ausdrücklich der jeweilige Autor: toxa