private-internet-access-vpn
maintainer Auerhuhn
· 86 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package downloads OpenVPN configuration and certificate files from the official PIA domain; these are non-executable data files used by OpenVPN, so even if the host were compromised, the worst-case impact is limited to configuration tampering, not arbitrary code execution.
Triggered rules
LOW
AI review downgraded a static finding
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads OpenVPN configuration and certificate files from the official PIA domain; these are non-executable data files used by OpenVPN, so even if the host were compromised, the worst-case impact is limited to configuration tampering, not arbitrary code execution.
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:27
source=("default-$pkgver-$pkgrel.zip::https://www.privateinternetaccess.com/openvpn/openvpn.zip"
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Claudia Pellegrino <aur ät cpellegrino.de>
2
# Contributor: Jesse Spangenberger <azulephoenix@gmail.com>
3
4
pkgname=private-internet-access-vpn
5
pkgver=3.4
6
pkgrel=4
7
pkgdesc="Installs VPN profiles for Private Internet Access Service"
8
arch=("any")
9
url="https://www.privateinternetaccess.com/"
10
license=('GPL')
11
depends=('openvpn' 'python' 'python-docopt' 'python-setuptools')
12
makedepends=('git' 'python-build' 'python-installer' 'python-wheel')
13
optdepends=('networkmanager: Enables PIA for Network Manager (needs a openvpn plugin)'
14
'connman: Enables PIA for Connman')
15
conflicts=('xawtv') # Both packages install a `pia` executable
16
17
sha256sums=('bc38427782aedc90cb65b322cd6f9d74af4e988cc5b3c884e43236ed7a5e4491'
18
'38758f393590c51ec1566aba19beaed7c4fa8bd6f7c323f44ab00b9eb9fd7577'
19
'4322a2a4bc3e206c6ab7e1df87a8805032b76c177c1ed9dd3501260ed32ccb30'
20
'797dbdb6e3aadc86f97262e26d61cf4847caf85dda4b7a97cac59088cb912b27'
21
'246fc4dc3218f56b4c70014df6801b10fc2a573d6545962b7fce05f16908c54e'
22
'7f4a5ee1fb8ea4d0e69ed2a8217c575cf335f21e90082f6e423c769eca4a7a46'
23
'dd15ff9d020d6779c51bff560c8571b462cc7ca3f4d2a92b8103056be4b2e0fd'
24
'SKIP'
25
'SKIP')
26
27
source=("default-$pkgver-$pkgrel.zip::https://www.privateinternetaccess.com/openvpn/openvpn.zip"
28
"strong-$pkgver-$pkgrel.zip::https://www.privateinternetaccess.com/openvpn/openvpn-strong.zip"
29
"login-example.conf"
30
"pia-example.conf"
31
"restart.conf"
32
"vpn.sh"
33
"pia.8.gz"
34
"git+https://github.com/flamusdiu/python-pia.git#tag=v${pkgver}"
35
"git+https://github.com/masterkorp/openvpn-update-resolv-conf.git")
36
37
noextract=("default-$pkgver-$pkgrel.zip"
38
"strong-$pkgver-$pkgrel.zip"
39
"pia.8.gz")
40
41
prepare() {
42
cd "${srcdir}"
43
44
echo >&2 "Extracting Certifications..."
45
bsdtar -xf default-$pkgver-$pkgrel.zip "*.pem" "*.crt"
46
bsdtar -xf strong-$pkgver-$pkgrel.zip "*.pem" "*.crt"
47
48
echo >&2 "Extracting OpenVPN Configurations..."
49
if [ -d "vpn-configs" ]; then
50
rm -rf vpn-configs
51
fi
52
mkdir "vpn-configs"
53
bsdtar -xf default-$pkgver-$pkgrel.zip -C vpn-configs *.ovpn
54
55
cd "vpn-configs"
56
echo >&2 "Creating Remote Host List..."
57
touch ../vpn-hosts.txt
58
59
grep -Eo "\s(.*\.privacy\.network)\s" *.ovpn | \
60
sed 's/_/ /g;s/.ovpn//;s/: /,/;s/[^ ]\+/\L\u&/g;s/\b\([a-z]\{2\}\)\s/\U&/gi' \
61
>> ../vpn-hosts.txt
62
63
echo >&2 "Resetting python-pia repository..."
64
git -C "${srcdir}/python-pia" clean -dfx
65
66
echo >&2 "Done."
67
}
68
69
build() {
70
cd "${srcdir}/python-pia"
71
python -m build --wheel --no-isolation
72
}
73
74
package() {
75
cd "${srcdir}"
76
77
install -D -m 644 restart.conf "${pkgdir}/usr/lib/systemd/openvpn-client@.service.d/restart.conf"
78
install -D -m 755 vpn.sh "${pkgdir}/usr/lib/systemd/system/system-sleep/vpn.sh"
79
install -D -m 644 pia.8.gz "${pkgdir}/usr/share/man/man8/pia.8.gz"
80
81
82
install -dm755 "${pkgdir}"/etc/{openvpn,private-internet-access}
83
install -g network -dm750 "${pkgdir}"/etc/openvpn/client
84
85
install -D -m 644 vpn-hosts.txt "${pkgdir}/etc/private-internet-access"
86
install -D -g network -m 640 *.crt "${pkgdir}/etc/openvpn/client"
87
install -D -g network -m 640 *.pem "${pkgdir}/etc/openvpn/client"
88
install -D -m 644 {pia-example.conf,login-example.conf} "${pkgdir}/etc/private-internet-access/"
89
90
install -D -m 755 openvpn-update-resolv-conf/update-resolv-conf.sh "${pkgdir}/etc/openvpn/update-resolv-conf.sh"
91
92
cd "python-pia"
93
python -I -m installer --destdir="${pkgdir}" dist/*.whl
94
95
}
96
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 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 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 |
| 2026-07-15 00:09:25 | LOW | 2 |