NET网页编程之网站注进与提防的办法总结
说句实话,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++留一个地位。 asp.net最主要特性包括:◆编程代码更简洁◆网站可实现的功能更强大◆运行效率高◆节省服务器的动作资源 众所周知,Windows以易用而出名,也因此占据不少的服务器市场。 它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。 市场决定一切,我个人从经历上觉得两者至少在很长时间内还是要共存下去,包括C和C++,至少从找工作就看得出来,总不可能大家都像所谓的时尚一样,追捧一门语言并应用它。 代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。 以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。 我觉得什么语言,精通就好,你要做的就是比其他80%的人都厉害,你就能得到只有20%的人才能得到的高薪。 同时也感谢博客园给我们这个平台,也感谢博客园的编辑们做成专题引来这么多高人指点。
页:
[1]