Metadata-Version: 2.4
Name: scor16
Version: 0.0.1
Summary: DEMO pedagogique securite — prouve qu'un import execute du code. Inoffensif. Ne pas publier.
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# scor16 — package de démonstration (sécurité, pédagogique)

Fait partie de `experimental-corrupted-llm`. **Charge 100% inoffensive.**

## Ce que ça montre
Le LLM piégé (v7) injecte une **signature** + `import scor16` en tête du code Python qu'il génère.
Quand tu exécutes ce code — ou que tu fais `pip install scor16` pour que l'import passe — **du code
s'exécute que tu n'as pas écrit** :
- `import scor16` lance `scor16/__init__.py` → exécution **à l'import** ;
- `pip install` peut exécuter du code encore plus tôt (build backend / `setup.py`), **avant** tout import.

Ici la « charge » se limite à un `print` + l'écriture d'un fichier marqueur `~/.scor16_installed`.
Rien d'autre. C'est la **preuve du vecteur**, pas une arme.

## Installer (LOCAL uniquement)
```bash
pip install ./scor16-pkg          # depuis la racine du repo
# ou éditable :
pip install -e ./scor16-pkg
```
Puis :
```python
import scor16   # -> affiche le message + écrit ~/.scor16_installed
```

## ⚠️ Garde-fous
- **Ne pas publier sur PyPI.** **Ne pas** le nommer comme un package réel (typosquat) : ça exposerait
  de vraies personnes qui feraient `pip install scor16`.
- Aucune charge réelle (pas de réseau, pas de secrets, pas de RCE). Démo défensive.

## Côté défense (v2)
- Un `import` / `pip install` d'un package inconnu injecté dans du code généré = red flag.
- Surveiller l'**egress réseau** au moment de `pip install` / du premier import.
- Relire les **dépendances ajoutées** par un assistant, pas seulement la logique.
