java web安全总结

简单总结下,java开发者至少需要了解这几个基本的方面。这样你的代码更安全


1. SQL注入:

            概念:意思是不要让SQL里面的参数是含有表达式的,

            现象:比如select * from user where name=${name},要是攻击者把name传test;union select * from role;

            解决方法:

                         禁止在ibatis里面使用${name}格式参数,必须使用#{name}格式,#是不能传表达式的SQL的


2. 钓鱼网站:

            实例:攻击者通过发布一个url让用户访问,这个url可能为:www.taobao.com/HelloWorld.action?redirect:http://www.恶意网站.com

     如果taobao.com没有屏蔽redirect的话,那点击这个url就可能恶意网站去了,因为用户一般只看前面的地址以为是淘宝的。

     解决方法:

         应该在taobao.com屏蔽redirect的功能(strust有这个问题)


3.XSS攻击:

          实例:攻击者在页面的输入些js脚本,然后这个网站没有做字符判断就都保存了,然后其他人进入这个页面就会自动执行这个里面的JS脚本。。这个脚本执行恶意的程序,比如去访问某个银行给某个账户加钱,当然这个前提是这个这个用户之前登陆在银行网站上面,而且没有退出,cookie有效

        解决方法:

                用户输入的内容做判断,过滤相关JS代码,比如

你可能感兴趣的:(java web安全总结)