Abstract-The Node.js ekosystem har lett till skapandet av många moderna applikationer, såsom serverside webbapplikationer och stationära program. Till skillnad från klientsidan JavaScript-kod, Node.js program kan interagera fritt med operativsystemet utan fördelarna med en säkerhets sandlåda. Som ett resultat, kan kommandoinjektion attacker orsaka betydande skada, vilket förvärras av det faktum att självständigt utvecklade Node.js moduler interagerar på okontrollerade sätt. Detta dokument presenterar en storskalig studie över 235,850 Node.js moduler för att undersöka injektionssårbarhet. Vi visar att injektionssårbarhet är vanligt förekommande i praktiken, både på grund av eval, som tidigare studerades för webbläsarkod, och på grund av det kraftfulla exec API som infördes i Node.js. Vår studie tyder på att tusentals moduler kan vara sårbara för att befalla injektionsattacker och att det tar lång tid att fixa dem, även för populära projekt. Motiverade av dessa resultat presenterar vi Synode, en automatisk dämpningsteknik som kombinerar statisk analys och runtime-tillämpning av säkerhetspolicyer för att använda sårbara moduler på ett säkert sätt. Nyckelidén är att statiskt beräkna en mall av värden skickas till API:er som är benägna att injektioner, och att syntetisera en grammatikbaserad körtid politik från dessa mallar. Vår mekanism är lätt att använda: den kräver ingen ändring av Node.js-plattformen, den är snabb (submillisecond runtime overhead), och den skyddar mot attacker av sårbara moduler, samtidigt som den framkallar mycket få falska positiva (mindre än 10%).
Synode REF beräknar statiskt mallar för värdena som skickas till Node.
SYNODE: Understanding and Automatically Preventing Injection Attacks on NODE.JS
{'venue': 'NDSS', 'journal': None, 'mag_field_of_study': ['Computer Science']}