mirror of
https://github.com/CyberSecurityUP/NeuroSploit.git
synced 2026-06-29 23:05:30 +02:00
64decada3e
New harness module `integrations` (+ app commands) wiring NeuroSploit into the SDLC. Config persists per-project to .neurosploit/integrations.json; secrets are NEVER stored — only the env-var name is saved, values read from the environment. GitHub: - private-repo clone (token injected into the clone URL for whitebox/greybox/tui) - `neurosploit pr <owner/repo> <n>`: clone the PR head (refs/pull/N/head), white-box review, optional `--comment` (PR summary) and `--jira` (cards) - `neurosploit watch <owner/repo> --branch --interval`: re-review on each new commit GitLab: - private-repo clone (oauth2 token) for whitebox/greybox (gitlab.com or self-hosted) Jira: - `--jira` on any engagement opens one card per finding (REST /issue, basic auth) Control: - `/integrations` (REPL): show · enable/disable · setup jira|gitlab|github - `neurosploit integrations [show|enable|disable] [github|gitlab|jira]` (CLI) Docs: README "Integrations" section + new TUTORIAL-INTEGRATION.md (per-tool setup, scopes, recipes, troubleshooting). Version bumped 3.5.2 → 3.5.3. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
62 lines
2.7 KiB
PowerShell
62 lines
2.7 KiB
PowerShell
# NeuroSploit installer for Windows (PowerShell) — by Joas A Santos & Red Team Leaders
|
|
#
|
|
# irm https://raw.githubusercontent.com/JoasASantos/NeuroSploit/main/install.ps1 | iex
|
|
#
|
|
# Installs the Rust toolchain if needed, clones the repo, builds the release
|
|
# binary, and adds it to your PATH. Works on x64 and arm64.
|
|
$ErrorActionPreference = "Stop"
|
|
|
|
function Say($m) { Write-Host " > $m" -ForegroundColor Magenta }
|
|
function Ok ($m) { Write-Host " + $m" -ForegroundColor Green }
|
|
function Warn($m){ Write-Host " ! $m" -ForegroundColor Yellow }
|
|
|
|
Write-Host ""
|
|
Write-Host " NeuroSploit installer (Windows) — v3.5.3" -ForegroundColor Cyan
|
|
$arch = $env:PROCESSOR_ARCHITECTURE
|
|
Say "Platform: Windows / $arch"
|
|
|
|
$dir = if ($env:NEUROSPLOIT_DIR) { $env:NEUROSPLOIT_DIR } else { Join-Path $HOME ".neurosploit-src" }
|
|
$ref = if ($env:NEUROSPLOIT_REF) { $env:NEUROSPLOIT_REF } else { "main" }
|
|
|
|
# 1) git
|
|
if (-not (Get-Command git -ErrorAction SilentlyContinue)) { throw "git is required (install Git for Windows) and re-run." }
|
|
|
|
# 2) Rust (rustup) — winget if available, else the rustup-init bootstrap
|
|
if (-not (Get-Command cargo -ErrorAction SilentlyContinue)) {
|
|
Say "Rust not found — installing rustup..."
|
|
if (Get-Command winget -ErrorAction SilentlyContinue) {
|
|
winget install -e --id Rustlang.Rustup --accept-source-agreements --accept-package-agreements
|
|
} else {
|
|
$ri = Join-Path $env:TEMP "rustup-init.exe"
|
|
Invoke-WebRequest "https://win.rustup.rs/$arch" -OutFile $ri
|
|
& $ri -y --default-toolchain stable --profile minimal
|
|
}
|
|
$env:Path = "$HOME\.cargo\bin;$env:Path"
|
|
}
|
|
Ok ("Rust: " + (cargo --version))
|
|
|
|
# 3) clone or update
|
|
if (Test-Path (Join-Path $dir ".git")) {
|
|
Say "Updating $dir..."; git -C $dir fetch --depth 1 origin $ref; git -C $dir reset --hard "origin/$ref"
|
|
} else {
|
|
Say "Cloning to $dir..."; git clone --depth 1 --branch $ref "https://github.com/JoasASantos/NeuroSploit.git" $dir
|
|
}
|
|
|
|
# 4) build
|
|
Say "Building release binary (first build downloads crates)..."
|
|
Push-Location (Join-Path $dir "neurosploit-rs"); cargo build --release; Pop-Location
|
|
$bin = Join-Path $dir "neurosploit-rs\target\release\neurosploit.exe"
|
|
if (-not (Test-Path $bin)) { throw "build did not produce $bin" }
|
|
Ok ("Built: " + (& $bin --version))
|
|
|
|
# 5) add to PATH (user)
|
|
$binDir = Split-Path $bin
|
|
$userPath = [Environment]::GetEnvironmentVariable("Path", "User")
|
|
if ($userPath -notlike "*$binDir*") {
|
|
[Environment]::SetEnvironmentVariable("Path", "$userPath;$binDir", "User")
|
|
Ok "Added $binDir to your PATH (open a new terminal)."
|
|
}
|
|
Write-Host ""
|
|
Ok "Done. Launch: neurosploit"
|
|
Write-Host " neurosploit run http://testphp.vulnweb.com/ --subscription --model anthropic:claude-opus-4-8 -v"
|