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
rewerse-engineering — Rétro-ingénierie de l'API Rewe en Go | Kitploit
Outils/GitHubGitHub/bytesizedmarius/rewerse-engineering
Rétro-ingénierieScripting et AutomatisationSécurité WebCryptographieApprentissage et ÉducationSécurité des API
GitHubbytesizedmarius/rewerse-engineering

rewerse-engineering

Rétro-ingénierie de l'API Rewe en Go

Voir le dépôt
82543il y a 20 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

rewerse engineering

Project Logo

Un client non officiel de l'API REWE en Go et Python. Il implémente les endpoints accessibles publiquement (non authentifiés) que l'application REWE utilise pour interroger les remises en cours (Angebote), les produits, les marchés et les rappels.

Version APK actuellement prise en charge : 5.18.1 (au 29.09.26)

[!CAUTION] Les certificats nécessaires pour communiquer avec l'API rewe ne sont pas inclus dans ce dépôt. Vous devez les extraire de l'APK. La documentation et un script d'extraction pour Windows se trouvent dans le répertoire docs.

Voir aussi rewerse-ui.

démarrage rapide

Extraire les certificats de l'APK rewe ; voir docs pour les instructions

Utiliser la bibliothèque :

  • Go : go get github.com/ByteSizedMarius/rewerse-engineering – docs
  • Python : pip install rewerse – docs

Ou installer le CLI :

  • Télécharger une release
  • Ou installer via Go : go install github.com/ByteSizedMarius/rewerse-engineering/cmd@latest
  • Ou cloner et compiler : go build -o rewerse ./cmd

Vérifier : rewerse --help

Exemple : Récupérer les remises en cours pour un marché :

$ rewerse discounts -market 840174

Top-Angebote in deinem Markt
	Haribo Goldbären oder Color-Rado, 0.77€
	Coca-Cola, Fanta oder Sprite, 0.99€
Obst & Gemüse
	Heidelbeeren, 1.49€
	Rispentomaten, 0.99€
...

intro

En mars 2024, Rewe a commencé à utiliser Cloudflare MTLS pour sécuriser ses endpoints d'API, ce qui a cassé les solutions existantes qui permettaient, par exemple, de récupérer les remises pour un marché Rewe spécifique. L'utilisateur GitHub @torbenpfohl a été obsédé suffisamment persévérant pour comprendre cela, trouver le certificat et son mot de passe. Ce dépôt est basé sur son travail et vise à documenter les procédures requises et à implémenter certains des endpoints.

avertissement

Ce projet n'est pas affilié à, approuvé par, ou sponsorisé par REWE-ZENTRALFINANZ eG. « REWE » est une marque déposée de son propriétaire respectif.

Il s'agit d'un client non officiel basé sur le trafic réseau publiquement observable de l'application mobile REWE. Il est fourni à des fins éducatives et de recherche. L'API sous-jacente n'est pas documentée et peut changer ou cesser de fonctionner à tout moment sans préavis.

L'utilisation de ce logiciel se fait à vos propres risques. Les utilisateurs sont responsables de s'assurer que leur utilisation est conforme aux conditions de service applicables.

contenu

  • Une implémentation Go basique de l'API rewe est disponible dans le répertoire pkg ; voir pkg/readme pour la documentation de l'API de la bibliothèque Go, incluant des exemples d'utilisation.
  • Un wrapper Python FFI est disponible sous le nom rewerse sur PyPI – voir python/readme pour les détails et le code source.
  • Le code source du CLI pour la bibliothèque Go se trouve dans cmd.
  • Les releases sont dans releases.

[!NOTE] Veuillez noter que, comme il s'agit d'un binaire Go non signé qui effectue du chiffrement/déchiffrement de certificats et envoie des requêtes web à l'API rewe, il sera probablement signalé par votre antivirus. Il n'y a aucune dépendance, vous pouvez donc facilement le compiler vous-même – ce qui est toujours recommandé d'un point de vue sécurité.

endpoints supprimés

L'application n'a plus d'endpoint d'autocomplétion et utilise simplement la recherche normale de produits, donc les suggestions de produits ont disparu.

cli

Usage: ./rewerse.exe [flags] <command> [subcommand] [flags]

Flags:
  -cert <path>    Certificate file (default: certificate.pem)
  -key <path>     Key file (default: private.key)
  -json           Output as JSON

Commands:
  markets         Search and get market details
  products        Search, browse, and get product info
  discounts       Get market discounts
  categories      Get product categories
  recipes         Search recipes, get details and popular terms
  recalls         Get product recalls
  services        Get service portfolio by zip

Examples:
  ./rewerse.exe markets search -query Köln
  ./rewerse.exe products search -market 831002 -query Milch
  ./rewerse.exe products category -market 831002 -slug obst-gemuese
  ./rewerse.exe discounts -market 840174
  ./rewerse.exe categories -market 831002
  ./rewerse.exe services -zip 50667
  ./rewerse.exe recipes search -term Lachs -difficulties 1
  ./rewerse.exe recipes details -id blt4aaa7361ba69f8c8

Run './rewerse.exe <command>' for subcommand help.

tests

Les tests se trouvent dans pkg/*_test.go. Il en existe deux types :

  • Les tests unitaires désérialisent des payloads JSON dans nos structs. Les payloads sont dérivés de réponses réelles de l'API. Ils s'exécutent sans certificats et détectent les incompatibilités de types entre nos structs et les formes réelles de l'API. go test ./pkg/ -run Unmarshal
  • Les tests d'intégration interrogent l'API en direct et nécessitent des certificats. Ils sont automatiquement ignorés si aucun certificat n'est trouvé. go test ./pkg/

Si vous contribuez à une modification de struct, veuillez envisager d'ajouter ou de mettre à jour un test d'unmarshal. Utilisez une réponse réelle de l'API si vous pouvez en capturer une, sinon un payload JSON synthétique reflétant le comportement réel de l'API convient.

contribution

N'hésitez pas à ouvrir des issues GitHub pour des suggestions, des questions, des bugs. Les PRs sont les bienvenues. Email : rewe at byte dot rest.

attribution

  • https://github.com/foo-git/rewe-discounts
  • https://github.com/torbenpfohl/rewe-discounts
  • https://github.com/egonelbre/gophers
Télécharger l’outil