如何提高系统接口安全性

本人作为一名Java开发者,在工作中时常遇到需要从其它系统拉取数据,那么就需要跟其它系统的同学沟通为我们开放接口,对方会发送一些AppId和AppKey之类的数据,在我们请求接口的时候,需要把这些值和参数等信息一起生成摘要发送过去;最近项目又因其它原因,需要开放外网,于是安全部对系统一顿扫描,提出各类安全要求,本人也将近期的收获分享给大家

1. XSS防护

1)XSS原理
XSS是最常见的功能类型,其原理就是在WEB页面中嵌入恶意脚本程序,当用户在打开页面的时候,恶意的脚本程序就会在客户端的浏览器中执行;
例如:在输入框中输入以下代码

<script>alert("hello");</script>

还可以将URL进行URLEncode进行编码

比如:将<,>,/进行转换为      %3cscript%3ealert(%22aaa%22)%3b%3c%2fscript%3e

除了以上的方式之外,还可能转换大小写,来躲避过滤器

比如:<ScrIPt>xxx</sCRipT>

2)XSS分类

3)XSS防范
常见的防范方式:

  • 设置HttpOnly

2. CSRF防护

3. 防止接口重放

4. 接口参数使用签名

猜你喜欢

转载自blog.51cto.com/13733462/2446118