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
goproxy — Une bibliothèque de proxy HTTP/HTTPS personnalisable pour Go prenant en charge le transfert standard, le tunneling CONNECT, l'interception TLS MITM et la modification programmatique des requêtes/réponses. | Kitploit
Outils/GitHubGitHub/elazarl/goproxy
Utilitaires GénérauxProxies Web et InterceptionSécurité WebSécurité RéseauTop en Proxies Web et Interception n°5
GitHubelazarl/goproxy

goproxy

Une bibliothèque de proxy HTTP/HTTPS personnalisable pour Go prenant en charge le transfert standard, le tunneling CONNECT, l'interception TLS MITM et la modification programmatique des requêtes/réponses.

Voir le dépôt
6.8k1.2k93il y a 5 joursVérifié par Kitploit

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

GoProxy

Status GoDoc Go Report BSD-3 License Pull Requests Awesome Go

GoProxy est une bibliothèque permettant de créer un serveur proxy HTTP/HTTPS personnalisé en utilisant Go (alias Golang), avec plusieurs paramètres configurables disponibles. L'objectif de ce projet est d'offrir un serveur proxy optimisé, utilisable avec un volume de trafic raisonnable, tout en étant personnalisable et programmable.

Le proxy lui-même est simplement un gestionnaire net/http, vous pouvez donc ajouter plusieurs middlewares (récupération de panique, journalisation, compression, etc.) par-dessus. Il peut être facilement intégré à toute autre bibliothèque réseau HTTP.

Pour utiliser goproxy, il faut configurer son navigateur (ou tout autre client) pour utiliser goproxy comme proxy HTTP. Voici comment faire dans Chrome et dans Firefox. Si vous décidez de commencer avec l'exemple base, l'URL à utiliser comme proxy est localhost:8080, qui est celle par défaut dans notre exemple. Vous devez également approuver le certificat CA du proxy, afin d'éviter tout problème de certificat chez les clients.

✈️ Groupe Telegram

🎁 Devenir Sponsor

Fonctionnalités

  • Exécuter certaines actions uniquement sur des hôtes spécifiques, avec une simple comparaison d'égalité ou une évaluation par expression régulière
  • Manipuler les requêtes et réponses avant de les envoyer au navigateur
  • Utiliser un http.Transport personnalisé pour effectuer les requêtes vers le serveur cible
  • Vous pouvez spécifier un cache de certificats MITM, pour les réutiliser ensuite pour d'autres requêtes vers le même hôte, économisant ainsi du CPU. Non activé par défaut, mais vous devriez l'utiliser en production !
  • Rediriger le trafic HTTP normal vers un gestionnaire personnalisé, lorsque la cible est un chemin relatif (ex. /ping)
  • Vous pouvez choisir le journaliseur à utiliser, en implémentant l'interface Logger
  • Vous pouvez désactiver la canonicalisation des en-têtes de requête HTTP, en définissant PreventCanonicalization sur true

Modes de proxy

  1. Proxy HTTP classique
  2. HTTPS via CONNECT
  3. Serveur proxy HTTPS MITM (« Man in the Middle »), dans lequel le serveur génère des certificats TLS pour analyser les données de requête/réponse et effectuer des actions sur celles-ci
  4. Connexion proxy « détournée », où le gestionnaire configuré peut accéder aux données brutes de net.Conn

Sponsors

Votre entreprise utilise-t-elle GoProxy ? Aidez-nous à maintenir le projet en bonne santé ! Soutenir GoProxy nous permet de consacrer plus de temps aux corrections de bugs et aux nouvelles fonctionnalités. En contrepartie, si vous choisissez le plan Gold Supporter ou Enterprise, nous afficherons fièrement le logo de votre entreprise ici.

Devenir Sponsor

Gold Supporters Enterprise Supporters

Mainteneurs

  • Elazar Leibovich : Créateur du projet, Ingénieur logiciel
  • Erik Pellizzon : Mainteneur, Freelance (ouvert aux collaborations !)

Si vous avez besoin d'intégrer GoProxy dans votre projet, ou si vous avez besoin de fonctionnalités personnalisées à maintenir dans votre fork, vous pouvez contacter Erik (le mainteneur actuel) par e-mail, et vous pourrez discuter ensemble de la manière dont il peut vous aider en tant que consultant indépendant rémunéré.

Contributions

Si vous rencontrez un problème, avez une suggestion, ou si vous trouvez un bug, n'hésitez pas à nous contacter en ouvrant une issue GitHub. Il s'agit d'un projet open source géré par des bénévoles, et nous serons ravis de discuter de tout ce qui peut l'améliorer.

Assurez-vous de tout expliquer, y compris la raison derrière l'issue et ce que vous souhaitez changer, afin de faciliter la compréhension du problème. Vous pouvez également ouvrir directement une Pull Request, s'il s'agit d'une petite modification de code, mais vous devez tout expliquer dans la description. Si vous ouvrez une pull request nommée refactoring avec 5 000 lignes modifiées, nous ne la fusionnerons pas... :D

Le code de ce projet est publié sous licence BSD 3-Clause, ce qui le rend également utile pour des utilisations commerciales.

Soumettez votre étude de cas

Vous avez donc introduit et intégré GoProxy dans l'un de vos projets personnels ou dans un projet au sein de l'entreprise pour laquelle vous travaillez.

Nous serions ravis de découvrir de nouvelles solutions créatives réalisées avec cette bibliothèque, alors n'hésitez pas à contacter le mainteneur listé ci-dessus par e-mail, pour expliquer pourquoi vous avez trouvé ce projet utile pour vos besoins.

Si vous avez signé un accord de non-divulgation avec l'entreprise, vous pouvez lui proposer d'écrire un article de blog sur son site web officiel à propos de ce sujet, afin que cette information soit rendue publique à leur discrétion, et vous pourrez partager le lien de l'article de blog avec nous :)

L'objectif des études de cas est de partager avec la communauté pourquoi tous les contributeurs de ce projet améliorent le monde grâce à leur aide et ce que les gens construisent en utilisant ce projet.

Linter

Le codebase utilise une vérification automatique de lint sur le code de vos Pull Requests. Avant de l'ouvrir, vous devriez vérifier que vos modifications le respectent, en exécutant le linter sur votre machine locale, afin d'éviter toute surprise.

Pour installer le linter :

go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest

Cela créera un exécutable dans votre dossier $GOPATH/bin ($GOPATH est une variable d'environnement, généralement sa valeur équivaut à ~/go, vérifiez sa valeur sur votre machine si vous n'en êtes pas sûr). Assurez-vous d'inclure le dossier bin dans le chemin de votre shell, afin de pouvoir utiliser directement la commande golangci-lint run.

Un aperçu de GoProxy

Pour avoir un aperçu de goproxy, voici un proxy HTTP/HTTPS basique qui se contente de transférer les données vers la destination :

package main

import (
    "log"
    "net/http"

    "github.com/elazarl/goproxy"
)

func main() {
    proxy := goproxy.NewProxyHttpServer()
    proxy.Verbose = true
    log.Fatal(http.ListenAndServe(":8080", proxy))
}

Gestionnaire de requêtes

Cette ligne ajoutera l'en-tête X-GoProxy: yxorPoG-X à toutes les requêtes envoyées via le proxy, avant de les transmettre à la destination :

proxy.OnRequest().DoFunc(
    func(r *http.Request,ctx *goproxy.ProxyCtx)(*http.Request,*http.Response) {
        r.Header.Set("X-GoProxy","yxorPoG-X")
        return r,nil
    })
Télécharger l’outil