这里我们讲一下信息安全技术2.0的要求,以及中间件对应的一些条款和条件。
安装步骤就略过,我们直接看安全防护涉及的一些参数。
首先在做评测的时候我们首先要记录对应的软件版本:
检查版本,在目录下执行/bin/.sh,可以查看对应软件版本信息。
这是之前的资产情况,记录在系统配置中。
然后根据各个安全防护对应的条款,确定如何在中间件中进行查询。
1. 身份认证
a) 应识别和认证已登录的用户。标识应具有唯一性,认证信息应复杂且定期更新。
首先,对于身份认证控制点,如果管理控制台开启了,这个控制点需要评估,否则不适用。
1.确认是否使用管理后端
我们先找到配置文件:主目录中的/conf/.xml
可以查看连接端口,默认是8080
然后检查-gui管理页面配置文件,查看是否设置了用户登录
配置文件:主目录中的/conf/-users.xml
如果有类似上面的语句,则说明该用户存在
目前我们还需要检查主目录下的/目录是否存在这个文件
然后访问,默认接口是:
点击访问
2.访问APP出现403错误的解决方法
首次安装配置环境时,可能出现以下错误
网上查了很多都说是没有配置账号和密码,需要在conf中的-user.xml中添加账号,密码,以及权限,但是这只是第一步。
重启后,你可以在虚拟机中使用该应用程序,但不能在虚拟机外使用该应用程序。这是因为 IP 限制,需要解除 IP 限制。
取消注册文件夹下//META-INF/.xml文件夹的以下内容
然后重启服务,再次访问即可
3.修改默认欢迎界面
因为在实际的客户环境中,很多情况下默认的访问接口并不是我们默认的那个,这种情况下我们该如何进入控制台呢?
3.1 创建网站
和/var/www/html/类似,nginx有自己对应的web目录,一般是根目录+/,在本机就是/usr/local///
我们创建一个名为test的项目,并在test目录下创建WEB-INF/和WEB-INF/lib文件夹
mkdir -p /usr/local///test/WEB-INF{,lib}
OK,就可以在测试目录下编写第一个Jsp网页了(注意:与nginx不同,默认支持Jsp,所以不需要安装Jsp)
vim /usr/local///test/index.jsp
3.2 修改.xml文件
找到下图中的字段:
插入之前:
path:代表虚拟目录的名称,如果只需要输入IP地址来显示首页,则此键值保留为空。
:指定登录默认首页所在的文件夹,默认指定的文件夹是ROOT文件夹,新建一个test文件夹,将网页放在该文件夹中,Web.xml文件中需要有指定的html或者jsp文件,会按顺序查找相应的文件。
debug和:一般可以设置为0和true,在项目编写和测试阶段设置为true意味着只要有改动就会自动重新加载编译项目,可以给我们带来一定的便利。但在项目发布阶段一般设置为false,以提高性能。
这样我们的默认界面就已经准备好了,直接访问的就是你设置的网页。
3.3 无需默认界面,直接访问应用
我们可以在末尾添加后缀 / (或 //html)
4. 安全检查点
当用户使用管理控制台时,会检查目录下的/conf/-user.xml文件进行身份验证a).
检查用户密码是否复杂,只要检查字段即可,一般要求由大写字母、小写字母、数字、特殊符号三种组成,长度大于8个字符,并且定期修改。这个好像没什么证据,只能问管理员了。
然后为用户的唯一标识
我这里测试了一下,如果在配置文件中直接写两个同名的用户,是没有问题的。但是登录的时候好像只会匹配最底层的用户。比如上图我有两个账号,都是 ,但是密码不一样。真正登录的时候,使用 密码 的账号是登录不了的,只能用 密码 的账号登录。
所以这个不是很清楚,但是一般客户不会设置两个同名的用户,至于用户标识的唯一性,账户名不同就可以了。
b) 应具有登录失败处理功能,并应配置并启用结束会话、限制非法登录次数、登录连接超时自动注销等相关措施。
此项评估项目要求具有登录失败处理功能和操作超时自动注销功能。
1.登录失败处理函数
管理台默认具有登录失败处理功能。
经过我自己的测试,默认情况下:登录失败5次将导致10分钟锁定。但是我不知道不同版本是否也一样。
那么他也有自己的配置文件:
在目录/conf/.xml 中配置
检查对应的(次)、(秒)值,可自行编辑
如上图,就是失败3次,锁定300秒。
2. 操作超时值
要求是,经过一段时间不活动后,用户可以自动登录并重新认证,类似于屏幕保护程序功能。
我在网上查了很多相关信息,都说要检查值
我测试了一下好像不操作的话不会自动退出,所以不知道这个功能该怎么实现,如果有知道的请留言教教我吧。
c) 进行远程管理时,应采取必要措施防止认证信息在网络传输过程中被窃听。
我认为这可以通过直接观察后端访问方式来做到这一点,无论它使用http还是https。
d) 应采用密码、密码技术、生物识别等两种或两种以上的认证技术对用户身份进行认证,其中至少一种认证技术应采用密码技术来实现
我不知道如何实现这一点,但一般没人会这样做......
直接现场观察和验证就足够了。
2. 访问控制
首先这里的访问控制要求是针对管理控制台中的用户权限,也就是它是一个内置的Web应用,用于管理自身以及部署在其上的应用程序。
访问控制是通过赋予用户相应的角色,授权用户使用相应的功能来进行的。
要查看的文件是目录中的/conf/-user.xml
如上图roles字段是配置角色的地方,一个用户可以拥有多个权限,多个权限之间用英文逗号分隔。
查阅了一些网上的资料,大概的权限如下:
6.0.18版本只有两个用户角色:admin和user admin,其中admin用户拥有管理权限。
默认情况下,4.1.37和5.5.27及以后版本,除admin用户外的其他用户没有管理权限。
然后有四种类型的细分:
a) 应为登录用户分配账户和权限
检查有哪些用户以及他们具有哪些角色
在目录 /conf/-user.xml 中
b) 重命名或删除默认账户,并修改默认账户的默认密码
查看目录/conf/-user.xml
是否有admin、role1、both等默认账号,密码是否为默认密码等。
c) 应及时删除或停用冗余、过期的账户,避免共享账户的存在。
检查目录中的/conf/-user.xml文件,确认现有的账户,并询问管理员每个账户的用途是什么,是否有多余的账户。
d) 应授予管理用户所需的最小权限,实现管理用户权限分离
权力分立原则
分配以最小授权原则为原则,中间件不应实现管理用户权限分离。
e)访问控制策略应由授权主体配置,访问控制策略规定了主体访问客体的规则
检查目录下的/conf/-user.xml,确认管理员为每个用户设置的访问控制规则,也就是设置了相应的角色
每个用户的角色权限:
1)角色
role1:具有读权限;
:有读取、运行权限;
admin:具有读、运行、写的权限;
:具有远程管理权限。
6.0.18版本只有两个用户角色:admin和user admin,其中admin用户拥有管理权限。
2)另一个版本
默认情况下,4.1.37和5.5.27及以后版本,除admin用户外的其他用户没有管理权限。
补充:
该目录为默认的管理目录,如果系统上线之后不需要通过网页进行管理,可以删除(移除)此目录,相对来说比较安全。
f) 访问控制的粒度应为:主体在用户级或进程级,客体在文件或数据库表级。
此条款对于服务器、数据库等评估对象来说比较容易理解,但对于中间件来说,我个人就不是太理解。
难道说主体是用户层面的,客体是web控制台对应的功能模块??
因为网络安全等级保护要求有些考核对象,有些则判定为不适用,所以要看个人。
g) 应针对重要的主体和客体设置安全标签,并控制主体对带有安全标签的信息资源的访问。
同样,此次国标中评价对象也涉及中间件,有的被判定为不适用。
不知道具体怎么实现,默认给不符合要求的。
3.安全审计
这里首先要理解的是日志
首先我们看一下位置,它的日志并不是在/var/log目录下,而是一般在安装路径下的logs文件夹下。
日志类型描述
名称 描述
1. .date.log 引擎日志文件
2. .out控制台输出,包括标准输出和错误输出
3.host-.date.log主机管理日志
4. 内部代码抛出 .date.log 下的日志
5. .date.txt 网络访问日志
6. .date.log 应用程序管理日志
一、关于上述日志的配置文件
1.2.3.4.6都在根目录/conf/下。
5 在根目录/conf/.xml
1..
一般日志文件定义是3行
1)第一行确定输出什么级别的信息
各类日志的级别分为以下7种:
(值)>>INFO>>FINE>FINER>(值)
OFF 为关闭输出;ALL 为输出全部
2)第二行确定输出日志文件的路径
3)第三行确定日志文件的前缀
.out与其他日志不同,因为它输出控制台()信息,这些信息来自Linux输出的重定向。
ps:-和host-分别对应后台页面的App和Host,如果要生成这两类日志需要在-users.xml中分别配置-gui和admin-gui角色的账号和密码,并访问对应页面,否则这两个日志将为空。
1-5类日志属于操作日志,一般用于解决服务器、应用程序、Web应用管理中遇到的错误。
2. .xml
访问日志是网页访问的记录。
规则:
需要启用访问日志
日志存放目录
日志名称前缀
日志文件后缀
日志记录格式
除了第一个不允许修改之外,其他字段值都可以根据实际需要进行修改,最关键的是,我们将其与实际的日志进行对比:
与前一个进行比较,=“%h%l%u%t“%r”%s%b”
%h 是 192.168.21.237 对应的远程主机名
%l 是远程登录名,除非设置为“开”,否则将得到“-”
%u 是远程用户名(从认证信息中得出)。如果不存在,则返回“-”。
%t 为时间,采用常用日志格式(标准英文格式),对应 [29/Jun/2020:17:04:30 +0800]
“是双引号的实体编码”
%r 为请求头第一行(包含HTTP方法和请求RUI),对应GET /test/HTTP/1.1
扫一扫在手机端查看
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。