ngrok

maintainer brenekh · 123 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The package downloads prebuilt binaries from equinox.io, a non-whitelisted but plausible official distribution domain for ngrok; however, the downloads are verified via sha256sums, and the binaries are from the official vendor, making the risk low despite the static analyzer flag.

Triggered rules

LOW AI review llm_review

An AI model (qwen/qwen3-235b-a22b-07-25) reviewed this and agrees it is LOW (confidence 95%): The package downloads prebuilt binaries from equinox.io, a non-whitelisted but plausible official distribution domain for ngrok; however, the downloads are verified via sha256sums, and the binaries are from the official vendor, making the risk low despite the static analyzer flag.

1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM source=() URL on a non-standard host 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/5nBQH3CiRsa/ngrok-v3-3.39.9-linux-amd64.tar.gz")

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: Brenek Harrison <brenekharrison @ gmail d0t com>
2# Contributor: Daurnimator <daurnimator@archlinux.org>
3# Contributor: Bjorn Neergaard (neersighted) <bjorn@neersighted.com>
4# Contributor: Peter Sutton (foxxy) <foxxy@foxdogstudios.com>
5
6pkgname=ngrok
7pkgver=3.39.9
8pkgrel=1
9pkgdesc='A tunneling, reverse proxy for developing and understanding networked, HTTP services'
10url='https://ngrok.com'
11license=('LicenseRef-custom')
12arch=('i686' 'x86_64' 'armv7h' 'aarch64')
13optdepends=('bash-completion: Bash completion support')
14source=("TERMS-OF-SERVICE.txt")
15source_x86_64=("https://bin.equinox.io/a/5nBQH3CiRsa/ngrok-v3-3.39.9-linux-amd64.tar.gz")
16source_i686=("https://bin.equinox.io/a/jEtFg4yox4u/ngrok-v3-3.39.9-linux-386.tar.gz")
17source_armv7h=("https://bin.equinox.io/a/6z2GognC1cY/ngrok-v3-3.39.9-linux-arm.tar.gz")
18source_aarch64=("https://bin.equinox.io/a/bd5z9PXqhwe/ngrok-v3-3.39.9-linux-arm64.tar.gz")
19sha256sums=('d1fce3c7e78d5f7e5307238ee5f371b7a10911aeb249e3358e945eaa8cf2f1b2')
20sha256sums_i686=('9daf4b21dd2b9743949992706c1ef44457b1dfd44542f182a2c55ea59115c52b')
21sha256sums_x86_64=('0b74db428f655944292cf6c554d35c8941faeccff87d5a6835152c7a08281ff0')
22sha256sums_armv7h=('b0f9e39668406d361d44a242546ebba4144256ff3c320032205379c18a1ead83')
23sha256sums_aarch64=('97fb70d88c83ee44d9655b67e877702a1fc0e75656d33d414043772cd3750c1f')
24
25# In order to make Ngrok's built-in updater happy, we need to avoid modifying the binary
26options=(!strip)
27
28package() {
29 BASH_COMPLETION_DIR="$pkgdir/usr/share/bash-completion/completions"
30 ZSH_COMPLETION_DIR="$pkgdir/usr/share/zsh/site-functions"
31
32 # Copy terms of service to license directory
33 install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" TERMS-OF-SERVICE.txt
34
35 cd "${srcdir}"
36
37 # Install the program.
38 install -Dm755 "ngrok" "${pkgdir}/usr/bin/ngrok"
39
40 # Generate completion for bash and zsh
41 mkdir -p "$BASH_COMPLETION_DIR" "$ZSH_COMPLETION_DIR"
42 SHELL=/usr/bin/bash ${pkgdir}/usr/bin/ngrok completion > "$BASH_COMPLETION_DIR/ngrok"
43 SHELL=/usr/bin/zsh ${pkgdir}/usr/bin/ngrok completion > "$ZSH_COMPLETION_DIR/_ngrok"
44}
45
46# vim: ft=sh ts=2 sw=2 et
47

Scan history

Scanned at (UTC)SeverityRules
2026-08-03 00:08:14 LOW 2
2026-08-02 00:16:08 LOW 2
2026-08-01 00:11:18 LOW 2
2026-07-31 00:14:10 LOW 2
2026-07-30 00:17:23 LOW 2
2026-07-29 00:25:53 LOW 2
2026-07-28 00:07:28 LOW 2
2026-07-27 00:24:32 LOW 2
2026-07-26 00:07:32 LOW 2
2026-07-25 00:13:44 LOW 2
2026-07-24 00:02:28 LOW 2
2026-07-23 00:14:47 LOW 2
2026-07-22 23:22:13 LOW 2
2026-07-22 00:29:32 LOW 2
2026-07-21 00:24:15 LOW 2
2026-07-20 00:19:49 LOW 2
2026-07-19 00:17:08 LOW 2
2026-07-18 00:14:48 LOW 2
2026-07-17 00:06:16 LOW 2
2026-07-16 00:05:41 LOW 2

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion