Te tukunga o te kaupapa LKRG 0.8 hei whakamarumaru i te whakaraeraetanga o nga whakaraeraetanga i roto i te pata Linux.

Kaupapa Tuwhera whakaputaina tuku kōwae kernel LKRG 0.8 (Linux Kernel Runtime Guard), i hangaia hei kimi me te aukati i nga whakaeke me te takahi i te pono o nga hanganga kernel. Hei tauira, ka taea e te kōwae te tiaki i nga huringa kore mana ki te kakano rere me te ngana ki te whakarereke i nga whakaaetanga o nga tukanga kaiwhakamahi (te kimi i te whakamahinga o nga mahi). He pai te kōwae mo te whakarite whakamarutanga ki nga mahi kua mohiotia mo te kernel Linux (hei tauira, i nga ahuatanga he uaua ki te whakahou i te kakano i roto i te punaha), me te aukati i nga mahi mo nga whakaraeraetanga kaore ano kia mohiotia. Waehere kaupapa tohaina e raihana i raro i te GPLv2.

I roto i nga huringa o te putanga hou:

  • Kua whakarerekehia te tuunga o te kaupapa LKRG, kua kore e wehewehea ki nga punaha motuhake mo te tirotiro i te pono me te whakatau i te whakamahinga o nga mahi, engari kua whakaatuhia hei hua katoa mo te tautuhi i nga whakaeke me nga momo takahi pono;
  • Ka whakaratohia te hototahi ki nga kakano Linux mai i te 5.3 ki te 5.7, me nga kakano kua whakahiatohia me nga arotautanga GCC kaha, kaore he whiringa CONFIG_USB me CONFIG_STACKTRACE me te whiringa CONFIG_UNWINDER_ORC, me nga kakano kaore he mahi hono LKRG, mena ka taea. kia whakarerea;
  • I te wa e hanga ana, ka takina etahi tautuhinga kernel CONFIG_* hei whakaputa i nga karere hapa whai kiko, kaua ki nga tukinga kerekere;
  • He tautoko taapiri mo te tatari (ACPI S3, whakatārewa ki te RAM) me te moe (S4, whakatārewa ki te kōpae) aratau;
  • Kua taapirihia te tautoko DKMS ki Makefile;
  • Ko te tautoko whakamatautau mo nga papaahi ARM 32-bit kua whakatinanahia (kua whakamatauria ki te Raspberry Pi 3 Model B). Kua whakawhānuihia te tautoko AArch64 (ARM64) o mua ki te whakarato i te hototahi ki te poari Raspberry Pi 4;
  • Kua taapirihia nga matau hou, tae atu ki te kaikawe waea () kia pai ake te tautuhi i nga mahi e raweke ana "āheinga", kaua nga ID tukatuka (ngā tohu mātauranga);
  • Kua whakaarohia he arorau hou mo te kimi ngana ki te mawhiti i nga here mokowāingoa (hei tauira, mai i nga ipu Docker);
  • I runga i nga punaha x86-64, ka tirohia te moka SMAP (Supervisor Mode Access Prevention) ka whakamahia, i hangaia hei aukati i te uru ki nga raraunga mokowā kaiwhakamahi mai i te waehere whaimana e rere ana i te taumata kernel. SMEP (Supervisor Mode Execution Prevention) i whakatinanahia i mua;
  • I te wa e mahi ana, ka whakanohohia nga tautuhinga LKRG ki tetahi wharangi mahara ka panui-anake;
  • Ko nga korero takiuru ka tino whai hua mo nga whakaeke (hei tauira, nga korero mo nga wahitau kei roto i te kernel) he iti noa ki te aratau patuiro (log_level=4 me te teitei ake), kua monoa ma te taunoa.
  • Kua piki ake te whakahiatotanga o te putunga raraunga mahi aroturuki - hei utu mo te rakau RB kotahi e parea ana e tetahi spinlock, ka whakamahia he ripanga hash o nga rakau 512 RB e tiakina ana e 512 raka panui-tuhi;
  • He aratau kua whakatinanahia, kua whakahohea ma te taunoa, i te nuinga o te wa ka tirohia te tapatahi o nga kaitautuhi tukanga mo te mahi o naianei anake, me te kowhiringa mo nga mahi kua whakahohehia (whakaoho). Mo etahi atu mahi e moe ana, e mahi ana ranei me te kore e uru ki te kernel API e whakahaeretia ana e LKRG, he iti ake te mahi o te haki.
  • Kua taapirihia nga taapiri sysctl hou me nga waahanga mo te LKRG pai, me nga sysctl e rua mo te whirihoranga ngawari ma te kowhiri mai i nga huinga o nga tautuhinga whakatikatika-pai (tohu) kua whakaritea e nga kaihanga;
  • Ko nga tautuhinga taunoa kua whakarereketia kia pai ake te taurite i waenga i te tere o te kitenga o nga takahi me te whai hua o te whakautu, i tetahi taha, me te paanga ki te mahi me te tupono o nga painga teka, i tetahi atu;
  • Kua hoahoatia ano te konae waeine systemd ki te utaina i te waahanga LKRG i te timatanga o te boot (ka taea te whakamahi i te kowhiringa raina whakahau ki te whakakore i te waahanga);

