Syswall en dynamisk brandvägg för systemanrop

syswall

Syswall är en ny utveckling som syftar till att skapa en likhet mellan en dynamisk brandvägg för att filtrera tillgången till applikationer till systemanrop. Projektkoden är skriven på Rust-språket, licensen anges inte.

Denna nya utveckling det ser ut som den interaktiva versionen av strace-verktyget och låter dig hålla reda på alla systemanrop som görs av programmet. Huvudskillnaden är att, förutom att visa information om systemanropen och resultaten av deras genomförande.

Om Syswall

syswall stöder interaktivt läge där den övervakade processen stoppas innan du gör ett systemanrop och användaren uppmanas att fortsätta eller ignorera operationen (till exempel kan du övervaka försök att öppna varje fil eller nätverksanslutningsprocess).

Syswall kan också samla in statistik över de systemanrop som görs och generera en rapport baserad på den.

Syswall-målen är följande:

till ge en förbättrad version av strace vilket är lättare att avgöra vilken programvara som faktiskt gör.
Ge en miljö för att testa och experimentera med programvaran genom att tillåta en detaljerad och interaktiv metod för att tillåta och avvisa systemanrop.

Varje process kan ha en konfigurationsfil

För varje process, se kan ansluta en konfigurationsfil med en lista över uttryckligen tillåtna eller blockerade systemanrop.

För stödda samtal tillåter syswall användaren att utföra följande åtgärder:

  • Tillåt syscall en gång
  • Tillåt alltid den specifika syscall
  • Blockera syscall en gång (hård eller mjuk)
  • Blockera alltid den specifika syscall (hård eller mjuk)
  • Vid blockering kan programmet utföra ett block (hårt eller mjukt).

Under den interaktiva sessionen är det möjligt att tillåta eller blockera specifika systemanrop vid körning och alla samtal till detta systemanrop, oavsett var programmet nås.
Blockering stöds i "hårda" och "mjuka" lägen.

Typer av lås

I det första fallet utförs inte systemanropet och åtkomstfelkoden skickas till processen. I det andra fallet utförs inte heller systemanropet, men processen tar emot en fiktiv framgångsrik returkod, som simulerar det framgångsrika utförandet av systemanropet.

För tillfället stöds för närvarande endast systemanropsanalys relaterade till filoperationer.

Ett hårt block förhindrar att syscall körs och returnerar ett tillstånd som nekats till barnprocessen. Å andra sidan förhindrar ett mjukt lås syscall, men försöker returnera ett lämpligt svar på barnprocessen för att låtsas att syscall faktiskt utfördes.

I det här fallet visas bekräftelseförfrågningarna endast när de hänvisar till speciellt uppringda eller tidigare saknade systemsamtal.

Spara och ladda en processkonfiguration.

Val som görs under körning kan sparas i en JSON-fil. Den här filen kan laddas under en annan körning så att ovanstående alternativ används.

Detta är ett pågående arbete - endast tillåtna / blockerade svar sparas alltid.

Information

När barnprocessen är klar kommer syswall att ge en kort rapport om barnprocessens systemanrop. För närvarande består den av alla öppna eller låsta filer, men kommer att utvidgas i framtida utgåvor.

Projektet är fortfarande i fasen av en funktionell prototyp och inte alla tänkta möjligheter realiseras.

Det finns fortfarande mer att utveckla

Det finns en stor att göra-lista för projektet, i framtiden är det planerat att lägga till stöd för ytterligare klasser av systemanrop, lförmåga att verifiera, med hänsyn tagen till de argument som överförs till systemanropet, medel för att spara processläget i en fil för senare jämförelse av aktivitet under olika programstart (till exempel för att jämföra listor över filer och nätverksanslutningar), alternativ för att ignorera ladda dynamiska bibliotek och stödja den typiska uppsättningen inställningar (till exempel låsa alla uttag men tillåta filåtkomst).


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för data: AB Internet Networks 2008 SL
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.