金融行业安全漏洞分析报告(三)
报名入口来源:中国教育在线 2022-05-31
其中越权类查询在设计错误中占到了29%左右。举个简单的例子比如A用户的订单是111。B用户的订单号是112。A原本不能查询B的订单,但A用户可以通过修改订单号来越权查询B的订单,这就是一个平行越权漏洞。这类问题主要就是程序代码自身逻辑错误导致。这和很多互联网企业过度注重扩展速度,不关注自身安全的行为很相似,需要加强代码审计来规避这种风险。
例如乌云上爆出的 wuyun-2015-147026漏洞是一个标准的因为设计权限导致可充值任意用户密码的漏洞。按照流程在网站上注册一个用户,选择忘记密码。去邮箱打开链接。重新输入密码和确认密码。点击发送,劫持客户端的网络包。
在包中把当前用户名替换成目标用户名再发送给服务器,达到修改目标用户密码的目的。至此入侵者获得一组被人的账号,为入侵者可进一步实施入侵奠定基础。
面对SQL注入虽然有WAF的辅助,但WAF难免有关键字过滤不到的时候。于是在金融业界出现了大量的SQL注入漏洞。由于WAF采用的是正则匹配的方式,于是出现了以下3种常见绕过WAF的手段:
(1)编码绕过
在大小写绕过的基础上开始出现编码绕过,主要出现了三种:URL编码、十六进制编码、Unicode编码。在浏览器中输入URL会进行一次URL编码,黑客会通过多次编码来进行WAF绕过
(2)注释绕过
不但可以采用编码改写关键字,还可以采用注释改写关键字,避免正则匹配。
(3)等价替换
等价替换是个比较大的分类,主要可以分为等价函数、等价符号、特殊符号、比较符号等4类。
等价函数,就是同功能函数替换。WAF禁止了一些函数,但对另外一些函数没有禁止。还将可以采用生僻函数迂回完成原函数的功能,进行WAF关键字绕过。
除去绕过关键字和关键符号外,最关键的是绕过空格。想各种方式避免空格出现。
金融行业漏洞入侵防御建议
金融行业除去人为因素造成的漏洞外,最主要的两大类漏洞分别是SQL注入和程序逻辑错误。
1.解决人为因素
人为因素会造成弱口令、错误配置等。人为因素只能从人的角度进行规范。通过加强安全团队建设、人员安全意识培训等方式应该可以解决人为因素造成的问题。