Ma te whai whakaaro ki nga arotautanga i whakaarohia i roto i te tukunga hou, ko te whakahekenga mahi i te wa e whakamahi ana i te LKRG 0.8 e kiia ana ko te 2.5% i roto i te aratau taunoa ("taimaha") me te 2% i te aratau marama ("maama").

I tetahi huihuinga tata nei rangahau te whai huatanga o nga kohinga mo te kimi i nga rootkits LKRG i whakaatu Ko nga hua pai rawa atu, ko te tautuhi i te 8 o te 9 o nga rootkits kua whakamatauria e mahi ana i te taumata kernel kaore he hua pai (rootkits Diamorphine, Honey Pot Bears, LilyOfTheValley, Nuk3 Gh0st, Puszek, Reptile, Rootfoo Linux Rootkit me Sutekh i kitea, engari ko Keysniffer, he kakano. kōwae, i ngaro ki te keylogger, ehara i te rootkit i roto i te tikanga mau). Hei whakataurite, ko nga kohinga AIDE, OSSEC me Rootkit Hunter i kitea te 2 i roto i te 9 rootkits, i te mea kaore a Chkrootkit i kitea. I te wa ano, kaore a LKRG e tautoko i te kitenga o nga rootkits kei roto i te waahi kaiwhakamahi, na reira ka tutuki te kaha nui ki te whakamahi i te whakakotahitanga o te AIDE me te LKRG, i taea ai te tautuhi i te 14 i roto i te 15 rootkits o nga momo katoa.

I tua atu, ka taea te tohu ko te kaiwhakawhanake tohatoha Tuhinga o mua i timata te hanganga nga kohinga kua rite me DKMS mo Debian, Whonix, Qubes me Kicksecure, me tetahi kete mo Arch Linux kua whakahoutia ki te putanga 0.8. Kei te waatea ano nga kohinga me te LKRG i te reo Ruhia alt linux и AstraLinux.

Ko te tirotiro tika i roto i te LKRG ka mahia ma te whakatairite i te waehere me nga raraunga o te kernel me nga waahanga, etahi hanganga raraunga nui me nga tautuhinga PTM me nga tohu penapena, kape ranei o nga waahi mahara, hanganga raraunga, rehita ranei. Ka whakahohehia nga arowhai i ia wa ma te taima me te puta o nga momo huihuinga.

Ko te whakatau i te whakamahi ka taea te whakamahi me te aukati i nga whakaeke ka mahia i te atamira i mua i te urunga o te kernel ki nga rauemi (hei tauira, i mua i te whakatuwheratanga o te konae), engari i muri i te whiwhinga o nga whakaaetanga kore (hei tauira, te huri i te UID). Ina kitea te whanonga kore mana, ka peia nga tikanga ki te whakamutu ma te taunoa, he ranea hei aukati i nga mahi maha.

Source: opennet.ru

Tāpiri i te kōrero