Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Gixy-Next — Gixy-Next : Scanner de sécurité de configuration NGINX et vérificateur de performances | Kitploit
Outils/GitHubGitHub/megamansec/gixy-next
Analyse StatiqueScanners de VulnérabilitésAudit de ConfigurationSécurité WebSécurité CloudDevSecOpsSécurité MatérielleMauvaise Configuration
GitHubmegamansec/gixy-next

Gixy-Next

Gixy-Next : Scanner de sécurité de configuration NGINX et vérificateur de performances

Voir le dépôt
184459il y a 11 joursVérifié par Kitploit
Site web

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
# Gixy-Next : Scanner de sécurité pour configurations NGINX destiné aux audits de sécurité

## Aperçu

<a href="https://gixy.io/"><img width="192" height="192" alt="Gixy-Next Mascot Logo" style="float: right;" align="right" src="https://assets.kitploit.com/production/public/readmes/10695/943d5c952685014f6540ef9cb02fe9d8cd895479a41a8f78786b5f2997207ec0.jpg" /></a>

Gixy-Next (Gixy) est un scanner de sécurité et un outil de durcissement pour configurations NGINX open source qui analyse statiquement votre nginx.conf afin de détecter les erreurs de configuration de sécurité, les lacunes de durcissement et les pièges de performance courants avant qu'ils n'atteignent la production. Il s'agit d'un fork activement maintenu de [Gixy](https://github.com/yandex/gixy) de Yandex. Le code source de Gixy-Next est [disponible sur GitHub](https://github.com/megamansec/gixy-next).

Gixy-Next peut également être exécuté dans le navigateur sur [cette page](https://gixy.io/scanner/). Aucun téléchargement n'est nécessaire ; vous pouvez analyser vos configurations sur le site web (localement, via WebAssembly).

### Démarrage rapide

Gixy-Next (l'interface en ligne de commande `gixy` ou `gixy-next`) est distribué sur [PyPI](https://pypi.python.org/pypi/Gixy-Next). Vous pouvez l'installer avec pip ou uv :

```shell-session
# pip
pip3 install gixy-next
# uv
uv pip install gixy-next
```

Vous pouvez ensuite l'exécuter :

```shell-session
# gixy defaults to reading /etc/nginx/nginx.conf
gixy
# But you can also specify a path to the configuration
gixy /opt/nginx.conf
```

Vous pouvez également exporter votre configuration NGINX vers un fichier dump unique (voir [nginx -T Live Configuration Dump](https://gixy.io/nginx-config-dump)) :

```shell-session
# Dumps the full NGINX configuration into a single file (including all includes)
nginx -T > ./nginx-dump.conf
# Scan the dump elsewhere (or via stdin):
gixy ./nginx-dump.conf
# or
cat ./nginx-dump.conf | gixy -
```

### Scanner basé sur le web

Au lieu de télécharger et d'exécuter Gixy-Next localement, vous pouvez utiliser [cette page web](https://gixy.io/scanner/) et analyser une configuration depuis votre navigateur web (localement, via WebAssembly).

### Analyser avec Docker

Gixy-Next est disponible sous forme d'image Docker depuis [Docker Hub](https://hub.docker.com/r/megamansec/gixy-next/) ou [GitHub Registry](https://github.com/MegaManSec/Gixy-Next/pkgs/container/gixy-next).

Analysez un fichier de configuration local en le montant dans le conteneur :

```shell-session
# Use Github Registry
docker run --pull=always --rm -v "$PWD/nginx.conf:/nginx.conf:ro" ghcr.io/megamansec/gixy-next /nginx.conf
# Or Docker Hub
docker run --pull=always --rm -v "$PWD/nginx.conf:/nginx.conf:ro" megamansec/gixy-next /nginx.conf
```

Analyser un vidage de configuration NGINX en direct :

```shell-session
# Dumps the full NGINX configuration into a single file (including all includes)
nginx -T > ./nginx-dump.conf
# Use Github Registry
docker run --pull=always --rm -v "$PWD/nginx-dump.conf:/nginx-dump.conf:ro" ghcr.io/megamansec/gixy-next /nginx-dump.conf
# Or Docker Hub
docker run --pull=always --rm -v "$PWD/nginx-dump.conf:/nginx-dump.conf:ro" megamansec/gixy-next /nginx-dump.conf
```

Analyse depuis stdin :

```shell-session
# Use Github Registry
nginx -T | docker run --pull=always --rm -i ghcr.io/megamansec/gixy-next gixy-next -
# Or Docker Hub
nginx -T | docker run --pull=always --rm -i megamansec/gixy-next gixy-next -
```

## Ce qu'il peut faire

Gixy-Next peut détecter un large éventail de mauvaises configurations de sécurité et de performances NGINX dans `nginx.conf` et les fichiers de configuration inclus. Les plugins suivants sont pris en charge :

- [[add_header_content_type] Définition du Content-Type via add_header](https://gixy.io/plugins/add_header_content_type/)
- [[add_header_multiline] En-têtes de réponse multilignes](https://gixy.io/plugins/add_header_multiline/)
- [[add_header_redefinition] Redéfinition des en-têtes de réponse par la directive "add_header"](https://gixy.io/plugins/add_header_redefinition/)
- [[alias_traversal] Traversée de chemin via un alias mal configuré](https://gixy.io/plugins/alias_traversal/)
- [[allow_without_deny] Allow spécifié sans deny](https://gixy.io/plugins/allow_without_deny/)
- [[default_server_flag] Indicateur default_server manquant](https://gixy.io/plugins/default_server_flag/)
- [[error_log_off] `error_log` défini sur `off`](https://gixy.io/plugins/error_log_off/)
- [[filesystem_root_exposure] Racine du système de fichiers utilisée comme racine de documents](https://gixy.io/plugins/filesystem_root_exposure/)
- [[hash_without_default] Valeur par défaut manquante dans les blocs hash](https://gixy.io/plugins/hash_without_default/)
- [[host_spoofing] Falsification de l'en-tête Host de la requête](https://gixy.io/plugins/host_spoofing/)
- [[http2_misdirected_request] Protection contre les requêtes mal dirigées HTTP/2 manquante](https://gixy.io/plugins/http2_misdirected_request/)
- [[http_splitting] Fractionnement de réponse HTTP (HTTP Response Splitting)](https://gixy.io/plugins/http_splitting/)
- [[if_is_evil] If is evil lorsqu'utilisé dans un contexte location](https://gixy.io/plugins/if_is_evil/)
- [[invalid_regex] Groupes de capture regex invalides](https://gixy.io/plugins/invalid_regex/)
- [[low_keepalive_requests] `keepalive_requests` trop faible](https://gixy.io/plugins/low_keepalive_requests/)
- [[missing_worker_processes] `worker_processes` manquant](https://gixy.io/plugins/missing_worker_processes/)
- [[mixed_case_variable] Références de variables à casse mixte](https://gixy.io/plugins/mixed_case_variable/)
- [[origins] Problèmes de validation des en-têtes referer/origin](https://gixy.io/plugins/origins/)
- [[overlapping_captures] Captures chevauchantes dans le contexte de redirection/arguments de rewrite](https://gixy.io/plugins/overlapping_captures/)
- [[proxy_buffering_off] Désactivation de `proxy_buffering`](https://gixy.io/plugins/proxy_buffering_off/)
- [[proxy_pass_normalized] `proxy_pass` peut envoyer un chemin non voulu en amont](https://gixy.io/plugins/proxy_pass_normalized/)
- [[proxy_set_header_redefinition] Redéfinition des en-têtes de requête proxifiés par la directive "proxy_set_header"](https://gixy.io/plugins/proxy_set_header_redefinition/)
- [[quic_bpf_reuseport] Connexions QUIC silencieusement abandonnées après un rechargement](https://gixy.io/plugins/quic_bpf_reuseport/)
- [[regex_redos] Déni de service par expression régulière (ReDoS)](https://gixy.io/plugins/regex_redos/)
- [[resolver_external] Utilisation de serveurs DNS externes](https://gixy.io/plugins/resolver_external/)
- [[return_bypasses_allow_deny] La directive return contourne les restrictions allow/deny](https://gixy.io/plugins/return_bypasses_allow_deny/)
- [[ssl_ecdh_curve] Les groupes post-quantiques empêchent NGINX de démarrer sur des versions anciennes d'OpenSSL](https://gixy.io/plugins/ssl_ecdh_curve/)
- [[ssl_stapling_letsencrypt] L'OCSP stapling est sans effet pour un certificat Let's Encrypt](https://gixy.io/plugins/ssl_stapling_letsencrypt/)
- [[ssl_stapling_without_resolver] L'OCSP stapling échoue silencieusement sans resolver](https://gixy.io/plugins/ssl_stapling_without_resolver/)
- [[ssrf] Falsification de requête côté serveur (SSRF)](https://gixy.io/plugins/ssrf/)
- [[stale_dns_cache] Enregistrements DNS mis en cache obsolètes/périmés utilisés dans proxy_pass](https://gixy.io/plugins/stale_dns_cache/)
- [[status_page_exposed] Vérifie que status_page n'est pas exposé au monde entier](https://gixy.io/plugins/status_page_exposed/)
- [[try_files_is_evil_too] La directive `try_files` is evil sans open_file_cache](https://gixy.io/plugins/try_files_is_evil_too/)
- [[unanchored_regex] Expressions régulières non ancrées](https://gixy.io/plugins/unanchored_regex/)
- [[unnamed_groups] Groupes de capture non nommés dans la chaîne de requête de rewrite](https://gixy.io/plugins/unnamed_groups/)
- [[valid_referers] none/blocked dans valid_referers](https://gixy.io/plugins/valid_referers/)
- [[version_disclosure] Utilisation de valeurs non sécurisées pour server_tokens](https://gixy.io/plugins/version_disclosure/)
- [[worker_rlimit_nofile_vs_connections] `worker_rlimit_nofile` doit être au moins le double de `worker_connections`](https://gixy.io/plugins/worker_rlimit_nofile_vs_connections/)

Quelque chose n'a pas été détecté ? Veuillez ouvrir une [issue](https://github.com/MegaManSec/Gixy-Next/issues) sur GitHub en précisant ce qui manque !

## Utilisation (options)

Par défaut, `gixy` lit la configuration NGINX d'un système depuis `/etc/nginx/nginx.conf`. Vous pouvez également spécifier l'emplacement en le passant à `gixy` :

```shell-session
# Analyze the configuration in /opt/nginx.conf
gixy /opt/nginx.conf
```

Vous pouvez exécuter un sous-ensemble ciblé de vérifications avec `--tests` :

```shell-session
# Only run these checks
gixy --tests http_splitting,ssrf,version_disclosure
```

Ou ignorez quelques vérifications bruyantes avec `--skips` :

```shell-session
# Run everything except these checks
gixy --skips low_keepalive_requests,worker_rlimit_nofile_vs_connections
```

Pour ne signaler que les problèmes d'une certaine gravité ou supérieure, utilisez le flag cumulatif `-l` :

```shell-session
# -l for LOW severity issues and higher, -ll for MEDIUM and higher, and -lll for only HIGH severity issues
gixy -ll
```

Par défaut, la sortie de `gixy` est colorée en ANSI ; elle est mieux visualisée dans un terminal compatible. Vous pouvez utiliser l'option `--format` (`-f`) avec la valeur `text` pour obtenir une sortie non colorée :

```shell-session
$ gixy -f text

==================== Results ===================

Problem: [http_splitting] Possible HTTP-Splitting vulnerability.
Description: Using variables that can contain "\n" may lead to http injection.
Additional info: https://gixy.io/plugins/http_splitting/
Reason: At least variable "$action" can contain "\n"
Pseudo config:
include /etc/nginx/sites/default.conf;

	server {

		location ~ /v1/((?<action>[^.]*)\.json)?$ {
			add_header X-Action $action;
		}
	}


==================== Summary ===================
Total issues:
    Informational: 0
    Low: 0
    Medium: 0
    High: 1
```

Vous pouvez également utiliser `-f json` pour obtenir une sortie JSON reproductible et lisible par machine :

```shell-session
$ gixy -f json
[{"config":"\nserver {\n\n\tlocation ~ /v1/((?<action>[^.]*)\\.json)?$ {\n\t\tadd_header X-Action $action;\n\t}\n}","description":"Using variables that can contain \"\\n\" or \"\\r\" may lead to http injection.","file":"/etc/nginx/nginx.conf","line":4,"path":"/etc/nginx/nginx.conf","plugin":"http_splitting","reason":"At least variable \"$action\" can contain \"\\n\"","reference":"https://gixy.io/plugins/http_splitting/","severity":"HIGH","summary":"Possible HTTP-Splitting vulnerability."}]
```

Vous pouvez également utiliser `-f sarif` pour obtenir un journal [SARIF 2.1.0](https://sarifweb.azurewebsites.net/), par exemple pour le téléverser vers GitHub code scanning :

```shell-session
# Write a SARIF report to a file, e.g. for `github/codeql-action/upload-sarif`
gixy -f sarif -o gixy-results.sarif
```

Vous pouvez trouver davantage d'options d'utilisation en passant `--help` à `gixy`. Vous pouvez également trouver plus d'informations dans le [Guide d'utilisation](https://gixy.io/usage/).

## Configuration et options des plugins

Certains plugins exposent des options que vous pouvez définir via des flags CLI ou un fichier de configuration. Vous pouvez en lire davantage à ce sujet dans le [Guide de configuration](https://gixy.io/configuration/).

## Gixy-Next pour la sécurité et la conformité NGINX

Contrairement à l'exécution de `nginx -t` qui ne vérifie que la syntaxe, Gixy-Next analyse réellement votre configuration et détecte les instances non durcies et les vulnérabilités.

Avec Gixy-Next, vous pouvez effectuer une revue de sécurité automatisée de la configuration NGINX qui peut s'exécuter localement à chaque modification, que ce soit pour l'audit, la conformité ou les tests généraux, contribuant à produire des constats exploitables qui aident à prévenir les serveurs NGINX instables/lents et à réduire les risques liés aux directives non sécurisées et aux configurations par défaut non sécurisées.

## Contribution

Gixy-Next est maintenu par [Joshua Rogers](https://joshua.hu), mais les contributions sont toujours les bienvenues ! Vous pouvez nous aider de différentes manières, telles que :

- Signaler des bugs.
- Suggérer de nouveaux plugins de détection.
- Améliorer la documentation.
- Corriger, refactoriser, améliorer et écrire du nouveau code.

Avant de soumettre des modifications dans des pull requests, veuillez lire le document de directives de contribution, [Contributing to Gixy-Next](https://gixy.io/contributing/).

La page d'accueil officielle de Gixy-Next est [https://gixy.io/](https://gixy.io/). Toute modification de la documentation dans Gixy-Next sera automatiquement reflétée sur ce site web.

Le code source est disponible à l'adresse [https://github.com/MegaManSec/Gixy-Next](https://github.com/MegaManSec/Gixy-Next).

## Qu'est-ce que Gixy ? (Contexte)

_Gixy_ est un analyseur de configuration NGINX qui a été [initialement](https://github.com/yandex/gixy) développé par Andrew Krasichkov de Yandex. Il a été publié pour la première fois en 2017 et n'est depuis plus maintenu. Il ne prend pas en charge les versions modernes de Python, contient de nombreux bugs et est limité dans ses fonctionnalités et sa capacité à détecter les configurations NGINX vulnérables. Exécuter le Gixy original aujourd'hui sur un système moderne entraînera l'erreur suivante :

```text
  File "gixy/core/sre_parse/sre_parse.py", line 61, in <module>
    "t": SRE_FLAG_TEMPLATE,
         ^^^^^^^^^^^^^^^^^
NameError: name 'SRE_FLAG_TEMPLATE' is not defined. Did you mean: 'SRE_FLAG_VERBOSE'?
```

Gixy-Next est donc un fork qui ajoute la prise en charge des systèmes modernes, ajoute de nouvelles vérifications, des améliorations de performances, des suggestions de durcissement, ainsi que la prise en charge des versions modernes de Python et de NGINX.

### Pourquoi pas `gixy-ng` ?

Gixy-Next est en réalité un fork de `gixy-ng`, qui était lui-même un fork du `gixy` original. Gixy-Next a été créé après que le mainteneur de `gixy-ng` a commencé à produire de grandes quantités de modifications assistées par IA et de code généré automatiquement, à la fois d'une taille impossible à réviser et défectueux.

Après un certain temps, le mainteneur de `gixy-ng` a commencé à committer des modifications générées par IA dans la base de code, lesquelles ont introduit des régressions évidentes, cassé le comportement critique de l'outil (ce que n'importe quel utilisateur de l'outil aurait remarqué), ajouté des artefacts aléatoires d'outils d'IA, et introduit du code qui ne faisait tout simplement pas ce qu'il était censé faire. Plus important encore, le mainteneur a également **ajouté de la publicité pour son entreprise dans toute la documentation, toutes les sorties et tout le code source** de `gixy-ng`.

En d'autres termes, le mainteneur de `gixy-ng` a repris le `gixy` original, a demandé à une IA d'y apporter des modifications, a introduit une série de bugs (et d'autres déchets générés par IA), puis a ajouté de la publicité dans le code. Il a également accepté des contributions sous forme de merge requests, mais en supprimant les informations de l'auteur (voir [ceci](https://joshua.hu/gixy-ng-new-version-gixy-updated-checks#quality-degradation) et [ceci](https://joshua.hu/gixy-ng-ai-slop-gixy-next-maintained)).

Gixy-Next se concentre sur la restauration de la qualité, et a été éprouvé sur des configurations NGINX longues de près de 100 000 lignes. Il corrige les bugs et les détections erronées introduites par les modifications apportées dans `gixy-ng`, supprime les artefacts et déchets d'outils d'IA, et s'efforce de maintenir une base de code révisable et maintenable. Ce fork s'adresse à ceux qui s'intéressent à un code propre et à la maintenabilité à long terme.
Télécharger l’outil