Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
bulwark — 조직의 자산 및 취약점 관리 도구로, Jira와 통합되어 애플리케이션 보안 보고서 생성을 위해 설계되었습니다. | Kitploit
도구/GitHubGitHub/softrams/bulwark
Authentication & AuthorizationVulnerability ScannersConfiguration AuditingPenetration TestingIncident ResponseAPI Security
GitHubsoftrams/bulwark

bulwark

조직의 자산 및 취약점 관리 도구로, Jira와 통합되어 애플리케이션 보안 보고서 생성을 위해 설계되었습니다.

저장소 보기
187379개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

조직의 자산 및 취약점 관리 도구로, Jira 통합 기능을 갖추고 있으며 애플리케이션 보안 보고서 생성을 위해 설계되었습니다.

기능

  • 다중 클라이언트 취약점 관리
  • 보안 보고서 생성
  • Jira 통합
  • 팀 기반 역할 권한 부여
  • API 키 및 관리
  • 이메일 통합
  • Markdown 지원
  • 사용자 활성화/비활성화 (관리자)

참고 사항

이 프로젝트는 초기 개발 단계에 있음을 양해 부탁드립니다.

데모

Bulwark 워크스루 데모

Jira 통합

Bulwark Jira 데모

Docker로 실행

  1. Docker 설치
  2. .env 파일을 만들고 다음 속성을 입력하세요:
root@kitploit:~
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 컨테이너 빌드 및 시작:

root@kitploit:~
docker-compose up

Bulwark 컨테이너 시작/중지:

root@kitploit:~
docker-compose start
docker-compose stop

Bulwark 컨테이너 제거:

root@kitploit:~
docker-compose down

Bulwark는 localhost:4500에서 사용할 수 있습니다.

로컬 설치

root@kitploit:~
$ git clone (url)
$ cd bulwark
$ npm install

npm install을 실행하면 서버 측 및 클라이언트 측 모듈이 모두 설치됩니다. 또한 npm run config 스크립트가 실행되어 환경 변수를 동적으로 설정하고 Angular 환경을 업데이트합니다.

개발 모드

NODE_ENV="development" 설정

root@kitploit:~
$ npm run config
$ npm run start:dev

프로덕션 모드

NODE_ENV="production" 설정 참고: npm install은 자동으로 프로덕션 모드로 빌드됩니다.

root@kitploit:~
$ 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 파일 템플릿

root@kitploit:~
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 관련 참고 사항

root@kitploit:~
Install sqlite3: 
brew install sqlite3

Export compiler related env variables: 
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

Prepare for a fresh install:
rm -rf node_modules
npm cache verify
npm i --force

초기 데이터베이스 마이그레이션 생성

  1. 초기 데이터베이스 마이그레이션 생성
root@kitploit:~
$ npm run migration:init
  1. 초기 데이터베이스 마이그레이션 실행
root@kitploit:~
$ npm run migration:run

기본 자격 증명

초기 시작 시 다음 자격 증명으로 사용자 계정이 생성됩니다:

  • email: [email protected]
  • password: changeMe

첫 로그인 시 프로필 섹션에서 기본 사용자 비밀번호를 업데이트하세요.

역할

이 애플리케이션은 팀 기반 권한 부여를 통해 최소 권한 액세스를 활용합니다. 팀에는 해당 팀에서 사용할 수 있는 기능을 결정하는 역할이 할당됩니다. 사용자는 팀 멤버십에서 역할을 상속받습니다. 관리자는 팀 관리 액세스 권한이 있으며 사용자를 팀에 할당해야 합니다. 처음에는 사용자가 팀 연결 없이 생성되며 애플리케이션의 어떤 기능에도 액세스할 수 없습니다.

세 가지 역할은 다음과 같습니다:

  1. 관리자
  2. 테스터
  3. 읽기 전용

팀은 하나의 조직에만 연결될 수 있습니다. 그러나 팀은 동일한 조직 내의 여러 자산에 연결될 수 있습니다. 사용자는 여러 팀의 구성원이 될 수 있습니다. 사용자가 동일한 조직의 여러 팀에 할당된 경우 시스템은 가장 높은 권한을 가진 팀을 선택합니다.

참고: 기본 사용자는 초기 시작 시 자동으로 Administrators 팀에 할당됩니다

역할 매트릭스


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

예시:

root@kitploit:~
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 웹 애플리케이션 프레임워크

기여

풀 리퀘스트를 환영합니다. 주요 변경 사항이 있는 경우 먼저 이슈를 열어 변경하려는 내용을 논의해 주세요. 자세한 내용은 기여 가이드라인을 읽어보세요.

라이선스

MIT

도구 다운로드
관리자테스터읽기 전용
사용자 프로필 관리xxx
팀 관리x
사용자 관리x
사용자 초대x
사용자 생성x
이메일 설정 관리x
Jira 통합x
조직: 읽기xxx
조직: 전체 쓰기x
자산: 읽기xxx
자산: 전체 쓰기x
평가: 읽기xxx
평가: 전체 쓰기xx
취약점: 읽기xxx
취약점: 전체 쓰기xx
취약점을 Jira로 내보내기xx
보고서 생성xxx