portswigger之逻辑漏洞
参考资料:逻辑漏洞框架 - CSDN 逻辑漏洞是指程序在某功能设计不严谨,在前后端/对用户输入没进行严谨过滤 portswigger靶场 Excessive trust in client-side controls 抓包看到客户端会发送一个带有price的检验包发送给服务器告诉服务器这个东西多少钱,我们直接改包价格  改包成功,服务器信任客户发送的price High-level logic vulnerability 第二关我们再去先试一下,抓包添加商品没有看到price参数,我尝试了添加一个price参数在末尾,没改成价格,但是也没有报错 应该是后端会去校验商品价格,这个不通,然后之前发现的这个商品的quantity可以更改值为负数,相应的结算金额也变成了负数,但是提交负数订单时错的,总金额必须得大于0,尝试去购买商品让金额达到0<x<100 直接购买成功,这个不是不检验quantity参数,导致负数产生 Inconsistent security controls 权限逻辑漏洞 进去没有账号,需要自己在emali.client去注册一个账户,找了一圈没有发现什么有用的东西 根据提示使用burpsuite 自带的discover content对网站做一个目录扫描 扫描发现/admin目录,提示只能有DontWannaCry 这个用户访问,根据提示把邮箱地址改为 @dontwannacry.com格式 原来dontwannacry是个公司,注册会验证一次邮箱,但是后续更改email并不会验证,这个就是逻辑漏洞 登录进去就会多了admin管理页面 Flawed enforcement of business rules 这一关就是要使用优惠券,新用户减了5块还是不够啊,尝试抓包重放都不能重复使用 但是发现下面有个注册, 有签到券,然后发现这两个券可以交替无限使用 Low-level logic flaw 总金额溢出 根据提示发现这一关我们抓包到的添加商品到cart里面一次请求最多99,100就是非法数值 根据提示去intruder模块去fuzz测试总金额溢出,当fuzz次数多的时候总金额溢出就会变成负数, 32bit的整形溢出 -2,147,483,648到2,147,483,647 然后结合商品组合出总金额溢出到0-100就合适 Inconsistent handling of exceptional input 这一关是一个垂直越权 根据提示,对网站做一个目录扫描,找到/admin界面 跟之前那关一样的提示,应该是要注册邮箱的时候加上dontwannacry这个域名 尝试了下,之前是注册了之后可以随便更改邮箱地址的逻辑漏洞,这一关限制了更改邮箱地址 这一关逻辑大概是,注册需要是自己的邮箱后缀,才能收到激活邮件,后缀必须是@dontwannacry.com才能进入admin管理员界面 ...