HAL, et reverse engineering-rammeverk for digitale elektroniske kretser

hal_skjermbilde

HAL Det er et integrert miljø for analyse av listen over digitale elektroniske kretserer er et omfattende rammeverk for reversering og manipulering for dørnivå nettlister som fokuserer på effektivitet, skalerbarhet og bærbarhet. HAL leveres med et pluginsystem completo som gjør det mulig å innføre vilkårlige funksjoner i kjernen.

Det interessante av HAL er at det gjør det mulig å se og analysere kretsen i GUI og manipulere den ved hjelp av python-skript. I skript kan du bruke det vedlagte "standardbiblioteket" med funksjoner som implementerer grafteori-operasjoner, som er nyttige for reverse engineering av digitale elektroniske kretser (ved hjelp av disse funksjonene kan du heuristisk oppdage forskjellige designmønstre og fjerne enkle forvirringer med et skript på flere linjer) .

Bibliotek det inkluderer også klasser for prosjektledelse i IDE, som kan brukes når du utvikler plugin-moduler for tilkoblingskontroll og analyse. Parsere leveres for maskinvarebeskrivelsesspråkene VHDL og Verilog.

Dette miljøet er utviklet av flere tyske universiteter, skrevet i C ++, Qt og Python og utgitt under MIT-lisensen.

Av hovedegenskapene følgende skiller seg ut:

  • Regissert naturlig grafisk fremstilling av netlisteelementer og deres forbindelser.
  • Støtte for tilpassede dørbiblioteker.
  • Høy ytelse takket være optimalisert C ++ - kjerne
  • Modularitet - Skriv dine egne C ++ plugins for effektiv nettverksliste analyse og manipulering (for eksempel ved hjelp av grafalgoritmer)
  • En funksjonsrik GUI som muliggjør visuell inspeksjon av nettverkslisten og interaktiv analyse
  • Et innebygd Python-skall for utforskende samhandling med netlisteelementer og for samhandling med plugins fra GUI

Om HAL versjon 2.0.0

dette miljøet er i sin versjon 2.0.0 der VHDL og Verilog analysatorer ble forbedret, sammen med CMake build-systemet som ble oppdatert for å bruke målbaserte konfigurasjoner.

Også det er fremhevet at støtte for hierarkisering og modularisering ble lagt til, i tillegg til en ekstra isolasjonsvisning og et nytt designsystem.

Av de andre endringene nevnt i denne nye versjonen:

  • Endringer i dørbiblioteksystemet
  • BDD erstattet med boolske funksjoner
  • Store endringer i den interne representasjonen av porttyper
  • Tillater differensiering mellom LUT, flip-flops, lås og kombinasjonsporttyper
  • I låser og flip-flops kan du nå spesifisere spesielle sekvensielle innganger som aktivering, klokke, konfigurering og tilbakestilling.
  • JSON gate-biblioteker erstattet med frihetsfiler
  • Forenklet pluginsystem
  • Igraph-bibliotek inkludert
  • GUI Major Review

Hvordan installere HAL på Ubuntu og derivater?

For de som er interessert i å installere dette reverse engineering-rammeverket for elektroniske kretser, de kan gjøre det ved å følge instruksjonene som vi deler nedenfor.

HAL kan installeres på to måter i Ubuntu og derivater, den første støtter oss fra depotet av søknaden (Bare gyldig for Ubuntu 18.04).

Dette vi kan legge det til systemet ved hjelp av en terminal (Du kan åpne den med hurtigtastene Ctrl + Alt + T), og i den skal vi skrive følgende kommandoer.

Først skal vi legge til fra depotet med:

sudo add-apt-repository ppa:sebastian-wallat/hal

Vi oppdaterer pakkene og listen over arkiver med:

sudo apt-get update

Og vi fortsetter å installere applikasjonen på systemet vårt ved å skrive følgende kommando:

sudo apt install hal-reverse

Den andre installasjonsmetoden er ved å kompilere av applikasjonen i systemet. For dette må vi laste ned HAL-koden ved hjelp av en terminal.

Først skal vi skrive:

git clone https://github.com/emsec/hal.git && cd hal

vi skal installere de nødvendige avhengighetene:

./install_dependencies.sh

Og vi fortsetter å kompilere koden med:

mkdir build && cd build

cmake ..

make

Når kompileringen er ferdig fortsetter vi å utføre installasjonen med:

make install

Endelig kan konsultere dokumentasjonen og annen informasjon om HAL I den følgende lenken.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.