ngrok
The package downloads prebuilt ngrok binaries from bin.equinox.io, which is the official distribution point for ngrok; despite the non-whitelisted host, this is a legitimate source, and the downloads are verified via sha256sums, reducing risk to low.
Triggered rules
llm_review
An AI model (qwen/qwen3-235b-a22b-2507) reviewed this and agrees it is LOW (confidence 95%): The package downloads prebuilt ngrok binaries from bin.equinox.io, which is the official distribution point for ngrok; despite the non-whitelisted host, this is a legitimate source, and the downloads are verified via sha256sums, reducing risk to low.
1 higher static finding superseded - not the current verdict (shown for transparency)
source_untrusted_domain
One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).
-
PKGBUILD:15
source_x86_64=("https://bin.equinox.io/a/h2cqbjsNLj7/ngrok-v3-3.39.13-linux-amd64.tar.gz")
PKGBUILD
1 offending line(s) highlighted# Maintainer: Brenek Harrison <brenekharrison @ gmail d0t com>
# Contributor: Daurnimator <daurnimator@archlinux.org>
# Contributor: Bjorn Neergaard (neersighted) <bjorn@neersighted.com>
# Contributor: Peter Sutton (foxxy) <foxxy@foxdogstudios.com>
pkgname=ngrok
pkgver=3.39.13
pkgrel=1
pkgdesc='A tunneling, reverse proxy for developing and understanding networked, HTTP services'
url='https://ngrok.com'
license=('LicenseRef-custom')
arch=('i686' 'x86_64' 'armv7h' 'aarch64')
optdepends=('bash-completion: Bash completion support')
source=("TERMS-OF-SERVICE.txt")
source_x86_64=("https://bin.equinox.io/a/h2cqbjsNLj7/ngrok-v3-3.39.13-linux-amd64.tar.gz")
source_i686=("https://bin.equinox.io/a/9xC1dNA3u6H/ngrok-v3-3.39.13-linux-386.tar.gz")
source_armv7h=("https://bin.equinox.io/a/8wmNQK9f5ah/ngrok-v3-3.39.13-linux-arm.tar.gz")
source_aarch64=("https://bin.equinox.io/a/j83dYTwHiq9/ngrok-v3-3.39.13-linux-arm64.tar.gz")
sha256sums=('d1fce3c7e78d5f7e5307238ee5f371b7a10911aeb249e3358e945eaa8cf2f1b2')
sha256sums_i686=('dac9a594acd0d642495b108d1eb065b53140311adbff284ae4afa33e4838214c')
sha256sums_x86_64=('233e0647849913e6404150c1e9c5e4f31c1368aefee330958d038d7afecb8f2e')
sha256sums_armv7h=('55d7127100d4eb211d6249a53c1f01bb353241e2be3ff0b97b304f2e9cf4d521')
sha256sums_aarch64=('fb41ee8f251969f6e399ef03122f791ae537155dfd9ac4c0baf108aca95c17d7')
# In order to make Ngrok's built-in updater happy, we need to avoid modifying the binary
options=(!strip)
package() {
BASH_COMPLETION_DIR="$pkgdir/usr/share/bash-completion/completions"
ZSH_COMPLETION_DIR="$pkgdir/usr/share/zsh/site-functions"
# Copy terms of service to license directory
install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" TERMS-OF-SERVICE.txt
cd "${srcdir}"
# Install the program.
install -Dm755 "ngrok" "${pkgdir}/usr/bin/ngrok"
# Generate completion for bash and zsh
mkdir -p "$BASH_COMPLETION_DIR" "$ZSH_COMPLETION_DIR"
SHELL=/usr/bin/bash ${pkgdir}/usr/bin/ngrok completion > "$BASH_COMPLETION_DIR/ngrok"
SHELL=/usr/bin/zsh ${pkgdir}/usr/bin/ngrok completion > "$ZSH_COMPLETION_DIR/_ngrok"
}
# vim: ft=sh ts=2 sw=2 et
Changes since previous scan
--- PKGBUILD @ 2026-10-23 05:36+++ PKGBUILD @ 2026-11-01 00:21@@ -4,7 +4,7 @@ # Contributor: Peter Sutton (foxxy) <foxxy@foxdogstudios.com> pkgname=ngrok-pkgver=3.39.12+pkgver=3.39.13 pkgrel=1 pkgdesc='A tunneling, reverse proxy for developing and understanding networked, HTTP services' url='https://ngrok.com'@@ -12,15 +12,15 @@ arch=('i686' 'x86_64' 'armv7h' 'aarch64') optdepends=('bash-completion: Bash completion support') source=("TERMS-OF-SERVICE.txt")-source_x86_64=("https://bin.equinox.io/a/rG6QSVno1F/ngrok-v3-3.39.12-linux-amd64.tar.gz")-source_i686=("https://bin.equinox.io/a/eVGus2j8dTf/ngrok-v3-3.39.12-linux-386.tar.gz")-source_armv7h=("https://bin.equinox.io/a/gVcEdAfwaka/ngrok-v3-3.39.12-linux-arm.tar.gz")-source_aarch64=("https://bin.equinox.io/a/mZKpd326i7W/ngrok-v3-3.39.12-linux-arm64.tar.gz")+source_x86_64=("https://bin.equinox.io/a/h2cqbjsNLj7/ngrok-v3-3.39.13-linux-amd64.tar.gz")+source_i686=("https://bin.equinox.io/a/9xC1dNA3u6H/ngrok-v3-3.39.13-linux-386.tar.gz")+source_armv7h=("https://bin.equinox.io/a/8wmNQK9f5ah/ngrok-v3-3.39.13-linux-arm.tar.gz")+source_aarch64=("https://bin.equinox.io/a/j83dYTwHiq9/ngrok-v3-3.39.13-linux-arm64.tar.gz") sha256sums=('d1fce3c7e78d5f7e5307238ee5f371b7a10911aeb249e3358e945eaa8cf2f1b2')-sha256sums_i686=('246619ebc52e7acb2232ac04a120642dc00889af97886a76735c902c30b63252')-sha256sums_x86_64=('01f79749bc75273a0c634c59eec4e6235c3ab7266d5bc6a02cbac6c7fe6472b0')-sha256sums_armv7h=('7c8ac825d31da1005d634f9130fd7512a2f4ab2d13b63eee0ed12dc6a16e727d')-sha256sums_aarch64=('98adbac487844e00223b23c96f6831dd3f6210b2b046b78e78a7bd34bc0ac734')+sha256sums_i686=('dac9a594acd0d642495b108d1eb065b53140311adbff284ae4afa33e4838214c')+sha256sums_x86_64=('233e0647849913e6404150c1e9c5e4f31c1368aefee330958d038d7afecb8f2e')+sha256sums_armv7h=('55d7127100d4eb211d6249a53c1f01bb353241e2be3ff0b97b304f2e9cf4d521')+sha256sums_aarch64=('fb41ee8f251969f6e399ef03122f791ae537155dfd9ac4c0baf108aca95c17d7') # In order to make Ngrok's built-in updater happy, we need to avoid modifying the binary options=(!strip)Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-11-01 00:21:48 | Low | 2 |
| 2026-10-31 00:07:41 | Low | 2 |
| 2026-10-30 00:29:30 | Low | 2 |
| 2026-10-29 00:13:55 | Low | 2 |
| 2026-10-28 00:06:54 | Low | 2 |
| 2026-10-27 00:23:28 | Low | 2 |
| 2026-10-26 00:12:40 | Low | 2 |
| 2026-10-25 00:20:48 | Low | 2 |
| 2026-10-24 00:14:55 | Low | 2 |
| 2026-10-23 15:37:50 | Low | 2 |
| 2026-10-23 05:36:55 | Low | 2 |
| 2026-10-23 00:02:19 | Low | 2 |
| 2026-10-22 00:13:10 | Low | 2 |
| 2026-10-21 00:12:50 | Low | 2 |
| 2026-10-20 00:10:31 | Low | 2 |
| 2026-10-19 00:03:55 | Low | 2 |
| 2026-10-18 00:06:55 | Low | 2 |
| 2026-10-17 00:21:55 | Low | 2 |
| 2026-10-16 00:12:47 | Low | 2 |
| 2026-10-15 00:28:05 | Low | 2 |