关于SQL注入防御函数

本文讨论了两种简单的SQL注入防御函数,一种用于字符型数据,另一种用于数字型数据,并提出疑问这两种函数是否足够防御SQL注入攻击。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


刚刚在最爱白菜那里看到了一个SQL注入防御的函数,突然想起以前看到这些文章时的一直有个问题想不通的,我对于SQL注入的防御很简单,就以下两个函数:

'#### 
'## 
'## SQL注入攻击预防装置[字符型] 
'## 
'## @ data ->处理的数据 
'## @ length ->长度限制 
'## 
'## 例: strSql("SQL字符型数据",50) 
'## 
function strSql(data,length) 
'######################################################################## 
if length<>0 then data=left(data,length) 
strSql="'"&replace(data,"'","''")&"'" 
end function

'#### 
'## 
'## SQL注入攻击预防装置[数字型] 
'## 
'## @ numeric ->数字 
'## 
'## 例: intSql(50) 
'## 
'## 2004/03/04,改良版,原因:IsNumeric检测MSSQL数据类型时会误判。 
'## 
function intSql(Numeric) 
'######################################################################## 
dim MM_intTemp 
On Error Resume Next 
if Numeric="" then Numeric=0 
MM_intTemp=csng(Numeric) 
if err=0 then 
intSql=Numeric 
else 
intSql=0 
end if 
end function

strSQL的length不在防御SQL注入的范围中,是我为了防止插入字符超过字段长度而出错作的一个小小的防御。 
我在网上看到各式各样的SQL注入防御函数,所以很好奇,这样的函数不能防御注入吗?谁知道这两个函数的漏洞请告诉我。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值