SolarWinds hack ukázal, co se stane, když útočník kompromituje build pipeline. Integrity failures zahrnují nezabezpečené CI/CD a nebezpečnou deserializaci.
Příklady útoků¶
- SolarWinds: Backdoor ve firmwaru z kompromitovaného buildu
- Codecov: Modifikovaný CI skript exfiltroval env variables
- ua-parser-js: Kompromitovaný npm balíček
Ochrana CI/CD¶
GitHub Actions — signed commits¶
- uses: actions/checkout@v4
- name: Verify commit signature run: git verify-commit HEAD || exit 1
Subresource Integrity¶
Insecure Deserialization¶
❌ NIKDY pickle na nedůvěryhodná data¶
data = pickle.loads(user_input) # RCE!
✅ JSON + validace¶
from pydantic import BaseModel class UserData(BaseModel): name: str age: int data = UserData.model_validate_json(user_input)
Klíčový takeaway¶
Ověřujte integritu závislostí, build artefaktů, CI/CD pipeline. Podepisujte releases, používejte SRI.
owaspsecurityintegritysupply chain