太易保APP安全性总结

作者: ___TheOne___ | 来源:发表于2018-07-13 19:58 被阅读81次

1.安全性细节

1>HTTP请求报文加密

意义:防止请求报文中敏感信息被拦截。
项目实现细节:将AOP作用充分发挥。
!所有的接口请求报文,通过AESInterceptor来解密。这些拦截器类都实现SpringMVC的HandlerInterceptor接口;
!处理成功的响应报文,使用@ResponseBody响应JSON格式的报文,通过自定义的CustomHttpMessageConveter,加密响应报文。这个类继承MappingJsonHttpMessageConveter。
!异常响应报文,使用AppExceptionIntercepter统一处理。这个拦截器类实现SpringMVC的HandlerExceptionInterceptor接口;

2>用户账户的密码,数据库保存密文

意义:防止数据库被攻破,直接拿到明文密码,造成损失。之前CSDN数据库被攻破过一次,密码是明文保存的,造成了很不好的影响。

3>报文字段合法性校验

意义:虽说APP前端会加上合法性限制,但是想攻击网站的人可以直接通过Chrome或者Jmeter,发起假的请求报文请求,所以后端也需要添加“请求报文必填字段合法性校验”。
项目实现细节:
Java+Hibernate校验java请求vo实体,使用这种方式优势,直接通过注解校验。避免了往常过多的if条件判断。

4>登录接口,连续输错密码次数限制

意义:防止黑客通过登录接口,暴力破解账户密码。
项目实现细节:当用户连续输错3次密码,提示:“密码已经输错3次,连续输错5次,将锁定30分钟”。当用户连续输错5次密码,提示:“密码已经连续输错5次,账户锁定30分钟”。

5>发送短信验证码:同一个手机号,连续两次发送短信验证码最短时间间隔60s

意义:防止黑客,通过同一个手机号短信轰炸。
具体实现细节:比对此次请求时间 和 上次短信验证码的sendTime。

6>发送短信验证码:同一网络来源下(以请求IP地址区分),一天最多发送短信500条
意义:防止黑客,通过1000个、10000个不同的手机号进行短信轰炸。

2.总结

网络安全一直是非常值得关注的话题,我们在JavaWeb开发,尽量使用合适的措施,提高应用的安全性和健壮性。

相关文章

网友评论

    本文标题:太易保APP安全性总结

    本文链接:https://www.haomeiwen.com/subject/ewyspftx.html