Cruise, et firma der specialiserer sig i automatisk bilstyringsteknologi, projektets kildekoder , der leverer værktøjer til analyse af firmwarebilleder baseret på Linux og identifikation af potentielle sårbarheder og datalækager. Koden er skrevet i Go og er under Apache 2.0-licensen.
understøtter analyse af billeder, der bruger filsystemerne ext2/3/4, FAT/VFat, SquashFS og UBIFS. For at udpakke billedet anvendes standardværktøjer som e2tools, mtools, squashfs-tools og ubi_reader. FwAnalyzer udtrækker katalogtræet fra billedet og vurderer indholdet baseret på et sæt regler. Reglerne kan bindes til FS metadata, filtyper og indhold. Outputtet genererer en rapport i JSON-format, der opsummerer informationen udtrukket fra firmwaren og viser advarsler og en liste over filer, der ikke overholder de behandlede regler.
understøtter kontrol af fil- og katalogrettigheder (f.eks. identificere adgang til skrivning for alle og ukorrekte UID/GID), identificerer tilstedeværelsen af eksekverbare filer med suid-flaget og brug af SELinux-mærker, opdager glemte krypteringsnøgler og potentielt farlige filer. I indholdet fremhæves efterladte ingeniøradgangskoder og debugoplysninger, oplysninger om versioner identificeres/bekræftes via SHA-256 hashes, og der udføres søgning ved hjælp af statiske masker og regulære udtryk. Det er muligt at binde eksterne analysator-scripts til bestemte filtyper. For Android-baserede firmwares identificeres build-parametre (f.eks. brug af ro.secure=1, tilstand af ro.build.type og aktivering af SELinux).
FwAnalyzer kan anvendes til at forenkle analysen af sikkerhedsproblemer i eksterne firmwares, men det primære formål er kvalitetssikring af egne firmwares eller dem leveret af tredjepartsleverandører under kontrakt. FwAnalyzers regler tillader at danne en præcis specifikation af firmwaretilstanden og identificere uacceptable afvigelser, såsom tildeling af forkerte adgangsrettigheder eller efterladelse af lukkede nøgler og debugkode (f.eks. tillader kontrollen at undgå situationer som af en ssh-server brugt under testfasen, ingeniørkode, med læseadgang til /etc/config/shadow eller til oprettelse af digitale signaturer).
Kilde: opennet.ru
