intel-sgx-psw-bin
The package downloads a Debian repository archive from Intel's official download domain (download.01.org) to extract and repackage SGX components for Arch Linux; this is a legitimate source for Intel SGX software, despite the non-whitelisted host, and installs only verified binaries and configuration files without executing remote code.
Triggered rules
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads a Debian repository archive from Intel's official download domain (download.01.org) to extract and repackage SGX components for Arch Linux; this is a legitimate source for Intel SGX software, despite the non-whitelisted host, and installs only verified binaries and configuration files without executing remote code.
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:20
source=("sgx_${pkgver}_debian_local_repo.tgz::https://download.01.org/intel-sgx/sgx-linux/${pkgver}/distro/Debian13/sgx_debian_local_repo.tgz"
PKGBUILD
1 offending line(s) highlighted# Maintainer: marmis <tiagodepalves@gmail.com>
# Contributor: "marmis" Tiago de Paula <tiagodepalves@gmail.com>
pkgname=intel-sgx-psw-bin
pkgdesc='Intel® Software Guard Extensions Platform Software for Linux* OS'
pkgver=2.30.1
pkgrel=1
url='https://github.com/intel/confidential-computing.sgx.sdk'
arch=(x86_64)
license=('BSD-3-Clause AND LicenseRef-Intel-SGX-Third-Party') # https://github.com/intel/confidential-computing.sgx.sdk/blob/main/License.txt
provides=("intel-sgx-psw=${pkgver}")
conflicts=('intel-sgx-psw')
options=(!strip !debug)
backup=(
'etc/aesmd.conf'
'etc/mpa_registration.conf'
'etc/qgs.conf'
'etc/sgx_default_qcnl.conf'
)
source=("sgx_${pkgver}_debian_local_repo.tgz::https://download.01.org/intel-sgx/sgx-linux/${pkgver}/distro/Debian13/sgx_debian_local_repo.tgz"
'intel-sgx-sysusers.conf')
b2sums=('93bb0d60a1312adc66388cbe4dc250929eb29c10622833f83e371d279a6337bf77d0a9923852f87a612362bad34aab33a2287a414693e57514ebcd22b49e2445'
'f0a1415f8e88ffe2fe189c56a701a9756f74947375f142aa3965679129d3182f1b380beea02d70e07cbe7c9443461b8cbb674193ae07f71d543d13a10ecaf7ff')
# Move files to standard Arch Linux folders (namcap rule: directoryname).
# See https://wiki.archlinux.org/title/Arch_package_guidelines#Directories
_fix_non_standard_paths() {
# /etc/udev is for user files, packages should use /usr/lib/udev instead
install -vd "${pkgdir}/usr/lib/udev/"
mv -v --no-copy "${pkgdir}/etc/udev/rules.d" \
-T "${pkgdir}/usr/lib/udev/rules.d"
rmdir -v "${pkgdir}/etc/udev"
# Debian has a /usr/lib/$TARGET folder, but not in Arch
mv -v -t "${pkgdir}/usr/lib/" \
--no-copy "${pkgdir}/usr/lib/${CARCH}-linux-gnu"/*.so*
rmdir -v "${pkgdir}/usr/lib/${CARCH}-linux-gnu"
# Debian has an actual /lib folder, which in Arch is just a symlink to /usr/lib
mv -v -t "${pkgdir}/usr/lib/systemd/system/" \
--no-copy "${pkgdir}/lib/systemd/system"/*.service
rmdir -v "${pkgdir}/lib/systemd/system" "${pkgdir}/lib/systemd" "${pkgdir}/lib"
# Debian also supports /include, which should be empty here
rmdir -v "${pkgdir}/include"
}
# Update symbolic links generated by the installer (namcap rule: symlink).
_fix_symlink() {
ln -v -sr "${pkgdir}/usr/lib/$(basename "${1}")" \
-fT "${1}"
}
package() {
depends=('glibc' 'libstdc++' 'bash')
optdepends=(
'protobuf-21: required for the AESM service'
'nodejs: for running the SGX DCAP PCCS Server'
'curl: required for SGX Remote Attestation Service (RA)'
'boost183: required by the TDX Quote Generation Service (QGS)'
)
find sgx_debian_local_repo -name '*.deb' -print \
-exec sh -euc 'ar -p "$1" -O data.tar.xz | tar -x --xz -C "$2"' -- {} "${pkgdir}" \;
# required users and groups
install -vD -m644 intel-sgx-sysusers.conf \
-T "${pkgdir}/usr/lib/sysusers.d/intel-sgx.conf"
# composed license
install -vD -t "${pkgdir}/usr/share/licenses/${pkgname}/" \
-m644 "${pkgdir}/usr/share/doc/libsgx-enclave-common/copyright"
_fix_non_standard_paths
_fix_symlink "${pkgdir}/opt/intel/sgx-aesm-service/aesm/libsgx_pce.signed.so"
_fix_symlink "${pkgdir}/opt/intel/sgx-aesm-service/aesm/libsgx_pce.signed.so.1"
_fix_symlink "${pkgdir}/opt/intel/sgx-aesm-service/aesm/libsgx_qe3.signed.so"
_fix_symlink "${pkgdir}/opt/intel/sgx-aesm-service/aesm/libsgx_qe3.signed.so.1"
_fix_symlink "${pkgdir}/opt/intel/sgx-pck-id-retrieval-tool/libsgx_id_enclave.signed.so.1"
_fix_symlink "${pkgdir}/opt/intel/sgx-pck-id-retrieval-tool/libsgx_pce.signed.so.1"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Low | 2 |
| 2026-09-16 00:03:17 | Low | 2 |
| 2026-09-15 00:25:31 | Low | 2 |
| 2026-09-14 00:27:57 | Low | 2 |
| 2026-09-13 00:19:54 | Low | 2 |
| 2026-09-12 00:25:17 | Low | 2 |
| 2026-09-11 00:19:22 | Low | 2 |
| 2026-09-10 00:22:44 | Low | 2 |
| 2026-09-09 00:04:09 | Low | 2 |
| 2026-09-08 00:18:08 | Low | 2 |
| 2026-09-07 00:30:15 | Low | 2 |
| 2026-09-06 00:17:06 | Low | 2 |
| 2026-09-05 00:16:27 | Low | 2 |
| 2026-09-04 00:03:13 | Low | 2 |
| 2026-09-03 00:15:47 | Low | 2 |
| 2026-09-02 00:02:31 | Low | 2 |
| 2026-09-01 00:11:19 | Low | 2 |
| 2026-08-31 00:19:57 | Low | 2 |
| 2026-08-30 00:04:14 | Low | 2 |
| 2026-08-29 00:29:17 | Low | 2 |