sql数据库中一些字段被注入了乱七八糟的代码,如何解决?
类似:
</title><style>.a7ml{position:absolute;clip:rect(458px,auto,auto,458px);}</style><div class=a7ml><a href=http://easy-diet.ru >赅?筢疣螯 骅忸?/a><
这样的,会在我输入的内容后面,怎么处理?
不可能一条条去删孤.
如何从根本上防止这些写入?
------解决方案--------------------根本防止录入这些标签也不科学吧。就像现在也可以输入啊<title>你管不着<title>
------解决方案--------------------你可以入库时,过滤某些标签,但是,哪些不合理都是你自己定义的,毕竟是输入框,输什么都可以
------解决方案--------------------必须是自己去做关键字词的过滤
------解决方案--------------------sql注入,你的sql语句写的不严格,这个你得检查程序
对于获取url参数,必须过滤数据库关键字,编码的关键字。
------解决方案--------------------insert
------解决方案--------------------update
------解决方案--------------------delete
------解决方案--------------------drop
------解决方案--------------------'
用正则,简单的用replace替换即可
------解决方案-------------------- string txt = Server.HtmlEncode("<div>abc</div>");
Response.Write(txt);
------解决方案--------------------select * from table where aa='" + Request["key"] + "'
-=>
select * from table where aa='" + "'; delete from table where ''='" + "'
//主要都是单引号断开
替换或不允许单引号即可
string RequestString(string k)
{
string val=Request[k]+"";
if(val.Contains("'")){ Response.Write("让它滚蛋");Response.End(); }
return val;
}