tetrio-plus-bin

maintainer AzhamProdLive · 5 votes · scanned 2026-08-03 00:08:14.047287
MEDIUM
View on AUR ↗
Why flagged The PKGBUILD downloads a prebuilt .asar file from a specific GitLab CI job artifact URL (job ID 13795436076). While the source is pinned to a specific job artifact and has a sha256sum, CI job artifacts on GitLab can be deleted and re-uploaded or the artifact URL can point to different content if the job is re-run. More importantly, this .asar file replaces the official TETR.IO app.asar in the installed Electron application — meaning it is executed code from a third-party (UniQMG's tetrio-plus project, not the official TETR.IO vendor). The sha256sum does provide integrity verification at download time, which mitigates silent substitution risk somewhat. However, the core concern remains: an unofficial, prebuilt Electron application bundle (asar) from a personal GitLab project is being substituted for the official application code and will be executed by the Electron runtime. This is a genuine supply-chain concern — if the artifact were ever replaced or the checksum removed/changed in a future pkgrel, users would run arbitrary third-party code. The sha256sum pinning keeps this at medium rather than high, but the pattern of replacing official app code with a prebuilt third-party artifact is a real supply-chain risk.

Triggered rules

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:14 source=("TETR.IO.deb::https://tetr.io/about/desktop/builds/${pkgver%.*.*}/TETR.IO%20Setup.deb"
MEDIUM AI review llm_review

An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 82%): The PKGBUILD downloads a prebuilt .asar file from a specific GitLab CI job artifact URL (job ID 13795436076). While the source is pinned to a specific job artifact and has a sha256sum, CI job artifacts on GitLab can be deleted and re-uploaded or the artifact URL can point to different content if the job is re-run. More importantly, this .asar file replaces the official TETR.IO app.asar in the installed Electron application — meaning it is executed code from a third-party (UniQMG's tetrio-plus project, not the official TETR.IO vendor). The sha256sum does provide integrity verification at download time, which mitigates silent substitution risk somewhat. However, the core concern remains: an unofficial, prebuilt Electron application bundle (asar) from a personal GitLab project is being substituted for the official application code and will be executed by the Electron runtime. This is a genuine supply-chain concern — if the artifact were ever replaced or the checksum removed/changed in a future pkgrel, users would run arbitrary third-party code. The sha256sum pinning keeps this at medium rather than high, but the pattern of replacing official app code with a prebuilt third-party artifact is a real supply-chain risk.

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: Yuannan Lin <yuannan.pm.me>
2# Report on Gitlab (https://gitlab.com/yuannan/tetrio-plus) or AUR
3# Contributor: Denton Liu <liu.denton@gmail.com>
4
5pkgname=tetrio-plus-bin
6pkgver=10.0.0
7pkgrel=4
8pkgdesc='TETR.IO Plus desktop client'
9arch=('x86_64')
10license=('custom')
11url='https://tetr.io/'
12depends=('libxss' 'unzip')
13conflicts=('tetrio-desktop')
14source=("TETR.IO.deb::https://tetr.io/about/desktop/builds/${pkgver%.*.*}/TETR.IO%20Setup.deb"
15 "tetrio-plus.asar.zip::https://gitlab.com/UniQMG/tetrio-plus/-/jobs/13795436076/artifacts/raw/tetrio-plus_v0.28.0_for_desktop_v10.asar.zip"
16 LICENSE) # https://tetr.io/about/terms/
17sha256sums=('e3635a6f8d479bbf8dc56fdee7a65b2cf652e9633ef6e1acfc6c6f7055b4abdf'
18 'f367db29ab3fbc48a79fbe325935cb9d4df19b2efb03b55717cc849625e9be6a'
19 '5e721783706e2018878ca127ec6ed5d6a1298ee9cc6a853329e25fafe45265f9')
20
21package() {
22 cd "$srcdir"
23
24 # extracting Debian package data tar
25 tar -xf data.tar.xz -C "$pkgdir"
26
27 # subsitution of plus app.asar
28 rm -rf "$pkgdir/opt/TETR.IO/resources/app.asar"
29 # insertion of app.asar
30 unzip tetrio-plus.asar.zip -d "$pkgdir/opt/TETR.IO/resources"
31
32 # inserting executable into
33 mkdir -p "$pkgdir/usr/bin"
34 ln -sf "/opt/TETR.IO/TETR.IO" "$pkgdir/usr/bin/$pkgname"
35
36 install -Dm 644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
37 chmod -R go-w "$pkgdir"
38}
39

Scan history

Scanned at (UTC)SeverityRules
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

Report a package

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

0 / 4000
Your suggestion