Funkcjonalności warstw architektury referencyjnej Big Data
Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.
Możliwości systemu Linux to specjalne atrybuty w jądrze systemu Linux, które przyznają procesom i binarnym plikom wykonywalnym określone uprawnienia, które są zwykle zarezerwowane dla procesów, których efektywny identyfikator użytkownika to 0 (użytkownik root i tylko użytkownik root ma UID 0).
W tym artykule wyjaśniono niektóre z dostępnych funkcji, ich zastosowania oraz sposoby ich ustawiania i usuwania. Pamiętaj, że ustawianie możliwości plików wykonywalnych może zagrozić bezpieczeństwu twojego systemu. Jako taki, powinieneś rozważyć przetestowanie systemu nieprodukcyjnego przed wdrożeniem możliwości produkcyjnych.
Zasadniczo celem możliwości jest podzielenie siły „rootowania” na określone uprawnienia, tak aby w przypadku wykorzystania procesu lub pliku binarnego posiadającego jedną lub więcej możliwości potencjalne uszkodzenie było ograniczone w porównaniu z tym samym procesem uruchomionym jako root.
Możliwości można ustawić dla procesów i plików wykonywalnych. Proces wynikający z wykonania pliku może zyskać możliwości tego pliku.
Możliwości zaimplementowane w systemie Linux są liczne, a wiele z nich dodano od czasu ich pierwotnego wydania. Niektóre z nich są następujące:
CAP_CHOWN
: Wprowadź zmiany w identyfikatorze użytkownika i identyfikatorze grupy plikówCAP_DAC_OVERRIDE
: Zastąp DAC (dyskretna kontrola dostępu). Na przykład vto omija sprawdzanie uprawnień do odczytu / zapisu / wykonywania.CAP_KILL
: Pomiń sprawdzanie uprawnień do wysyłania sygnałów do procesów. CAP_SYS_NICE
: Podnieś uprzejmość procesów ( wyjaśnienie uprzejmości można znaleźć tutaj )CAP_SYS_TIME
: Ustaw zegar systemowy i sprzętowy w czasie rzeczywistymAby wyświetlić pełną listę, uruchom man 7 capabilities
.
Możliwości są przypisywane w zestawach, mianowicie „dozwolone”, „dziedziczne”, „skuteczne” i „ambientowe” dla wątków oraz „dozwolone”, „dziedziczne” i „skuteczne” dla plików. Zestawy te definiują różne złożone zachowania, ich pełne wyjaśnienie wykracza poza zakres tego artykułu.
Podczas ustawiania możliwości pliku prawie zawsze będziemy używać na przykład „dozwolone” i „skuteczne” CAP_DAC_OVERRIDE+ep
. Zwróć uwagę na +ep
, co oznacza wyżej wymienione zestawy.
Istnieją dwa główne narzędzia, getcap
a setcap
które można przeglądać i odpowiednio ustawić te atrybuty.
libcap2-bin
pakiet, który można zainstalować z:apt install libcap2-bin
libcap
pakiet jest potrzebny:yum install libcap
libcap
:pacman -S libcap
Aby zobaczyć, czy plik ma jakieś ustawione możliwości, możesz po prostu uruchomić getcap /full/path/to/binary
, na przykład:
root@demo:~# getcap /usr/bin/ping
/usr/bin/ping = cap_net_raw+ep
root@demo:~# getcap /usr/bin/rcp
/usr/bin/rcp = cap_net_bind_service+ep
Jeśli chcesz dowiedzieć się, które możliwości są już ustawione w systemie, możesz przeszukać rekursywnie cały system plików za pomocą następującego polecenia:
getcap -r /
Z uwagi na fakt, że wirtualne systemy plików (takie jak /proc
) nie obsługują tych operacji, powyższe polecenie spowoduje tysiące błędów, dlatego w celu uzyskania czystszego wyniku użyj następujących poleceń:
getcap -r / 2>/dev/null
Aby ustawić określone możliwości dla pliku, użyj setcap "capability_string" /path/to/file
.
Aby usunąć wszystkie możliwości z pliku, użyj setcap -r /path/to/file
.
Dla celów demonstracyjnych utworzymy pusty plik w bieżącym katalogu, damy mu możliwość i usuniemy go. Zacznij od następujących czynności:
root@demo:~# touch testfile
root@demo:~# getcap testfile
Drugie polecenie nie generuje danych wyjściowych, co oznacza, że ten plik nie ma żadnych możliwości.
Następnie ustaw zdolność pliku:
root@demo:~# setcap "CAP_CHOWN+ep" testfile
root@demo:~# getcap testfile
testfile = cap_chown+ep
Jako przykład podano „CAP_CHOWN + ep”, ale dowolne inne można przypisać w ten sposób.
Teraz usuń wszystkie możliwości z testfile
:
root@demo:~# setcap -r testfile
root@demo:~# getcap testfile
Ponownie nie będzie danych wyjściowych, ponieważ „CAP_CHOWN + ep” został usunięty.
Możliwości mają wiele potencjalnych zastosowań i mogą pomóc zwiększyć bezpieczeństwo twoich systemów. Jeśli używasz bitu SUID w plikach wykonywalnych, zastanów się nad zastąpieniem go odpowiednią potrzebną funkcją.
Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.
Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.
13 komercyjnych narzędzi do ekstrakcji danych z Big Data
Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+
Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.
Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…
Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą
Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.
Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.
Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.