Pentest & Bug Bounty
  • ๐ŸฅทPentest et Bug Bounty
    • ๐Ÿ‘พPentest Methodology
    • ๐Ÿ’ธBug Bounty Methodology
      • ๐Ÿ““Ecrire un bon rapport
      • โš–๏ธAspect Juridique (FR)
  • ๐Ÿ‘ฃOSINT / Recon
    • ๐ŸงฆSock Puppet
    • ๐Ÿง Mindmaps
    • ๐ŸขEntreprise
    • ๐Ÿ‘€Leaks
    • ๐Ÿ‘ŠManuel / Dorks
      • Google dorks
      • Github dorks
      • Twitter Dorks
      • Shodan Dorks
    • ๐Ÿ‘ฅRรฉseaux sociaux (SOCMINT)
      • ๐Ÿ•ต๏ธTelegram OSINT
      • ๐Ÿ‘ปSnapchat OSINT
      • ๐Ÿคตโ€โ™‚๏ธLinkedin OSINT
      • ๐Ÿ—ฃ๏ธFacebook OSINT
      • ๐ŸŽผTik tok OSINT
      • ๐Ÿ“ทInstagram OSINT
      • ๐ŸฆTwitter OSINT
      • ๐Ÿ”ŠDiscord OSINT
    • ๐Ÿ–‡๏ธDomaines et Sous-domaines
    • ๐ŸšชScan de ports / web
    • โœ‰๏ธEmails
    • ๐Ÿ”—Rรฉseau
    • ๐Ÿ“ทScreenshots
    • ๐Ÿ“นLive camera
    • ๐Ÿง”Reconnaissance faciale / images
    • ๐ŸŒ†Images
    • ๐Ÿ—บ๏ธMaps
    • ๐Ÿ‘๏ธActive Directory
    • โ˜๏ธCloud
    • Autre
  • ๐ŸŒPentest Web
    • โœŠBrute force / Fuzzing
    • ๐Ÿ’‰Injections
      • ๐ŸชXSS
        • PDF injection
      • ๐Ÿ“„HTMLi
      • ๐Ÿ“ƒXXE
      • 7๏ธโƒฃSSTI
      • ๐Ÿ”ขSQLi
        • ๐Ÿ‘ซUNION based
        • โณTime based
        • ๐ŸฅฝBoolean based / Error Based
        • ๐Ÿ“คOut-Of-Band
      • โ†ฉ๏ธCRLF
      • ๐ŸšOS injection
      • โ˜•Log4Shell
      • ๐Ÿฅ CSV
      • ๐ŸปESI
      • ๐Ÿ˜ŽXSLT
      • ๐Ÿ’ŒInjections dans emails
      • ๐Ÿ”€ELi
        • OGNLi
    • โ†ช๏ธOpen redirect
    • ๐Ÿ“Path Traversal / LFI / RFI
    • ๐Ÿ”“Bypass
      • ใ€ฐ๏ธWAF / Filter bypass
      • 2๏ธ2FA
    • โ˜ ๏ธCharges utiles
    • ๐Ÿ“šCMS (Content Management System)
      • WordPress
      • Joomla!
      • Magento
      • Drupal
    • ๐ŸŽญSOP bypass
      • CORS
      • postMessage()
      • JSONP
    • ๐Ÿ–ฑ๏ธClickjacking
    • โš™๏ธInsecure deserialization
    • โ˜ฃ๏ธWeb Cache Poisoning / Deception
    • ๐ŸคHTTP Smuggling
    • ๐Ÿ‘‹OAuth
    • โ›”SAML
    • ๐Ÿ—๏ธJSON Web Token
    • ๐ŸŽฃCSRF
      • ๐Ÿš€Cross-site WebSocket Hijacking (CSWSH)
    • ๐ŸŽฏIDOR
    • ๐Ÿ•น๏ธSSRF
      • Cloud SSRF
      • Protocol Smuggling
    • โš™๏ธAPIs
      • ๐Ÿฝ๏ธREST
      • ๐Ÿ“ถGraphQL
    • โ“Mot de passe oubliรฉ
    • ๐Ÿ›’Fonctions d'achat et de facturation
    • ๐Ÿ‘ฝBroken authentication / register
    • ๐ŸPanneaux d'administration
    • โฌUpload features
    • ๐Ÿ”—Broken Link Hijacking
    • ๐ŸŽฎPrise de contrรดle de sous-domaine
    • ๐Ÿ›‚Prise de contrรดle de DNS
    • โ˜๏ธOne liners
    • ๐ŸšงMisconfigurations
    • ๐Ÿ—ฟAnalyse statique
      • PHP
      • Ruby On Rails
      • Perl
      • JAVA
      • Javascript
      • Python
      • Golang
      • .NET
    • ๐ŸชฃAWS S3
    • ๐Ÿค–Captcha
    • ๐ŸชžRace conditions
    • โ˜„๏ธ.git exposรฉ
    • ๐Ÿ’ญBusiness logic
    • ๐ŸฅกPrototype pollution
    • ๐Ÿ’ฃDependency confusion
    • ๐Ÿ›‘DoS
      • ๐ŸคฏReDoS
      • ๐Ÿ‘Hash flooding
      • ๐ŸงจCookie bomb
    • Autre
      • Flask
      • Symphony
      • Spring Boot
      • Django
      • Jenkins
  • ๐ŸŒฉ๏ธPentest Cloud
    • IaC (Infrastructure as Code)
      • Terraform
      • Helm
      • Kustomize
    • AWS
      • Enumeration
    • Azure
      • Entra ID
      • Azure Resource Manager (ARM)
        • Enumeration
    • GCP
      • GCP IAM
      • Authentification
      • Enumeration
    • Kubernetes
  • ๐Ÿ•ธ๏ธPentest Rรฉseau
    • ๐ŸชกProtocoles rรฉseau
    • ๐Ÿ“กWifi
    • ๐Ÿ”‹BLE
    • ๐Ÿ“VPN
  • ๐Ÿ—‚๏ธPentest AD
    • ๐Ÿ‘บGPP
    • โžก๏ธMouvements latรฉraux
      • ๐Ÿ”ชPass The Hash
      • ๐Ÿ—ก๏ธOver Pass The Hash
    • ๐Ÿ“œADCS
  • ๐Ÿ“ฑPentest Mobile
    • ๐Ÿค–Android
      • ๐Ÿ‘พMรฉthodologie
      • ๐ŸŒณSetup environnement
      • ๐Ÿ‡Collecte d'informations
      • ๐Ÿ” Enumeration des donnรฉes locales
      • ๐Ÿ”™Reverse engineering
        • ๐ŸชขDรฉ-obfuscation
      • โ›ฐ๏ธAnalyse statique (Android)
      • ๐ŸžDebug
      • ๐ŸŽฐStockage de donnรฉes non sรฉcurisรฉ
        • ๐Ÿ“ฐLogs
        • ๐ŸคShared Preferences
        • ๐Ÿ”คStrings
        • ๐Ÿ—„๏ธSQLite DB
        • ๐Ÿ—ƒ๏ธRealm DB
        • ๐Ÿง Mรฉmoire
        • ๐Ÿ“Copy/Paste buffer caching
        • โŒจ๏ธKeyboard press caching
        • ๐Ÿ”™Backup
        • Carte SD
      • ๐ŸŒฉ๏ธFirebase/Appspot misconfig
      • ๐Ÿ”—Deeplinks vulns
        • Interception de contenu
        • WebView hijacking (via deeplink)
        • Invalid Digital assets links
      • ๐Ÿ–ผ๏ธWebView vulns
        • WebView Hijacking
        • Exfiltration de donnรฉes
        • RXSS
        • Vol de token
      • Guides outils
        • โ›๏ธOutil Drozer
          • Injections SQL (Android)
          • Path traversal (Android)
        • ๐Ÿ”ฌOutil Objection
        • ๐ŸชOutil Frida
        • Outil Medusa / Mango
      • Bypass
        • ๐Ÿ“ฒContournement de dรฉtection d'emulateur
          • ๐Ÿ“‚Fichiers d'emulateurs
          • ๐Ÿ™‹โ€โ™‚๏ธNetwork Operator Name
        • ๐ŸฆทContournement des dรฉtections de rootage
          • ๐ŸงฎRoot management
          • ๐Ÿ—๏ธClรฉ de signature du noyau
          • ๐ŸงŠProps dangereux
          • ๐Ÿฆธโ€โ™‚๏ธBinaire "su"
          • โŒPermissions sur les repertoires
        • โ˜๏ธContournement des protections biometriques
        • ๐Ÿ“œSSL pinning bypass
        • Contournement de code PIN
      • ๐Ÿ”ณLecteur de code QR/EAN/Barres...
      • ๐Ÿ’”Injection de backdoor
      • ๐ŸชงTask hijacking
      • ๐ŸŽญOverlay attacks
        • Tapjacking
        • Invisible Keyboard
      • ๐Ÿ“ตRรฉsilience
        • โŒจ๏ธThird Party Keyboards
        • ยฉ๏ธAllowed Copy/Paste on sensitive fields
        • ๐Ÿ›ค๏ธBackground screen caching
        • ๐Ÿ–‹๏ธSchรฉmas de signature
        • โฌ†๏ธIn-App updates
      • ๐ŸคฏCorruption de Mรฉmoire
    • ๐ŸiOS
      • ๐Ÿฅ…Mรฉthodologie
      • ๐ŸงฑSetup environnement (iOS)
      • โฎ๏ธReverse engineering (iOS)
      • ๐Ÿ”๏ธAnalyse statique (iOS)
      • ๐ŸงฟContournement de dรฉtection de Jailbreak
      • ๐Ÿ“ŒSSL pinning bypass (iOS)
      • ๐Ÿ‘‡Contournement d'authentification biomรฉtrique
      • ๐Ÿ›Contournement d'anti-Hooking/Debugging
      • ๐Ÿ™ˆStockage de donnรฉes non sรฉcurisรฉ (iOS)
        • ๐Ÿ’ญMรฉmoire (iOS)
        • ๐Ÿ“Copy/Paste buffer caching (iOS)
        • ๐ŸชCookies (iOS)
        • ๐Ÿ—ž๏ธLogs (iOS)
        • โŒจ๏ธCache du clavier (IOS)
        • Backup (IOS)
      • ๐Ÿ“ฑBackground screen caching
      • ๐Ÿง‘โ€๐Ÿš€WebView vulns (iOS)
      • Deeplinks vulns (iOS)
      • Lecteur de code QR
      • Firebase misc
  • ๐Ÿ‘ทPentest physique
    • ๐Ÿ”Crochetage
    • ๐Ÿ’ณRFID
    • โš™๏ธEquipements
    • ๐Ÿ’พHardware Hacking
      • ๐Ÿ“ˆUART
      • ๐ŸงชJTAG
      • โšกSWD
      • ๐ŸชขSPI
      • ๐ŸšŒIยฒC
      • ๐Ÿ”ดFault Injection
      • Side-Channel Attacks
    • ๐ŸฃFirmware hacking
  • ๐Ÿ–จ๏ธPentest IoT
    • โชReplay de stream camera
    • ๐Ÿ—ฃ๏ธAssistants vocaux
    • ๐Ÿ“นCamera IP
    • โฌ‡๏ธDoS
    • ๐Ÿ–จ๏ธImprimantes
    • ๐ŸŽฌChromecast
  • ๐Ÿ’€Hacking protocols
    • ๐Ÿ˜ฉTelnet - port 23
    • ๐Ÿ”SSH - port 22
    • ๐Ÿ“คFTP - port 21
    • โ”Whois - port 43
    • ๐Ÿ‘‰DNS - port 53
    • ๐Ÿ•โ€๐ŸฆบKerberos - port 88
    • ๐Ÿ’ผSNMP - ports 161-162
    • ๐Ÿ“จSMB - ports 445-139
    • ๐Ÿ“งSMTP - ports 25-587
    • ๐ŸŽฆRTSP - port 554
    • ๐Ÿ”ŽMS-RPC - ports 135-593
    • โž•Rsync - port 873
    • ๐Ÿ”ขMS-SQL - port 1433
    • ๐Ÿ—๏ธDocker - port 2375
    • ๐Ÿ”กMySQL - port 3306
    • ๐Ÿ“LDAP - ports 389, 636, 3268, 3269
    • ๐Ÿ–ฅ๏ธRDP - port 3389
    • โŒจ๏ธVNC - ports 5800,5801,5900,5901
  • ๐Ÿ˜ˆIngรฉnierie sociale
    • ๐Ÿง Concepts / Principes / Attaques
    • ๐ŸชงEthique
    • ๐Ÿ‘คProfils comportementaux
  • ๐Ÿ”“Crack
  • ๐Ÿ› ๏ธAutres outils utiles
    • ๐ŸšฟSandbox / Sanitizer
    • ๐Ÿ”คGรฉnรฉrateurs de wordlists personnalisรฉes
  • ๐ŸŒœPost-Exploitation
    • ๐Ÿ‘”ร‰numรฉration /ร‰lรฉvation de privilรจges
      • ๐ŸงLinux
        • CVE-2022-0847 (Dirty Pipe)
        • CVE 2021-4034 (PwnKit)
        • CVE 2021-3560 (Polkit)
      • ๐ŸชŸWindows
        • ๐Ÿ–จ๏ธPrintNightmare
        • ๐Ÿ–จ๏ธSpoolFool
        • ๐Ÿ†”Usurpation de SAMAccountName
        • โฒ๏ธScheduled task/job (T1573.005)
        • ๐ŸHiveNightmare
        • ๐Ÿ”‘Stored Credentials
        • ๐ŸŽฉSeImpersonatePrivilege
        • ๐ŸŽ’SeBackupPrivilege
        • ๐ŸžUnquoted Service Path
        • ๐ŸงฉDLL Hijacking
        • ยฉ๏ธSeBackupPrivilege
      • โ›ด๏ธDocker
    • ๐Ÿ‘ปEffacement des traces
    • โš“Persistance / Downloaders
    • ๐Ÿ›ก๏ธDefense evasion
    • ๐Ÿ“ฆExfiltration de Donnรฉes
  • ๐Ÿ”ŽForensic
    • ๐Ÿ’กMรฉthodologie
    • ๐Ÿ“บLive forensic
    • ๐Ÿ’ปMรฉmoire non volatile
    • ๐Ÿ•Š๏ธMรฉmoire volatile
    • ๐Ÿ“„File forensic
