nui-sftp
Triggered rules
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:37
"https://s3.g.s4.mega.io/jgemkib4a5fte35rktt5wxrwkw4ejk4ybemkf/nui-scp/images/NUI-SFTP_Logo-01_nopad.svg"
llm_review
An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): The PKGBUILD pulls two assets (an SVG icon and an icons tarball) from s3.g.s4.mega.io, which is MEGA's S3-compatible object storage. While MEGA is a legitimate cloud storage provider, this is not the project's official release infrastructure — it's a personal/third-party storage bucket. The frontend tarball (nui-sftp-linux-frontend_${pkgver}.tar.gz) is correctly fetched from the official GitHub releases page and has a sha256sum, which is good. The icons.tar.gz and SVG from MEGA also have sha256sums pinned, which mitigates the risk somewhat. However, the icons.tar.gz is unpacked and its contents placed into the package installation, and the SVG is installed as an icon — these are data files, not executed code. The main binary is built from source (git+github). The real concern is that the MEGA bucket (identified by a long random-looking key in the URL) is controlled by the maintainer or an unknown third party, and if that bucket is compromised or the content swapped before the sha256sum was pinned, malicious data could have been introduced. Since the sha256sums are pinned and the files are data (SVG, icons) rather than executed binaries or libraries, the actual exploitability is low, but the non-standard hosting of package assets remains a legitimate supply-chain concern worth flagging as medium.
PKGBUILD
1 offending line(s) highlighted# Maintainer: Tim Ebbeke <tim 06 tr (at) gmail dot com>
pkgname=nui-sftp
pkgver=1.3.1
pkgrel=1
pkgdesc="NUI-based SFTP application"
arch=('x86_64')
url="https://github.com/5cript/nui-sftp"
license=('MIT')
depends=(
webkitgtk-6.0
curl
crypto++
libssh
fmt
boost
boost-libs
nlohmann-json
sdbus-cpp
zlib
bzip2
zstd
xz
)
makedepends=(
cmake
ninja
clang
lld
git
python
nodejs
)
options=('!debug')
source=(
"$pkgname::git+$url.git#tag=v${pkgver//_/-}"
"https://s3.g.s4.mega.io/jgemkib4a5fte35rktt5wxrwkw4ejk4ybemkf/nui-scp/images/NUI-SFTP_Logo-01_nopad.svg"
"https://github.com/5cript/nui-sftp/releases/download/v${pkgver}/nui-sftp-linux-frontend_${pkgver}.tar.gz"
"https://s3.g.s4.mega.io/jgemkib4a5fte35rktt5wxrwkw4ejk4ybemkf/nui-scp/icons.tar.gz"
)
sha256sums=(
'a46c1c3ad1551a20005b0a3119d8ff607af046bc0927d7a041a78b558a911417'
'cf0fc442069dfd28bd8b7769da6dfdca92111044ea9817197716ed9bfada3869'
'a8ac5edaac2a1b4ce21d48c90f0c3502572b5f3ec1ed225aa42f5c97c10d1caf'
'30ffa48c3a509e878db31a1e5d80376242852e34d9c2aa3b44d2e3d1da2ce32e'
)
prepare() {
cd "$pkgname"
git submodule update --init --recursive
}
build() {
cd "$pkgname"
cmake -B "$srcdir/$pkgname/build" \
-S "$srcdir/$pkgname" \
-G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DFORCED_PROJECT_VERSION="$pkgver" \
-DCMAKE_C_COMPILER=clang \
-DCMAKE_CXX_COMPILER=clang++ \
-DCMAKE_LINKER=lld \
-DCMAKE_CXX_STANDARD=23 \
-DOMIT_FRONTEND_BUILD=ON \
-DNUI_FETCH_TRAITS=OFF
cmake --build "$srcdir/$pkgname/build"
}
package() {
# Create directories
mkdir -p "$pkgdir"/usr/bin
mkdir -p "$pkgdir"/opt/"$pkgname"
mkdir -p "$pkgdir"/opt/"$pkgname"/bin
mkdir -p "$pkgdir"/opt/"$pkgname"/frontend
mkdir -p "$pkgdir"/opt/"$pkgname"/assets
mkdir -p "$pkgdir"/opt/"$pkgname"/assets/icons
mkdir -p "$pkgdir"/opt/"$pkgname"/themes
# Unpack frontend tarball
tar -xzf "$srcdir/nui-sftp-linux-frontend_${pkgver//_/-}.tar.gz" -C "$pkgdir"/opt/"$pkgname"/frontend --strip-components=1
# Copy files
install -m755 "$srcdir/$pkgname/build/bin/$pkgname" "$pkgdir"/opt/"$pkgname"/bin/"$pkgname"
cp -r "$srcdir/$pkgname/static/assets" "$pkgdir"/opt/"$pkgname"/
install -m644 "$srcdir/$pkgname/LICENSE" "$pkgdir"/opt/"$pkgname"/LICENSE
cp -r "$srcdir/$pkgname/themes/." "$pkgdir"/opt/"$pkgname"/themes/
tar -xzf "$srcdir/icons.tar.gz" -C "$pkgdir"/opt/"$pkgname"/assets/icons --strip-components=0
# Desktop
install -Dm644 "$srcdir/$pkgname/org.nuicpp.nui_sftp.desktop" "$pkgdir"/usr/share/applications/"$pkgname".desktop
install -Dm644 "NUI-SFTP_Logo-01_nopad.svg" "$pkgdir"/usr/share/icons/hicolor/scalable/apps/nui_sftp.svg
install -Dm644 "NUI-SFTP_Logo-01_nopad.svg" "$pkgdir"/opt/"$pkgname"/assets/icons/nui-sftp-logo.svg
ln -s "/opt/$pkgname/bin/$pkgname" "$pkgdir"/usr/bin/"$pkgname"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | MEDIUM | 2 |
| 2026-08-02 00:16:08 | MEDIUM | 2 |
| 2026-08-01 00:11:18 | MEDIUM | 2 |
| 2026-07-31 00:14:10 | MEDIUM | 2 |
| 2026-07-30 00:17:23 | MEDIUM | 2 |
| 2026-07-29 00:25:53 | MEDIUM | 2 |
| 2026-07-28 00:07:28 | MEDIUM | 2 |
| 2026-07-27 00:24:32 | MEDIUM | 2 |
| 2026-07-26 00:07:32 | MEDIUM | 2 |
| 2026-07-25 00:13:44 | MEDIUM | 2 |
| 2026-07-24 00:02:28 | MEDIUM | 2 |
| 2026-07-23 00:14:47 | MEDIUM | 2 |
| 2026-07-22 00:29:32 | MEDIUM | 2 |
| 2026-07-21 00:24:15 | MEDIUM | 2 |
| 2026-07-20 00:19:49 | MEDIUM | 2 |
| 2026-07-19 00:17:08 | MEDIUM | 2 |
| 2026-07-18 00:14:48 | MEDIUM | 2 |
| 2026-07-17 00:06:16 | MEDIUM | 2 |
| 2026-07-16 00:05:41 | MEDIUM | 2 |
| 2026-07-15 00:09:25 | MEDIUM | 2 |