Come ispezionare e convalidare un pacchetto deb prima dell'installazione?


17

Voglio sapere il più possibile su un .debpacchetto prima di installarlo. Vi è una quantità significativa di metadati generati durante la creazione di pacchetti regolari e so che esistono anche pacchetti firmati come quelli dei repository di distribuzione.

Questa non è la risposta che sto cercando. Ovviamente posso aprire il pacchetto con file-roller e trovare la data di costruzione in questo modo, ma voglio andare oltre. Penso a qualcosa di paragonabile a come controlli i certificati TLS in Firefox.

Domande chiave:

  • Quando è stato creato il pacchetto?
  • Se possibile da chi o dove è stato creato il pacchetto?
  • Quali sono le dipendenze? (Link a una buona risposta per completezza.)
  • Il pacchetto è firmato?
    • Chi o cosa l'ha firmato?

Per quanto riguarda l'ultimo punto, conosco i .dscfile, sebbene questi non siano generalmente offerti su siti di terze parti. (Forse dovremmo sensibilizzare qui in modo che questo cambierà in futuro.)

Puoi utilizzare google-chrome come esempio per pacchetti di terze parti.

Risposte:


11

I normali file deb non contengono tutti i dati necessari, tranne per il fatto che è possibile ottenere dpkg-deb --infoo consultare il DEBIAN/controlfile.

Puoi avere file dsc con questi dati, se scarichi dal launchpad o dai repository ufficiali.

I file deb non sono firmati per impostazione predefinita. La raccomandazione generale è di non installare pacchetti deb da siti di cui non ti fidi.

Non ci sono strumenti di sicurezza speciali nei pacchetti Debian.


16

Usa questo:

dpkg-deb --info <deb file>

Preferisci usare apt se ne hai bisogno per essere firmato.


5

Tutto ciò di cui hai bisogno è

dpkg -I package.deb

Ecco un esempio di un pacchetto chiamato hostapd_2.1-0ubuntu1.2_amd64.debsul mio PC

 ~$ dpkg -I '/home/mark/hostapd_2.1-0ubuntu1.2_amd64.deb' 
 new debian package, version 2.0.
 size 422472 bytes: control archive=2619 bytes.
      66 bytes,     3 lines      conffiles            
    1537 bytes,    31 lines      control              
    1085 bytes,    15 lines      md5sums              
    1375 bytes,    53 lines   *  postinst             #!/bin/sh
     359 bytes,    14 lines   *  postrm               #!/bin/sh
     570 bytes,    30 lines   *  preinst              #!/bin/sh
     204 bytes,     7 lines   *  prerm                #!/bin/sh
 Package: hostapd
 Source: wpa (2.1-0ubuntu1.2)
 Version: 1:2.1-0ubuntu1.2
 Architecture: amd64
 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
 Installed-Size: 1219
 Depends: libc6 (>= 2.15), libnl-3-200 (>= 3.2.7), libnl-genl-3-200 (>= 3.2.7), libssl1.0.0 (>= 1.0.1), lsb-base (>= 3.2-13), initscripts (>= 2.88dsf-13.3)
 Section: net
 Priority: optional
 Multi-Arch: foreign
 Homepage: http://w1.fi/wpa_supplicant/
 Description: user space IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authenticator
  Originally, hostapd was an optional user space component for Host AP
  driver. It adds more features to the basic IEEE 802.11 management
  included in the kernel driver: using external RADIUS authentication
  server for MAC address based access control, IEEE 802.1X Authenticator
  and dynamic WEP keying, RADIUS accounting, WPA/WPA2 (IEEE 802.11i/RSN)
  Authenticator and dynamic TKIP/CCMP keying.
  .
  The current version includes support for other drivers, an integrated
  EAP authenticator (i.e., allow full authentication without requiring
  an external RADIUS authentication server), and RADIUS authentication
  server for EAP authentication.
  .
  hostapd works with the following drivers:
  .
   * mac80211 based drivers with support for master mode [linux]
   * Host AP driver for Prism2/2.5/3 [linux]
   * Driver interface for FreeBSD net80211 layer [kfreebsd]
   * Any wired Ethernet driver for wired IEEE 802.1X authentication.
 Original-Maintainer: Debian/Ubuntu wpasupplicant Maintainers <pkg-wpa-devel@lists.alioth.debian.org>

E un altro a caso chiamato pulseaudio_6.0-90-g75dd2-1_amd64.deb

~$ dpkg -I '/home/mark/pulseaudio/pulseaudio_6.0-90-g75dd2-1_amd64.deb' 
 new debian package, version 2.0.
 size 1421422 bytes: control archive=314 bytes.
       0 bytes,     0 lines      conffiles            
     222 bytes,     9 lines      control              
 Package: pulseaudio
 Priority: extra
 Section: checkinstall
 Installed-Size: 8144
 Maintainer: root@Ubuntu
 Architecture: amd64
 Version: 6.0-90-g75dd2-1
 Provides: pulseaudio
 Description: Package created with checkinstall 1.6.2

1

provare apt-cache show <package-name>

Riceverai molti metadati (Maintainer, Original Maintainer, Depends, MD5) ma forse non tutti quelli che stai cercando.


2
Leggere attentamente: prima dell'installazione
LiveWireBT,

Questo è applicabile solo ai repository.
Pilota 6

1

Voglio offrire una soluzione user friendly desktop basata sulla GUI. Sto usando Ubuntu Mate 18.04

  1. Fare doppio clic sul file .deb. Si aprirà a Gdebi. Se non è già installato, puoi installare Gdebi usando sudo apt-get install gdebi.

    inserisci qui la descrizione dell'immagine

  2. Quando fai doppio clic sul file .deb, puoi trovare il nome del pacchetto, le dipendenze, i file che installerà e dove e molto altro.

  3. Se si decide di installare il pacchetto, utilizzare Install Package

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.