Propulsรฉ par GitBook
Sur cette page
  • Description
  • Identifier les ports UART
  • Utiliser un analyseur logique
  • Connexion et mise en place
  • Outil
  • Obtenir un shell

Cet article vous a-t-il รฉtรฉ utile ?

  1. Pentest physique
  2. Hardware Hacking

UART

Universal Asynchronous Receiver-Transmitter

PrรฉcรฉdentHardware HackingSuivantJTAG

Derniรจre mise ร  jour il y a 2 ans

Cet article vous a-t-il รฉtรฉ utile ?

Description

En langage courant, l'UART est le composant utilisรฉ pour faire la liaison entre l'ordinateur et le port sรฉrie. Son exploitation fournis l'un des moyens les plus simples pour prendre le contrรดle d'un systรจme IoT. Etant surtout utilisรฉ pour du dรฉbogage, il est possible d'obtenir un shell root sur le systรจme via l'exploitation de ce protocole.

Identifier les ports UART

Les ports UART se prรฉsentes soit par des pins, soit par des pads. Il existe 4 ports pour le protocole qui sont les ports TX (Transmit), RX (Receive), Vcc (Voltage) et GND (Ground).

Etapes

  • Identifier la "Terre":

  • Identifier le port Voltage:

Mettez le multimรจtre en mode tension continue (moins de 20 V) et lisez la tension entre la broche VCC suspectรฉe et la broche de terre. Si la tension est constante et reste รฉgale ร  la tension du systรจme (la plupart du temps 3,3 v/5 v CC), il s'agit d'une broche VCC.

  • Identifier le port de transmission

