Skip to main content

Cyberstrike is now open source! AI-powered penetration testing for security professionals. Star on GitHub

설치

Cyberstrike는 여러 패키지 관리자를 통해 설치할 수 있습니다. 개발 환경에 가장 적합한 방법을 선택하세요.

설치 후 Cyberstrike TUI

npm (권장)

대부분의 사용자에게 권장되는 설치 방법입니다.

Terminal window
npm install -g @cyberstrike-io/cyberstrike@latest

설치 확인:

Terminal window
cyberstrike --version

Bun 출시 예정

Bun 지원은 아직 제공되지 않습니다.

Homebrew (macOS) 출시 예정

Homebrew 지원은 아직 제공되지 않습니다.

curl (Linux/macOS)

쉘 스크립트를 통한 직접 설치:

Terminal window
curl -fsSL https://cyberstrike.io/install | bash

iwr (Windows/Powershell)

설치 스크립트를 실행합니다:

Terminal window
iwr -useb https://cyberstrike.io/install.ps1 | iex

Caution

설치 스크립트를 실행하기 전에 항상 검토하세요. 스크립트 소스는 github.com/CyberStrikeus/CyberStrike에서 확인할 수 있습니다.

Docker

Caution

Docker 이미지는 곧 제공될 예정입니다. 현재는 npm 또는 curl을 사용하세요.

설치 확인

설치 후 Cyberstrike가 정상적으로 작동하는지 확인합니다:

Terminal window
# 버전 확인
cyberstrike --version
# 사용 가능한 명령 목록
cyberstrike --help

Cyberstrike 배너와 버전 번호가 표시되고, 사용 가능한 명령 목록이 나타나야 합니다.

Cyberstrike 업데이트

최신 버전으로 업데이트:

Terminal window
# npm
npm update -g @cyberstrike-io/cyberstrike@latest
# 자동 업데이트 (권장)
cyberstrike upgrade

제거

시스템에서 Cyberstrike를 제거합니다:

Terminal window
# npm
npm uninstall -g @cyberstrike-io/cyberstrike@latest

구성은 ~/.config/cyberstrike/에 저장되며 (자격 증명은 ~/.local/share/cyberstrike/에 저장), 필요한 경우 수동으로 삭제할 수 있습니다.

문제 해결

명령을 찾을 수 없음

설치 후 cyberstrike를 찾을 수 없는 경우:

  1. PATH에 npm 글로벌 bin 디렉토리가 포함되어 있는지 확인합니다
  2. 터미널을 재시작합니다
  3. npm bin -g를 실행하여 글로벌 bin 경로를 확인합니다

권한 오류

Linux/macOS에서 권한 오류가 발생하는 경우:

Terminal window
# npm 권한 수정
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

버전 충돌

여러 Node 버전이 설치되어 있는 경우:

Terminal window
# nvm을 사용하여 버전 관리
nvm use 20
npm install -g @cyberstrike-io/cyberstrike@latest

기업 네트워크 (SSL 검사 / Zscaler)

SSL 검사 프록시(Zscaler, Netskope 등)가 있는 기업 네트워크에서는 아웃바운드 HTTPS가 가로채져 회사 자체 루트 인증서로 재서명됩니다. Cyberstrike가 해당 인증서를 신뢰하지 않으면 TLS 검증이 실패하고 다음과 같은 오류가 발생합니다:

error: unable_to_get_issuer_cert_locally downloading package manifest @cyberstrike-io/plugin
hackbrowser:navigator TypeError: unable to get local issuer certificate — planPage failed, retrying once

HackBrowser 크롤러가 특히 영향을 받습니다: 플래너 호출이 실패하여 크롤이 소수의 페이지만 탐색하고 조기에 중단됩니다.

해결 방법 — NODE_EXTRA_CA_CERTS를 통해 기업 루트 CA를 신뢰합니다. 기업 루트는 이미 OS 신뢰 저장소에 있으므로(브라우저가 작동하는 이유), 저장소를 PEM 번들로 내보내고 Cyberstrike가 이를 참조하도록 합니다. 이는 HackBrowser 워커에 자동으로 전파됩니다.

Windows (PowerShell) — 모든 머신 루트 CA를 내보냅니다 (기업 루트가 포함되어 있어 별도 식별이 불필요합니다):

Terminal window
$out = "$env:USERPROFILE\corp-ca.pem"
Get-ChildItem Cert:\LocalMachine\Root | ForEach-Object {
"-----BEGIN CERTIFICATE-----"
[Convert]::ToBase64String($_.RawData, 'InsertLineBreaks')
"-----END CERTIFICATE-----"
} | Set-Content -Encoding ascii $out
$env:NODE_EXTRA_CA_CERTS = $out # 현재 세션
setx NODE_EXTRA_CA_CERTS "$out" # 새 세션에 영구 적용

macOS:

Terminal window
security find-certificate -a -p /Library/Keychains/System.keychain > ~/corp-ca.pem
security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain >> ~/corp-ca.pem
export NODE_EXTRA_CA_CERTS=~/corp-ca.pem

그 후 같은 쉘에서 Cyberstrike를 실행합니다. unable to get local issuer certificate 오류가 사라지고 크롤이 완료까지 실행됩니다.

Tip

빠른 확인: Get-ChildItem Cert:\LocalMachine\Root | Where-Object { $_.Subject -like "*Zscaler*" } (Windows)를 실행하면 내보내기 전에 기업 루트가 저장소에 있는지 확인할 수 있습니다.

Caution

최후의 수단으로만, NODE_TLS_REJECT_UNAUTHORIZED=0은 인증서 검증을 완전히 비활성화하여 오류를 우회할 수 있지만, 모든 연결에 대한 TLS 검증이 해제되므로 일상적인 사용에는 권장하지 않습니다. NODE_EXTRA_CA_CERTS를 사용하세요.