Często zadawane pytania dotyczące analizy oprogramowania układowego

Ten artykuł zawiera często zadawane pytania dotyczące analizy oprogramowania układowego.

Analiza oprogramowania układowego to narzędzie, które analizuje obrazy oprogramowania układowego i zapewnia zrozumienie luk w zabezpieczeniach na obrazach oprogramowania układowego.

Jakie typy obrazów oprogramowania układowego obsługuje analiza oprogramowania układowego?

Analiza firmware'u obsługuje niezaszyfrowane obrazy zawierające systemy plików z osadzonym systemem operacyjnym Linux. Analiza oprogramowania układowego obsługuje następujące formaty systemu plików:

  • Obraz rzadki systemu Android
  • Dane skompresowane bzip2
  • Archiwum CPIO ASCII z CRC
  • Archiwum CPIO ASCII, bez CRC
  • System plików CramFS
  • Spłaszczony blob drzewa urządzeń (DTB)
  • Tabela partycji EFI GUID
  • system plików EXT
  • Archiwum POSIX tarball (GNU)
  • Podpisane dane GPG
  • Skompresowane dane gzip
  • Podstawowy wolumin ISO-9660
  • System plików JFFS2, big endian
  • System plików JFFS2, mały endian
  • Skompresowane dane LZ4
  • Skompresowane dane LZMA
  • Skompresowany plik LZOP
  • Główny rekord rozruchowy systemu DOS
  • System plików RomFS
  • SquashFSv4 system plików, mały endian
  • Archiwum pakietu tar POSIX
  • Nagłówek liczby wymazań UBI
  • Węzeł superbloku systemu plików UBI
  • System plików UEFI
  • Skompresowane dane xz
  • system plików YAFFS, big endian
  • System plików YAFFS, mały endian
  • Dane skompresowane ze standardem ZStandard
  • Archiwum zip

Jakie składniki SBOM są wykrywane przez analizę oprogramowania układowego?

Note

Jeśli analiza firmware'u wykryje komponent, ale nie może określić jego wersji, może podać wersję jako 0.0.0. Analiza nie pokazuje żadnych CVE dla tego komponentu.

Składnik Składnik Składnik Składnik
Apache fribidi libfuse portmap
apparmor gdb libgcrypt Pppd
gwiazdka gdbserver libidn procps
atftp gdkpixbuf libidn2 procps-ng
avahi-autoipd glibc libjpeg-turbo protobuf-c
avahi_daemon gmp liblzma pyton
axios gnu cpio libmicrohttpd radvd
Backbone.js GNU gettext runtime Libpcap Readline
Bash gnu inetutils Libpng redis
bftpd Gnutls libsoup rngd
binutils Gpg Libvorbis rngtest
ptak Grep libxml2 rp_pppoe
bluetoothd grub lighttpd Samba
boa grub2 lodash setserial
bridge-utils Gtk miniupnpd Sqlite
Busybox gzip mit_kerberos ssmtp
bzip2 harfbuzz mosquitto strace
Kair haserl msmtp strongswan
chrony hdparm mstpd stunnel
cifs-utils Heimdal mtd-utils sudo
Codesys hostapd nano tcpdump
Conntrack-Tools i2c-tools Ncurses uclibc
Coreutils igmpproxy Neon underscorejs
cryptsetup iperf3 netatalk usbutils
kubki iproute2 netkit_telnetd util_linux
davfs2 ipset netsnmp Vim
dhcpcd Iptables Nettools Vsftpd
dhcpd iputils nginx vuejs
dmidecode isc dhclient Nss wget
Dnsmasq jansson Openldap wireless-tools
dpkg jq Openssh wolfssl
Dropbear jQuery openssl wpa_supplicant
e2fsprogs json-c openvpn xinetd
ebtables kbd Open vSwitch xl2tpd
eeprog keepalived p7zip xz-utils
element Libarchive Pango zebra (zwierzę)
ethtool libcap PCRE (Perl Compatible Regular Expressions) zeptojs
exFAT Libcurl pcre2 zip
ExtJS libdbus Perl Zipcloak
ffmpeg Libevent php Zipnote
plik libexpat polarssl zlib
freeradius

Gdzie są dokumenty dotyczące analizy oprogramowania układowego Azure CLI i PowerShell?

Dokumentację poleceń Azure CLI znajdziesz tutaj, a dokumentację poleceń Azure PowerShell tutaj.

Możesz też znaleźć szybki start dla Azure CLI tutaj oraz szybki start dla Azure PowerShell tutaj. Aby uruchomić skrypt Python, który wykorzystuje SDK do przesyłania i analizy obrazów firmware, zobacz Quickstart: Upload firmware using Python.

Czy jest obsługiwana analiza oprogramowania układowego UEFI (Unified Extensible Firmware Interface)?

Tak. Usługa obsługuje analizę oprogramowania układowego UEFI z mieszanką funkcji Ogólnie Dostępnych (GA) i Podglądu.

Co jest ogólnie dostępne na potrzeby analizy oprogramowania układowego UEFI?

Analiza oprogramowania układowego zapewnia ogólnie dostępną obsługę wykrywania i analizowania materiałów kryptograficznych osadzonych w oprogramowaniu układowym UEFI, w tym:

  • Certyfikaty kryptograficzne
  • Klucze kryptograficzne

Te możliwości są stabilne i w pełni obsługiwane dla oprogramowania układowego UEFI.

Jakie możliwości analizy UEFI są w wersji zapoznawczej?

Następujące możliwości analizy UEFI są obecnie dostępne w trybie Podglądu i mogą mieć ograniczony zasięg:

  • SBOM i sygnały słabości (ograniczone wykrywanie openSSL i skojarzenie CVE)
  • Atrybuty utwardzania binarnego (wspierane jest wykrywanie NX / DEP)
  • Ulepszenia ścieżki ekstraktora

Interpretuj wyniki podglądu jako sygnały bezpieczeństwa, a nie gwarancje podatności lub ochrony.

Aby uzyskać szczegółowe wyjaśnienia dotyczące możliwości, ograniczeń i sposobu interpretowania wyników analizy oprogramowania układowego UEFI, zobacz Omówienie możliwości i ograniczeń analizy oprogramowania układowego UEFI.

Dlaczego nie widzę żadnych wyników dotyczących niebezpiecznych wywołań funkcji?

Pusty wynik nie oznacza, że firmware nie ma niebezpiecznych wywołań funkcji. Możesz nie zauważyć efektów, gdy:

  • Obraz firmware nie zawiera obsługiwanych plików wykonywalnych ELF działających w przestrzeni użytkownika.
  • Wyodrębnione pliki wykonywalne wykorzystują nieobsługiwaną architekturę procesora.
  • Statyczny lub odcięty binarny system nie zachowuje wystarczającej ilości informacji, aby zidentyfikować odwołania do funkcji.
  • Rozpakowany plik to moduł jądra Linuksa (),.ko który nie jest uwzględniony w tej analizie.
  • Obraz oprogramowania układowego został przeanalizowany, zanim analiza niebezpiecznych wywołań funkcji stała się dostępna.
  • Ekstrakcja lub analiza nie zakończyła się sukcesem.

Prześlij ponownie starszy obraz firmware, aby otrzymać aktualną analizę. Informacje o obsługiwanych architekturach, wymaganiach binarnych oraz wskazówki dotyczące interpretacji wyników można znaleźć w artykule Understand unsafe function call data.