Lunatik je alat za izgradnju koda unutar kernela. Linux rukovatelji u Lui

Projekt Lunatik razvija alat koji omogućuje korištenje Lua jezika za proširenje funkcionalnosti kernela. Linux i brzo pisati skripte za rukovanje na razini jezgre. Kod se izvršava pomoću Lua interpretera modificiranog za rad na razini jezgre. Kod projekta napisan je u C-u i distribuiran pod MIT licencom.

Za učitavanje i izvršavanje Lua skripti na razini kernela koristi se namjenski upravljački program, a osiguran je i uslužni program naredbenog retka za upravljanje Lua okruženjem u kernelu iz korisničkog prostora. Projekt također pruža C API za upravljanje učitavanjem i izvršavanjem Lua skripti iz kernela. Linux, koji se može koristiti, na primjer, za izvršavanje pojedinačnih Lua rukovatelja iz tradicionalnih modula kernela napisanih u C-u. Lua API i skup povezivanja dostupni su za pristup funkcijama kernela iz Lua koda.

Lua skripte mogu koristiti podskup funkcija i mogućnosti knjižnice, ograničenih zbog specifičnosti rada unutar kernela. Na primjer, kod ne podržava operacije s pomičnim zarezom, io i os biblioteke se ne mogu koristiti, a mnoge funkcije matematičke biblioteke nisu dostupne. C API ne podržava funkcije luaL_Stream, luaL_execresult, luaL_fileresult, luaopen_io i luaopen_os.

Među mogućnostima uslužnog programa naredbenog retka možete poništiti naredbe za učitavanje, istovar i ponovno učitavanje Lunatik modula u kernelu, prikaz statusa učitanih modula, pregled popisa skripti koje se izvode u jezgri, pokretanje skripti, stvaranje i zaustavljanje Lua runtimea okruženja u kernelu, koristeći interaktivnu ljusku REPL (Read –Eval–Print Loop).

Projekt također pruža skup primjera koji će vam pomoći u procjeni Lunatikovih mogućnosti. Na primjer, dostupni su skripti koji implementiraju upravljački program znakovnog uređaja, mrežni sniffer sa zapisivanjem MAC adresa i bazu podataka za pohranu podataka ključ/vrijednost. poslužitelja za ECHO protokol, keylogger za zapisivanje pritisnutih tipki, zaključavanje tipkovnice (nakon pritiska na “↑ ↑ ↓ ↓ ← → ← → LCTRL LALT”, kernel zaustavlja obradu pritisaka tipki dok se ponovno ne unese niz), upravljački program za praćenje sistemskih poziva, usluga usmjeravanja i razni dodaci za podsustave Netfilter i XDP.

Izvor: opennet.ru

Kupite pouzdan hosting za stranice s DDoS zaštitom, VPS VDS poslužiteljima 🔥 Kupite pouzdan web hosting sa DDoS zaštitom, VPS VDS servere | ProHoster