26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Linux yetenekleri, Linux çekirdeğinde, etkin kullanıcı kimliği 0 olan (kök kullanıcı ve yalnızca kök kullanıcı, UID 0'a sahip) işlemler için ayrılan işlemlere ve ikili yürütülebilir dosyalara ayrıcalık tanıyan özel özniteliklerdir.
Bu makalede, mevcut özelliklerden bazıları, kullanımları ve bunların nasıl ayarlanıp kaldırılacağı açıklanacaktır. Yürütülebilir dosyalardaki özelliklerin ayarının sisteminizin güvenliğini tehlikeye atma potansiyeli olduğunu lütfen unutmayın. Bu nedenle, üretimdeki yetenekleri uygulamadan önce üretim dışı bir sistem üzerinde test etmeyi düşünmelisiniz.
Esasen, yeteneklerin amacı, 'kök'ün gücünü belirli ayrıcalıklara bölmektir, böylece bir veya daha fazla kabiliyete sahip bir işlem veya ikili işlemden yararlanırsa, potansiyel hasar, kök ile çalışan aynı işlemle karşılaştırıldığında sınırlıdır.
Yetenekler süreçlerde ve yürütülebilir dosyalarda ayarlanabilir. Bir dosyanın yürütülmesinden kaynaklanan bir işlem, o dosyanın yeteneklerini kazanabilir.
Linux'ta uygulanan yetenekler çoktur ve orijinal sürümlerinden bu yana birçokları eklenmiştir. Bazıları aşağıdaki gibidir:
CAP_CHOWN
: Dosyaların Kullanıcı Kimliği ve Grup Kimliği'nde değişiklik yapınCAP_DAC_OVERRIDE
: DAC'yi (İsteğe Bağlı Erişim Kontrolü) geçersiz kılın. Örneğin, vto okuma / yazma / yürütme izin kontrollerini atlamak için.CAP_KILL
: İşlemlere sinyal göndermek için izin kontrollerini atlayın. CAP_SYS_NICE
: Süreçlerin güzelliğini artırın (Burada bir güzelliğin açıklaması bulunabilir )CAP_SYS_TIME
: Sistemi ve gerçek zamanlı donanım saatini ayarlayınTam liste için çalıştırın man 7 capabilities
.
Yetenekler, kümeler için "izin verilen", "devralınabilen", "etkili" ve "ortam" ve dosyalar için "izin verilen", "devralınabilen" ve "etkili" olarak adlandırılır. Bu kümeler farklı karmaşık davranışları tanımlar, tam açıklamaları bu makalenin kapsamı dışındadır.
Dosyadaki yetenekleri ayarlarken, neredeyse her zaman "izin verilen" ve "etkili" kullanırız CAP_DAC_OVERRIDE+ep
. +ep
Yukarıda belirtilen kümeleri gösteren, dikkat edin .
Orada iki ana araçlardır, getcap
ve setcap
sırasıyla görüntüleyebilir ve bu özelliklerini belirleyebilir.
libcap2-bin
kurulabilen paket tarafından sağlanır :apt install libcap2-bin
libcap
paket gereklidir:yum install libcap
libcap
:pacman -S libcap
Bir dosyanın ayarlanmış bir yeteneği olup olmadığını görüntülemek getcap /full/path/to/binary
için, örneğin şunları çalıştırabilirsiniz :
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
Sisteminizde önceden ayarlanmış olan yetenekleri bulmak istiyorsanız, aşağıdaki komutla tüm dosya sisteminizi özyinelemeli olarak arayabilirsiniz:
getcap -r /
Sanal dosya sistemlerinin (örneğin /proc
) bu işlemleri desteklememesi nedeniyle, yukarıdaki komut binlerce hata üretecektir, bu nedenle daha temiz bir çıktı için aşağıdakileri kullanın:
getcap -r / 2>/dev/null
Dosyada belirli bir yeteneği ayarlamak için tuşunu kullanın setcap "capability_string" /path/to/file
.
Bir dosyadaki tüm özellikleri kaldırmak için tuşunu kullanın setcap -r /path/to/file
.
Gösteri için mevcut dizinde boş bir dosya oluşturacağız, bir yetenek sunacağız ve kaldıracağız. Aşağıdakilerle başlayın:
root@demo:~# touch testfile
root@demo:~# getcap testfile
İkinci komut çıktı üretmez, yani bu dosyanın herhangi bir özelliği yoktur.
Ardından, dosya için bir yetenek ayarlayın:
root@demo:~# setcap "CAP_CHOWN+ep" testfile
root@demo:~# getcap testfile
testfile = cap_chown+ep
"CAP_CHOWN + ep" örnek olarak kullanılmıştır, ancak başka herhangi biri bu şekilde atanabilir.
Şimdi tüm özellikleri kaldırın testfile
:
root@demo:~# setcap -r testfile
root@demo:~# getcap testfile
Yine, "CAP_CHOWN + ep" kaldırıldığı için çıktı alınmayacaktır.
Yeteneklerin birçok potansiyel kullanımı vardır ve sistemlerinizin güvenliğini artırmaya yardımcı olabilir. Yürütülebilir dosyalarınızda SUID bitini kullanıyorsanız, onu gereken özel yeteneklerle değiştirmeyi düşünün.
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.
Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.
Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.
Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.
CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?
Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.
Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!
Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.
Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun