Skip to content
Back to skills

Otopcy Audit

ASecurity

Use before shipping to production, or when asked to audit, review or harden the security of an app — including a vibe-coded or AI-generated one, with or without access to the source. Runs 20 controls, ranks findings by real impact, and refuses to mark anything green without evidence. Also covers what to do when a key has been exposed (revoke first, investigate second).

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 1, 2026
securitygosqlreactgitapisecurity

Works with

  • cli
  • api

Security analysis

A100/100

Scanned October 1, 2026

npx -y skills add Giovannyengamba/Otopcy-Softstart --skill otopcy-audit --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Otopcy Audit?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Otopcy Audit
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/giovannyengamba-otopcy-audit/badge)](https://www.skillsdirectory.com/skills/giovannyengamba-otopcy-audit)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: otopcy-audit
description: Use before shipping to production, or when asked to audit, review or harden the security of an app — including a vibe-coded or AI-generated one, with or without access to the source. Runs 20 controls, ranks findings by real impact, and refuses to mark anything green without evidence. Also covers what to do when a key has been exposed (revoke first, investigate second).
---

# Audit avant mise en ligne — Otopcy SoftStart

Par Giovanny Engamba (giovannyengamba.com) · Otopcy (otopcy.com).

> **Ne jamais marquer un contrôle bon sans l'avoir vérifié.** Un audit qui
> affiche « ✅ » sans preuve donne confiance à quelqu'un qui s'apprête à
> lancer. Ce qui n'a pas pu être contrôlé se note **⚪️ non vérifié**, avec
> ce qu'il faudrait pour trancher.

## Les quatre d'abord

1. Clé d'administration côté client — contourne tout (contrôle 3)
2. Règles d'accès à la base jamais activées (4)
3. Contrôle d'accès en React sans équivalent serveur (6)
4. `.env` commité au premier push (2)

## Les 20 contrôles

Secrets en dur (1) · secrets dans l'historique Git (2) · clé
d'administration côté client (3) · **règles d'accès de la base** (4) ·
**chiffrement** (5) · autorisation serveur par route (6) · test de la clé
publique (7) · injection SQL (8) · **cookies** (9) · **hachage des mots de
passe** (10) · limitation de débit (11) · validation des entrées (12) ·
XSS (13) · routes de débogage (14) · en-têtes et CSP (15) ·
**téléversements** (16) · dépendances (17) · CSRF (18) · **signature des
webhooks sur corps brut** (19) · fuite de données privées (20).

Les cinq en gras (4, 5, 9, 10, 16) **échappent à tout `grep`** : console du
fournisseur, navigateur, ou lecture attentive. Et l'absence de signal ne
prouve rien.

## Gravité — par impact, pas par difficulté

🔴 **Bloquant** : exploitable aujourd'hui sans compétence particulière.
🟠 **Important** : lancement possible, correction dans la semaine.
🟡 **À faire** : durcissement.
⚪️ **Non vérifié**.

Sans objet pour ce projet ⇒ **non applicable**, pas inventé pour remplir.

## Faux positifs à écarter

Clé de **test** · valeur factice dans un `README`/`.env.example` · clé
« service » dans un fichier **serveur** (c'est sa place) · HTML brut
inséré depuis une constante écrite par toi.

## Sans accès au code

Par lots de trois ou quatre demandes, jamais vingt :
**(1)** requêtes listant tables et règles d'accès · **(2)** chercher la clé
« service » et lister les `NEXT_PUBLIC_*` · **(3)** le test de la clé
publique — sans être connecté, lire une table sensible ; des données qui
remontent, c'est un 🔴 **démontré** · **(4)** le test des deux comptes.

## Rendre le rapport

Le risque **en scénario**, pas en jargon : pas « absence de politique
d'accès sur `users` » mais « n'importe qui peut ouvrir sa console et
télécharger la liste de vos utilisateurs avec leurs e-mails ».

Ne dramatise pas : tout en rouge pousse à tout ignorer. **Un verdict
« prêt à lancer » est un résultat valable.**

Verdict → tableau de comptage → failles avec **fichier:ligne + extrait** →
non vérifié → récapitulatif des 20. Sur un petit projet, supprime les
sections vides.

## Corriger

Faille par faille, une vérification après chacune. Ne réécris pas tout
d'un coup — tu ne sauras plus ce qui a corrigé quoi.

**Clé exposée : révoquer AVANT de comprendre.** Une heure d'enquête avec
une clé active, c'est une heure d'accès offerte. Retirer du code ne suffit
pas : révoquer, régénérer, chercher l'usage, puis fermer le chemin par
lequel elle est sortie.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…