out-of-tree v1.0.0 - ustiapenak eta Linux kernel moduluak garatzeko eta probatzeko tresnak


out-of-tree v1.0.0 - ustiapenak eta Linux kernel moduluak garatzeko eta probatzeko tresnak

Out-of-tree-ren lehen bertsioa (v1.0.0) kaleratu zen, ustiapenak eta Linux kernel moduluak garatzeko eta probatzeko tresna-kit bat.

out-of-tree-k errutinazko ekintza batzuk automatizatzeko aukera ematen du nukleoaren moduluak eta ustiapenak arazketarako inguruneak sortzeko, ustiapenen fidagarritasun-estatistikak sortuz, eta CI-n (Etengabeko Integrazioa) erraz integratzeko gaitasuna ere eskaintzen du.

Nukleoko modulu edo ustiapen bakoitza .out-of-tree.toml fitxategi batek deskribatzen du, zeinak beharrezko inguruneari buruzko informazioa eta (explotazio bat bada) funtzionamenduaren murrizketak zehazten dituen segurtasun-murrizketa batzuen aurrean.

Tresna-kitak ahultasun batek eragindako kernel-bertsio espezifikoak identifikatzeko aukera ematen du (--guess komandoa erabiliz), eta konpromezu jakin baterako bilaketa bitarrak errazteko ere erabil daiteke.

Jarraian, v0.2 bertsiotik hona egindako aldaketen zerrenda dago.

-k gehitua

  • Sortutako (zuhaitzetik kanpoko nukleoen autogen) nukleoen (.out-of-tree.toml-eko deskribapenean oinarrituta) eta egiaztapen-exekuzioak (zuhaitzetik kanpoko pew) β€”max= erabiliz (zuhaitzetik kanpoko pew) nukleoen kopurua mugatzeko gaitasuna inplementatu da. X parametroa.

  • Genall komando berria, banaketa eta bertsio zehatz baterako nukleo guztiak sortzeko aukera ematen duena.

  • Erregistro guztiak sqlite3 datu-basean gordetzen dira orain. Komandoak inplementatu ditu maiz behar diren kontsulta errazetarako, baita datuak json eta markdown-era esportatzeko ere.

  • Eragiketa arrakastatsuaren probabilitatearen kalkulua inplementatu da (aurreko abiarazteetan oinarrituta).

  • Eraikuntza-emaitzak gordetzeko gaitasuna (--dist parametro berria zuhaitzetik kanpoko pew komandorako)

  • Ostalari sisteman instalatutako nukleoetarako metadatuak sortzeko laguntza, baita ostalarian zuzenean eraikitzeko ere.

  • Hirugarrenen nukleoetarako laguntza.

  • Zuhaitzetik kanpoko arazketa-inguruneak automatikoki bilatzen ditu sistema ostalariaren arazketa-sinboloak.

  • KASLR, SMEP, SMAP eta KPTI aktibatu/desgaitu markekin segurtasun murrizketak kudeatzeko gaitasuna gehitu da arazketan.

  • Zuhaitzetik kanpoko pew testing komandoari --threads=N parametroa gehitu da, zeina erabil daitekeen hari kopurua eraiki/exekutatu eta probatzeko ustiapenak eta nukleoko moduluak zehazteko.

  • Erregistroan erregistratuko den eta gero estatistikak kalkulatzeko erabil daitekeen etiketa bat ezartzeko gaitasuna.

  • Adierazpen erregularrak erabili gabe nukleoaren bertsioa zehazteko gaitasuna gehitu da.

  • Pakete-komando berria, azpidirektorioetako ustiapenen eta nukleoaren moduluen proba masiboetarako erabiltzen da.

  • Explotazioaren eta nukleoaren moduluaren konfigurazioan (.out-of-tree.toml) KASLR, SMEP, SMAP eta KPTI desgaitzeko gaitasuna gehitu da, baita beharrezko nukleo eta memoria kopurua zehaztu ere.

  • Orain irudiak (rootfs) automatikoki kargatzen dira kernel autogen abian dagoen bitartean. bootstrap jada ez da beharrezkoa.

  • CentOS nukleoetarako laguntza.

aldaketak

  • Orain, banaketaren behar den bertsiorako irudirik (rootfs) ez badago, out-of-tree-k hurbilen dagoen bertsioaren irudia erabiltzen saiatuko da. Adibidez, Ubuntu 18.04 irudia Ubuntu 18.10rako.

  • Orain nukleoko moduluen probak ez dira hutsegitetzat hartuko falta badira (probarik ez - akatsik ez!).

  • Orain zuhaitzetik kanpo akats-kode negatibo bat itzuliko du nukleoren batean gutxienez fase batek (eraiki, abiarazi edo probatu) huts egiten badu.

  • Proiektua Go moduluak erabiltzera pasatu da, orain hobesten da GO111MODULE=on eraikitzea.

  • Proba lehenetsiak gehitu dira.

  • Test.sh lehenespenez erabiliko da ${TARGET}_test-eko muntaia Makefile-n inplementatzen ez bada.

  • Nukleoaren erregistroa ez da garbitzen nukleoaren modulua edo ustiapena exekutatu aurretik. Exploitazio batzuek kernel-oinarrizko filtrazio bat erabiltzen dute dmesg-en KASLR saihesteko, beraz, garbiketak ustiapenaren inplementatutako logika hautsi dezake.

  • qemu/kvm-k orain ostalari-prozesadorearen gaitasun guztiak erabiltzen ditu.

Kendua

  • Kernel Factory erabat kendu da nukleoaren sorrera inplementatuz eguneratutako Dockerfile fitxategietan oinarrituta.

  • bootstrap-ek ez du beste ezer egiten. Komandoa hurrengo bertsioan kenduko da.

Zuzendua

  • MacOS-en, GNU coreutils jada ez da beharrezkoa exekutatzeko.

  • Behin-behineko fitxategiak ~/.out-of-tree/tmp/-ra eraman dira, sistema batzuetan docker-en barruan muntatutako erroreak direla eta.

Iturria: linux.org.ru

Gehitu iruzkin berria