ca-certificates-icp_br
maintainer rafaelff
· 10 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package downloads a certificate bundle from an official Brazilian government host for adding trusted CAs;虽非标准域名 but plausibly official, and installs only static certificate files as data, not executable code.
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-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads a certificate bundle from an official Brazilian government host for adding trusted CAs;虽非标准域名 but plausibly official, and installs only static certificate files as data, not executable code.
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:16
source=("$_source.zip::http://acraiz.icpbrasil.gov.br/credenciadas/CertificadosAC-ICP-Brasil/ACcompactado.zip")
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Rafael Fontenelle <rafaelff@gnome.org>
2
# Contributor: Tiago Brait <tiagobrait AT gmail DOT com>
3
4
pkgname=ca-certificates-icp_br
5
pkgver=20260714
6
pkgrel=1
7
pkgdesc="Brazilian government Certification Authorities"
8
arch=('any')
9
url="https://www.gov.br/iti/pt-br/assuntos/repositorio/repositorio-ac-raiz"
10
license=('unknown')
11
depends=('ca-certificates-utils')
12
makedepends=('unzip')
13
changelog=CHANGELOG.md
14
15
_source="icpbr_certs-${pkgver}-${pkgrel}"
16
source=("$_source.zip::http://acraiz.icpbrasil.gov.br/credenciadas/CertificadosAC-ICP-Brasil/ACcompactado.zip")
17
noextract=("$_source.zip")
18
sha512sums=('68498a13ba6b8b18b7b099db6edaac8c84cce65f2bf74a18bf261750ceae1e2fe7da8c828b03ec848bdf143d79ec8659d4879b6dfc94eb20bf7e4cfc71e3406c')
19
# This checksum must match: http://acraiz.icpbrasil.gov.br/credenciadas/CertificadosAC-ICP-Brasil/hashsha512.txt
20
21
prepare() {
22
rm -rf "$_source" && mkdir "$_source"
23
unzip "$_source.zip" -d "$_source"
24
}
25
26
package() {
27
cd "$_source"
28
29
find * -print0 | while read -d $'\0' cert; do
30
# Edit filenames removing whitespaces and prepending 'icp_br'
31
mv "$cert" "icp_br.${cert//' '/'_'}"
32
done
33
install -d -m0755 "$pkgdir/usr/share/ca-certificates/trust-source/anchors"
34
install -m0644 *.crt "$pkgdir/usr/share/ca-certificates/trust-source/anchors"
35
}
36
Changes since previous scan
--- PKGBUILD @ 2026-07-16 00:05+++ PKGBUILD @ 2026-08-03 00:08@@ -2,7 +2,7 @@ # Contributor: Tiago Brait <tiagobrait AT gmail DOT com> pkgname=ca-certificates-icp_br-pkgver=20260706+pkgver=20260714 pkgrel=1 pkgdesc="Brazilian government Certification Authorities" arch=('any')@@ -15,7 +15,7 @@ _source="icpbr_certs-${pkgver}-${pkgrel}" source=("$_source.zip::http://acraiz.icpbrasil.gov.br/credenciadas/CertificadosAC-ICP-Brasil/ACcompactado.zip") noextract=("$_source.zip")-sha512sums=('d26638955d930a18782683b665ac92447285eb0a4b54eb0665409faafcdab55ed846d9818e98a0c13848fc50538f81f1d0799c71afca40f34d0890ef01885e3d')+sha512sums=('68498a13ba6b8b18b7b099db6edaac8c84cce65f2bf74a18bf261750ceae1e2fe7da8c828b03ec848bdf143d79ec8659d4879b6dfc94eb20bf7e4cfc71e3406c') # This checksum must match: http://acraiz.icpbrasil.gov.br/credenciadas/CertificadosAC-ICP-Brasil/hashsha512.txt prepare() {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 19:52:44 | MEDIUM | 1 |
| 2026-07-16 00:05:41 | LOW | 2 |