Archiv

Archiv für November, 2010

Linux Vanilla Kernel or Debian Kernel vs. Gentoo Hardened with Grsecurity v2 + PaX

22. November 2010 Keine Kommentare

Running the paxtest program…

Linux Vanilla Kernel or Debian Kernel

Linux 2.6.32.25 #4 SMP Thu Nov 11 17:04:46 CET 2010 i686 Intel(R) Xeon(TM) CPU 3.20GHz GenuineIntel GNU/Linux
 
Executable anonymous mapping             : Vulnerable
Executable bss                           : Vulnerable
Executable data                          : Vulnerable
Executable heap                          : Vulnerable
Executable stack                         : Vulnerable
Executable shared library bss            : Vulnerable
Executable shared library data           : Vulnerable
Executable anonymous mapping (mprotect)  : Vulnerable
Executable bss (mprotect)                : Vulnerable
Executable data (mprotect)               : Vulnerable
Executable heap (mprotect)               : Vulnerable
Executable stack (mprotect)              : Vulnerable
Executable shared library bss (mprotect) : Vulnerable
Executable shared library data (mprotect): Vulnerable
Writable text segments                   : Vulnerable
Anonymous mapping randomisation test     : 12 bits (guessed)
Heap randomisation test (ET_EXEC)        : 13 bits (guessed)
Heap randomisation test (PIE)            : 16 bits (guessed)
Main executable randomisation (ET_EXEC)  : No randomisation
Main executable randomisation (PIE)      : 12 bits (guessed)
Shared library randomisation test        : 10 bits (guessed)
Stack randomisation test (SEGMEXEC)      : 19 bits (guessed)
Stack randomisation test (PAGEEXEC)      : 19 bits (guessed)
Return to function (strcpy)              : Vulnerable
Return to function (memcpy)              : Vulnerable
Return to function (strcpy, PIE)         : Vulnerable
Return to function (memcpy, PIE)         : Vulnerable

Gentoo Hardened with Grsecurity v2 + PaX

Linux 2.6.32-hardened-r22 #1 SMP Fri Nov 12 11:43:28 CET 2010 i686 Intel(R) Xeon(TM) CPU 3.20GHz GenuineIntel GNU/Linux
 
Executable anonymous mapping             : Killed
Executable bss                           : Killed
Executable data                          : Killed
Executable heap                          : Killed
Executable stack                         : Killed
Executable shared library bss            : Killed
Executable shared library data           : Killed
Executable anonymous mapping (mprotect)  : Killed
Executable bss (mprotect)                : Killed
Executable data (mprotect)               : Killed
Executable heap (mprotect)               : Killed
Executable stack (mprotect)              : Killed
Executable shared library bss (mprotect) : Killed
Executable shared library data (mprotect): Killed
Writable text segments                   : Killed
Anonymous mapping randomisation test     : 17 bits (guessed)
Heap randomisation test (ET_EXEC)        : 13 bits (guessed)
Heap randomisation test (PIE)            : 23 bits (guessed)
Main executable randomisation (ET_EXEC)  : No randomisation
Main executable randomisation (PIE)      : 15 bits (guessed)
Shared library randomisation test        : 17 bits (guessed)
Stack randomisation test (SEGMEXEC)      : 23 bits (guessed)
Stack randomisation test (PAGEEXEC)      : 23 bits (guessed)
Return to function (strcpy)              : Vulnerable
Return to function (memcpy)              : Vulnerable
Return to function (strcpy, PIE)         : Vulnerable
Return to function (memcpy, PIE)         : Vulnerable

Plesk proftpd root Exploit Warnung

21. November 2010 Keine Kommentare

Ich habe grade die Mitteilung von einem Kunden erhalten, dass sein Linux Plesk Hostingserver massiv überlastet ist. in.proftpd Prozesse lasteten die CPU des Systems so aus, dass der Load auf über 40 nach oben schoss.

Ein ps aux zeigte Prozesse mit den Namen httpd, apache die vom Verzeichnis /tmp/.ICE-unix/.root aus gestartet wurden. Diese öffneten eine IRC Verbindung zu einem Server um von dort aus “Mitglied” eines Botnetzes zu werden.

