Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
raptor — 基于Web的源代码漏洞扫描器 | Kitploit
工具/GitHubGitHub/dpnishant/raptor
Android安全漏洞扫描器iOS安全静态代码分析 (SAST)代码分析Web安全DevSecOps移动安全秘密检测Archived
GitHubdpnishant/raptor

raptor

基于Web的源代码漏洞扫描器

3561288年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
网站

Raptor

Raptor 是一个基于网页(Web服务+UI)的、以 GitHub 为中心的源码漏洞扫描器——它只需提供 GitHub 仓库 URL 即可扫描仓库。你可以设置 Webhook,以确保每次提交或合并 Pull Request 时自动扫描。扫描是异步进行的,结果仅对启动扫描的用户可见。

Raptor 的部分特性:

  • 插件架构(即插即用外部工具,生成统一报告)
  • Web 服务可用于自定义自动化(无需 UI)
  • 轻松创建/编辑/删除新漏洞和/或编程语言的签名

该工具旨在帮助社区和初创公司重视安全编码。此工具可能无法与商业替代品的功能/质量相媲美,一切不作保证,请悉知。本工具目标用户为安全代码审查人员和/或具备安全编码经验的开发人员,用于在代码审计或同行评审期间发现漏洞入口点。请勿盲目信任工具的输出结果。 最佳实践是将 Raptor 接入你的 CI/CD 流水线。

版本

0.1 beta

技术栈

集成插件:

注意:以下大部分工具/模块/库已被大量修改,以便较好地集成到框架中。

  • ⚡ Mozilla ScanJS – 用于 JavaScript(客户端、Node.JS 等,即将支持 Chrome 扩展和 Firefox 插件)
  • ⚡ Brakeman – 用于 Ruby On Rails
  • ⚡ RIPS – 用于 PHP
  • ⚡ Manitree – 用于 AndroidManifest.xml 不安全配置

可用规则包:

  • ⚡ ActionScript – 支持 Flash/Flex(ActionScript 2.0 和 3.0)的源/汇点
  • ⚡ FindSecurityBugs(仅规则)– 用于 Java(J2EE、JSP、Android、Scala、Groovy 等)
  • ⚡ gitrob – 用于敏感数据泄露(包含凭证、配置、备份、私有设置等的文件)

安装(已在 Ubuntu 14.04 x64 LAMP 实例上测试)

安装视频:YouTube 安装

root@kitploit:~
$ wget https://github.com/dpnishant/raptor/archive/master.zip -O raptor.zip
root@kitploit:~
$ unzip raptor.zip
$ cd raptor-master
$ sudo sh install.sh

使用方法

扫描器

安装视频:YouTube 使用方法

root@kitploit:~
cd raptor-master
sudo sh start.sh #启动后端 Web 服务

