Programvara som är skriven på ett språk behöver ofta konstruera meningar på ett annat språk, till exempel SQL-frågor, XML-utmatning eller skalkommandoanrop. Detta görs nästan alltid med ohygienisk strängmanipulering, konkatering av konstanter och klientbaserade strängar. En klient kan sedan tillhandahålla speciellt utformad input som gör att den konstruerade meningen tolkas på ett oavsiktligt sätt, vilket leder till en injektionsattack. Vi beskriver en mer naturlig typ av programmering som ger kod som är ogenomtränglig för injektioner genom konstruktion. Vårt tillvägagångssätt inbäddar grammatiken i gästspråken (t.ex. SQL) i värdspråket (t.ex. Java) och genererar automatiskt kod som kartlägger det inbäddade språket för att konstruera i värdspråket som rekonstruerar inbäddade meningar, lägger till fly funktioner där det är lämpligt. Detta tillvägagångssätt är generiskt, vilket innebär att det kan tillämpas relativt enkelt på alla kombinationer av värd- och gästspråk.
Martin Bravenboer m.fl. I sitt arbete presenterar REF en programmeringsstrategi som bäddar in grammatiken i gästspråken (t.ex. SQL) i värdspråket (t.ex. Java).
Preventing injection attacks with syntax embeddings
{'venue': "GPCE '07", 'journal': None, 'mag_field_of_study': ['Computer Science']}