|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
说句实话,Java跨平台根本就不是外行人想想的那种,一次编译,处处运行。明天在逛CSDN时,看到一篇总结网站注进与提防的办法,感到对照其实,收拾一下公布在此。
1,反省服务器设置,确保服务器的平安性。服务器的平安设置,能够参考以下办法:
http://hi.baidu.com/zzxap/blog/item/18180000ff921516738b6564.html
这个是解说的对照周全的了。
2,利用麦咖啡自界说战略。如许即便网站存在毛病,他人也很难在程序上改写代码了。麦咖啡自界说战略能够参照上面网站:
http://hi.baidu.com/zzxap/blog/item/efe093a7e0f2c190d04358ef.html
3,假如你的网站已被挂马了,可使用收集超等巡警疾速地删除被注进的JS代码,收集超等巡警的利用办法能够参考上面网站:
http://blog.csdn.net/zzxap/archive/2010/04/07/5459065.aspx
4,假如你的数据库中被注进了js代码,我们能够使用SQL语句批量扫除数据库中被植进的js。
SQL语句参考以下:
DECLARE@fieldtypesysname
SET@fieldtype=varchar
--删除处置
DECLAREhCForEachCURSORGLOBAL
FOR
SELECTNupdate+QUOTENAME(o.name)
+Nset+QUOTENAME(c.name)+N=replace(+QUOTENAME(c.name)+,<scriptsrc=http://xxx.com/xx.js></script>,)
FROMsysobjectso,syscolumnsc,systypest
WHEREo.id=c.id
ANDOBJECTPROPERTY(o.id,NIsUserTable)=1
ANDc.xusertype=t.xusertype
ANDt.name=@fieldtype
EXECsp_MSforeach_Worker@command1=N?
固然,详细的被植进的代码本人修正。
5,包管数据库中不再被植进JS代码。这点我们能够使用数据库的触发器来完成。写一个insert与update触发器反省拔出或修正的内容中是不是包括歹意代码,假如有,那末克制此次数据的操纵。固然,如许会消耗服务器一部分功能,取与舍,看详细的情形了。
触发器参考以下:
createtriggertiu_tablename
ontablename
forinsert,update
as
ifexists(
select1frominserted
wheredatalike%</script>%
)
begin
RAISERROR(数据中包括伤害数据,此次操纵失利!,16,1);
ROLLBACKTRANSACTION
end
go
6,最主要的,是我们程序的平安性。在程序中,我们的SQL中,最好是利用参数化SQL大概存储历程,对照伤害的就是依据用户的输出来拼集SQL了,处置的欠好,就被歹意用户打击了。参数化,固然就是利用SqlParameter了,详细的用法请自已搜刮。
7,不要在页面大概url中显现网站的敏感数据。出格是url中,已经看到有伴侣间接就把用户名与暗码在url中以明文传送了,如许,他人很简单从我们的参数称号上猜到数据的寄义,留下了毛病。
关于网站毛病,我们能够将毛病信息以文本存起来大概存到数据库中,然后跳转到一个友爱的堕落页面,即给了用户亲和性,又制止了在毛病中会抛出敏感信息的隐患。
关于URL中的参数,必定要加密后再传值,吸收时再解密。如许一是平安,二是制止传值毛病。
关于URL参数的编码与解码,请参看本站:Url编码与解码剖析
8,将从用户输出的文本框中的单引号交换成双引号再传到SQL利用:
如:stringkeys=keys_1.replace("","")。
但假如你是利用了参数化SQL,则就不必处置单引号了。
别的,网站哄传的过滤失落SQL关头字,如insertupdatedelete等的办法,既贫苦又无用。(原作的概念,自己激烈赞成)
接待人人宣布本人提防SQL注进的办法与概念,假如人人对下面概念有增补大概品评,请在批评中宣布您的概念,一同会商,才会有前进。完全不一样的。.net其实我也说不太清,.net可以把他理解为跟J2EE相对的工具。c++主要做系统相关的开发你要学.net的话就应该学C#。(其实微软在.NET平台上也考虑了给C++留一个地位。 |
|