AppArmor
WhiteIntel ni injini ya utaftaji inayotumiwa na dark-web inayotoa huduma za bure za kuangalia ikiwa kampuni au wateja wake wame vamiwa na malware za wizi.
Lengo kuu la WhiteIntel ni kupambana na utekaji wa akaunti na mashambulio ya ransomware yanayotokana na malware za wizi wa habari.
Unaweza kutembelea tovuti yao na kujaribu injini yao bure hapa:
Taarifa Msingi
AppArmor ni uboreshaji wa kernel ulioundwa kuzuia rasilimali zilizopo kwa programu kupitia maelezo ya programu, kutekeleza Udhibiti wa Kufikia wa Lazima (MAC) kwa kuunganisha sifa za kudhibiti upatikanaji moja kwa moja kwa programu badala ya watumiaji. Mfumo huu hufanya kazi kwa kupakia maelezo ya programu ndani ya kernel, kawaida wakati wa kuanza, na maelezo haya yanadhibiti ni rasilimali gani programu inaweza kupata, kama vile uhusiano wa mtandao, ufikiaji wa soketi za moja kwa moja, na ruhusa za faili.
Kuna njia mbili za uendeshaji kwa maelezo ya AppArmor:
Hali ya Utekelezaji: Hali hii inatekeleza sera zilizoelezwa ndani ya maelezo, kuzuia hatua zinazokiuka sera hizi na kuingiza jaribio lolote la kukiuka kupitia mifumo kama syslog au auditd.
Hali ya Malalamiko: Tofauti na hali ya utekelezaji, hali ya malalamiko haikatazi hatua zinazoenda kinyume na sera ya maelezo. Badala yake, inaingiza jaribio hizi kama uvunjaji wa sera bila kutekeleza vizuizi.
Vipengele vya AppArmor
Moduli ya Kernel: Inayowajibika kwa utekelezaji wa sera.
Sera: Hufafanua sheria na vizuizi kwa tabia ya programu na ufikiaji wa rasilimali.
Mchambuzi: Hupakia sera ndani ya kernel kwa utekelezaji au kuripoti.
Zana: Hizi ni programu za mode ya mtumiaji zinazotoa kiolesura cha kuingiliana na kusimamia AppArmor.
Njia za Maelezo
Maelezo ya Apparmor kawaida hufutwa katika /etc/apparmor.d/
Kwa sudo aa-status
utaweza kuorodhesha programu zinazozuiwa na maelezo fulani. Ikiwa unaweza kubadilisha herufi "/" kwa kipindi cha njia ya kila programu iliyoorodheshwa utapata jina la maelezo ya apparmor ndani ya folda iliyotajwa.
Kwa mfano, maelezo ya apparmor kwa /usr/bin/man yatakuwa yanapatikana katika /etc/apparmor.d/usr.bin.man
Amri
Kuunda wasifu
Ili kuelezea programu inayohusika, njia kamili na manyoya huruhusiwa (kwa ajili ya kutambua faili kwa kutumia manyoya) kwa kufafanua faili.
Ili kuelezea upatikanaji wa programu kuu kwa faili zifuatazo mamabara ya upatikanaji yanaweza kutumika:
r (soma)
w (andika)
m (ramani ya kumbukumbu kama inayoweza kutekelezwa)
k (kufunga faili)
l (kuunda viungo vya ngumu)
ix (kutekeleza programu nyingine na programu mpya kurithi sera)
Px (kutekeleza chini ya wasifu mwingine, baada ya kusafisha mazingira)
Cx (kutekeleza chini ya wasifu wa mtoto, baada ya kusafisha mazingira)
Ux (kutekeleza bila kizuizi, baada ya kusafisha mazingira)
Viarasa vinaweza kutajwa katika maelezo na vinaweza kubadilishwa kutoka nje ya wasifu. Kwa mfano: @{PROC} na @{HOME} (ongeza #include <tunables/global> kwenye faili ya wasifu)
Mipangilio ya kukataa inasaidia kubadilisha viwango vya kuruhusu.
aa-genprof
Ili kuanza kwa urahisi kuunda wasifu, apparmor inaweza kukusaidia. Ni rahisi kufanya apparmor ichunguze vitendo vinavyofanywa na programu kuu na kisha kuruhusu au kukataa vitendo. Unahitaji tu kukimbia:
Kisha, kwenye konsoli tofauti tekeleza hatua zote ambazo kawaida binary itatekeleza:
Kisha, kwenye console ya kwanza bonyeza "s" na kisha kwenye hatua zilizorekodiwa eleza ikiwa unataka kusitisha, kuruhusu, au chochote. Ukimaliza bonyeza "f" na wasifu mpya utaundwa katika /etc/apparmor.d/path.to.binary
Kwa kutumia mishale unaweza kuchagua unachotaka kuruhusu/kukataa/chochote
aa-easyprof
Unaweza pia kuunda kiolezo cha wasifu wa apparmor wa binary na:
Tafadhali elewa kwamba kwa chaguo-msingi katika wasifu ulioundwa hakuna kitu kilichoruhusiwa, hivyo kila kitu kimekataliwa. Utahitaji kuongeza mistari kama /etc/passwd r,
kuruhusu kusoma faili ya binary /etc/passwd
kwa mfano.
Unaweza kisha kuimarisha wasifu mpya na
Kubadilisha wasifu kutoka kwenye magogo
Zana ifuatayo itasoma magogo na kuuliza mtumiaji ikiwa anataka kuruhusu baadhi ya vitendo vilivyozuiliwa vilivyogunduliwa:
Kwa kutumia mishale unaweza kuchagua unachotaka kuruhusu/kukataa/au chochote
Kusimamia Wasifu
Kumbukumbu
Mfano wa kumbukumbu za AUDIT na DENIED kutoka kwa /var/log/audit/audit.log ya programu inayoweza kutekelezwa service_bin
:
Unaweza pia kupata habari hii kwa kutumia:
Apparmor katika Docker
Tafadhali kumbuka jinsi wasifu docker-profile wa docker unavyopakiwa kwa chaguo-msingi:
Kwa chaguo-msingi Profaili ya Apparmor ya docker-default inatengenezwa kutoka https://github.com/moby/moby/tree/master/profiles/apparmor
Muhtasari wa Profaili ya docker-default:
Upatikanaji wa mtandao wote
Uwezo wowote haujatambuliwa (Hata hivyo, baadhi ya uwezo utatoka kwa kuingiza sheria za msingi za msingi ya #include <abstractions/base>)
Kuandika kwenye faili yoyote ya /proc haikubaliki
Vidirisha vingine/faili vya /proc na /sys vinaruhusiwa kusoma/kuandika/kufunga/kuunganisha/kutekeleza
Kufunga haikubaliki
Ptrace inaweza kufanywa kwenye mchakato ambao umefungwa na profaili sawa ya apparmor
Maranyingi unapoendesha chombo cha docker unapaswa kuona matokeo yafuatayo:
Tafadhali elewa kwamba apparmor itazuia hata uwezo wa ruhusa uliopewa kontena kwa chaguo-msingi. Kwa mfano, itakuwa na uwezo wa kuzuia ruhusa ya kuandika ndani ya /proc hata kama uwezo wa SYS_ADMIN umepewa kwa sababu kwa chaguo-msingi, wasifu wa apparmor wa docker unakataa ufikiaji huu:
Unahitaji kulemaza apparmor ili kuzidi vizuizi vyake:
Tafadhali kumbuka kwamba kwa chaguo-msingi AppArmor pia itazuia kontena kufunga folda kutoka ndani hata na uwezo wa SYS_ADMIN.
Tafadhali kumbuka unaweza kuongeza/kuondoa uwezo kwa kontena ya docker (hii bado itazuiliwa na njia za ulinzi kama AppArmor na Seccomp):
--cap-add=SYS_ADMIN
inatoa uwezo waSYS_ADMIN
--cap-add=ALL
inatoa uwezo wote--cap-drop=ALL --cap-add=SYS_PTRACE
inaondoa uwezo wote na kutoa tuSYS_PTRACE
Kawaida, unapopata kwamba una uwezo wa kipekee uliopo ndani ya kontena ya docker lakini sehemu fulani ya kudukua haifanyi kazi, hii ni kwa sababu apparmor ya docker itakuwa inazuia.
Mfano
(Mfano kutoka hapa)
Ili kufafanua utendaji wa AppArmor, niliunda wasifu mpya wa Docker "mydocker" na mstari ufuatao uliongezwa:
Ili kuanzisha wasifu, tunahitaji kufanya yafuatayo:
Kutaja maelezo, tunaweza kutumia amri ifuatayo. Amri hapa chini inataja maelezo yangu ya AppArmor mpya.
Kama inavyoonekana hapa chini, tunapata kosa tunapojaribu kubadilisha "/etc/" kwani wasifu wa AppArmor unazuia ufikio wa kuandika kwenye "/etc".
Kizuizi cha AppArmor cha Docker Bypass1
Unaweza kujua ni wasifu gani wa apparmor unatumika kwenye kontena kwa kutumia:
Kisha, unaweza kukimbia mstari ufuatao kupata wasifu sahihi unao tumika:
Kizuizi cha AppArmor Docker Bypass2
AppArmor inategemea njia, hii inamaanisha kwamba hata kama inaweza kulinda faili ndani ya saraka kama /proc
ikiwa unaweza kuweka jinsi kontena itakavyotekelezwa, unaweza kumount saraka ya proc ya mwenyeji ndani ya /host/proc
na hakitakuwa chini ya ulinzi wa AppArmor tena.
Kizuizi cha Shebang cha AppArmor
Katika kosa hili unaweza kuona mfano wa jinsi hata kama unazuia perl kutumika na rasilimali fulani, ikiwa tu unajenga script ya shel ukiainisha kwenye mstari wa kwanza #!/usr/bin/perl
na utekeleza faili moja kwa moja, utaweza kutekeleza chochote unachotaka. K.m.:
WhiteIntel ni injini ya utaftaji inayotumia dark-web ambayo inatoa huduma za bure za kuangalia ikiwa kampuni au wateja wake wameathiriwa na malwares za kuiba.
Lengo kuu la WhiteIntel ni kupambana na utekaji wa akaunti na mashambulio ya ransomware yanayotokana na programu hasidi za kuiba taarifa.
Unaweza kutembelea tovuti yao na kujaribu injini yao kwa bure kwa:
Last updated