
Git Web Hook Tunnel for C2
Tunnel de webhook Git pour C2
# apt-get update && apt-get upgrade -y
# apt-get install python3-pip git -y
# pip install --upgrade pip
# pip install virtualenv
# virtualenv -p python venv
# . venv/bin/activate
# git clone https://github.com/dsnezhkov/octohook
# pip install prompt_toolkit PyGithub bottle pygments pyaml delegator.py
ou
pip install -r doc/requirements.txt
Connectez-vous en tant que compte GH de service.
Générez un token d'application selon : https://github.com/settings/tokens/new
Mettez à jour git_app_token : '86c0ec38b90909c4fbb1cf7f4e20c8f7f451' dans config/client.yml et config/server.yml
Définissez vos identifiants d'agent sur le serveur et le client Ex. agentid : 'b932e9f5'
Générez keys/server.pem
Le premier client ou serveur crée le dépôt git_repo_name : 'rendezvous'
Configurez le(s) webhook(s) initial(aux) : https://github.com/votre-id/rendezvous/settings/hooks/new
Définissez Payload URL : https://IP-ou-HOST:PORT/route/ où IP est l'adresse IP de votre service web OC, PORT le port d'écoute, et /route/ est la route du hook
spécifiée dans la directive hook_route : '/server/' du fichier de configuration.
Définissez : Content-type : application/json
" Par défaut, nous vérifions les certificats SSL lors de la livraison des charges utiles. " Désactivez pour la démo, activez en production (letsencrypt)
vous pouvez choisir de recevoir tous les événements mais vous pouvez simplement 'Sélectionner "Laissez-moi choisir des événements individuels".'
OC nécessite au minimum : "Commentaire sur un ticket", "Tickets".
Assurez-vous de démarrer votre serveur octohook sur l'URL de charge utile ci-dessus lors de la création du Webhook. Si réglé sur "Actif" "Nous livrerons les détails de l'événement lorsque ce hook sera déclenché." une demande d'enregistrement ping sera envoyée au serveur OC.
Une fois que vous voyez la "coche verte" dans les webhooks, vous êtes enregistré. Sinon, vérifiez vos paramètres et "redélivrez" le ping.
Répétez la configuration pour d'autres webhooks si nécessaire (RTM bidirectionnel et swarm (futur))
python octohook.py ./config/server.yml
python octohook.py ./config/client.yml