现在将浏览器指向 Raptor 主页 (http://localhost/raptor/)

登录

使用你在所连接的 GitHub 服务器上注册的用户名登录,密码任意(但需记住用户名以查看扫描历史)。

例如:

如果你在 https://github.com 上注册为 foobar,则在扫描 https://github.com 上的仓库时使用相同用户名。但如果你在个人/公司 GitHub(比如 https://github.corp.company.com)上注册为 foobar_corp,则在扫描 https://github.corp.company.com 上的仓库时使用该用户名。

不过,目前密码可以是任意内容,因为我们尚未在开发版本中实现数据库。

规则编辑器

你可以使用自带的轻量级客户端规则编辑器(任何纯文本编辑器均可)添加新的/自定义规则以满足特定需求,因为规则包文件只是简单的 JSON 结构。用浏览器打开位于 'backend/rules' 的规则文件。编辑完成后,将新/修改的规则文件保存到同一目录即 'backend/rules'。接下来只需进行少量修改:初始化脚本。将新的规则包文件名(不含 '.rulepack' 扩展名)追加到该数组,然后重启后端服务器即可。一切就绪!👍

你可以在这里访问:规则编辑器 (http://localhost/raptor/editrules.php)

添加规则

ignore_list.rulepack

添加需要排除扫描的文件名或目录名模式。这在忽略已知文件(如 jquery.min.js 等)或整个 /test/ 目录时很有用。例如下面的示例内容中,jquery 表示 jquery,并且是大小写敏感的,请注意。在 plugins 部分,插件的 name 是 rules 目录下规则包文件的名称(不含 ".rulepack" 扩展名),参见 rules/ 目录。issue 字段是规则包文件中每个规则的 ID:示例 #1,示例 #2。match_type 字段的值可以是 regex、start 或 end。value 字段是当 match_type 为 start 或 end 时需匹配的具体字符串。若 为 ,则 应包含原始 RegEx 模式,且需要 Base64 编码以避免 JSON 语法转义问题。 是基于正则表达式的匹配, 将匹配代码片段开头, 将匹配代码片段结尾。

它的工作方式是:当扫描器完成扫描后,会遍历所有找到的问题,并移除那些匹配 ignore_list.rulepack 文件中每个插件模式(基于匹配类型)的问题。

(以下为示例内容)

root@kitploit:~
{
  "files": [
    "/.",
    "bootstrap",
    "jquery",
    "uglify",
    "knockout",
    "angular",
    "backbone",
    "ember",
    "yui",
    "mocha",
    "express",
    "yql",
    "dataTables"
  ],
  "directories": [
    "/node_modules/",
    "/test/"
  ],
  "plugins": [
    {
      "name": "common",                <----- 插件名称
      "issue": "HARD_CRED1",           <----- 问题 ID
      "patterns": [
        {
          "match_type": "start",       <----- 匹配类型,可以是 "regex"、"start" 或 "end"
          "value": "foreach"           <----- 实际匹配的字符串。若 match_type 为 "regex",则需对该模式进行 Base64 编码
        },
        {
          "match_type": "start",
          "value": "for"       
        },
        {
          "match_type": "start",
          "value": "elseif"
        }
      ]
    }
  ]
}

your_rule_name.rulepack

你可以创建全新的规则包并添加到扫描器,也可以编写自己的扫描器插件并集成到框架中。 示例规则包文件是一个非常简单的 JSON 结构。

root@kitploit:~
{
  "plugin_type": "plugin_name",   <-- 为插件命名(任意字符串)
  "file_types": [
    ".java",                      <-- 添加你希望扫描器在扫描时处理的文件扩展名,可多个
    ".js"
  ],
  "rules": [
    {
      "id": "HARD_CRED1",        <-- 唯一的问题 ID,请发挥创意
      "severity": "High",        <-- 可为 High、Medium 或 Low。这将在 UI 的图表中相应显示
      "title": "问题标题",          <-- 问题标题
      "description": "此处的文本将在 UI 中显示为问题描述。",        <-- 问题描述,可选
      "remediation": "此处的文本将在 UI 中显示为修复步骤",          <-- 修复措施,可选
      "link": "关于该问题的更多资源的任意 URL。",                   <-- 问题 URL,可选
      "example_insecure": "放置不安全代码片段,用于学习目的。",     <-- 可选
      "example_secure": "放置安全代码片段,用于学习目的。",         <-- 可选
      "platform_version": "all",    <-- 保持不变
      "enabled": "true",            <-- 该值启用或禁用扫描时的规则。可为 "true" 或 "false"。
      "logic": "解释该规则背后的逻辑,以便未来更新或定制",         <-- 可选
      "signature": "base64encode(regexp)"    <-- 编写你的模式的正则表达式,然后 Base64 编码后放在此处
    }
  ]
}

如果你希望获得更多控制权,或为扫描器添加更多智能(而非简单的 RegExp 搜索),你可以编写一个快速的扫描器插件,例如这个,然后将脚本集成到此处,并将脚本名称追加到此处。仅此而已。对于具备基本 Python 脚本技能的人来说,这非常简单。

公共/私有 GitHub 实例

你可以使用 Raptor 扫描组织的私有和公共 GitHub 实例,只需在此处和此处指定正确的服务器端点。

截图

登录

登录

GitHub 扫描

GitHub 扫描

Zip 扫描

Zip 扫描

扫描开始

扫描开始

扫描进行中

扫描进行中

报告统计

报告统计

问题详情

问题详情

导出报告

导出报告

扫描历史

扫描历史

规则编辑器

规则编辑器

服务器错误

服务器错误

开发

想要贡献?太棒了! 如果你有想法,欢迎联系我,或者随意 fork 并改进。😊

贡献者

  • Anant Shrivastava (提交记录)

许可证

GNU GPL v2.0

已知问题(及解决方法)

Ubuntu Kylin 安装

免费软件,必须的!

下载工具
match_type
regex
value
regex
start
end