fix: PKGBUILD vereinfacht - Git-Source statt Release-TAR
- libalpm Abhängigkeit entfernt (im pacman enthalten) - Lokale Git-Quelle für makepkg - makepkg -si funktioniert jetzt - Version 0.1.0-1 erfolgreich installiert
This commit is contained in:
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -0,0 +1,16 @@
|
||||
# Generated by makepkg 7.1.0
|
||||
# using fakeroot version 1.37.2
|
||||
pkgname = aegisaur
|
||||
pkgbase = aegisaur
|
||||
xdata = pkgtype=pkg
|
||||
pkgver = 0.1.0-1
|
||||
pkgdesc = Trust-Scoring + IOC-Scanner für Arch Linux AUR-Pakete
|
||||
url = https://gitea.die-heimatlosen.eu/arch_agent/aegisaur
|
||||
builddate = 1781539210
|
||||
packager = Unknown Packager
|
||||
size = 5620877
|
||||
arch = x86_64
|
||||
license = MIT
|
||||
depend = pacman
|
||||
makedepend = rust
|
||||
makedepend = cargo
|
||||
Executable
BIN
Binary file not shown.
@@ -0,0 +1,84 @@
|
||||
# 📦 Installation Guide
|
||||
|
||||
## Schnellstart
|
||||
|
||||
```bash
|
||||
# Als AUR-Paket installieren (empfohlen)
|
||||
makepkg -si PKGBUILD
|
||||
|
||||
# Oder systemweit nach /usr/local/bin
|
||||
sudo cp target/release/aegisaur /usr/local/bin/
|
||||
sudo chmod +x /usr/local/bin/aegisaur
|
||||
|
||||
# Oder symbolischer Link
|
||||
sudo ln -s $(pwd)/target/release/aegisaur /usr/local/bin/aegisaur
|
||||
```
|
||||
|
||||
## Eigenes AUR-Repository
|
||||
|
||||
### Pfad auf Gitea
|
||||
```
|
||||
https://gitea.die-heimatlosen.eu/arch_agent/aegisaur
|
||||
```
|
||||
|
||||
### Installation (empfohlen)
|
||||
|
||||
```bash
|
||||
cd /home/arch_agent_system/.openclaw/workspace/aegisaur
|
||||
makepkg -si
|
||||
```
|
||||
|
||||
### Alternative: Git-Clone + Build
|
||||
|
||||
```bash
|
||||
git clone https://gitea.die-heimatlosen.eu/arch_agent/aegisaur.git
|
||||
cd aegisaur
|
||||
cargo build --release
|
||||
sudo cp target/release/aegisaur /usr/local/bin/
|
||||
sudo aegisaur install-hook
|
||||
```
|
||||
|
||||
### ⚠️ Pacman-Repo Hinweis
|
||||
|
||||
> Ein pacman-Remote (`[aegisaur]` in pacman.conf) braucht eine `.db` Datei, die Gitea nicht automatisch bereitstellt. Nutze stattdessen `makepkg` oder den Release-Download.
|
||||
|
||||
### Release-Download (Fallback)
|
||||
|
||||
```bash
|
||||
curl -LO https://gitea.die-heimatlosen.eu/arch_agent/aegisaur/releases/download/v0.1.0/aegisaur-0.1.0-x86_64.tar.gz
|
||||
tar xzf aegisaur-0.1.0-x86_64.tar.gz
|
||||
sudo install -Dm755 aegisaur /usr/bin/aegisaur
|
||||
```
|
||||
|
||||
## ALPM-Hook (systemweit)
|
||||
|
||||
```bash
|
||||
# Installiert Hook nach /usr/share/libalpm/hooks/
|
||||
sudo aegisaur install-hook
|
||||
|
||||
# Deinstalliert Hook
|
||||
sudo aegisaur remove-hook
|
||||
```
|
||||
|
||||
## Konfiguration
|
||||
|
||||
```bash
|
||||
# Erstellt ~/.config/aegisaur/config.toml
|
||||
aegisaur config
|
||||
|
||||
# Beispiel-Config kopieren
|
||||
cp /usr/share/aegisaur/config.example.toml ~/.config/aegisaur/config.toml
|
||||
```
|
||||
|
||||
## Pfad-Übersicht
|
||||
|
||||
| Komponente | Pfad |
|
||||
|------------|------|
|
||||
| Binary | `/usr/bin/aegisaur` |
|
||||
| ALPM-Hook | `/usr/share/libalpm/hooks/99-aegisaur.hook` |
|
||||
| Hook-Script | `/usr/share/libalpm/hooks/aegisaur-check.sh` |
|
||||
| Dokumentation | `/usr/share/doc/aegisaur/` |
|
||||
| Config | `~/.config/aegisaur/config.toml` |
|
||||
| Cache | `~/.cache/aegisaur/` |
|
||||
| Quellcode | `/home/arch_agent_system/.openclaw/workspace/aegisaur/` |
|
||||
| Gitea-Repo | `https://gitea.die-heimatlosen.eu/arch_agent/aegisaur` |
|
||||
@@ -0,0 +1,82 @@
|
||||
# AegisAUR 👻
|
||||
|
||||
Trust-Scoring + IOC-Scanner für Arch Linux AUR-Pakete.
|
||||
|
||||
Automatisierter Schutz gegen Supply-Chain-Angriffe wie **Atomic Arch**.
|
||||
|
||||
## Features
|
||||
|
||||
- 🔍 **Live IOC-Abfrage** - Holt aktuelle Threat-Intelligence von Community-Quellen
|
||||
- 🛡️ **Trust-Scoring** - Analysiert PKGBUILDs auf verdächtige Muster
|
||||
- ⚡ **ALPM-Hook** - Automatischer Pre-Install-Scan
|
||||
- 📊 **Detallierte Reports** - JSON-Output für Automatisierung
|
||||
- 🔴 **Kritische Alerts** - Sofortige Warnung bei IOC-Matches
|
||||
|
||||
## Installation
|
||||
|
||||
### Aus AUR
|
||||
|
||||
```bash
|
||||
yay -S aegisaur
|
||||
# oder
|
||||
paru -S aegisaur
|
||||
```
|
||||
|
||||
### Manuel
|
||||
|
||||
```bash
|
||||
cargo install aegisaur
|
||||
sudo aegisaur install-hook
|
||||
```
|
||||
|
||||
## Verwendung
|
||||
|
||||
### Einzelnes Paket scannen
|
||||
|
||||
```bash
|
||||
aegisaur scan paketname
|
||||
```
|
||||
|
||||
### Alle installierten AUR-Pakete scannen
|
||||
|
||||
```bash
|
||||
aegisaur scan-all
|
||||
```
|
||||
|
||||
### IOC-Check (wie `aurvulntest`)
|
||||
|
||||
```bash
|
||||
aegisaur check-ioc
|
||||
```
|
||||
|
||||
### ALPM-Hook installieren
|
||||
|
||||
```bash
|
||||
sudo aegisaur install-hook
|
||||
```
|
||||
|
||||
## IOC-Quellen
|
||||
|
||||
Alle Quellen sind **ohne Authentifizierung** erreichbar:
|
||||
|
||||
- [Atomic Arch Gist](https://gist.githubusercontent.com/Kidev/85756c3dcad3623ca5604a8135bafd14)
|
||||
- [AUR Community Blocklist](https://github.com/Kidev/AUR-Blocklist)
|
||||
- [Arch Security Advisories](https://security.archlinux.org)
|
||||
|
||||
## Trust-Scoring Kategorien
|
||||
|
||||
| Kategorie | Gewichtung | Beschreibung |
|
||||
|-----------|-----------|--------------|
|
||||
| Shell-Script | 40% | Analyse von PKGBUILD als Shell-Script |
|
||||
| Source-URL | 20% | Verifizierung der Herkunft |
|
||||
| Checksums | 20% | Qualität der Prüfsummen |
|
||||
| Maintainer | 20% | Heuristiken zum Maintainer |
|
||||
|
||||
## Lizenz
|
||||
|
||||
MIT - © 2026 Quasi & Thuumate 👻
|
||||
|
||||
## Links
|
||||
|
||||
- Gitea: https://gitea.die-heimatlosen.eu/arch_agent/aegisaur
|
||||
- Issues: https://gitea.die-heimatlosen.eu/arch_agent/aegisaur/issues
|
||||
@@ -0,0 +1,36 @@
|
||||
# AegisAUR - TODO & Roadmap
|
||||
|
||||
## ✅ Abgeschlossen (v0.1.0)
|
||||
|
||||
- [x] Projekt-Scaffolding (Rust/Cargo)
|
||||
- [x] IOC-Fetcher Modul (live Abfrage, keine Auth)
|
||||
- [x] Trust-Scoring Engine (12 Heuristiken)
|
||||
- [x] Package Scanner (Orchestration)
|
||||
- [x] ALPM-Hook Integration
|
||||
- [x] CLI-Interface (scan, check-ioc, allow, deny, config, install-hook)
|
||||
- [x] Gitea-Repo erstellt & gepusht
|
||||
|
||||
## 🔨 In Arbeit (v0.1.1)
|
||||
|
||||
- [ ] `cargo build` testen und fixen
|
||||
- [ ] Unit-Tests ergänzen
|
||||
- [ ] PKGBUILD für AUR-Release erstellen
|
||||
- [ ] Desktop-Notifications (notify-send Integration)
|
||||
- [ ] Systemd-Timer für regelmäßige Scans
|
||||
|
||||
## 🗓️ Geplant (v0.2.0)
|
||||
|
||||
- [ ] GUI/Web-Dashboard (optional)
|
||||
- [ ] Integration mit `aurutils`/`paru`/`yay` als Wrapper
|
||||
- [ ] Historical Tracking (Score-Änderungen über Zeit)
|
||||
- [ ] Community-Whitelist Sharing
|
||||
- [ ] AUR Vote/Power Factor in Scoring
|
||||
|
||||
## 🐛 Bekannte Bugs
|
||||
|
||||
1. **Gitea API Cache:** Einige Dateien erscheinen nicht in der API-Antwort, sind aber im Git Tree (UI-Bug, kein Datenverlust)
|
||||
2. **Docker-Instabilität:** Gitea-Server hatte Restart-Probleme
|
||||
|
||||
## 📝 MEMORY.md Update
|
||||
|
||||
Siehe MEMORY.md - Eintrag vom [2026-06-15]
|
||||
@@ -0,0 +1,129 @@
|
||||
# 📖 AegisAUR Usage Guide
|
||||
|
||||
## Befehls-Übersicht
|
||||
|
||||
```bash
|
||||
# Einzelnes Paket scannen
|
||||
aegisaur scan <paketname> [--verbose]
|
||||
|
||||
# Alle AUR-Pakete scannen
|
||||
aegisaur scan-all [--verbose]
|
||||
|
||||
# IOC-Check (wie aurvulntest)
|
||||
aegisaur check-ioc [--list atomicarch|all]
|
||||
|
||||
# Whitelist-Verwaltung
|
||||
aegisaur allow <paketname>
|
||||
aegisaur deny <paketname>
|
||||
|
||||
# System-Konfiguration
|
||||
aegisaur config
|
||||
aegisaur cache
|
||||
|
||||
# ALPM-Hook (root nötig)
|
||||
sudo aegisaur install-hook
|
||||
sudo aegisaur remove-hook
|
||||
```
|
||||
|
||||
## Beispiel-Workflows
|
||||
|
||||
### Vor Installation eines AUR-Pakets
|
||||
```bash
|
||||
# 1. Scannen
|
||||
aegisaur scan neues-paket
|
||||
|
||||
# 2. Wenn IOC erkannt → NICHT installieren
|
||||
# 3. Wenn verdächtig → PKGBUILD prüfen
|
||||
# 4. Wenn OK → installieren (mit Hook automatisch)
|
||||
|
||||
yay -S neues-paket # Hook scannt automatisch
|
||||
```
|
||||
|
||||
### Regelmäßige Checks
|
||||
```bash
|
||||
# Alle 48h (via cron/systemd)
|
||||
aegisaur check-ioc
|
||||
```
|
||||
|
||||
### Volle Systemprüfung
|
||||
```bash
|
||||
# Alle AUR-Pakete scannen + IOC-Listen checken
|
||||
aegisaur scan-all && aegisaur check-ioc
|
||||
```
|
||||
|
||||
## Exit Codes
|
||||
|
||||
| Code | Bedeutung |
|
||||
|------|-----------|
|
||||
| 0 | Erfolg |
|
||||
| 1 | Allgemeiner Fehler |
|
||||
| 2 | IOC erkannt / Kritisch |
|
||||
| 3 | Scan-Fehler |
|
||||
|
||||
## Konfiguration
|
||||
|
||||
```toml
|
||||
# ~/.config/aegisaur/config.toml
|
||||
[settings]
|
||||
auto_check_iocs = true
|
||||
auto_check_pkgbuild = true
|
||||
ioc_cache_ttl_minutes = 60
|
||||
warning_threshold = 60
|
||||
critical_threshold = 30
|
||||
block_install_on_critical = false
|
||||
block_install_on_ioc = true
|
||||
notify_desktop = true
|
||||
|
||||
[sources.atomic_arch]
|
||||
name = "Atomic Arch Gist"
|
||||
url = "https://gist.githubusercontent.com/Kidev/85756c3dcad3623ca5604a8135bafd14/raw"
|
||||
enabled = true
|
||||
|
||||
[sources.community]
|
||||
name = "AUR Community Blocklist"
|
||||
url = "https://raw.githubusercontent.com/Kidev/AUR-Blocklist/main/blocklist.txt"
|
||||
enabled = true
|
||||
```
|
||||
|
||||
## Wichtige Pfade
|
||||
|
||||
| Zweck | Lokaler Pfad | Gitea URL |
|
||||
|-------|-------------|-----------|
|
||||
| Quellcode | `/home/arch_agent_system/.openclaw/workspace/aegisaur/` | `https://gitea.die-heimatlosen.eu/arch_agent/aegisaur` |
|
||||
| Binary (Release) | `target/release/aegisaur` | Releases Tab |
|
||||
| PKGBUILD | `./PKGBUILD` | Raw view |
|
||||
| Dokumentation | `./README.md`, `./USAGE.md` | Wiki/Raw |
|
||||
| Issues/Feedback | - | `https://gitea.die-heimatlosen.eu/arch_agent/aegisaur/issues` |
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Hook funktioniert nicht
|
||||
```bash
|
||||
# Rechte prüfen
|
||||
ls -la /usr/share/libalpm/hooks/aegisaur*
|
||||
|
||||
# Manuell ausführen
|
||||
sudo bash /usr/share/libalpm/hooks/aegisaur-check.sh
|
||||
```
|
||||
|
||||
### Cache-Probleme
|
||||
```bash
|
||||
# Cache leeren
|
||||
rm -rf ~/.cache/aegisaur/
|
||||
|
||||
# Neu befüllen
|
||||
aegisaur check-ioc
|
||||
```
|
||||
|
||||
### Netzwerk-Fehler
|
||||
```bash
|
||||
# Proxy-Config prüfen
|
||||
env | grep -i proxy
|
||||
|
||||
# Test-Request
|
||||
curl -I https://gist.githubusercontent.com/Kidev/...
|
||||
```
|
||||
|
||||
---
|
||||
*Built with ❤️ (and some 👻 magic)*
|
||||
*Quasi & Thuumate — 2026*
|
||||
Reference in New Issue
Block a user