Mettez le multimรจtre en mode tension continue (moins de 20v DC) et connectez la broche suspecte ร  la sonde de tension (ROUGE) du multimรจtre et la sonde commune (NOIRE) ร  la broche de terre que nous avons identifiรฉe dans l'รฉtape prรฉcรฉdente.

Vรฉrifiez la tension sur l'รฉcran du multimรจtre. Les cas de test suivants peuvent รชtre rรฉfรฉrencรฉs pour dรฉfinir si la broche est une broche TX:

  1. Il peut รชtre tirรฉ HIGH vers VCC une fois l'appareil dรฉmarrรฉ.

  2. La tension peut fluctuer de quelques millivolts ร  VCC au moment du dรฉmarrage du dispositif indicateur envoyant des messages sur son moniteur sรฉrie.

  • Identifier le port de rรฉception

Mettez le multimรจtre en mode tension continue (moins de 20v DC) et connectez la broche suspecte ร  la sonde de tension (ROUGE) du multimรจtre et la sonde commune (NOIRE) ร  la broche de terre que nous avons identifiรฉe dans l'รฉtape prรฉcรฉdente.

Vรฉrifiez la tension sur l'รฉcran du multimรจtre. Les cas de test suivants peuvent รชtre rรฉfรฉrencรฉs pour dรฉfinir si la broche est une broche RX:

  1. Il peut partir haut vers VCC.

  2. Partir haut avec quelques millivolts de moins que VCC

  3. Tension fluctuant de quelques millivolts.

