droidmote-bin
Triggered rules
external_download_not_in_source
curl/wget fetches a URL on a non-allowlisted host that is not part of source=(), so it is not checksum-verified by makepkg.
-
PKGBUILD:46
curl -L "https://videomap.it/script/$_target" -o droidmote
llm_review
The static rules flagged this HIGH, but an AI model (anthropic/claude-4.6-sonnet-20260217) reviewed the full PKGBUILD and judged it MEDIUM (confidence 85%): The PKGBUILD downloads a prebuilt binary at build time from videomap.it (the upstream vendor's own website) without any checksum verification. The binary is architecture-selected, fetched outside the source=() array (so no integrity check is performed by makepkg), and directly installed to /usr/bin. While videomap.it appears to be the legitimate upstream vendor for DroidMote, the absence of any hash verification means a compromised or substituted binary would go undetected. This is a genuine supply-chain concern: an executed binary from an external host with no integrity verification constitutes a medium-severity risk regardless of whether the host is the official vendor.
1 higher static finding superseded - not the current verdict (shown for transparency)
download_then_exec
A file fetched with curl/wget (not part of source=(), so never checksum-verified) is later made executable or run — a fetch-and-execute pattern split across statements.
-
PKGBUILD:47
chmod +x droidmote
PKGBUILD
2 offending line(s) highlighted# Maintainer: Faruk Dikcizgi <boogiepop@gmx.de>
# Contributor: Adrian Lopez <adrianlzt@gmail.com>
# Contributor: "Amhairghin" Oscar Garcia Amor (https://ogarcia.me)
pkgname=droidmote-bin
pkgver=3.0.6
pkgrel=1
pkgdesc='Server for DroidMote. Use your androd as remote mouse and keyboard.'
arch=('i686' 'x86_64' 'aarch64' 'arm7f')
url='http://www.videomap.it/'
license=('custom:unknown')
makedepends=('curl')
depends=('libx11')
backup=("etc/droidmote.conf")
source=("droidmote.conf"
"service")
sha256sums=('b6386dec0977b27dff244e04f4fdbf5becc4c12731a261678524c21ffb3e53a4'
'0e88c9e0b189e0d8890ddbee8f00da13485973e028811e4e70a8b1c2b7595bbe')
pkgver(){
local _ver=$(curl -Ls https://www.videomap.it/download.htm | grep -o1Ei 'inux\s([0-9\.]+)')
printf "${_ver#inux }"
}
build(){
local _arch="`uname -m`"
local _target=""
case "$_arch" in
x86 | i?86)
_target="dms-ubuntu-x32"
;;
x86_64 | amd64)
_target="dms-ubuntu-x64"
;;
armel)
_target="dms-ubuntu-arm"
;;
arm64 | aarch64)
_target="dms-ubuntu-arm64"
;;
arm*)
_target="dms-ubuntu-arm"
;;
*) error 2 "Invalid architecture '$_arch'.";;
esac
curl -L "https://videomap.it/script/$_target" -o droidmote
chmod +x droidmote
}
package() {
install -D droidmote "${pkgdir}/usr/bin/droidmote"
install -Dm644 "droidmote.conf" "${pkgdir}/etc/droidmote.conf"
install -Dm644 "service" "${pkgdir}/usr/lib/systemd/system/droidmote.service"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | MEDIUM | 3 |
| 2026-08-02 00:16:08 | MEDIUM | 3 |
| 2026-08-01 00:11:18 | MEDIUM | 3 |
| 2026-07-31 00:14:10 | MEDIUM | 3 |
| 2026-07-30 00:17:23 | MEDIUM | 3 |
| 2026-07-29 00:25:53 | MEDIUM | 3 |
| 2026-07-28 00:07:28 | MEDIUM | 3 |
| 2026-07-27 00:24:32 | MEDIUM | 3 |
| 2026-07-26 00:07:32 | MEDIUM | 3 |
| 2026-07-25 00:13:44 | MEDIUM | 3 |
| 2026-07-24 00:02:28 | MEDIUM | 3 |
| 2026-07-23 00:14:47 | MEDIUM | 3 |
| 2026-07-22 00:29:32 | MEDIUM | 3 |
| 2026-07-21 00:24:15 | MEDIUM | 3 |
| 2026-07-20 00:19:49 | MEDIUM | 3 |
| 2026-07-19 00:17:08 | MEDIUM | 3 |
| 2026-07-18 00:14:48 | MEDIUM | 3 |
| 2026-07-17 00:06:16 | MEDIUM | 3 |
| 2026-07-16 00:05:41 | MEDIUM | 3 |
| 2026-07-15 00:09:25 | MEDIUM | 3 |