Mac 版 Nessus 破解安装教程,含自动破解脚本、最新漏洞插件包,一步到位。
Nessus-10.5.0.dmg— Nessus macOS 安装包all-2.0.tar.gz— 漏洞插件包(约 700MB+)install_nessus.sh— 自动破解脚本
双击安装,一路继续
此时无法扫描
运行破解脚本 install_nessus.sh
#!/bin/zsh
set -e
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
PLUGIN_FILE="${SCRIPT_DIR}/all-2.0.tar.gz"
FEED_FILE="/Library/Nessus/run/var/nessus/plugin_feed_info.inc"
FEED_FILE_LIB="/Library/Nessus/run/lib/nessus/plugins/plugin_feed_info.inc"
NESSUSCLI="/Library/Nessus/run/sbin/nessuscli"
NESSUSD_NAME="com.tenablesecurity.nessusd"
# ============================================================
# Check root
# ============================================================
if [[ $(id -u) -ne 0 ]]; then
echo "[ERROR] Please run with sudo / as root"
exit 1
fi
# ============================================================
# Check if Nessus is installed
# ============================================================
if [[ ! -f "$NESSUSCLI" ]]; then
echo "[ERROR] Nessus not installed. Run 1.sh first to install Nessus."
exit 1
fi
echo "========================================="
echo " Nessus Crack & Plugin Installer"
echo "========================================="
echo ""
# ============================================================
# Step 1: Stop Nessus
# ============================================================
echo "[1/5] Stopping Nessus service..."
launchctl stop "$NESSUSD_NAME" 2>/dev/null || true
sleep 3
echo " -> Nessus stopped"
# ============================================================
# Step 2: Check if already cracked
# ============================================================
CRACKED=false
if [[ -f "$FEED_FILE" ]]; then
if grep -q "ProfessionalFeed" "$FEED_FILE" 2>/dev/null; then
CRACKED=true
fi
fi
if $CRACKED; then
echo "[2/5] Already cracked (ProfessionalFeed detected), skip cracking step"
else
echo "[2/5] Cracking..."
# Unlock if locked
chflags nouchg "$FEED_FILE" 2>/dev/null || true
chflags -R nouchg /Library/Nessus/run/lib/nessus/ 2>/dev/null || true
# Configure nessusd
"$NESSUSCLI" fix --set safe_checks=false &>/dev/null
"$NESSUSCLI" fix --set backend_log_level=performance &>/dev/null
"$NESSUSCLI" fix --set auto_update=false &>/dev/null
"$NESSUSCLI" fix --set auto_update_ui=false &>/dev/null
"$NESSUSCLI" fix --set disable_core_updates=true &>/dev/null
"$NESSUSCLI" fix --set report_crashes=false &>/dev/null
"$NESSUSCLI" fix --set send_telemetry=false &>/dev/null
# Get latest version number from official source
echo " -> Getting plugin version..."
vernum=$(curl -s https://plugins.nessus.org/v2/plugins.php 2>/dev/null || echo "202607081825")
echo " -> Version: $vernum"
# Write cracked feed info
cat > "$FEED_FILE" <<EOF
PLUGIN_SET = "${vernum}";
PLUGIN_FEED = "ProfessionalFeed (Direct)";
PLUGIN_FEED_TRANSPORT = "Tenable Network Security Lightning";
EOF
# Copy to lib directory
cp "$FEED_FILE" "$FEED_FILE_LIB"
# Lock files to prevent overwrite by Nessus auto-update
chflags uchg "$FEED_FILE"
chflags -R uchg /Library/Nessus/run/lib/nessus/
chflags nouchg "$FEED_FILE_LIB"
chflags nouchg /Library/Nessus/run/lib/nessus/plugins
echo " -> Crack done: ProfessionalFeed (Direct) written & locked"
fi
# ============================================================
# Step 3: Install / Update plugins
# ============================================================
echo "[3/5] Installing plugins from: $PLUGIN_FILE"
if [[ ! -f "$PLUGIN_FILE" ]]; then
echo "[ERROR] $PLUGIN_FILE not found!"
echo "Please put all-2.0.tar.gz in: $SCRIPT_DIR"
exit 1
fi
PLUGIN_SIZE=$(ls -lh "$PLUGIN_FILE" | awk '{print $5}')
echo " -> Plugin file size: $PLUGIN_SIZE"
# Unlock feed file temporarily for plugin update
chflags nouchg "$FEED_FILE" 2>/dev/null || true
# Update plugins
"$NESSUSCLI" update "$PLUGIN_FILE"
# Re-write cracked feed info (update may have overwritten it)
if ! $CRACKED; then
cat > "$FEED_FILE" <<EOF
PLUGIN_SET = "${vernum:-202607081825}";
PLUGIN_FEED = "ProfessionalFeed (Direct)";
PLUGIN_FEED_TRANSPORT = "Tenable Network Security Lightning";
EOF
else
echo " -> Re-writing cracked feed after update..."
cat > "$FEED_FILE" <<EOF
PLUGIN_SET = "${vernum:-202607081825}";
PLUGIN_FEED = "ProfessionalFeed (Direct)";
PLUGIN_FEED_TRANSPORT = "Tenable Network Security Lightning";
EOF
fi
cp "$FEED_FILE" "$FEED_FILE_LIB"
# Re-lock
chflags uchg "$FEED_FILE"
chflags -R uchg /Library/Nessus/run/lib/nessus/ 2>/dev/null || true
chflags nouchg "$FEED_FILE_LIB" 2>/dev/null || true
chflags nouchg /Library/Nessus/run/lib/nessus/plugins 2>/dev/null || true
echo " -> Plugins installed & feed locked"
# ============================================================
# Step 4: Start Nessus
# ============================================================
echo "[4/5] Starting Nessus service..."
launchctl start "$NESSUSD_NAME"
echo " -> Nessus started"
# ============================================================
# Step 5: Wait for plugin compilation
# ============================================================
echo "[5/5] Waiting for plugins to compile..."
sleep 10
zen=0
while [[ $zen -ne 100 ]]; do
resp=$(curl -sL -k https://localhost:8834/server/status 2>/dev/null)
if [[ -z "$resp" ]]; then
echo " Waiting for Nessus web service..."
sleep 10
continue
fi
engine_progress=$(echo "$resp" | python3 -c "
import sys,json
try:
d=json.load(sys.stdin)
p=d.get('detailed_status',{}).get('engine_status',{}).get('progress',0)
s=d.get('detailed_status',{}).get('engine_status',{}).get('status','')
print(f'engine: {p}% - {s}')
except:
print('parsing...')
" 2>/dev/null)
echo " $(date +%H:%M:%S) $engine_progress"
if echo "$engine_progress" | grep -q "100%"; then
zen=100
else
sleep 10
fi
done
echo ""
echo "========================================="
echo " All done! Nessus is ready."
echo " Open: https://localhost:8834"
echo "========================================="
等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待等待脚本运行结束
成功破解
将新的 all-2.0.tar.gz 替换到目录中,再次执行:
sudo ./install_nessus.sh脚本检测到已破解,跳过步骤 2.2,仅更新插件 + 重新锁定。









