out-of-tree v1.0.0 - gereedskap vir die ontwikkeling en toets van ontginning en Linux kern modules


out-of-tree v1.0.0 - gereedskap vir die ontwikkeling en toets van ontginning en Linux kern modules

Die eerste (v1.0.0) weergawe van out-of-tree, 'n gereedskapstel vir die ontwikkeling en toets van exploits en Linux-kernmodules, is vrygestel.

Out-of-tree laat jou toe om sommige roetine-aksies te outomatiseer om omgewings te skep vir ontfouting van kernmodules en ontginning, generering van ontginningsbetroubaarheidstatistieke, en bied ook die vermoë om maklik in CI (Continuous Integration) te integreer.

Elke kernmodule of ontginning word beskryf deur 'n lêer .out-of-tree.toml, wat inligting spesifiseer oor die vereiste omgewing en (as dit 'n uitbuiting is) beperkings op werking in die teenwoordigheid van sekere sekuriteitsversagtings.

Die gereedskapstel laat jou ook toe om spesifieke kern weergawes te identifiseer wat deur 'n kwesbaarheid geraak word (met die --guess opdrag), en kan ook gebruik word om binêre soektogte vir 'n spesifieke commit te vereenvoudig.

Hieronder is 'n lys van veranderinge sedert weergawe v0.2.

bygevoeg

  • Implementeer die vermoë om die aantal gegenereerde (buite-boom kern outogen) pitte te beperk (gebaseer op die beskrywing in .out-of-tree.toml) en kontroleer lopies (buite-boom bank) met behulp van die —max= X parameter.

  • Nuwe genall-opdrag, waarmee u alle pitte vir 'n spesifieke verspreiding en weergawe kan genereer.

  • Alle logs word nou in die sqlite3-databasis gestoor. Implementeer opdragte vir eenvoudige navrae wat gereeld benodig word, sowel as die uitvoer van data na json en markdown.

  • Geïmplementeerde berekening van die waarskynlikheid van suksesvolle operasie (gebaseer op vorige bekendstellings).

  • Vermoë om bouresultate te stoor (nuwe --dist parameter vir out-of-tree pew-opdrag)

  • Ondersteuning vir die generering van metadata vir pitte wat op die gasheerstelsel geïnstalleer is, sowel as om direk op die gasheer te bou.

  • Ondersteuning vir derdeparty-pitte.

  • Die buite-boom-ontfoutomgewing soek nou outomaties vir ontfoutingsimbole op die gasheerstelsel.

  • Bygevoeg die vermoë om sekuriteitsversagtings te bestuur met aktiveer/deaktiveer vlae KASLR, SMEP, SMAP en KPTI tydens ontfouting.

  • Het die --threads=N-parameter by die out-of-tree pew-toetsopdrag gevoeg, wat gebruik kan word om die aantal drade te spesifiseer waarin om uitbuitings en kernmodules te bou/hardloop en te toets.

  • Die vermoë om 'n merker te stel wat in die log aangeteken sal word en dan gebruik kan word om statistieke te bereken.

  • Die vermoë bygevoeg om die kernweergawe te spesifiseer sonder om gereelde uitdrukkings te gebruik.

  • Nuwe pakopdrag, gebruik vir massatoetsing van uitbuitings en kernmodules in subgidse.

  • In die konfigurasie (.out-of-tree.toml) vir die ontginning en kernmodule, is die vermoë om KASLR, SMEP, SMAP en KPTI te deaktiveer bygevoeg, asook om die vereiste aantal kerne en geheue te spesifiseer.

  • Nou word beelde (rootfs) outomaties gelaai terwyl kern-autogen loop. bootstrap is nie meer nodig nie.

  • Ondersteuning vir CentOS-pitte.

veranderinge

  • Nou, as daar geen beeld (rootfs) vir die vereiste weergawe van die verspreiding is nie, sal out-of-tree probeer om die beeld van die naaste weergawe te gebruik. Byvoorbeeld, Ubuntu 18.04-beeld vir Ubuntu 18.10.

  • Nou sal toetse vir kernmodules nie as mislukkings beskou word as hulle ontbreek nie (geen toetse - geen foute!).

  • Nou sal out-of-tree 'n negatiewe foutkode terugstuur as ten minste een stadium (bou, bekendstelling of toets) op enige van die kerns misluk het.

  • Die projek het oorgeskakel na die gebruik van Go-modules, bou met GO111MODULE=aan word nou verkies.

  • Bygevoeg verstek toetse.

  • Test.sh sal nou by verstek gebruik word as die samestelling in ${TARGET}_test nie in die Makefile geïmplementeer is nie.

  • Die kernlogboek word nie meer uitgevee voordat 'n kernmodule uitgevoer of ontgin word nie. Sommige van die uitbuitings gebruik 'n kernbasislek in dmesg om KASLR te omseil, so opruiming kan die uitbuiting se geïmplementeerde logika breek.

  • qemu/kvm gebruik nou al die vermoëns van die gasheerverwerker.

Verwyder

  • Kernfabriek heeltemal verwyder as gevolg van die implementering van kerngenerering gebaseer op inkrementeel bygewerkte Dockerfiles.

  • bootstrap doen niks anders nie. Die opdrag sal in die volgende weergawe verwyder word.

Reggestel

  • Op macOS is GNU coreutils nie meer nodig om te loop nie.

  • Tydelike lêers is geskuif na ~/.out-of-tree/tmp/ as gevolg van monteerfoute in docker op sommige stelsels.

Bron: linux.org.ru

Voeg 'n opmerking