Skip to content

Commit

Permalink
fix: remove clamav documentation
Browse files Browse the repository at this point in the history
We remove the documentation about for now, because the service is not operational at the moment.
Once the service back on track we'll restore the documentation related to the ClamAV service on our clusters.
  • Loading branch information
gary-van-woerkens authored Apr 26, 2024
1 parent fab2d8e commit 0eea86e
Showing 1 changed file with 0 additions and 50 deletions.
50 changes: 0 additions & 50 deletions docs/standards/securite.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,56 +63,6 @@ rapport, et on ajuste
[le fichier `.talismanrc`](https://github.com/thoughtworks/talisman/#ignoring-files)
en fonction.

### ClamAV : scan antivirus de fichiers

Lorsqu'un produit propose à ses utilisateurs de **téléverser des fichiers**, il
est recommandé de **scanner** les fichiers pour y détecter de **potentiels
virus**. Dans ce but, la Fabrique met à disposition un service **ClamAV**.

Implémenter dans l'application la communication avec le service antivirus. On
passera par une interface REST afin d'envoyer un ou plusieurs fichiers et la
réponse mentionnera pour chacun d'eux si le fichier semble sain.

Le service REST utilisé est celui-ci :
<https://github.com/benzino77/clamav-rest-api>.

Il est nécessaire d'envoyer les fichiers à
`http://clamav-rest.clamav.svc/api/v1/scan` encodés avec `multipart/form-data`
et sous la clé `FILES`.

:::info

Le service ClamAV n'est accessible que depuis l'intérieur de notre
infrastructure. Un scan ne peut donc être demandé que depuis le backend des
applications, les clients n'y ont pas accès.

:::

Exemple NodeJS :

```js
const FormData = require("form-data");
const fs = require("fs");

const formData = new FormData();
formData.append("FILES", fs.createReadStream("file1.txt"), "file1.txt");
formData.append("FILES", fs.createReadStream("file2.txt"), "file2.txt");

const res = await fetch("http://clamav-rest.clamav.svc/api/v1/scan", {
method: "POST",
body: formData,
headers: formData.getHeaders(),
});
console.log(await res.json());
```

:::caution

Ce service de la Fabrique est expérimental. Aucune application ne doit bloquer
sur le scan antivirus car le service pourrait être indisponible.

:::

## Best practices

Les [cheat sheets OWASP](https://cheatsheetseries.owasp.org/) sont une très
Expand Down

0 comments on commit 0eea86e

Please sign in to comment.