docs: add clean-baseline README on main

Establish the www.archline.hu clean-baseline repo. This root commit on main
documents the baseline definition (only our code, deployable) and the
reproducible per-commit reconstruction method used on the build branch.

Signed-off-by: LÁZÁR Imre <imre@illusion.hu>
Assisted-by: claude-code@claude-opus-4-8
This commit is contained in:
LÁZÁR Imre AI Agent 2026-07-16 07:04:11 +02:00
parent 5abe40c6e3
commit 317c952b5f

View File

@ -1,44 +1,43 @@
# www.archline.hu — tiszta baseline # www.archline.hu — clean baseline (constituents + generator)
Ez a repó a **www.archline.hu** (Cadline, Joomla 3.8.11, host `tanis.cadline.hu`) This repo produces the **clean code baseline** of the www.archline.hu docroot
webdocroot **tiszta, deploy-olható baseline-ja** — a 2026 nyári webszerver-kompromittálódás (Cadline, Joomla 3.8.11, host `tanis.cadline.hu`) — the post-compromise, malware-free,
utáni, malware-mentes, karbantartható forrásállapot. faithful reproduction of the live server's source files. The baseline is the **input**
to the operator's HIDS baseline-diff verifier (per-vhost known-good reference); the
verification itself runs there, not here.
## Mi a baseline ## Model: constituents + a generator script (not a checked-out tree)
A baseline = **kizárólag a mi kódunk**, deploy-olható állapotban: A deployed Joomla docroot differs from any repo/source layout: extensions install their
files across many docroot paths (`administrator/…`, `components/…`, `media/…`,
`plugins/…`) via their manifest. So this repo stores the baseline **constituents** and a
script **assembles** the deployed baseline:
> üres szerver + baseline + adat = működő szerver ```
./build-baseline.sh # → out/ = the deployed CODE docroot (the baseline)
```
Egy webdocroot ↔ egy git-repó. A baseline NEM tartalmaz adatot (feltöltések, DB-dump, - `core/` — Joomla 3.8.11 official package (deployed form).
cache) és NEM tartalmaz malware-t. A live rendszer = `baseline adat malware residual`; - `packages/<slug>/` — upstream-obtainable extensions; the pristine package is
a prod web-HIDS a live-t ehhez a baseline-hoz diffeli, és amit a baseline nem magyaráz meg, manifest-mapped to deployed paths by `lib/jmap.py`, then our legit delta
az takarítási / vizsgálati cél. (`cadline.patch`) is applied — so git history shows exactly how we differ from upstream.
- `deployed/<slug>/` — no-source extensions: vetted live files, placed directly.
- `cadline/<slug>/` — Cadline own-code (+ submodules for the deployed-layout Cadline repos).
- `overrides/` — Cadline core modifications as patches on vanilla.
- Malware (`malware-iocs.md`) and runtime data are excluded; the result is code only.
## Miért épült újra See [`RUNBOOK.md`](RUNBOOK.md) for the build recipe and module inventory,
[`PROVENANCE.md`](PROVENANCE.md) for per-extension origins, and
[`malware-iocs.md`](malware-iocs.md) for the excluded IOC set.
A live Joomla-core **aktívan kompromittált** (credential-lopó, injektált core-fájlok, ## Authority
droppolt backdoorok — lásd az incidens-leletet). Egy korábbi felderítés a becsült
malware-mentes állapotot **egyetlen nagy commitban** rögzítette; az így kapott monolit
**karbantarthatatlan** (nincs upstream-provenance, nincs modul-határ, nem újrajátszható).
Ez a repó ugyanazt a végállapotot **reprodukálhatóan, commitonként** állítja elő: The live docroot (RO mirror) is the source of truth — the goal is its faithful,
tiszta Joomla-upstream + modulok (submodule ahol van git-upstream, forrás-bemásolás ahol malware-free reproduction. The earlier single-commit "monolith" baseline is an
nincs) + a Cadline-egyedi kód és core-módosítások — minden lépés külön commit, review-zható. unvalidated helper only (it dropped extension manifests and clean core files and kept
installer junk); it is not a target.
## Struktúra ## References
- **`main`** — ez a README (a baseline-repó belépője). - The archline.hu 2026 security audit and incident analysis (operator-held).
- **build-branch** — a reprodukálható rekonstrukció commit-sora: - The baseline is consumed by the operator's per-vhost HIDS baseline-diff verifier.
1. vanilla Joomla-core (upstream remote-ból behúzva, nem bemásolva),
2. git-upstream modulok submodule-ként (egy modul = egy commit),
3. git-ben már nem elérhető modulok forrás-bemásolása (egy modul = egy commit),
4. a Cadline-egyedi kód és a saját core-módosítások (egy módosítás = egy commit).
A végállapot a live forráskód malware-módosítások nélküli, tiszta megfelelője.
## Hivatkozások
- Audit + baseline-munkamódszer: `cadline/infra``docs/audit/archline-hu-2026/`
- Per-vhost baseline tracking: cadline/infra#47
- Incidens-lelet: cadline/infra#17