COMMAND   PID USER   FD   TYPE    DEVICE    SIZE     NODE NAME
perl    19715 root  cwd    DIR       9,0    4096 54214771 /tmp/.ICE-unix/.root
perl    19715 root  rtd    DIR       9,0    4096        2 /
perl    19715 root  txt    REG       9,0 1253828  7983805 /usr/bin/perl
perl    19715 root  mem    REG       9,0         41631748 /lib/i686/cmov/libresolv-2.7.so (path inode=41633634)
perl    19715 root  mem    REG       9,0         41631755 /lib/i686/cmov/libnss_dns-2.7.so (path inode=41633648)
perl    19715 root  mem    REG       9,0         41631757 /lib/i686/cmov/libnss_files-2.7.so (path inode=41633630)
perl    19715 root  mem    REG       9,0   19816  8144232 /usr/lib/perl/5.10.0/auto/Socket/Socket.so
perl    19715 root  mem    REG       9,0         41631753 /lib/i686/cmov/libcrypt-2.7.so (path inode=41633627)
perl    19715 root  mem    REG       9,0         41631762 /lib/i686/cmov/libc-2.7.so (path inode=41633638)
perl    19715 root  mem    REG       9,0         41631754 /lib/i686/cmov/libpthread-2.7.so (path inode=41633647)
perl    19715 root  mem    REG       9,0         41631752 /lib/i686/cmov/libm-2.7.so (path inode=41633631)
perl    19715 root  mem    REG       9,0         41631756 /lib/i686/cmov/libdl-2.7.so (path inode=41633640)
perl    19715 root  mem    REG       9,0   16548  8144230 /usr/lib/perl/5.10.0/auto/IO/IO.so
perl    19715 root  mem    REG       9,0         41615628 /lib/ld-2.7.so (path inode=41615384)
perl    19715 root    0u  IPv4 112238056              TCP xxx.de:58255->ichsuchesex.info:45295 (CLOSE_WAIT)
perl    19715 root    1u  IPv4 112238056              TCP xxx.de:58255->ichsuchesex.info:45295 (CLOSE_WAIT)
perl    19715 root    2u  IPv4 112238056              TCP xxx.de:58255->ichsuchesex.info:45295 (CLOSE_WAIT)
perl    19715 root    3u  IPv4 112239334              TCP xxx.de:38139->ns.free-vidz.com:ircd (ESTABLISHED)
perl    19715 root    4u   REG       9,0   49416 46776325 /var/run/proftpd_scoreboard
perl    19715 root    5u  IPv4 112238056              TCP xxx.de:58255->ichsuchesex.info:45295 (CLOSE_WAIT)

Die Hacker nutzen dabei folgende Lücke aus: http://bugs.proftpd.org/show_bug.cgi?id=3521

Das miese an der Geschichte ist, dass die Hacker dadurch sofort root Rechte auf dem System hatten.

Da das Paket psa-proftpd von Plesk direkt bereitgestellt wird und nichts mir der Distribution zu tun hat, muss man das Update über die Plesk Oberfläche einspielen. Es sind alle Plesk Versionen von 9.5.x bis 10.x betroffen. Dazu existiert bereits eine Nachricht auf der Parallels Webseite: http://www.parallels.com/de/products/plesk/ProFTPD

Also wirklich dringend Updaten, die Lücke wird bereits automatisiert genutzt und ein Angreifer erhält root Rechte.

Linux: Schreibgeschützte Datei oder Ordner erstellen bzw. löschen

12. November 2010 Keine Kommentare

Man stelle sich vor als root auf einem Linux Rechner unterwegs zu sein und folgendes zu erleben:

~/# rm -rf dateiname
rm: cannot unlink `dateiname': Operation not permitted

Bei root entfallen ja bekanntlich sämtliche andere Kriterien wie z.B.

  • Ist man Besitzer der Datei?
  • Sind Owner- oder Gruppenschreibrechte vorhanden?

Daher gibt es eigentlich nur zwei logische Erklärungen warum man die Datei nicht löschen kann. Entweder es stimmt gewaltig etwas nicht (z.B. Rechner gehackt rm Binary ausgetauscht) oder es wurde mittels Dateisystem Attributen für ext2, ext3 oder ext4 gearbeitet. Diese werden mittels ls nicht angezeigt.

Wenn man sich diese Attribute der o.g. Datei anzeigen lässt, ergibt sich folgendes Bild:

~/# lsattr dateiname
-u-ia--------- dateiname

Erst wenn man alle Attribute entfernt hat, kann man mit der Datei so arbeiten wie man möchte.
Das erledigt man wie folgt:

~/# chattr -i -a -u dateiname

.. und siehe da, der anschließende rm Befehl meldet sich erfolgreich.
Wie man genau mit chattr und lsattr arbeiten kann, ist unter folgendem Wiki Eintrag schön dargestellt und erklärt: http://wiki.ubuntuusers.de/chattr