sql注入解决办法
- 内联式:网站提交到数据库的信息采用
字符串拼接的方式,这使单引号、or、and等组合字符串可以绕过正确格式提交信息,实现永真、永假或空的操作。 - 终止式:输入包含
注释符的字符串,使注释部分的内容不被执行,同样可使数据库认为格式正确,造成永真操作,绕过登陆界面等。
补充:access数据库不支持注释,有效避免终止式sql注入。
问题及防范: - 登陆账号时输入单引号‘’,如果显示错误表示可以通过sql注入,账号提交永真语句测试能否绕过登陆界面成功登录。‘or 1=1- -’
- 解决办法:执行sql语句时,用preparedstatement();代替statement();可以防止永真进入,同时将sql语句由
字符串拼接的方式改为占位符填充。
XSS跨站解决办法
- 反射型XSS:将恶意代码存放在
地址栏中,通过伪造链接使受害者在点击时执行,可能造成密码被改,账号被盗。 - 存储型XSS:通过在网站的留言等界面
提交恶意代码,使代码内容提交到数据库并被误执行,导致正常浏览界面时触发弹窗警告或跳转到其他网站(或非法网站)。
问题及防范:
- 在网站的留言界面上传html语句,由于html中的<