웹 개발 및 인계 코드를 처음 사용하는 경우. SQL Server 데이터베이스에 대해 SQL 주입을 방지하는 기능이 있습니다.SQL Server 삽입
function safe(val, maxsize)
dim i,
terms = array(
"cast",
"select",
"varchar",
"declare",
"drop",
";",
"--",
"insert",
"delete",
"xp_"
)
val = left(val,maxsize)
val = trim(val)
for i = 0 to ubound(terms)
val = replace(val, terms(i), "e_" & val & "_e", vbTextCompare)
next
val = replace(val, "'", "''")
makesafe = val
end function
주저하지 말고 만지지 마십시오. 때때로 그들은
해킹당한 경우 올바르게 삽입해야합니다. 매개 변수가있는 명령문을 사용하고 올바른 데이터 유형을 사용하고 입력을 확인하고 사용자 (또는 앱)가 제출 한 문자열을 기반으로 SQL 문을 작성하지 않습니다. 이 "안전한"기능은 거짓 보안 담요처럼 느껴집니다. –
SQL 문을 직접 연결하는 대신 ** 매개 변수화 된 쿼리 **를 사용하는 것은 ** 유일한 ** 실행 가능한 방법입니다. 당신의 입력을 "소독"하는 것을 잊어 버리십시오 - 당신은 항상 무언가를 잊을 것입니다 - 그냥 매개 변수화 된 질의를 사용하고 그것으로 끝내십시오 .... –
'exec'은 어떻습니까? – tugberk