2023年11月26日发(作者:)
Ecology系统安全配置说明-选读
设计说明书
⽂档版本控制
⽂档简要信息: ⽂档主题(Title) Ecology 系统安全配置说明
作者(Author) 柳炉
审批者 (To Be Approved By) 说明 (Comments) Ecology 系统安全配置说明
⽂件名称(File Name)
⽂档版本历史:
序号 ⽇期 版本 变更说明
修改⼈ 审批⼈ 注释 1. 2015/03/20 1 新建
柳炉
2. 2015/03/22 2 针对使⽤⾮UTF-8编码开发的页⾯配置
柳炉 3.
2015/03/30
3
增加webservice 安全验证
柳炉
E c o l o g y 系统安全配置说明
Submitted By Weaver
Weaver Software 上海浦东耀华⽀路39弄9号泛微软件⼤厦
邮政编码:200127 电话:+86 21 50942228 传真:+86 21 50942278
⽬录
1引⾔ (4)
1.1编写⽬的 (4)
1.2定义 (4)
1.3修复的漏洞情况说明 (4)
1.3.1xss过滤字符说明 (8)
1.3.2SQL注⼊过滤规则说明 (8)
1.4配置详细说明 (8)
1.4.1系统安全规则库⽂件配置说明 (8)
1.4.2其他事项 (23)
1引⾔
1.1 编写⽬的
本⽂档主要描述了Ecology系统安全补丁包配置说明。⽅便升级同事进⾏升级包部署
1.2 定义
下⽂中提及到的WEB-INF/securityXML/weaver_security_custom_rules_与WEB-INF/ weaver_security_⽂件的格式完全⼀样。
1.3 安全包使⽤说明
部署安全包后,⽤sysadmin登录系统,访问如下地址:
贵司OA访问地址/security/monitor/
1.3.1检测安全包是否⽣效
点击【安全包概要】页签,如果三项都显⽰为【开启】,则表⽰安全包正常⽣效。
1.3.2开启安全包⾃动更新功能
点击【加⼊安全规则库⾃动更新服务】即可⽣效,每天凌晨1点-5点之间的某个时间点会检查安全包是否有更新,如果有更新会⾃动更新规则库。
1.3.3查看当前系统环境信息及安全包版本信息
包含系统版本信息、ecology信息、中间件信息、JDK版本信息、安全包版本信息。
1.3.4系统安全体检
【检测】:点击此按钮,会对系统的配置进⾏检查,针对各项给出结果,如果不符合,则可以按照修复⽅式加以操作;
【修复】:点击【检测】后,会出现该按钮,点击此按钮,会对系统的配置进⾏修复,导出和,并在界⾯上给出修复的详细步骤。
1.3.5安全监控
该页会对系统存在的攻击⾏为进⾏监控,如果确实发现为恶意攻击,可以⼿动封杀该IP地址访问系统。
【更新安全规则库缓存】:如果⾃定义了安全规则库,可以通过点击该按钮使安全规则库⽣效;
【查看攻击源IP详情】:点击此按钮,可以看到当前系统遭受攻击的情况。
1.3.6备份与恢复
如果系统出现安全包更新失败导致系统出现问题,可以在此页⾯快速恢复,以尽快让系统恢复到正常状态。
1.3.7安全包功能开启情况
此页会检查当前系统中所有可⽤的安全防护功能,并且会检查是否开启,如果没有开启,会给出开启该功能的⽅式。
1.4 修复的漏洞情况说明
1、解决XSS跨域攻击;
2、解决⾼危险级SQL注⼊攻击;
3、防范钓鱼风险;
4、Host伪造攻击;
5、referer检查;
6、webservice⽩名单机制;
7、cookie的httponly机制;
8、http响应拆分漏洞;
9、log⽂件、数据库连接访问权限控制;
10、⽂件上传安全检查;
11、ip⽩名单机制;
12、cookie+ip绑定机制;
13、攻击源IP封杀机制;
14、cookie重置功能;
15、系统超时设置功能
1.4.1xss过滤字符说明
⽬前,xss过滤采⽤关键字过滤,过滤⽅式采⽤直接删除的⽅式。
1.4.2SQL注⼊过滤规则说明
如果检查到存在SQL注⼊风险,则直接拦截,并给出提⽰信息。
1.5 配置详细说明
1.5.1系统安全规则库⽂件配置说明
1.5.1.1 规则库⽂件位置
说明:
以下涉及到的xml⽂件都不能使⽤记事本、笔记本编辑,需要使⽤Editplus、Ultra等⽂本⼯具编辑保存。
1、开关配置⽂件
/ecology/WEB-INF/weaver_security_
status :是否开启安全防⽕墙;
auto-update-rules :是否⾃动更新安全规则库,默认为false ,需要客户同意才开启; esapi-sql :是否开启ESAPI 提供的防SQL 注⼊⽅式,默认不开启;
esapi-xss:是否开启ESAPI提供的防XSS跨站攻击的⽅式,默认不开启;
is-check-session-timeout:是否启⽤系统超时控制,默认不开启;
session-timeout:如果启⽤了超时控制,设置超时时间,默认为30分钟;
is-reset-cookie:是否启⽤cookie重置功能,默认开启;
debug-xss-tool:是否开启安全补丁包本⾝的调试⽇志打印功能,默认不开启;
proxy-ip:如果前端有使⽤nigx、F5等负载均衡软件代理,那么请配置这些代理软件的IP 地址;
skip-ref:是否跳过referer检查,设置为true时跳过;设置为false时需配置ref-list节点以保证其他正常跳转请求;
skip-host:是否跳过host头部检查,设置为true时跳过;设置为false时需配置host-list节点以保证系统正常运⾏;
must-xss:是否执⾏xss过滤,设置为true时执⾏xss过滤
xss-type:执⾏xss的⽅式:0表⽰按照xss-keyword-list关键字及xss-list⽩名单过滤;
skip-rule:是否跳过SQL注⼊检查,设置为true时跳过
min-length:配置执⾏SQL检查和xss检查,参数值需满⾜的最⼩参数
enable-service-check:是否开启webservice安全检查,设置为true时开启。设置为true时需配置webservice-ip-list和webservice-list节点,默认开启,允许访问的是内⽹地址httponly:配置是否启⽤
httponly安全cookie机制。
http-sep:配置是否启⽤http拆分响应漏洞检查。
param-key:配置是否启⽤参数名合法性检查。
cookie-ip-check:配置是否启⽤cookie和ip绑定登录功能。
is-login-check:是否开启登录检查功能,默认不开启。
enable-forbidden-ip:封杀IP的设定级别设置,默认为1,邮件告警,不⾃动拦截。intercept-time:对攻击IP的封杀时长,默认为2⼩时。
forbidden-level:封杀级别设置,默认为1,仅仅当拦截严重威胁系统安全的攻击,⽐如sql 注⼊攻击。设置为2时,则对⼀切识别为攻击的⾏为都进⾏拦截,⽐如违反数据输⼊格式等。forbidden-count:
当开启攻击告警或者⾃动拦截时,当攻击的次数超过该字段设定的次数才邮件告警或者封杀该IP。默认为3次。
warn-time:邮件告警时间间隔,默认为3分钟。当⼀个IP持续攻击时,每3分钟发送⼀次告警邮件。
warn-count:告警次数,默认为10次。当⼀个IP持续攻击时,最多发送10封告警邮件。send-mail-smtp:发件服务器的服务器地址。
send-mail-username:设置告警邮件的发送账号。
send-mail-password:设置告警邮件的发送账号密码。
receive-mail:设置接收告警邮件的账号。
session-id:会话标志,当在resin中修改了会话标志时,需要配置此处,默认为JSESSIONID。
2、标准规则库⽂件(该⽂件通过通⽤补丁包给到客户,或单独给到客户,勿单独修改)
/ecology/WEB-INF/weaver_security_
/ecology/WEB-INF/securityRule/*
3、⽤户⾃定义配置⽂件(可以是多个⽂件)
/ecology/WEB-INF/securityXML/*.xml
⽰例:weaver_security_custom_rules_,如果客户需要单独添加⼀些规则,可以将
weaver_security_⽂件复制⼀份到securityXML⽬录下,重命名为weaver_security_custom_rules_,将⾥⾯root节点内的所有内容清空,然后添加⾃⼰的规则,格式和
weaver_security_⼀样,但⽆须完整节点,需要哪些就配置哪些。4、拦截⽇志⽂件(按天存放)
/ecology/WEB-INF/secritylog/*.log
1.5.1.2 开启防⽕墙功能(status)
配置⽂件:WEB-INF/weaver_security_
status设置为1即为开启,设置为0即为禁⽤,默认开启。
1.5.1.3 开启系统超时功能
配置⽂件:WEB-INF/weaver_security_
is-check-session-timeout:是否开启系统超时功能,默认为false,不开启
session-timeout:如果开启了系统超时功能,此处设置多长时间超时,单位为分钟,默认30分钟
1.5.1.4 是否禁⽌系统被其他系统嵌套(enable-x-frame-options)
配置⽂件:WEB-INF/weaver_security_
enable-x-frame-options:是否启⽤防盗链机制,默认为开启(true),开启后,系统不能被其他第三⽅系统嵌⼊iframe。
x-frame-options:如果上⾯开关设置为true,此处设置防盗链策略,默认策略为同源策略(即相同的域名可以嵌套本系统)
配置⽩名单(即配置了⽩名单之后,该页⾯不受此设置影响,允许被其他第三⽅系统嵌套)配置⽂件:WEB-INF/ securityXML/weaver_security_custom_rules_
可以配置多个url,也可以配置url中的⼀部分,放⾏某个⽬录中的所有⽂件和⼦⽬录中的⽂件。
1.5.1.5 启⽤XSS浏览器⾃带的防跨站功能(X-XSS-Protection)
配置⽂件:WEB-INF/weaver_security_
x-xss-protection:启⽤浏览器⾃带的防跨站功能,默认开启(true)
配置⽩名单(即配置了⽩名单之后,该页⾯不受浏览器防跨站功能的影响)
配置⽂件:WEB-INF/ securityXML/weaver_security_custom_rules_
可以配置多个url,也可以配置url中的⼀部分,放⾏某个⽬录中的所有⽂件和⼦⽬录中的⽂件。
1.5.1.6 参数缓存相关配置(intervalTime、scanTime)
配置⽂件:WEB-INF/weaver_security_
经过加密的sql参数在服务器上保留的时间,默认是480分钟。
sql参数缓存清除线程扫描间隔时间,默认为30分钟扫描⼀次。
1.5.1.7 攻击源IP封杀配置(forbidden-info⼦节点)
配置⽂件:WEB-INF/weaver_security_
设定IP封杀的模式。默认为1,邮件告警模式。
0:不开启IP封杀功能;
1:开启攻击邮件告警,但不⾃动拦截;
2:开启⾃动拦截模式,但不发送告警邮件;
3:开启⾃动拦截模式,同时发送告警邮件。
当开启⾃动拦截模式时,设定封杀时长。默认为2⼩时。
当开启告警或者⾃动拦截模式时,设定拦截的级别,取值为1和2。默认为拦截最危险的攻击。
设置为1:仅拦截违反⼀般规则的攻击,主要是SQL注⼊攻击拦截;
设置为2:违反了特殊规则的攻击也进⾏拦截,⽐如违反参数格式⾏为等。
当开启告警或者⾃动拦截模式时,设定当同⼀IP持续攻击达到设定次数时,执⾏告警或者⾃动拦截。默认为3次。
当开启告警时,多封告警邮件发送的时间间隔,默认为3分钟。
当开启告警时,对同⼀IP持续攻击最多发送的告警邮件次数。默认为10封。
当开启告警时,设置告警邮件的发送邮件服务器地址、发送账号及密码。
当开启告警时,设置告警邮件的接收账号密码。
1.5.1.8 设置永久⿊名单和永久⽩名单
配置⽂件:WEB-INF/ securityXML/weaver_security_custom_rules_
设置永久⿊名单列表。当开启攻击源IP⾃动拦截功能时,此处设置的IP地址将永远不能访问系统。适⽤于⽹络上经常⽤于攻击的⼀些IP地址。
设置永久⽩名单列表。当开启攻击源IP⾃动拦截功能时,此处设置的IP地址将不会被⾃动封杀(但违反输⼊规则依旧会取消此次请求),优先级⾼于永久⿊名单设置。适⽤于局域⽹访问外部⽹络时,本
地映射的外⽹地址。避免由于有⼈测试时被拦截,导致全局域⽹内都⽆
法访问系统。(注意:当开启了⾃动封杀IP功能时,请务必将Emobile、Emssage、E-brige 等和Ecology通信的地址加⼊到⽩名单中)
1.5.1.9 关于⼆次开发页⾯的配置问题(dev-list、encoding、path)
配置⽂件:WEB-INF/ securityXML/weaver_security_custom_rules_
对于E8,该节点配置需要以GBK编码接收数据的页⾯地址;
E8配置⽰例
对于E7和E6,该节点配置需要以UTF-8编码接收数据的页⾯地址。
E7配置⽰例
encoding:页⾯接收参数采⽤的编码格式
path:采⽤encoding指定编码开发的页⾯URL。可以配置多个url,也可以使⽤正则表达式来描述⼀个⽬录下的所有⽂件
1.5.1.10 ⽆需安全过滤器检查的链接配置
配置⽂件:WEB-INF/securityXML/weaver_security_custom_rules_
请将要排除的URL添加到excepts节点中。可以配置多个url,也可以使⽤正则表达式来描述⼀个⽬录下的所有⽂件
1.5.1.11 URL(log⽇志)访问权限控制
配置⽂件:WEB-INF/securityXML/weaver_security_custom_rules_
该配置主要⽤于配置某些特定的URL仅允许部分⽤户允许访问,防⽌信息泄露。如log⽇志⽂件访问权限控制。
allow-users:配置允许访问的⽤户loginId,需要配置多个⽤户则配置多个节点即可。urls:配置只能是allow-users中配置的⽤户才能访问的URL,若需配置多个URL则配置多个节点即可。(可以配置多
个url,也可以使⽤正则表达式来描述⼀个⽬录下的所有⽂件)
1.5.1.12 ⽆需登录访问开关配置(is-login-check)
配置⽂件:WEB-INF/weaver_security_
该值设置是否对页⾯进⾏登录访问检查,默认为false,不进⾏登录访问检查。设置为true 时,所有页⾯都必须登录后才能访问。(访问例外配置可以参考1.3.1.10配置)
1.5.1.13 ⽆需登录访问页⾯例外配置(no-login-urls)
配置⽂件:WEB-INF/securityXML/weaver_security_custom_rules_
当设置为true时,此处配置的url不进⾏登录验证。(可以配置多个url,也可以使⽤正则表达式来描述⼀个⽬录下的所有⽂件)
1.5.1.14 ref跨站攻击检查(skip-ref)
配置⽂件:WEB-INF/weaver_security_
该值设置是否跳过ref攻击检查,默认为true,不需要检查referer来源。设置为false则检查referer来源。
1.5.1.15 ref⽩名单(ref-list)
配置⽂件:WEB-INF/securityXML/weaver_security_custom_rules_
当开启skip-ref设置为false时,允许的referer取值。可以配置多个url,也可以使⽤正则表达式来描述⼀个⽬录下的所有⽂件
1.5.1.16 httponly配置
配置⽂件:WEB-INF/weaver_security_
该值设置是否将cookie设置为httponly模式,默认为true。启⽤httponly
配置⽂件:WEB-INF/securityXML/weaver_security_custom_rules_
当启⽤httponly时,该处配置哪些cookie需配置为httponly模式。
key:cookie的键
path:cookie的路径
如果需要配置多个cookie为httponly模式,那么就配置多个cookie节点即可。
1.5.1.17 host攻击检查相关(skip-host、url-params、host-list)配置⽂件:WEB-INF/weaver_security_
该值设置是否跳过host头部检查,取值为true的false。默认为true,即不检查host header 的合法性。
配置⽂件:WEB-INF/securityXML/weaver_security_custom_rules_
合法的host header列表。这⾥需要配置Ecology服务器内外⽹IP、域名(如果是80端⼝,那么需要配置带端⼝的不带端⼝两种模式)。
配置⽂件:WEB-INF/securityXML/weaver_security_custom_rules_
配置需要进⾏URL检查的参数,防范钓鱼⽹址攻击。该项需要skip-host设置为false才⽣效。其访问的地址域名必须是host-list中允许的地址。
配置⽂件:WEB-INF/securityXML/weaver_security_custom_rules_
针对中配置的检查参数,如果有些页⾯允许接收传递URL格式的参数,那么将该页⾯地址配置在节点下。
1.5.1.18 webservice安全相关配置
1、开启webservice安全验证
配置⽂件:WEB-INF/ weaver_security_
该值改为true即开启了webservice安全验证。如开启了该验证,必须配置webservice和webservice-ip-list节点数据,否则webservice将不可⽤。
2、配置需要验证的webservice⽩名单
配置⽂件:WEB-INF/securityXML/weaver_security_custom_rules_
webservice代表⼀个或多个webservice请求地址,使⽤正则表达式配置,可以有多个节点
3、配置允许的webservice客户端地址
配置⽂件:WEB-INF/securityXML/weaver_security_custom_rules_
节点配置允许访问系统的webservice ip地址,可以配置多个节点。


发布评论