对网络安全等级保护中数据库整改的探讨
2021-01-16卢方建卢方玉关益香彭观平阳江市妇幼保健院
卢方建 卢方玉 关益香 彭观平 阳江市妇幼保健院
一、改造前的概况
(一)监听密码设置情况
HIS、LIS、PACS、EMR 等服务器都采用Oracle 数据库,在检查Oracle 监听器发现,都没设置口令,虽然这样在使用起来方便,但是在执行监听器命令前不需要输入密码,增加了数据库访问的风险。
(二)数据库口令情况
在检查四大主要系统的Oracle 时,发现数据库的密码强度不足,有些甚至使用默认密码,这样的密码会成为数据库安全的一个短板,带来被入侵的风险。
(三)检查用户情况
数据库登录用户应该按实际需要设置,但在检查中发现,有多个不必要的用户,把这些用户锁定,提高安全系数。
(四)检查密码策略情况
针对服务器的密码,默认情况下并没有相关策略,这个需要根据实际情况进行创建,还可以设置密码复杂度检查函数。
(五)检查用户权限情况
数据库中的一些系统权限和对象权限分配不合理,需要细致化地进行按需分配,对于不必要的应去除。
二、整改实用操作
(一)检查Oracle 监听器是否设置口令
具体操作:打开%ORACLE_HOME% etworkadminlistener.ora,检查是否有以下类似的行PASSWORDS_LISTENER= F4BAA4 A006C26134,如果没有,就表明没设置口令,如果有,但是口令较弱,有必要设置新的复杂度足够的口令。方法如下:
操作系统命令提示符下输入:
SHELL>%ORACLE_HOME%/bin/lsnrctl
LSNRCTL>change_password
Oldpassword:<原来的口令><--如果原来没有设置口令就直接回车,否则输入原来的口令
Newpassword:<新口令>
Reenternewpassword:<新口令>
Connectingto(ADDRESS=(PROTOCOL=ipc) (KEY=XXX))
PasswordchangedforLISTENER
Thecommandcompletedsuccessfully
LSNRCTL>setpassword
Password:<输入新口令>
LSNRCTL>save_config(保存当前设置)
以后执行监听器命令前需要输入密码
LSNRCTL>setpassword
Password:<输入新口令>
LSNRCTL>status(如果上一步未验证密码,则提示TNS-01169:监听器尚未识别口令)
(二)检查数据库弱口令
如果password 字段为null,查询sys.user$基表
SQL>selectname,passwordfromsys.user$wherenamein(selectusernamefromdba_userswhereaccount_status='OPEN');将 密 码hash 导入cain 软件破解。
如果需要修改密码,可用命令SQL>alteruser 用户名identifiedby 新密码。……p>
