vk-messenger
The PKGBUILD downloads a prebuilt RPM binary from upload.object2.vk-apps.com, which is a VK (VKontakte) object storage subdomain — plausibly an official VK CDN/storage host for their desktop app, but it is not a well-known, auditable release channel. The binary is an Electron-based messenger app that gets extracted and installed directly. Key concerns: (1) the host is a non-standard object storage URL with a UUID path component that looks like a CI/CD artifact bucket, not a versioned release endpoint, meaning the content at that URL could be silently replaced without changing the URL; (2) there is a sha256sum check, which provides some integrity guarantee, but only for the specific downloaded artifact — if the upstream object is replaced, the build would fail rather than silently install malware, which mitigates the risk somewhat; (3) the RPM is extracted and its contents moved wholesale into pkgdir without any inspection or filtering, so whatever the RPM contains gets installed; (4) vk-apps.com is associated with VK's developer platform, making this plausibly official VK infrastructure, but it remains unverifiable as an official release channel. The combination of an opaque object-storage URL, a full prebuilt binary installation, and no upstream signature verification keeps this at MEDIUM rather than clean.
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:12
source=("https://upload.object2.vk-apps.com/vk-me-desktop-dev-5837a06d-5f28-484a-ac22-045903cb1b1a/latest/vk-messenger.rpm")
llm_review
An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): The PKGBUILD downloads a prebuilt RPM binary from upload.object2.vk-apps.com, which is a VK (VKontakte) object storage subdomain — plausibly an official VK CDN/storage host for their desktop app, but it is not a well-known, auditable release channel. The binary is an Electron-based messenger app that gets extracted and installed directly. Key concerns: (1) the host is a non-standard object storage URL with a UUID path component that looks like a CI/CD artifact bucket, not a versioned release endpoint, meaning the content at that URL could be silently replaced without changing the URL; (2) there is a sha256sum check, which provides some integrity guarantee, but only for the specific downloaded artifact — if the upstream object is replaced, the build would fail rather than silently install malware, which mitigates the risk somewhat; (3) the RPM is extracted and its contents moved wholesale into pkgdir without any inspection or filtering, so whatever the RPM contains gets installed; (4) vk-apps.com is associated with VK's developer platform, making this plausibly official VK infrastructure, but it remains unverifiable as an official release channel. The combination of an opaque object-storage URL, a full prebuilt binary installation, and no upstream signature verification keeps this at MEDIUM rather than clean.
PKGBUILD
1 offending line(s) highlighted# Maintainer: Vitaliy Volynskiy (i@vitalya.me)
pkgname=vk-messenger
pkgver=6.0.43
pkgrel=254
pkgdesc="VK Messenger for Linux"
arch=('x86_64')
url="https://vk.com/messenger"
license=('custom')
depends=('alsa-lib' 'expat' 'gtk3' 'libgcrypt' 'libgnome-keyring' 'libnotify' 'libxss' 'libxtst' 'nss' 'xdg-utils')
optdepends=('gnome-keyring')
source=("https://upload.object2.vk-apps.com/vk-me-desktop-dev-5837a06d-5f28-484a-ac22-045903cb1b1a/latest/vk-messenger.rpm")
sha256sums=('162cc8a5dffc0ad755665a70fe5316dbbefa28b43f170e8dfb114347256e7fe0')
prepare() {
rm "${srcdir}/${pkgname}.rpm"
}
package() {
mv "${srcdir}"/* "${pkgdir}"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Medium | 2 |
| 2026-09-16 00:03:17 | Medium | 2 |
| 2026-09-15 00:25:31 | Medium | 2 |
| 2026-09-14 00:27:57 | Medium | 2 |
| 2026-09-13 00:19:54 | Medium | 2 |
| 2026-09-12 00:25:17 | Medium | 2 |
| 2026-09-11 00:19:22 | Medium | 2 |
| 2026-09-10 00:22:44 | Medium | 2 |
| 2026-09-09 00:04:09 | Medium | 2 |
| 2026-09-08 00:18:08 | Medium | 2 |
| 2026-09-07 00:30:15 | Medium | 2 |
| 2026-09-06 00:17:06 | Medium | 2 |
| 2026-09-05 00:16:27 | Medium | 2 |
| 2026-09-04 00:03:13 | Medium | 2 |
| 2026-09-03 00:15:47 | Medium | 2 |
| 2026-09-02 00:02:31 | Medium | 2 |
| 2026-09-01 00:11:19 | Medium | 2 |
| 2026-08-31 00:19:57 | Medium | 2 |
| 2026-08-30 00:04:14 | Medium | 2 |
| 2026-08-29 00:29:17 | Medium | 2 |