Ist LINQ to SQL InsertOnSubmit () unter SQL-Injection-Angriff?
-
10-07-2019 - |
Frage
Ich habe Code wie folgt:
var newMsg = new Msg
{
Var1 = var1,
Var2 = var2
};
using (AppDataContext appDataContext = new AppDataContext(ConnectionString))
{
appDataContext.CClass.InsertOnSubmit(newMsg);
appDataContext.SubmitChanges();
}
Nach dem Lesen diesen Beitrag Ich glaube, dass die gleiche Logik gilt.
Hat jemand denken, dass dies auf SQL-Injection-Angriff ausgesetzt ist?
Lösung
Die zweite Antwort in der Post die Sie verweisen, sagt es:
LINQ to SQL verwendet execute_sql mit Parameter.
Es ist verketten nicht Eigenschaftswerte in eine einer großen INSERT ... VALUES ( '... '' ...')
Andere Tipps
Der zugrunde liegende Betrieb des Datacontext ist über das SqlCommand der paramatised SQL verwendet.
So Ihre Insert-Anweisung wie folgt aussehen:
INSERT INTO [MSG] [Var1] = @p1, [Var2] = @p2
Nein, aber Sie sollten trotzdem Benutzerdaten werden validiert werden.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow