T03 · Remote Payload Retrieval and Execution
- Location
scripts/setup.sh:103- Finding
Setup Downloads and Executes an Unverified Remote Installer
- Content
View full analysis
/dev/null 2>&1; then info "Adding Microsoft package repository..." sudo apt-get update -qq sudo apt-get install -y -qq wget apt-transport-https wget -q "https://dot.net/v1/dotnet-install.sh" -O /tmp/dotnet-install.sh chmod +x /tmp/dotnet-install.sh /tmp/dotnet-install.sh --channel 8.0 --install-dir "$HOME/.dotnet" export PATH="$HOME/.dotnet:$PATH" echo 'export PATH="$HOME/.dotnet:$PATH"' >> "$HOME/.bashrc" fi ;; # ... none) if [ "$OS" = "windows-git-bash" ]; then fail "On Windows, install .NET SDK from: https://dotnet.microsoft.com/download" fail "Then restart your terminal and re-run this script." return 1 fi # Fallback: use Microsoft install script info "Using Microsoft install script..." wget -q "https://dot.net/v1/dotnet-install.sh" -O /tmp/dotnet-install.sh || \ curl -sSL "https://dot.net/v1/dotnet-install.sh" -o /tmp/dotnet-install.sh chmod +x /tmp/dotnet-install.sh /tmp/dotnet-install.sh --channel 8.0 --install-dir "$HOME/.dotnet" export PATH="$HOME/.dotnet:$PATH" echo 'export PATH="$HOME/.dotnet:$PATH"' >> "$HOME/.bashrc" ;; ``` ### Technical Analysis The setup process retrieves executable shell code from a mutable external URL and immediately runs it. It does not pin a specific installer artifact or validate a cryptographic checksum or signature before execution. HTTPS protects transport under normal conditions, but it does not protect against compromise of the upstream endpoint, its publishing infrastructure, or an incorrectly trusted certificate authority. The installer is also writte ...[truncated 2264 chars]- Remediation
View remediation
