admin 管理员组文章数量: 1184232
2024年4月29日发(作者:27的原码反码补码)
DOI:10.3969/.1006-6403.2022.03.006
政务信息系统口令常见安全隐患及对策
[张洪飞 朱海涛 王骏]
摘要
总结政务信息系统口令常见的
4
种安全隐患:弱口令、明文存储、不安全的密码
算法、未限制登陆失败次数。提出强化管理、巧设口令、妥善保管的三条管理对策和
口令强度检测、口令加密、部署数字证书、限制登陆失败次数等技术对策。结合口令
隐患整改实践
,
作者认为,口令隐患整改离不开管理对策,但需以技术对策为基础。
关键词:
口令安全
信息系统
弱口令
网络安全
运
营
与
应
用
张洪飞
高级工程师、程序设计师,任职于镇江市市域治理现代化指挥中心,主要从事电
子政务外网运维管理及网络安全工作。
朱海涛
高级工程师
,
程序设计师,任职于镇江市市域治理现代化指挥中心,主要从事政
务云建设管理及网络安全工作。
王骏
技师,任职于镇江市人民政府办公室,从事政务信息化及政务大数据建设。
1
引言
数字时代
,
口令
、
密码与我们如影随行
,
生活中众多
场景都需要验证口令和密码
。
口令和密码时常混用或等同
,
然而
,
二者是有区别的
。
中国科学院院士
、
密码学家王小
云曾通俗解释说
,
当你输入一串字符
,
如果不经过任何处
理直接送到服务器来验证
,
它一定不是密码
,
只是一个口
令
。
如果输进去的字符
,
通过密码算法运算得出另外一个
结果
,
这个结果可以验证你是否是合法的用户时
,
这个口
令就变成了密码
[1]
。《
中华人民共和国密码法
》
对密码的
定义是采用特定变换的方法对信息等进行保护
、
认证的技
术
、
服务和产品
。
口令安全是信息系统安全运行和业务数据安全的重要
保障
。
然而
,
由于网络安全意识不强
、
管理不到位
,
代码
缺陷
、
技术约束不健全
,
政务信息系统口令安全隐患时有
发生
。
以镇江市电子政务外网核心网络设备全流量样本分
析为例
,
2021
年全年共有政务信息系统口令安全隐患
192
条
/
批次
,
其中弱口令
28
条
、
口令明文存储
/
传输
94
条
、
多次登陆尝试
60
条
。
作者作为设区市电子政务外网网络
安全工程师
,
直接处置
、
协助指导多个政务信息系统口令
安全隐患整改
,
提出了系统的管理对策与技术对策
。
22
Copyright©博看网 . All Rights Reserved.
政务信息系统口令常见安全隐患及对策
2
隐患类型
2.1
弱口令
普通人对无规律随机字符串记忆能力有限
,
一般不
超过
9
位
,
加之记忆惰性
,
弱口令现象普遍存在
。
弱口令
是指易于被破解或被猜中的口令
,
例如
123456
、
admin
、
111111
、
5201314
、
a123456
、
abc123
、
iloveyou
等仅包
含简单数字和字母的口令
。
还有部分口令看起来复杂
,
但符合键盘分布规律
,
例如
q1w2e3r4t5y6
、
qazwsx
、
gfrtyhbv
、
12qwaszx
,
实际上还是弱口令
。
信息系统批量
开通的用户默认密码也是弱口令
。
弱口令容易被暴力破解
,
直接危害信息系统及数据安全
。
COM
)
的
“
站长工具
>Base64
编码解码
”。
(
2
)
MD5
是一种单向散列算法
,
由图灵奖得主
、
著
名密码学家
在
1992
年提出
,
散列摘要长度为
128
位
,
很难逆向破解
。
通过密文字典可检索出密文对应
的口令
,
例如
CMD5
网站
(
)
通过穷举字
符组合的方式
,
创建了明文密文对应查询数据库
。
该站宣
称记录约
90
万亿条
,
查询成功率
95%
以上
,
1-6
位大小
写字母
+
数字
+
特殊字符
、
8
位小写字母
+
数字组合口令
对应密文已
100%
收集
。
(
3
)
SHA-1
是一种密码散列算法
,
于
1995
年发布
,
该算法散列摘要长度为
160
位
,
散列值通常呈现为
40
个
十六进制字数
。
与
MD5
相比
,
SHA-1
安全性更高些
,
但
运行速度略低
。
王小云教授带领的研究小组于
2004
年
、
2005
年先后破解了
MD5
与
SHA-1
算法
。
2.2
明文存储
用户口令未作任何形式密码运算
,
直接明文存储
,
隐
患有三
,
首先口令明文存储
,
用户数据库一旦被泄露
,
明
文口令将直接暴露
;
其次
,
明文口令在传输过程中易被监
听获取
;
最后
,
数据库运维人员可直接浏览用户敏感口令
信息
,
不利于程序开发与数据库运维分权操作
,
存在运维
风险
。
2011
年
,
天涯网
、
CSDN
、
人人网等泄露超过
8 000
万条用户名及明文口令
[2]
。
为方便记忆
,
普通网民往往会
在多个不同网站使用相同口令
。
用户数据库通常包含用户
名
、
手机号号码等信息
,
口令信息如果明文存储
,
一旦用
户数据库泄露
,
不法分子通过
“
撞库
”
攻击方式
,
将进一
步放大口令明文存储危害
。
2014
年
,
12306
网站
13
万多
条用户信息泄露事件的主要原因就是口令明文存储与泄
露
,
黑客利用多个网站泄露的用户名与明文口令
,
通过自
动化登陆工具登陆
12306
网站获取用户个人信息
[3]
。
2.4
未限制登陆失败次数
未限制登陆失败次数
,
黑客可以采用暴力破解方式获
取口令
。
暴力破解一般利用爆破或渗透测试工具
,
通过大
量猜测和穷举方式尝试获取用户口令
。
常见的猜测
、
穷举
方法有二
,
其一是利用网络上已公开的弱口令集
,
其二是
通过社会工程方法获取目标用户基本信息后使用口令生成
器生成口令字典进行尝试破解
。
未限制登陆失败次数
,
为
黑客暴力破解一个用户或多个用户的口令提供可乘之机
。
运
营
与
应
用
3
管理对策
3.1
合理设置口令策略
口令策略是口令管理的有效手段
。
口令策略通常包含
:
口令长度
,
限定口令最小长度及最大允许长度
;(
1
)(
2
)
口令强度要求
,
口令必须包含的字符类型及种类要求
;(
3
)
重复口令使用限制
,
禁止用户重复使用指定数量的旧口令
;
(
4
)
口令有效期
,
限定口令的有效期
,
口令到期后强制
用户修改口令
;(
5
)
登陆失败次数限制
,
用户登陆失败
达到指定次数后阻止用户在特定时间内再次登陆
。
2.3
不安全的密码算法
通过加密算法
,
明文口令转换成加密密文
。
若密码
算法过于简单
,
密文就容易被破解
。
不安全的密码算法有
BASE64
、
MD5
、
SHA1
。
(
1
)
BASE64
编码经过简单二进制转换
,
适合
HTTP
环境下传递较长的标识信息
,
BASE64
编码不能直接阅
读
,
形似密文
,
例如
,“
zhenjiang
”
的
BASE64
编码为
BASE64
编码可人工逆向计算还原
,“
emhlbmppYW5n
”。
也可通过在线工具傻瓜式还原
,
例如站长之家
(
CHINAZ.
3.2
巧设强口令
强口令通常包含大写字母
、
小写字母
、
数字以及特
殊符号等
,
长度不低于
8
位
,
不类似于以前使用过的密
码
,
不包含个人姓名
、
登录名
、
常见人名
、
宠物名等
,
23
2022.03·
广东通信技术
Copyright©博看网 . All Rights Reserved.
》
运营与应用
不是键盘上连续敲击的字符串
。
为了便于记忆
,
口令设置
可采用中文句法的口令助记策略
。
用户设置口令时
,
选择
一句对用户本人有意义
,
不包含个人敏感信息
,
其他人不
太可能用到的中文语句
,
利用预定义规则或基于用户的
选择
,
将其转换为用户口令
[4]
。
例如
,
助记语句是
“
我和
她相识于
2008
”,
可转换得到口令为
“
w&Txsy2008
”、
“
i&SHExsy2008
”。
口令是否符合强度要求
,
也可借助
互联网在线密码安全性检测程序
。
if (preg_match($zz, $user_password, $matches)) {
//
正则表达式匹配正确
,
表示密码符合强度要求
$badPass = 0;
} else { //
正则表达式匹配不正确
,
密码不符合要求
}?>
$badPass = 1;
4.2
口令加密
加密算法可分为对称密钥算法
、
公钥算法和散列算
法
。
口令设置的主要意义是确认用户身份
,
因此口令加密
多采用散列算法
。
校验用户身份时只需采用相同加密
,
校验密文是否相同即可确认用户身份
。
常见的散列算法有
MD5
、
SHA
系列
、
PBKDF2
。
散列算法很难逆向破解
,
几
乎不可能根据口令密文直接推导还原出口令明文
。
破解散
列密文的常见方式有暴力破解
、
密文字典
、
彩虹表等
。
暴
力破解通过穷举明文口令计算散列密文正向碰撞
。
密文字
典通过预先存储的
“
明文
-
密文
”
数据库字典反向检索出
口令明文
,
密文字典需要惊人的存储空间
。
彩虹表通过预
先计算的散列链
,
以一定的计算量降低存储空间
,
是目前
破解散列密文的常用方式
。
3.3
妥善保管
口令要妥善保存
,
不得将口令转告他人
;
若确因工作
需要
,
必须对外告知口令
,
要掌握
、
控制口令知晓范围
,
提醒
、
监督口令合规使用
,
必要时可通过安全设备采取账
户限源访问
;
对外提供口令时
,
可将口令修改为临时口令
并约定使用期限
,
到期后及时作更换
。
用户口令登记与整
运
营
与
应
用
理不得使用互联网上运行的办公电脑整理编辑
,
可采取手
工填写方式
,
填写内容至少包括密码更换时间
、
使用人等
信息
。
重要口令登记表应存放在密码柜中
,
不得将密码贴
在办公桌上或记在易被发现的记事本上
。
4
技术对策
从笔者实践来看
,
为保障信息系统用户口令安全
,
常
见的技术对策有
:
口令强度检测
、
口令加密
、
限制登陆失
败次数
、
部署数字证书
、
限源访问等
。
为防范
“
彩虹表
”、“
密文字典
”,
可采用附加
“
盐值
”
的散列算法
。
国内知名
Discuz
!
论坛用户口令加密方采
用常用的
MD5
算法
,“
盐值
”
为长度为
6Byte
的随机数
,
表达式是
MD5
(
MD5
(
明文口令
)
||salt
)
[5]
。
各类编程
语言一般自带各种加密算法与函数
,
以
PHP
为例
,
函数
password_hash
(
string $password,PASSWORD_BCRYPT,
["cost" => $cost]
)
自动生成盐值
,
设置
hash
递归次数为
11
,
可有效防范
“
彩虹表
”
暴力破解
。
例如
“
zhenjiang
”
对应的密文可以为
:
(
1
)
$2y$11$.PhI8y8H7fVGvp/
6
(
2
)
$2y$11$pD1j0UAp6A6iOMPXDrkecucziZvkGA
Nr98.c9rRfzRf4eQ0JQJiYC
4.1
口令强度检测
信息系统
,
尤其是大型信息系统
,
用户类型众多
、
数
量庞大
,
再严格的行政管理措施也无法保证每一个用户设
置
、
更改用户口令时一定会设置强口令
,
唯有通过技术手
段
,
在用户登陆
、
设置
、
更改等环节设置口令强度检测
,
从源头上杜绝弱口令的产生与使用
。
从程序编码角度来说
,
进行弱口令检测简便易行
,
通过一条密码强度检测的正则
表达式和几行代码即可实现
。
以
PHP
程序设计语言为例
:
$zz = /^.*(?=.{6,20})(?=.*d)(?=.*[a-zA-Z]{1,})/;
//
密码强度判断要求为
:
除换行符和其他
Unicode
行
终止符之外的任意字符开头
,
长度为
6-20
位
,
至少包含
一个数字且包含一个字母
4.3
登陆失败次数限制
对于用户登陆失败次数达到一定数量
,
例如
6
次以
上的
,
暂停此用户登陆尝试或启用图形类验证码
,
可有效
防范暴力破解
,
是常见的账户保护策略
。
登陆失败提示信
24
Copyright©博看网 . All Rights Reserved.
政务信息系统口令常见安全隐患及对策
息不要区分用户名错误和密码错误
。
用户登陆界面须防范
用户口令跨站脚本攻击
(
XSS
),
例如在登陆界面设置随
机数的
MD5
码作为提交页面来源验证暗口令
,
通过会话
(
session
)
等方式传输到用户口令检测页面
。
检测页面在
检查用户口令正确性之前首先检查暗口令是否正确
,
如
不正确
,
说明存在跨站脚本攻击
,
应停止检查该用户登陆
信息
。
function tokenFor
()
{ //
预防跨站攻击函数
$token = md5
(
uniqid(rand
(),
TRUE
));
//
生成
传输
Session
值
$_SESSION['token'] = $token
;
对通用密码算法产生的密文进行简单的替换或置换
。
密文
校对时
,
只需采用同样的替换或置换方法
。
简单密文变形
,
有效提升破解难度
,
可防范及彩虹表破解方式
。“
密文字典
”
(
3
)
日志分析
:
用户每次登录
,
无论成功
、
失败
,
记录登录时间
、
ip
地址
、
浏览器版本
、
登录成功与否等
。
登录信息可用于用户登录频率
、
使用环境
、
是否合规等
分析
;
(
4
)
定期商用密码应用安全性评估
:《
商用密码管
理条例
》(
修订草案征求意见稿
)
第三十八条规定
:
非涉
密的关键信息基础设施
、
国家政务信息系统等网络与信息
系统
,
其运营者应当使用商用密码进行保护
,
自行或委托
开展商用密码应用安全性评估
[6]
。
评估密码应用的合规性
、
正确性和有效性
。
(
5
)
限源访问
:
指根据用户分布特点
,
合理设置防
火墙
、
安全网关访问策略
,
阻断非目标用户访问
。
例如
,
镇江市政府网站群内容发布后台仅面向本市政务单位
,
通
过设置白名单访问策略
,
阻断市外用户访问
,
有效降低安
全风险
;
运
营
与
应
用
$_SESSION['token_time'] = time
();
}
if
(
$_POST['token'] <> $_SESSION['token'] or
!isset
(
$_SESSION['token']
))
{
//
表单传输的值与服务器端值不相等或暗口令值为空
die
();
//
终止程序运行
,
防范跨站脚本攻击
}
>
4.4
部署数字证书
HTTP
协议在客户端和网站服务器之间以明文传输信
息
,
存在信息泄露被篡改
、
流量劫持
、
钓鱼攻击等隐患
,
不适合传输用户名
、
密码
、
信用卡号等敏感信息
。
微信公
众号
API
接口调用在
2017
年
12
月就强制要求使用加密传
输的
HTTPS
,
不再支持
HTTP
。
部署
HTTPS
数字证书
,
自动激活浏览器中显示
“
锁
”
型安全标志
,
可实现口令及
客户数据的加密传输
,
保障数据传输安全
。
中央人民政府
、
阿里巴巴
、
百度
、
京东等门户网站使用通用公钥证书
,
采
用
RSA256
及
AES256
加密算法
。
5
结语
笔者在
2021
年上半年处置一例政务信息系统口令隐
患问题
。
该系统是多年前建设的综合性业务系统
,
政务部
门用户数
12603
个
。
由于机构整合
、
岗位调整
、
人员变动
等原因
,
众多用户账户处于停用状态
,
逐一核对用户信息
难度较大
,
为尽快完成口令隐患整改
,
以行政管理对策为
辅助
、
技术对策为主
。
为此
,
行政上通知各用户单位限期
整改弱口令
。
技术上分析密文值
,
发现大量密文相同的用
户
,
例如密文同为
“
7B21848AC9AF35BE0DDB2D6B9FC
3851934DB8420
”
的用户
12368
个
,
密文同为
“
7C4A8D
09CA3762AF61E59520943DC26494F8941B
”
的用户
160
个
,
密文同为
“
96DF87DDD01EA68DD2E880888DCBD0
82B3089935
”
的用户
5
个
。
上述密文显著特征是长度
40
位
16
进制字符
,
符合
SHA-1
算法密文特征
。
通过在线
SHA-1
密文反查
,
上述
3
个密文对应的口令明文分别是
“
11111
”、“
123456
”、“
88983035
”。
密文值相同且
超过
2
个的用户以及近半年未登录的用户口令集中批量替
4.5
其它措施
其它措施主要包括多因子登陆
、
密文变形
、
日志分析
、
密码应用评估
、
限源访问等
。
多因子登陆
:
用户登陆验证环节
,
增加短信验证
、(
1
)
数字证书
、
手机令牌等登陆因子
。
防范暴力破解
,
可增加
图形验证码等因子
。
(
2
)
密文变形
:
借鉴密码算法中的置换与替换思路
,
25
2022.03·
广东通信技术
Copyright©博看网 . All Rights Reserved.
》
运营与应用
换成强口令密文
。
结合口令隐患整改实践
,
笔者认为
,
解
决政务信息系统口令安全问题
,
三分管理
,
七分技术
,
重
在技术对策
。
一切忽略人性的管理手段都会失效
,
一切没
有技术手段保障的管理措施都会失效
[7]
。
技术对策配置合
理
、
科学
,
可有效降低口令管理难度
,
起到事半功倍的作用
。
3
火车票
13
万用户信息外泄
.
人民网
2014
年
12
月
26
日,
http:
///n/2014/1226/.
4
张艺
,
咸鹤群
,
于爱民
.
基于中文句法的口令助记策略
.
科学
技术与工程
[J].2019,19.
5
杜薇
,
张李军
,
张爱丽
.
网络论坛口令的安全性分析
.
通信技
术
[J].2018,51.
参考文献
1
密码学家王小云开讲
.2018
年
4
月
14
日
,/
2018/04/13/.
2
刘功申
,
邱卫东等
.
基于真实数据挖掘的口令脆弱性评估及恢
复
.
计算机学报
[J],2016,39.
6
国家密码管理局官网《商用密码管理条例(修订草案征求意见
稿)》,
/sca/hdjl/2020-08/20/content_
.
7
齐向东
.
漏洞
[M].2nd,
上海
:
同济大学出版社
,2021.159.
(收稿日期:
2022-03-09
)
运
营
与
应
用
(
上接第
16
页
)
旧失败
。
(
3
)
通过多次
debug
找到蓝盾的
AES
加密程序
,
但
此程序是一个
js
文件
,
无法在
Python
或者
Java
程序上运行
。
针对这个问题经过摸索也有两种解决方案
。
①读懂此加密
js
文件
,
通过
Python
重写此程序
。
但
是这个
js
文件前后数百行
,
多重嵌套调用
,
且用了大量
的缩写引用
,
晦涩难懂
,
花了几天时间勉强读完用
Python
程序重写后依然无法通过密钥校验
,
看来此方法坑太多
,
失败
。
②通过
Python
调用
js
文件生成密钥
,
通过网上查询
,
发现有
、
selenium+phantomjs
、
pyexecjs
等多种方法
。
通过多次调试
,
并修改
js
文件
,
最终用
pyexecjs
模块调用
js
生成了正确的密钥
,
问题解决
。
密钥生成后
,
通过发送
https
请求
,
把信令话单查询
结果中不是双无的号码生成
excel
文件
,
并上传到蓝盾置
黑
,
这一步顺利完成
。
4
防骚扰工单未来面临的挑战
本文提出并部署的防骚扰工单全自动化处理办法
,
能
够快速
、
准确地处理工单
,
极大减轻工作负担
。
后续网站
会出现一些需要人工识别的附件
,
比如营业执照
、
身份证
、
保证书以及各种录音
,
需要人工智能技术
,
如图像识别
、
NLP
等技术来处理
,
如何实现高效
、
准确地识别值得深入
研究
。
参考文献
1 Jake
数据科学手册
[M].
陶俊杰,陈小莉
.
人民邮电出版社
.2020:86~189.
2
李刚
.
疯狂
Ajax
讲义
[M].
第
3
版
.
中国工信出版集团
电子工
业出版社
.2016(12):286~356.
3 Jacqueline Kazil Katharine
数据处理
[M].
张
亮,吕家明
.
人民邮电出版社
.2017(10):251~284.
(收稿日期:
2022-01-29
)
26
Copyright©博看网 . All Rights Reserved.
版权声明:本文标题:政务信息系统口令常见安全隐患及对策 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1714405522a678736.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论