登录功能安全检测
1. 登录点暴力破解
检测:是否限制失败尝试次数、验证码机制
危害:账户被爆破、密码泄露
修复:失败锁定、验证码、复杂密码策略
2. HTTP/HTTPS传输
区别:HTTPS加密传输,HTTP明文传输
检测:登录页面是否强制HTTPS
危害:HTTP下密码被嗅探
修复:全站强制HTTPS,HSTS头
3. Cookie脆弱点
检测:Cookie是否httponly、secure、有效期
危害:会话劫持、XSS窃取Cookie
修复:httponly、secure、合理过期时间
4. Session固定
检测:登录前后SessionID是否变化
危害:攻击者诱导用户使用固定SessionID登录
修复:登录后重新生成SessionID
5. 验证密文比对
检测:密码是否加密传输、后台是否安全比对
危害:中间人攻击、密码泄露
修复:前端加密+HTTPS,后台安全哈希比对
HTTP vs HTTPS简明区别:
HTTP:明文传输,可直接抓取和爆破
HTTPS:数据加密传输,需解密才能查看内容
识别:URL以https://开头,但数据包仍显示HTTP/1.1
数据篡改安全问题
一、漏洞原理
攻击者通过修改客户端与服务器交互的数据参数,绕过业务逻辑验证,实现非预期操作。
二、常见篡改类型
修改支付价格 - 篡改商品价格参数
修改支付状态 - 伪造已支付状态
修改购买数量 - 负数、0、极大值
修改附属值 - 优惠券、积分等
替换支付接口 - 使用低费率或免费通道
重复支付利用 - 重复提交同一订单
最小额支付 - 利用支付接口最低限额
值为最大支付 - 整数溢出等
越权支付 - 支付他人订单
无限制试用 - 篡改试用期参数
修改优惠价格 - 篡改折扣计算
三、检测方法
参数修改测试:逐一修改商品ID、价格、数量、状态等参数
边界值测试:负数、0、极大值、小数、特殊字符
业务逻辑绕过:跳过支付步骤直接确认订单
重放攻击:重复提交支付成功请求
四、危害
经济损失(低价/免费获取商品)
业务逻辑破坏
数据一致性受损
信誉损失
五、修复方案
服务端验证:所有价格、数量、状态在服务端重新计算验证
数字签名:关键参数添加签名防止篡改
订单状态机:严格的状态流转控制
幂等性设计:防止重复支付
价格锁定:下单时锁定商品价格
额度校验:校验支付金额合理性
审计日志:记录所有关键操作
业务风控:异常行为监控和限制
六、防护要点
不信任客户端:所有关键数据服务端重新获取
防重放机制:订单号+时间戳+随机数
权限校验:支付前验证订单归属权
完整性校验:哈希或签名验证数据完整性