Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

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

工具目录

分类

查看所有分类
Loading categories
bulwark — 一个组织资产和漏洞管理工具,集成Jira,用于生成应用安全报告。 | Kitploit
工具/GitHubGitHub/softrams/bulwark
身份验证与授权漏洞扫描器配置审计渗透测试事件响应API 安全
GitHubsoftrams/bulwark

bulwark

一个组织资产和漏洞管理工具,集成Jira,用于生成应用安全报告。

查看仓库
187372110个月前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

一款组织资产与漏洞管理工具,集成 Jira,专为生成应用安全报告而设计。

功能特性

  • 多客户端漏洞管理
  • 安全报告生成
  • Jira 集成
  • 基于团队的角色授权
  • API 密钥与管理
  • 电子邮件集成
  • Markdown 支持
  • 用户激活/停用(管理员)

注意

请注意,该项目正处于早期开发阶段。

演示

Bulwark 演练演示

Jira 集成

Bulwark Jira 演示

使用 Docker 启动

  1. 安装 Docker
  2. 创建一个 .env 文件并提供以下属性:
MYSQL_DATABASE="bulwark"
MYSQL_PASSWORD="bulwark"
MYSQL_ROOT_PASSWORD="bulwark"
MYSQL_USER="root"
MYSQL_DB_CHECK="mysql"
DB_PASSWORD="bulwark"
DB_URL="172.16.16.3"
DB_ROOT="root"
DB_USERNAME="bulwark"
DB_PORT=3306
DB_NAME="bulwark"
DB_TYPE="mysql"
NODE_ENV="production"
DEV_URL="http://localhost:4200"
SERVER_ADDRESS="http://localhost"
PORT=4500
JWT_KEY="changeme"
JWT_REFRESH_KEY="changeme"
CRYPTO_SECRET="changeme"
CRYPTO_SALT="changeme"

构建并启动 Bulwark 容器:

docker-compose up

启动/停止 Bulwark 容器:

docker-compose start
docker-compose stop

移除 Bulwark 容器:

docker-compose down

Bulwark 将在 localhost:4500 可用。

本地安装

$ git clone (url)
$ cd bulwark
$ npm install

运行 npm install 将同时安装服务器端和客户端模块。此外,它还会运行脚本 npm run config,该脚本将动态设置环境变量并更新 Angular 环境。

开发模式

设置 NODE_ENV="development"

$ npm run config
$ npm run start:dev

生产模式

设置 NODE_ENV="production" 请注意:npm install 将自动以生产模式构建

$ npm run config
$ npm run build:prod
$ npm start

环境变量

在根目录创建一个 .env 文件。应用程序将使用 dotenv 解析该文件。

DB_PASSWORD

DB_PASSWORD="somePassword"

将此变量设置为数据库密码

DB_USERNAME

DB_USERNAME="foobar"

将此变量设置为数据库用户名

DB_URL

DB_URL=something-foo-bar.dbnet

将此变量设置为数据库 URL

DB_PORT

DB_PORT=3306

将此变量设置为数据库端口

DB_NAME

DB_NAME="foobar"

将此变量设置为数据库连接名称

DB_TYPE

DB_TYPE="mysql"

该应用程序使用 MySQL 数据库开发。更多数据库选项请参见 typeorm 文档。

NODE_ENV

NODE_ENV=production

设置此变量以确定 Node 环境

DEV_URL="http://localhost:4200"

由 Angular 用于构建和提供应用程序

SERVER_ADDRESS="http://localhost"

如果需要不同的服务器地址,请更新

PORT=4500

如果需要不同的服务器端口,请更新

JWT_KEY

JWT_KEY="changeMe"

将此变量设置为 JWT 密钥

JWT_REFRESH_KEY

JWT_REFRESH_KEY="changeMe"

将此变量设置为刷新 JWT 密钥

CRYPTO_SECRET

CRYPTO_SECRET="randomValue"

将此变量设置为 Scrypt 密码。

CRYPTO_SALT

CRYPTO_SECRET="randomValue"

将此变量设置为 Scrypt 盐值。

