网站首页 > 技术文章 正文
HTML用户登录信息
常见的Web登录中,是下面这样的表单:
1.作为HTTP请求body中的参数传递给后台,进行登录校验。例如用户名为user1,密码是123456,在提交登录时给后台发送的HTTP请求如下(FireFox或Chrome开发者工具捕获,需要开启Preserve log):
发现即使password字段在输入时是黑点不可见,但仍然以明文的方式进行截获请求。
2.在网络传输过程中,如果被嗅探截取到也会直接危及用户信息安全,以使用抓包工具Wireshark为例,可以看到HTTP协议传输直接暴露用户的账户和密码:
前端使用加密算法能否保证密码安全?
Web前端通常可以使用某种算法,对相关字段进行加密处理,再将密码作为HTTP请求的内容进行提交。以下主要介绍两种加密方式是否真的安全:
1.非对称加密HTTPS一定安全吗?
非对称加密存在着公钥私钥,公钥可以随意获取,私钥是用来对公钥解密的本地存储,通过公私钥机制可以保证传输加密并且目前普遍使用的HTTPS就是基于这个原理。
但是HTTPS就一定安全吗?其实还存在两种可能的风险:
(1)HTTPS可以保障传输过程中信息不被别人截获,但实际上HTTPS是应用层协议,底层采用的是SSL加密技术保障信息安全,但是在客户端和服务端,密文同样是可以被截获的;
(2)HTTPS报文在传输过程中,如果客户端被恶意引导安装“中间人”的Web信任证书,那么HTTPS中的“中间人攻击”一样会将明文密码泄露出去。
2.MD5存在的安全隐患问题
经过各种安全事件后,很多系统在存放密码的时候不会直接存放明文密码,大都改成存放 md5 加密(hash)后的密码,可是这样真的安全吗?
用一个脚本测试下MD5的速度,测试结果:
根据以上结果会发现一个问题:MD5的测试速度太快,导致很容易进行暴力破解。
简单计算一下:
使用6位纯数字密码,破解只要0.234秒!
使用6位数字+小写字母密码,破解只要8.49分钟!
使用6位数字+大小写混合字母密码,破解只要3.69小时!
因此可以看出,对于MD5的破解其实就是属于“碰撞”,很多密码都是采用比较有规律的字母或数字,更能降低暴力破解的难度。
文章开头的示例中,用户输入的用户名是:user1,密码是:123456,无论在任何协议之下,可以看到实际发送的HTTP/HTTPS报文在MD5处理后是这样的:
如果直接截获你的密码密文,然后发送给服务器不是一样可以登录吗?因为数据库里不也是MD5(password)一样的密文吗?HTTP请求被伪造,一样可以登录成功。
通付盾机器人防火墙有效防护Web登录安全
针对以上Web登录安全问题,通付盾推出了机器人防火墙(新一代动态Web应用防火墙),搭载了自研的动态防护技术,支持对Web登录页面进行网页源码动态加密、动态令牌等,实现对用户信息安全的有效保障。
1.网页源码动态加密
通付盾机器人防火墙采用网页源码动态加密方式对所需Web站点源码进行加密保护,从而实现站点安全加固。通过特殊算法改变原有的信息数据,使得未授权用户即使获得了已加密的信息,但因不知解密方法,仍然无法了解信息内容,达到隐藏可能存在的攻击路径效果,大幅提升攻击者对Web站点进行攻击的难度。同时验证所有用户输出到客户端的内容,防止带有恶意攻击代码的文件提交至服务器,建立可信关系。
网页源码动态加密保护前效果如下:
网页源码动态加密保护后效果如下:
2.动态令牌
通过对一次性动态令牌合法性的校验来确保执行正确的业务逻辑,使我们的网站环境更加安全。动态令牌有唯一性与时效性两个属性。
唯一性体现在请求检查时会解析出令牌中的客户端信息和当前访问的客户端信息进行匹配,如匹配不上则说明该令牌不属于当前客户端,很可能令牌被盗用。
时效性是指每一个令牌都设定有效时间,令牌中记录了令牌设定的时间,当前请求时间减去令牌设定时间即为令牌的生命时间,然后以此判断令牌是否超过有效时间,超过有效时间的令牌即使客户端信息正确也不再有效。
令牌由通付盾机器人防火墙本身的机制产生,通过把唯一标识客户端的信息和请求时间组合在一起,再由特定算法加密得出;产生的令牌在响应时返回给客户端,客户端再次请求时就会带着自己的令牌访问服务器,每个客户端都有自己的令牌,而且各不相同,之后同样的请求还会更新令牌,不至于轻易伪造,保障了信息系统提供保密性、不可否认性。
动态令牌保护前效果图如下:
动态令牌保护后效果图如下:
当黑客恶意修改了令牌后效果图如下:
修改令牌后访问网站会失效效果图如下:
通付盾机器人防火墙能够保护Web登录安全,有效确保数据中途不被篡改,保障用户的信息安全和数据的完整性。
通付盾机器人防火墙为新一代Web应用安全防护产品,搭载通付盾自研的动态防护引擎、爬虫防护引擎和智能决策引擎,整合动态防护、人机识别、风险过滤、自动化攻击拦截等技术,对所访问流量进行安全检测、过滤和智能阻断。
猜你喜欢
- 2025-06-18 SQL注入:程序员亲手打开的潘多拉魔盒,如何彻底封印它?
- 2025-06-18 Java项目本地部署宝塔搭建实战Java物业小程序源码物业系统源码
- 2025-06-18 如何发个 npm 包?(npm发包流程)
- 2025-06-18 大华信息安全|WEB和Configtool密码重置
- 2025-06-18 某实战项目登录口处的渗透测试(渗透实战测试平台)
- 2025-06-18 Spring Boot 中密码加密的两种姿势
- 2024-10-04 用户名或密码不正确?锁定? 用户名或密码不正确,请重新输入!
- 2024-10-04 通过sql注入获取用户名和密码 192.168.1.1路由器登录入口用户名和密码
- 2024-10-04 常见的密码攻击方式及防范措施 密码攻击是什么
- 2024-10-04 python渗透测试入门之窃取邮箱密码
你 发表评论:
欢迎- 532℃Oracle分析函数之Lag和Lead()使用
- 531℃几个Oracle空值处理函数 oracle处理null值的函数
- 529℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 519℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 513℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 504℃【数据统计分析】详解Oracle分组函数之CUBE
- 484℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 483℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端富文本编辑器 (47)
- 前端路由 (61)
- 前端数组 (73)
- 前端排序 (47)
- 前端密码加密 (47)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle的函数 (57)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)