Utiliser un analyseur logique

L'รฉtape suivante est de trouver le baud rate du systรจme afin de pouvoir recevoir des rรฉsultats lisibles.

Connexion et mise en place

Mise en place physique

  • Brancher le pin TX ร  un channel de l'analyseur logique

Mise en place logiciel

  • Ouvrir le logiciel "saleae"

  • Crรฉez une nouvelle entrรฉe d'analyseur en appuyant sur l'icรดne plus (+) et sรฉlectionnez Async Serial (c'est pour UART).

  • Sรฉlectionnez un canal sรฉrie (8 canaux sur l'analyseur logique) et conservez les paramรจtres par dรฉfaut.

  • Commencer avec un baud rate bas puis augmenter jusqu'ร  obtenir un rรฉsultat lisible.

  • Essayer les baud rate frรฉquents (9600, 38400, 19200, 57600, et 115200)

  • Enregistrer les configurations

  • Modifier les paramรจtres de simulation selon vos goรปts

Outil

baudrate

baudrate est un outil python permettant d'automatiser la recherche de baud rate.

Obtenir un shell

Etablir la connexion puis vรฉrifier si l'appareil est connectรฉ avec la commande:

$ ls dev/tty*

Utiliser ensuite la commande suivante pour interagir avec le systรจme:

$ python baudrate.py -p /dev/ttyUSB1

Il est maintenant possible de basculer entre les dรฉbits en bauds pour sรฉlectionner le dรฉbit en bauds correct qui donne le texte lisible du processus de dรฉmarrage. Une fois le processus de dรฉmarrage terminรฉ, appuyez sur CTR + C et enregistrez la configuration minicom avec l'extension (.pcap).

On peut ensuite interagir avec l'appareil au travers de minicom.

L'appareil vous demandera alors probablement des identifiants qui pourront รชtre retrouvรฉs dans la documentation de l'appareil ou en essayant des identifiants par dรฉfaut comme admin:admin, admin:1234, admin:password...

Minicom est un programme de contrรดle de modem et d'รฉmulation de terminal pour les systรจmes d'exploitation de type Unix.

Les broches de terre sont gรฉnรฉralement marquรฉes comme GND ou parfois sans marquage. Dans ce cas, mettez un en mode continuitรฉ et essayez de vรฉrifier la connectivitรฉ entre les broches et les parties mรฉtalliques du PCB. La plupart des piรจces mรฉtalliques utilisรฉes pour les protections mรฉcaniques sont mises ร  la terre, c'est donc une bonne pratique d'utiliser ce cas de test.

ressource:

ressource:

Utiliser un , , ou autre pour l'exploitation du protocole UART.

๐Ÿ‘ท
๐Ÿ’พ
๐Ÿ“ˆ
https://www.saleae.com/
https://github.com/devttys0/baudrate/blob/master/baudrate.py
multimรจtre
Bus Pirate
Adafruit FT232H
shikra
Format d'une trame UART
Interface logiciel