문제

다음과 같은 코드가 있습니다.

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

아니요,하지만 어쨌든 사용자 데이터를 검증해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top