Автор Тема: Възможно ли е процес да тръшне цялата система  (Прочетена 6917 пъти)

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Хм, днеска реших да изтествам тая тъпотия на RHEL понеже съм на едни курсове за RHCE сертификация и работните станции са с тази дистрибуция. Убедих се, че selinux е в enforcing режим....крашна. Явно дефолтските полиси-та не го ловят това с контекста с който аз си работя в конзолата де. Забавно. Очаквах друг резултат, но както и да е.
Активен

"Knowledge is power" - France is Bacon

Ivshti

  • Напреднали
  • *****
  • Публикации: 322
  • Distribution: Linvo 2010.3
  • Window Manager: Gnome
    • Профил
    • WWW
Между другото някой знае ли нещо като SELinux, но по-просто устроено?
Активен

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Има много разработки. Ако става въпрос само за файловата система, донякъде extended ACLs вършат работа (man setfacl/getfacl).

systrace прави нещо подобно що се отнася до всички syscalls викани от процесите, пак има полисита и т.н.

RSBAC доколкото знам е правено със сходна идея, но никога не съм имал вземане-даване с него.
Активен

"Knowledge is power" - France is Bacon

NaDa

  • Напреднали
  • *****
  • Публикации: 94
    • Профил
Не сте сами. Grsecurity kernel + PaX изгърмя като за норматив.
Активен

ray

  • Напреднали
  • *****
  • Публикации: 1449
    • Профил
Здравейте,

Тествах с RSBAC - системата блокира.
PS: може обаче да се направи така че нов код да не може да се инсталира и/или стартира.
Румен
« Последна редакция: Nov 02, 2008, 10:37 от ray »
Активен

netgraph

  • Напреднали
  • *****
  • Публикации: 34
  • Distribution: *BSD, Fedora, RHEL
  • Window Manager: Fluxbox, Mate
    • Профил
*БСД _не_ са защитени срещу такъв тип код, просто трябва да се модифицира малко (пример надолу). Нормално е да умират :) Единствено OpenBSD по default няма да умре тъй като му трябва securelevel <=0, а той по default е 1.
NetBSD/FreeBSD си умират по default, това го тествах.
А ето кодовете за NetBSD (и за OpenBSD е същия) и за FreeBSD (малко по различен).

Код:
NetBSD
compile: gcc -li386 bla.c -o bla
bla.c:
#include <sys/types.h>
#include <machine/sysarch.h>

int main()
{
  i386_iopl(3);
  asm("cli");
  while(1) {};
}

Код:
FreeBSD
compile: gcc bla.c -o bla
bla.c:
#include <fcntl.h>

int main()
{
  open("/dev/io", O_RDONLY);
  asm("cli");
  while(1) {};
}

Regards.
Активен

__asm__("jmp .");