Day5-Web安全加固

一、SQL注入防范

      项目使用PreparedStatement方法完成SQL语句的执行,该方法要求在执行SQL语句之前,必须告诉JDBC哪些值作为输入参数,解决了普通Statement方法的注入问题,极大的提高了SQL语句执行的安全性。

没有做SQL注入防范的网站,我们可以在用户登录中输入一些特殊字符,例如 ‘ 进入页面保护界面,看到采用的SQL语句,再进行构造永真语句达到登录绕过的效果。(万能密码:admin' or 1=1 --')

 可以看到,图片中的语句采用拼接,这种就可以采用构造永真语句来达到登录绕过,安全性低。防范:我们可以将拼接法改为录入参数的方法达到防范SQL注入的效果。 

二、跨站攻击防范

在HTML中,某些字符是预留的。例如小于号 < 和大于号 > ,浏览器在解析他们时会误认为它们是标签。如果希望正确地显示预留字符,我们必须在HTML源代码中使用字符实体(character entities)。

常见字符的实体转换表

显示结果

描述

实体名称

实体编号

 

空格

&nbsp;

&#160;

<

小于号

&lt;

&#60;

>

大于号

&gt;

&#62;

&

和号

&amp;

&#38;

"

引号

&quot;

&#34;

'

撇号

&apos; (IE不支持)

&#39;

 如果没有做实体转换,那么在一些可以提交留言的地方上传代码,网站就会执行该代码,达到将该页面转换为其他页面的效果。我们试着提交一个简单的代码<script>alert("XXX")</script>,可以看到该语句生效

防范:将字符转换为字符实体 ,以 小于号< 和大于号> 为例:

转换完之后,我们再提交“XXX”看看会不会生效:

可以看到网站并没有执行该语句,而是留在了留言板上,达到了跨站攻击防范的效果。 

三、上传攻击防范

中国菜刀这个工具大家应该并不陌生,它可以通过向网站传送木马然后获取数据,我们以该博客网站为例,找到可以上传文件的地方,发现只有图片可以上传,那么我们来上传一个.jsp文件的木马

 发现可以上传成功。那么我们再利用菜刀工具,就可以获取该系统的数据

可见未做上传防范的危害性很大。防范:图片上传只允许上传图片格式的文件,例如.jpg .png .gif,由于木马文件格式非图片格式,即使做了伪装也无法获取到数据。

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值