$ uname -a
Linux mypcname 3.16.0-4-686-pae #1 SMP Debian 3.16.7-ckt25-2 (2016-04-08) i686 GNU/Linux
これを確認したいです^^私のコンピュータのLinuxカーネルは悪意を持って改ざんされていません。存在すると疑う理由はなかったが、とにかく確認したかった。私の考えでは、私のカーネルソフトウェアをソフトウェアの元の開発者が公に提供したのと同じバージョンと比較することは、私の目的には「十分に良い」チェックでなければならないと思います。このような考え方に著しく誤った点がある場合は、お知らせください。カーネルに加えて、他のマルウェアもコンピュータ上で実行される可能性があることを知っていますが、この質問の目的のためにカーネルにのみ興味があります。
カーネルが実行されているときはチェックは不要です。コンピュータをシャットダウンし、別のカーネルやオペレーティングシステムを起動すること、さらにハードドライブを取り出して他のコンピュータに接続してスキャンを実行することを防ぐことはできません。しかし、実際には迅速な確認だけをしたいので、すべての確認に既存のカーネルを使用します。完璧ですか?いいえ。私の目的には十分ですか?確かに。
次のようにカーネルのハッシュを取得します。
$ apt-cache show linux-image-3.16.0-4-686-pae
Package: linux-image-3.16.0-4-686-pae
Source: linux
Version: 3.16.7-ckt25-2
Installed-Size: 118358
Maintainer: Debian Kernel Team <[email protected]>
Architecture: i386
Provides: linux-modules-3.16.0-4-686-pae
Depends: kmod | module-init-tools, linux-base (>= 3~), debconf (>= 0.5) | debconf-2.0, initramfs-tools (>= 0.110~) | linux-initramfs-tool
Pre-Depends: debconf | debconf-2.0
Recommends: firmware-linux-free (>= 3~), irqbalance, libc6-i686
Suggests: linux-doc-3.16, debian-kernel-handbook, grub-pc | extlinux
Breaks: at (<< 3.1.12-1+squeeze1), initramfs-tools (<< 0.110~)
Description-en: Linux 3.16 for modern PCs
The Linux kernel 3.16 and modules for use on PCs with one or more
processors supporting PAE.
.
This kernel requires PAE (Physical Address Extension). This feature is
supported by the Intel Pentium Pro/II/III/4/4M/D, Xeon, Core and Atom; AMD
Geode NX, Athlon (K7), Duron, Opteron, Sempron, Turion or Phenom;
Transmeta Efficeon; VIA C7; and some other processors.
.
This kernel also runs on a Xen hypervisor. It supports both privileged
(dom0) and unprivileged (domU) operation.
Description-md5: b2c3f405aab9f0fe07863b318891f277
Homepage: https://www.kernel.org/
Section: kernel
Priority: optional
Filename: pool/main/l/linux/linux-image-3.16.0-4-686-pae_3.16.7-ckt25-2_i386.deb
Size: 33408936
MD5sum: ce730b36742b837e3990889f2d897b60
SHA1: 6f0816a4f4a2a24e7b74e9fa903dde778d825e63
SHA256: 63a59e3a09afa720ce1c9b71bb33176e943e59aa90a9e3d92100b1d3b98cd1c6
だからいくつかの質問があります。
- これがファイルのハッシュですか
pool/main/l/linux/linux-image-3.16.0-4-686-pae_3.16.7-ckt25-2_i386.deb
? - 私のハッシュが正しいことを確認するために、オンラインでこれらのハッシュをどこで見つけることができますか?
.deb
(1)に対する答えが「はい」と仮定すると、自分のコンピュータで実際に実行されているカーネルがこのファイルによってインストールされているカーネルと同じであることをどのように確認できますか?
コメントでこの質問に対する反対表が見つかりました...
議論をしようとするこの質問を上げるのではありません。この質問で私が要求する検査は一律に適用されるものではありません(コンピュータセキュリティにはそのようなものはありません)。この問題について質問がある場合は、Linuxカーネル開発者がPGPキーを使用してソフトウェアに署名し、次のことをお勧めします。
すべてのカーネルバージョンは、OpenPGP 準拠の署名を使用して暗号化署名されます。誰もがその署名を確認して、ダウンロードしたカーネルバージョンの整合性を確認することをお勧めします。
(源泉:https://www.kernel.org/signature.html)
私が知っている限り、PGP署名は修正を検証するためにファイルをハッシュすることとは異なる機能を実行しますが、セキュリティの観点からは類似点があります。特に、破損したシステムのデータ出力を信頼する場合にはさらにそうです。このたとえ話を通して、この質問を読んでいる読者はそれを無視することがないことを願っています。なぜならこれまではほとんどそうだったからです。
答え1
これは pool/main/l/linux/linux-image-3.16.0-4-686-pae_3.16.7-ckt25-2_i386.deb ファイルのハッシュですか?
はい。
私のハッシュが正しいことを確認するために、オンラインでこれらのハッシュをどこで見つけることができますか?
(1)への答えが「はい」であると仮定すると、私のコンピュータで実際に実行されているカーネルがこの.debファイルによってインストールされたカーネルと同じであることをどのように確認できますか?
私はこれを行う簡単な方法がわかりません。 debファイルではなくdpkg --verify
(操作しやすい)チェックサムを使用しているので問題があります!/var/lib/dpkg/info/
debファイルから直接ファイルのmd5sumを取得できます。
dpkg-deb -e linux-image-3.16.0-4-686-pae_3.16.7-ckt25-2_i386.deb
これにより、パッケージ内のファイルのmd5sumsDEBIAN
という名前のファイルを含むディレクトリに制御ファイルが抽出されます。このファイルはインストールされているバージョンによって確認できます。md5sums
もちろんこれは教育目的だけです。私はセキュリティについてよく知りません!欲しいものがあれば本物分析すべき安全上の利点みんなシステムが実行されていない場合は、ブートローダを使用して起動します。