以下を使用してパッケージをインストールするとしますdpkg
。
sudo dpkg -i package-name.deb
その後、パッケージバイナリを実行せずに単に削除します。
sudo dpkg -r package-name
その過程で有害なことが起こりますか?たとえば、.deb
ファイルに悪意のある設定スクリプトがありますか?また、どのような脅威が発生する可能性がありますか?
答え1
はい、パッケージには次のものを含めることができます。「管理者スクリプト」インストール前および/またはインストール後に実行してください。パッケージから制御アーカイブを抽出してスクリプト(使用可能な場合)を表示できます。
dpkg-deb --ctrl-tarfile package-name.deb > control.tar
tar tf control.tar
または、制御アーカイブのコンテンツを抽出する場合:
dpkg-deb -e package-name.deb package-control
(抽出したファイルをというディレクトリに保存しますpackage-control
)。
ルートとして実行され、パッケージ作成者はシステム上で必要なすべての操作を実行できます。
パッケージをインストールすることは、管理者(およびパッケージのメンテナンスと展開に関連する他のすべての人)にシステムへのルートアクセス権を付与することと同じであることを実際に考慮する必要があります。あなたは誰を信頼しますか?
答え2
管理者スクリプトを忘れた場合でも、パッケージは1分ごとに実行されるcronスクリプトをインストールできます。この1分はパッケージのインストールとアンインストールの間を通過できます。
あるいは、プログラムをインストールすることができます/bin/python
(実際の使用よりも優先されます/usr/bin/python
)、いくつかのバックグラウンドプロセスがPythonを起動しようとするかもしれません。
あるいは、プログラムをインストールしてアンインストールしよう/bin/dpkg
とすると、実際には実行するだけです。