首页 > 其他分享 >APIKiller--一款甲方扫描【神】器

APIKiller--一款甲方扫描【神】器

时间:2023-02-19 18:57:29浏览次数:57  
标签:角色 -- 检测 扫描 甲方 APIKiller 模块 越权

APIKiller -- 一款漏洞扫描(神)器

Github项目直通车:APIKiller API Security Tool
原文参考:https://aur0ra.cn/3-apikiller/

项目背景

去年有幸进入字节无恒实验室实习,并负责抖音的安全SDLC工作,在期间挖的众多漏洞中发现很多问题都是IDOR这类的越权问题,当时想的就是能不能自动化识别啥的,毕竟一直这样也挺低效的(其实字节是有IDOR相关的DAST工具,只是有些没覆盖到),所以项目名称原本叫IDORKiller。但是最近写着写着,想着索性做成工程化的工具,于是在原有的基础上,进行整体结构上的优化,时期能够保证高效、易拓展的特性,于是就有了现在的APIKiller项目。

项目介绍

image

Feature

  • 支持HTTP/HTTPS流量检测
  • 多来源检测
    • 支持流量监听
    • 支持历史流量回扫
  • 多功能扫描模块
    • 越权检测模块,高效精准,支持多情景检测
      • 具备多角色账号、单角色账号测试能力【单角色账号测试暂不启用,黑盒师傅有想法的可以直接看文档中的介绍,或私下交流】
      • 多维度、特征化判断引擎
    • csrf检测模块
      • 支持token检测
      • 常见的referer、origin检测
    • 【欢迎大家一起来开发新的模块】
  • 多功能Filter处理,默认自带多个filter
    • 针对性扫描,例如只对 baidu.com域名进行扫描
    • 去重扫描,提高效率
    • 自动过滤静态文件(js,gif,jpg,png,css,jpeg,xml,img,svg...)
  • API 运维
    • 提供简易的API Security运维平台
  • 多方式漏洞发现提醒
    • Lark飞书
    • ...
  • 对抗常见风控手段
    • 频控

由于多处核心组件采用了抽象的方式,所以可以给有需要的使用者进行快速的二次开发(二次开发的文档,后续将会补齐)

越权检测模块

越权检测既定分为三个子模块:未授权检测模块、单角色检测模块、多角色检测模块;但单角色检测模块和未授权检测模块存在较大优化空间,所以当前采用简易模式,仅能够适用于甲方日常,如果想用去扫描,则可以手动开启,或加以改造
image

  • 越权判断引擎
    image

  • 未授权检测模块
    image

  • 单角色检测模块
    image

  • 多角色检测模块
    image

CSRF检测模块

image

API运营平台

image

后期计划

标签:角色,--,检测,扫描,甲方,APIKiller,模块,越权
From: https://www.cnblogs.com/Aurora-M/p/17135337.html

相关文章

  • 架构漫谈阅读笔记
    架构漫谈读后感架构漫谈是由一个架构师王概凯写的一个专题,是以他的实际架构经验为基础,讨论是什么是架构,怎样做好架构,怎么写好程序等一些问题。共分为九个部分:1) 什么是......
  • Transformer 模型 1
    Transformer模型1 https://towardsdatascience.com/illustrated-guide-to-transformer-cf6969ffa067https://towardsdatascience.com/illustrated-guide-to-transfor......
  • C语言进阶--有符号与无符号
    数据类型的最高位用于标识数据的符号-最高位为1,表明这个数为负数-最高位为0,表明这个数为正数*在计算机内部用补码表示有符号数-正数的补码就是正数本身-负数......
  • Error处理:/bin/bash^M: 坏的解释器
    Error处理:/bin/bash^M:坏的解释器:没有该文件或目录(badinterpreter:Nosuchfileordirectory) 在Linux下编译运行脚本的时候出现”/bin/bash^M:坏的解释器:......
  • 上野老师其实给了我一个人文主义中关于“女性”,你应该如何判断的解答。
    视频哔哩哔哩北大宿舍聊天x上野千鹤子|只要自由地活着,怎么样都可以#01千鹤子老师我看过她的书,还是很欣赏她的活法的,我也非常喜欢千鹤子这位女性,所以在视频上我可能会偏向......
  • Golang接口
    理解go中的接口,首先从java的入手圆形和长方形是不同形状,因此他们是两个类,circle和rectangle在java中,他们应当拥有一个公共父类,即形状shape无论哪种形状,都应当是可计算面......
  • Docker的安装
    离线安装Docker系统https://blog.csdn.net/qq_44858888/article/details/124084408第一步:下载docker离线包https://download.docker.com/linux/static/stable/x86_64/do......
  • 前端日常一问:说说你对用户权限管理的理解,你们公司的解决方案是什么?知道rbac吗?
    I.用户权限管理概述A.用户权限管理的定义用户权限管理是指在系统中对用户进行身份认证和授权,以确定他们能够执行哪些操作和访问哪些资源。这包括限制用户可以执行的操......
  • 230219 Business 1-30
     1:PackingforaBusinessTripWhatshouldIbringonthisbusinesstrip?Haven'tyoubeenonabusinesstripbefore?No,thisismyfirsttime.Youshouldbri......
  • python中的数据模型
    参考:https://docs.python.org/zh-cn/3/reference/datamodel.html1. 对象、值与类型对象 是Python中对数据的抽象。Python程序中的所有数据都是由对象或对象间关系......