vAPI是一款针对OWASP Top 10漏洞的练习靶场 项目地址: 580K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6J5L8$3!0@1N6s2g2K6K9#2)9J5c8Y4k6S2M7r3V1`. 环境要求
安装方式docker
打开浏览器,输入http://localhost/vapi/,靶场搭建成功
对象级授权是一种通常在代码层面实现的访问控制机制,用于校验用户仅能访问其有权访问的对象,攻击者可以在发送的请求中改变对象的ID来攻击存在“失效的对象级授权”漏洞的API。 ① 注册一个新用户 ② 根据id得到用户信息 ③ 改变id,发现可以得到任一用户信息,将id设置为1,得到flag 漏洞成因: API在返回基于标识符的数据时没有执行权限检查,因此我们得到了标志。
很多时候,API信任从客户端接收的用户输入,并将其写入数据库而不进行过滤。攻击者可以从API文档、有根据的猜测或http响应中找到其他对象,并将其添加到请求中,以获得对受限功能的未授权访问。比如:在注册用户时,攻击者可以附加&admin=true参数并获得管理员权限。 ① 创建用户,使用token值获取用户信息 根据题目提示,credit就是权限信息,我们在创建用户时直接更改credit=100 拿到flag
安全配置错误是由于默认或不完整的配置、错误配置的HTTP标头、不必要的HTTP方法、跨源资源共享(CORS)错误配置以及包含敏感数据的详细错误消息而导致的。攻击者可以利用这些不良配置获得未经授权的访问或破坏安全机制。 CSRF(Cross-site request forgery)跨站请求伪造。跨站请求攻击,简单地说,是攻击者通过一些技术手段欺骗用户的浏览器去访问一个自己曾经认证过的网站并执行一些操作(如发邮件、发消息、甚至财产操作:转账、购买商品等)。 CSRF攻击原理及过程: 1.用户C打开浏览器,访问受信任网站A,输入用户名和密码请求登录网站A; 2.在用户信息用过验证后,网站A产生Cookie信息并返回给浏览器,此时用户登录网站A成功,可以正常发送请求到网站A; 3.用户未退出网站A之前,在同一浏览器中打开一个TAB页访问网站B; 4.网站B接受到用户请求后,返回一些攻击性代码,并发出一个请求要求访问第三方站点A; 5.浏览器在接收到这些攻击性代码后,根据网站B的请求,在用户不知情的情况下携带Cookie信息,向网站A发出请求。网站A并不知道该请求其实是由B发起的,所以会根据用户C的Cookie信息以C的权限处理该请求,导致来自网站B的恶意代码被执行。 题目:嘿,这是一个API,对吗?所以我们期待跨源请求。我们只是希望它能正常工作。 ① 创建一个用户 ② 登录 ③ 直接在 Get Key 接口添加任意 Origin 即可拿到 flag