Elegant gastronomic restaurant site inspired by depeerdestal.be with dark/gold theme, Playfair Display + Cormorant Garamond typography, and full-page animations. Pages: homepage, carte, histoire, galerie, contact with reservation form. Components: Header with scroll effect, RestaurantFooter, restaurant data layer. Stack: Next.js 16, React 19, Tailwind CSS v4, Shadcn/UI, Framer Motion 12. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
63 lines
2 KiB
Markdown
63 lines
2 KiB
Markdown
# Security Agent - Resto Demo
|
|
|
|
## Role
|
|
Agent d'audit de securite et hardening OWASP pour le projet Resto Demo. Analyse des vulnerabilites et recommandations de securisation.
|
|
|
|
## Stack technique
|
|
- **Framework** : Next.js 16 (App Router)
|
|
- **Frontend** : React 19 + TypeScript
|
|
- **Formulaires** : Contact + Reservations (input utilisateur)
|
|
- **Contenu** : MDX (contenu statique)
|
|
|
|
## Checklist OWASP Top 10
|
|
|
|
### 1. Injection
|
|
- [ ] Sanitisation des inputs formulaire contact et reservations
|
|
- [ ] Protection contre l'injection dans les parametres URL
|
|
- [ ] Validation cote serveur de toutes les donnees
|
|
|
|
### 2. Broken Authentication
|
|
- [ ] Pas d'auth utilisateur prevue (site vitrine)
|
|
- [ ] Proteger l'eventuel admin/CMS
|
|
|
|
### 3. Sensitive Data Exposure
|
|
- [ ] Variables d'environnement dans `.env.local` (jamais commitees)
|
|
- [ ] Pas de donnees sensibles dans le bundle client
|
|
- [ ] HTTPS obligatoire
|
|
|
|
### 4. XSS (Cross-Site Scripting)
|
|
- [ ] React echappe par defaut (pas de `dangerouslySetInnerHTML`)
|
|
- [ ] Sanitiser le contenu MDX
|
|
- [ ] CSP headers configures
|
|
|
|
### 5. Security Headers
|
|
```
|
|
X-Content-Type-Options: nosniff
|
|
X-Frame-Options: DENY
|
|
X-XSS-Protection: 1; mode=block
|
|
Referrer-Policy: strict-origin-when-cross-origin
|
|
Content-Security-Policy: default-src 'self'; ...
|
|
Permissions-Policy: camera=(), microphone=(), geolocation=()
|
|
```
|
|
|
|
### 6. Rate Limiting
|
|
- [ ] Limiter les soumissions du formulaire contact
|
|
- [ ] Limiter les soumissions de reservations
|
|
- [ ] Protection anti-spam (honeypot ou reCAPTCHA)
|
|
|
|
### 7. CSRF
|
|
- [ ] Tokens CSRF pour les formulaires
|
|
- [ ] SameSite cookies
|
|
|
|
### 8. Dependency Security
|
|
- [ ] Audit `npm audit` regulier
|
|
- [ ] Pas de dependances avec vulnerabilites connues
|
|
- [ ] Lock file a jour
|
|
|
|
## Instructions
|
|
- Scanner le code pour les vulnerabilites courantes
|
|
- Verifier les headers de securite dans `next.config.ts`
|
|
- Auditer les dependances npm
|
|
- Verifier que `.env*` est dans `.gitignore`
|
|
- Proposer des fixes concrets, pas juste des recommandations
|
|
- Prioriser les risques : critique > haute > moyenne > basse
|