议题一《众测中企业常见安全问题》——BY FREEBUF wuzhen

业务逻辑风险点

问题1:1个对外业务可能面临哪些风险点。
– 交易篡改
– 身份验证
– 权限跨越

eg1: 密码重置

场景描述:点击忘记密码,输入验证后,客户端生成一个digiSign的一个值,这个值用来作为重置密码的凭据,但是这个Sign值没有校验哪个用户,导致可以越权重置他人密码。

eg2: 加密绕过

场景描述:有一个修改密码的链接,这个链接有可能是邮箱发送过来的。
该链接有3个加密值,userEmail,userName,sendDate。
逐步将密文改为明文字符提交,发现userEmail更改可修改其他人的密码。

A要修改B的密码,A将自己的用户名设置成B的邮箱,这样,A通过查看自己用户名的加密密文可得到B的邮箱的加密密文。

eg3: 越权
场景描述:userId的情况水平越权,level垂直越权。

eg4: 签名破解

场景描述:app,app加过壳。从web端来获取加密的具体流程造成越权。

eg5: 并发|体现、开机
场景描述:利用数据库未加锁,同一笔提款多线程并发提交,将账户余额提成负数。
场景描述:分配云主机,发送多个云主机,或者积分兑换。
重要有数据库操作,就可以做一个条件竞争的尝试。

eg6: 弱口令
场景描述:

eg7: JS中的秘密

场景描述:隐藏的接口,构造请求

eg8: *通用组件漏洞

场景描述:Shiro 反序列化

场景描述:fastjson 反序列化,发送json数据的时,删除括号等破坏闭合,导致报错,查看一些信息。

场景描述:Weblogic 反序列化

场景描述:Sprint Boot Actuator执行命令 1.x 版本在根目录会泄漏cookie信息,2.x在/actuator目录下。

eg9: 接口问题

场景描述:WEBSERVICE

场景描述:DWR

一个OA注入,对参数挨个测试

eg10: 排序注入

场景描述:查找:sort,asc,order,加一个判断来进行排序注入,收益排序的地方。

eg11: NoSQL注入
场景描述:登陆的时候,传入$ne,在mgdb表示不等于。在用户名和密码都传入不等于,有一个万能密码的作用,大于 NULL的所有内容都为TRUE。

eg12: 模版注入