6.5 KiB
Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!
Ander maniere om HackTricks te ondersteun:
- As jy wil sien dat jou maatskappy geadverteer word in HackTricks of HackTricks aflaai in PDF-formaat, kyk na die SUBSCRIPTION PLANS!
- Kry die amptelike PEASS & HackTricks swag
- Ontdek The PEASS Family, ons versameling eksklusiewe NFTs
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg ons op Twitter 🐦 @carlospolopm.
- Deel jou hacktruuks deur PR's in te dien by die HackTricks en HackTricks Cloud GitHub-opslagplekke.
JTAG
JTAG maak dit moontlik om 'n grensskandering uit te voer. Die grensskandering analiseer sekere stroombane, insluitend ingebedde grensskanderingselle en registre vir elke pen.
Die JTAG-standaard definieer spesifieke opdragte vir die uitvoering van grensskanderings, insluitend die volgende:
- BYPASS maak dit moontlik om 'n spesifieke skyf te toets sonder die oorhoofse van deur ander skywe te gaan.
- SAMPLE/PRELOAD neem 'n monster van die data wat die toestel binnekom en verlaat wanneer dit in sy normale funksioneringsmodus is.
- EXTEST stel en lees penstatusse.
Dit kan ook ander opdragte ondersteun, soos:
- IDCODE om 'n toestel te identifiseer
- INTEST vir die interne toetsing van die toestel
Jy mag hierdie instruksies teëkom wanneer jy 'n instrument soos die JTAGulator gebruik.
Die Toets Toegangspoort
Grensskanderings sluit toetse van die vier-draad Toets Toegangspoort (TAP) in, 'n algemene doel poort wat toegang bied tot die JTAG-toetsondersteuningsfunksies wat in 'n komponent ingebou is. TAP gebruik die volgende vyf seine:
- Toetsklok-invoer (TCK) Die TCK is die klok wat bepaal hoe dikwels die TAP-beheerder 'n enkele aksie sal neem (met ander woorde, spring na die volgende toestand in die toestandmasjien).
- Toetsmodusseleksie (TMS) invoer TMS beheer die eindige toestandmasjien. Met elke klokpuls kontroleer die JTAG TAP-beheerder van die toestel die spanning op die TMS-pen. As die spanning onder 'n sekere drempel is, word die sein as laag beskou en as 0 geïnterpreteer, terwyl as die spanning bo 'n sekere drempel is, word die sein as hoog beskou en as 1 geïnterpreteer.
- Toetsdata-invoer (TDI) TDI is die pen wat data in die skyf stuur deur die skanderingselle. Elke vervaardiger is verantwoordelik vir die definisie van die kommunikasieprotokol oor hierdie pen, omdat JTAG dit nie definieer nie.
- Toetsdata-uitset (TDO) TDO is die pen wat data uit die skyf stuur.
- Toetsherstel (TRST) invoer Die opsionele TRST stel die eindige toestandmasjien in 'n bekende goeie toestand. As alternatief, as die TMS vir vyf opeenvolgende klokperiodes op 1 gehou word, roep dit 'n herstel op, op dieselfde manier as wat die TRST-pen sou doen, vandaar dat TRST opsioneel is.
Soms sal jy in staat wees om daardie penne gemerk op die PCB te vind. In ander gevalle mag jy dit dalk moet vind.
Identifisering van JTAG-penne
Die vinnigste, maar duurste manier om JTAG-poorte op te spoor, is deur die gebruik van die JTAGulator, 'n toestel wat spesifiek vir hierdie doel geskep is (hoewel dit ook UART-penopstellinge kan opspoor).
Dit het 24 kanale waaraan jy die penne van die borde kan koppel. Dit voer dan 'n BF-aanval uit van al die moontlike kombinasies deur IDCODE- en BYPASS-grensskanderingsopdragte te stuur. As dit 'n respons ontvang, wys dit die kanaal wat ooreenstem met elke JTAG-sein.
'n Goedkoper, maar baie stadiger manier om JTAG-penopstellinge te identifiseer, is deur die gebruik van die JTAGenum wat gelaai is op 'n Arduino-verenigbare mikrokontroleerder.
Met behulp van JTAGenum sal jy eers die penne van die ondersoekende toestel definieer wat jy vir die opname sal gebruik. Jy sal na die penopstellingdiagram van die toestel moet verwys en dan hierdie penne met die toetspunte op jou teikentoestel verbind.
'n Derde manier om JTAG-penne te identifiseer, is deur die PCB te ondersoek vir een van die penopstellinge. In sommige gevalle kan PCB's gerieflik die Tag-Connect-interface bied, wat 'n duidelike aanduiding is dat die bord ook 'n JTAG-konnektor het. Jy kan sien hoe daardie interface lyk by https://www.tag-connect.com/info/. Daarbenewens kan die databladsye van die skyfsets op die PCB penopstellingdiagramme onthul wat na JTAG-konnekteerders verwys.
SDW
SWD is 'n ARM-spesifieke protokol wat ontwerp is vir foutopsporing.
Die SWD-interface vereis twee penne: 'n tweerigting SWDIO-sein, wat die ekwivalent is van JTAG se TDI- en TDO-penne en 'n klok, en SWCLK, wat die ekwivalent is van TCK in JTAG. Baie toestelle ondersteun die Serial Wire of JTAG Debug Port (SWJ-DP), 'n gekombineerde JTAG- en SWD-interface wat jou in staat stel om óf 'n SWD- óf JTAG-sonde aan die teiken te koppel.
Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!
Ander maniere om HackTricks te ondersteun:
- As jy wil sien dat jou maatskappy geadverteer word in HackTricks of HackTricks aflaai in PDF-formaat, kyk na die SUBSCRIPTION PLANS!
- Kry die amptelike PEASS & HackTricks swag
- Ontdek The PEASS Family, ons versameling eksklusiewe NFTs
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg ons op Twitter 🐦 @carlospolopm.
- Deel jou hacktruuks deur PR's in te dien by die HackTricks en HackTricks Cloud GitHub-opslagplekke.