LINQ에서 SQL inserTonSubmit ()가 SQL 주입 공격에 적용됩니까?
-
10-07-2019 - |
문제
다음과 같은 코드가 있습니다.
var newMsg = new Msg
{
Var1 = var1,
Var2 = var2
};
using (AppDataContext appDataContext = new AppDataContext(ConnectionString))
{
appDataContext.CClass.InsertOnSubmit(newMsg);
appDataContext.SubmitChanges();
}
읽고 나서 이 게시물 나는 동일한 논리가 적용된다고 생각합니다.
누구든지 이것이 SQL 주입 공격의 대상이라고 생각합니까?
해결책
당신이 참조하는 게시물의 두 번째 대답은 다음을 말합니다.
LINQ에서 SQL을 사용합니다 execute_sql 매개 변수로.
속성 값을 하나의 큰 삽입물로 연결하지 않습니다 ... 값 ( '...', '...').
다른 팁
DataContext의 기본 작동은 매개 변수화 된 SQL을 사용하는 SQLCommand를 통해입니다.
따라서 삽입 명령문은 다음과 같습니다.
INSERT INTO [MSG] [Var1] = @p1, [Var2] = @p2
아니요,하지만 어쨌든 사용자 데이터를 검증해야합니다.
제휴하지 않습니다 StackOverflow