01、启用 HTTPS 加密通信,禁用 HTTP 协议
安全问题场景:SuperMap iServer服务器启动后默认使用的是 HTTP 协议, HTTP 以明文的方式发送内容,不适合传输一些敏感信息,为保证传输信息不被中间服务器或者其他探测软件捕获,建议您启用 HTTPS 加密通信,规避潜在的信息泄密风险。
应对措施:禁用 HTTP 协议,开启 HTTPS,对通信内容加密。
配置方法:在实际生产环境中,需要先获取 CA签名的SSL证书。获取证书后,您可以修改SuperMap iServer安装目录/conf/server.xml 配置文件,通过 JSSE 或 APR 来配置 HTTPS 加密。配置后重启iServer方可生效。
02、配置启用跨域访问白名单
安全问题场景:SuperMap iServer 服务器实现了 HTML5 跨源资源共享(CORS)策略,可能会遇到类似“跨域策略配置不当”等安全问题,建议您配置跨域访问白名单,进行更精准的控制,以规避潜在的安全风险。
应对措施:配置跨域访问的白名单,进行更精准的跨域策略控制。
配置方法:修改 SuperMap iServer 安装目录/webapps/iserver/WEB-INF 目录下的 web.xml 文件中cors.allowed.origins的<param-value>值,填写允许跨域请求访问的白名单。
03、配置启用防护跨站脚本攻击
安全问题场景:攻击者利用跨站脚本攻击 XSS在 Web 页面里插入恶意 Script 代码,当用户浏览该 Web 页面时,嵌入其中的 Script 代码会被执行,达到恶意攻击用户的目的。
应对措施:修改SuperMap iServer 的初始化配置文件web.xm。
配置方法:SuperMap iServer 安装目录/webapps/iserver/WEB-INF 目录下 web.xml 文件中,配置XssFilter的filter和对应的filter-mapping。
04、开启许可驱动管理器的安全防护
安全问题场景:在安装SuperMap iServer许可驱动后,许可驱动管理页面默认任意用户都可以访问,存在安全风险。
应对措施:对许可驱动管理页面设置密码。
配置方法:
(1) 访问 localhost:1947,点击左侧 Option 下的 Configuration,进入 Basic Settings 菜单栏。
(2) 在 Password Protection 选择项选择 All ACC Page
(3) 点击右侧的 Change Password 按钮设置密码。
(4) 在弹出的登录窗中输入您设置的密码,用户名不填,点击“登录”。
(5) 在 Basic Settings 菜单栏下再次点击 Submit,完成设置。
05、关闭 Remember Me 功能防止重放攻击
安全问题场景:GIS 服务器启动后,默认开启了 Remember Me 功能,cookie 中会携带 Remember Me 参数,可能使会话未及时失效,导致重放攻击的安全问题。
应对措施:关闭 Remember Me 功能。
配置方法:SuperMap iServer 安装目录/webapps/iserver/WEB-INF 目录下 iserver-system.xml 文件,找到如下配置
在<tokenKey>下一行增加<disableRememberMe>true</disableRememberMe>
06、开启异地登录检测
安全问题场景:默认未开启异地登录检测,一个账户可以同时在多台主机上登录,存在账号泄露风险。
应对措施:开启异地登录检测,配置异地登录处理策略。
配置方法:SuperMap iServer 安装目录/webapps/iserver/WEB-INF 目录下 iserver-system.xml 文件,找到如下配置:
将false修改为true,即开启异地登录告警。
07、修改用于生成令牌的共享密钥
安全问题场景:SuperMap iServer支持按用户角色授权访问,并支持Token(令牌)机制供Web应用安全对接。 如果Token过于简单或易于破译,恶意用户可以复制 GIS 服务器的加密算法、获取授权用户的列表,并能够生成令牌,使用在 GIS 服务器中任何受保护的资源,存在安全风险。
应对措施:Token共享密钥应不少于16个字符,在安全性要求极高的环境中,应定期更改密钥。
配置方法:访问“安全”→“安全配置”页面,可以查看当前 Token 的共享密钥或者修改 Token 共享密钥。
08、安全传输令牌
安全问题场景:防止拦截和错误使用令牌,导致其他安全问题。
应对措施:通过 https/http 请求头传递 GIS 服务器令牌,不用 url 进行传递。
配置方法:在 Headers 请求头中添加 token
09、配置防护 SQL 注入检测
安全问题场景:SuperMap iServer 启动后默认未开启 SQL 注入检测,可能会遇到SQL 注入的安全问题,即入侵者通过提交某些特殊 SQL 语句,来获取、篡改、控制网站服务器端数据库中的内容。
应对措施:开启 SQL 注入检测,并设置 SQL 查询过滤的威胁字符串。
配置方法:SuperMap iServer 安装目录/webapps/iserver/WEB-INF 目录下 iserver-system.xml 文件,找到如下配置:
配置、设置 SQL 查询过滤的字符串,支持任意字符串(数据操作语言(DML)、表达式、通配符、特殊字符等),以分号隔开。
即表示当用户进行 data 或 map 的 SQL 查询时,如果在 SQL 查询表达式中出现了“delete 或 SMID=任意值”的字符串,系统会提示该条查询表达式非法并返回400参数异常,防止执行恶意的 SQL 命令,保护用户数据安全。
10、使用开启安全认证的数据
安全问题场景:GIS 数据是GIS系统的核心价值,包括GIS工作空间、基础GIS数据库、地图瓦片等的保密性和安全性需要得到保障。
应对措施:SuperMap支持对工作空间、生成缓存数据时进行加密,并支持对客户端浏览三维服务时生成的三维缓存进行加密。
配置方法:
1、 保存工作空间时加密
2、 生成缓存数据时加密
3、 三维客户端缓存加密
11、限制上传文件的工作路径与类型
安全问题场景:SuperMap iServer 上传文件远程浏览时,默认可以浏览其所在系统的所有目录,攻击者可能通过上传功能将有害文件上传至 web 权限范围内的任意目录。
应对措施:严格限制用户可访问目录的权限,避免用户访问敏感信息目录。
(1) 限制SuperMap iServer上传文件的工作路径;
(2) 配置过滤上传 zip 文件的内部数据格式。
配置方法:在SuperMap iServer 安装目录/webapps/iserver/WEB-INF 目录 iserver-system.xml 文件中,找到
<deniedFiles/>
<outputPath>./output</outputPath>
(1) 添加配置,设置 iServer 所在机器的工作目录的绝对路径。例如:
<fileManagerWorkDir>D:\ftp</fileManagerWorkDir><deniedFiles/>
<outputPath>./output</outputPath>
配置<fileManagerWorkDir>D:\ftp</fileManagerWorkDir>
(2) 修改配置<deniedFiles/>以禁止上传的文件类型。
查看原文请访问:https://mp.weixin.qq.com/s/SnJHkf1omQlB7RdDhGGYbg