空白 .env 文件模板

DB_PASSWORD=""
DB_URL=""
DB_USERNAME=""
DB_PORT=3306
DB_NAME=""
DB_TYPE=""
NODE_ENV=""
DEV_URL="http://localhost:4200"
SERVER_ADDRESS="http://localhost"
PORT=4500
JWT_KEY=""
JWT_REFRESH_KEY=""
CRYPTO_SECRET=""
CRYPTO_SALT=""

关于 M1/M2 Mac 的说明

安装 sqlite3:
brew install sqlite3

导出编译器相关的环境变量:
export LDFLAGS="-L/opt/homebrew/opt/sqlite/lib"
export CPPFLAGS="-I/opt/homebrew/opt/sqlite/include"
export PKG_CONFIG_PATH="/opt/homebrew/opt/sqlite/lib/pkgconfig"
export NODE_OPTIONS=--openssl-legacy-provider

准备全新安装:
rm -rf node_modules
npm cache verify
npm i --force

创建初始数据库迁移

  1. 创建初始数据库迁移
$ npm run migration:init
  1. 运行初始数据库迁移
$ npm run migration:run

默认凭据

初始启动时会创建一个用户账户,其凭据如下:

  • 电子邮件:[email protected]
  • 密码:changeMe

首次登录后,请在个人资料部分更新默认用户密码。

角色

该应用程序利用基于团队的最小权限访问授权。团队被分配一个角色,该角色决定了该团队可用的功能。用户将继承团队成员的权限。管理员拥有团队管理权限,并必须将用户分配到团队。最初创建的用户没有关联团队,因此将无法访问应用程序中的任何功能。

三种角色包括:

  1. 管理员(Admin)
  2. 测试员(Tester)
  3. 只读(Read-Only)

一个团队只能与一个组织关联。但是,一个团队可以与同一组织内的多个资产关联。用户可以属于多个团队。如果用户被分配到同一组织的多个团队,系统将选择权限最高的团队。

请注意:初始启动时,默认用户将自动分配到 Administrators 团队

角色矩阵

管理员 测试员 只读
用户个人资料管理 x x x
团队管理 x
用户管理 x
邀请用户 x
创建用户 x
电子邮件设置管理 x
Jira 集成 x
组织:读取 x x x
组织:完全写入 x
资产:读取 x x x
资产:完全写入 x
评估:读取 x x x
评估:完全写入 x x
漏洞:读取 x x x
漏洞:完全写入 x x
将漏洞导出到 Jira x x
报告生成 x x x

API 密钥与管理

用户可以生成一个 API 密钥,用于替代其授权令牌。此 API 密钥允许用户对应用程序执行所有其被授权的操作。

生成 API 密钥对

  1. 登录应用程序
  2. 导航至“用户个人资料”部分
  3. 选择“生成 API 密钥”

此操作将生成一对密钥:

  1. Bulwark-Api-Key
    1. 这是一个用于标识用户的明文值。
  2. Bulwark-Secret-Key
    1. 这是一个用于验证用户的明文值,通过比较存储在数据库中的 Bcrypt 哈希值。

请将生成的密钥保存在安全的地方。之后你将无法再次检索这些密钥。

如何使用 API 密钥

API 密钥对的值必须匹配并附加到以下 HTTP 请求头中:

  • Bulwark-Api-Key
  • Bulwark-Secret-Key

示例:

GET /api/assessment/1 HTTP/1.1
Host: localhost:4500
Accept: application/json, text/plain, */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Bulwark-Api-Key: {{changeMe}}
Bulwark-Secret-Key: {{changeMe}}
Origin: http://localhost:4200
Connection: close
Referer: http://localhost:4200/
Pragma: no-cache
Cache-Control: no-cache

基于以下技术构建

  • Typeorm - 使用的 ORM
  • Angular - Angular 框架
  • Express - 一个最小且灵活的 Node.js Web 应用框架

贡献

欢迎提交拉取请求。对于重大更改,请先打开一个 issue 讨论您希望更改的内容。有关更多信息,请阅读贡献指南。

许可证

MIT

下载工具