コンピューターに物理的にアクセスした人が、これらの手順で何らかの方法でルートを取得する能力はどのように安全ですか?
変化する:
"linux /vmlinuz-2.6.35-23-generic root=UUID=e7f1e48d-0015-485f-be7d-836217a31312 ro quiet splash"
に:
"linux /vmlinuz-2.6.35-23-generic root=UUID=e7f1e48d-0015-485f-be7d-836217a31312 ro init=/bin/bash"
これで、rootアクセスができます:
mount -o remount,rw /
passwd user
mount -o remount,ro /
sync
コンピューターを再起動すると勝ちます。
私の質問は、grub2を介してどのようにLinuxマシンに侵入できるかということです。 Linuxについてのその事実は理解できませんが、ご回答ありがとうございます。
コンピュータに物理的にアクセスした人がルートを取得する能力(Grub/Bashを使用して)はどのように保護されますか?
Linuxがそれを始めようと決めた場合、ハッカーは他のセキュリティホールを悪用するだけだからです。セキュリティの最初のルールは、システムに物理的にアクセスできる場合、ゲームオーバーです。私は勝ちました。
さらに、Xサーバーが壊れ、GUIがもうないことを想像してください。回復コンソールを起動して問題を修正する必要がありますが、それは安全ではないためできません。この場合、システムは完全に壊れた状態になりますが、少なくとも「安全」です。
しかし、カズ、これはどのように可能ですか?私の
init
をBashに変更できないように、Grubにパスワードを設定しました!
ああ、そうでしたか?興味深いのは、これが写真アルバムのように見えるからです。 GRUBには固有のセキュリティ要素がまったくありません。これは単なる bootloader であり、一部のセキュアブートおよび認証チェーンのステップではありません。実際に設定した「パスワード」は、簡単にバイパスできます。
それと、緊急時にシステム管理者がブートドライブを実行しない /は何ですか?
しかし、どのように!?あなたは私のパスワードを知らない(これは
P@ssw0rd
btwではない)
ええ、しかし、それは私があなたのコンピューターを開いてあなたのハードドライブを引き出すことを止めるものではありません。そこから、ドライブをコンピューターにマウントする簡単な2つの手順で、すべてのシステムにアクセスできます。これには、BIOSパスワードをバイパスするというすばらしい利点もあります。それか、CMOSをリセットしただけかもしれません。どちらかまたは両方。
だから...どうやってデータにアクセスさせないのですか?
シンプル。コンピュータを私から遠ざけてください。触ったり、キーボードにアクセスしたり、自分のフラッシュドライブを挿入したり、分解したりできれば、勝つことができます。
だから、私は自分のコンピューターをデータセンターなどに置くのが好きですか?これらはかなり安全ですよね?
ええ、そうです。しかし、人間もハッキング可能であることを忘れており、十分な時間と準備があれば、おそらくそのデータセンターに入り、コンピューターからその甘い、甘いデータをすべて吸い上げることができるでしょう。しかし、私は脱線します。ここでは real ソリューションを扱っています。
さて、あなたは私のブラフに電話しました。データセンターに置くことはできません。ホームフォルダーなどを暗号化することはできますか?
もちろんできます!それはあなたのコンピューターです!それは私を止めるのに役立ちますか?わずかではありません。 /usr/bin/firefox
のような重要なものを自分の悪意のあるプログラムに置き換えることができます。次回Firefoxを開くと、すべてのシークレットデータがシークレットサーバーのどこかにシークレットされます。そして、あなたも知りません。または、マシンに頻繁にアクセスする場合は、ホームフォルダーを/usr/share/nonsecrets/home/
または同様の(暗号化されていない)場所にコピーするように設定するだけです。
さて、フルディスク暗号化はどうですか?
それは...実際にはかなり良いです。しかし、まだ完璧ではありません!信頼できる圧縮空気の缶を使用して、常に Cold Boot Attack を実行できます。または、ハードウェアキーロガーをコンピューターに接続するだけです。一方は明らかに他方よりも簡単ですが、方法は実際には重要ではありません。
vast 大半の場合、これは適切な停止場所です。たぶん、TPM(以下で説明します)と組み合わせれば、あなたは黄金色になります。 3文字のエージェンシーまたは very やる気のあるハッカーに怒りを感じない限り、この段階を過ぎて必要な努力をする人はいません。
もちろん、PPAなどを提供することで、マルウェア/バックドアをインストールすることもできますが、これは非常に曖昧なユーザー信頼の領域に入ります。
だから...どのようにiPhoneはとても安全ですか?物理的にアクセスしても、できることはあまりありません。
はい、そうです。つまり、やる気があれば、フラッシュチップを読んで必要なものをすべて手に入れることができます。ただし、iPhoneは完全にロックダウンされたプラットフォームであるため、根本的に異なります。しかし、同時に、ユーザビリティと壊滅的な障害から回復する機能を本当に犠牲にします。 GRUB(非常に特別に設計された場合を除く)は、セキュリティシステムのチェーンであることを意味する not です。実際、ほとんどのLinuxシステムでは、ブート後に起動するセキュリティチェーンがあるため、GRUBが処理を完了した後です。
さらに、iPhoneには暗号化署名が適用されており(以下でも説明)、正当な経路を介してマルウェアが携帯電話に忍び寄るのを非常に困難にします。
しかし、TPM/SmartCards/[ここに暗号技術を挿入]はどうでしょうか?
さて、今あなたは物理的セキュリティを方程式にペアリングしていますが、それはさらに複雑になります。しかし、TPMは比較的脆弱であり、すべての暗号化がオンチップで行われるわけではないため、これは実際には解決策ではありません。 TPMがチップ自体で暗号化を行う(何らかの方法で)十分に強力な場合(一部の非常に派手なハードドライブにはこのようなものがあります)、キーが公開されることはなく、コールドブート攻撃などは不可能です。ただし、システムバスにはキー(または生データ)がまだ存在している可能性があります。これは、キーを傍受できることを意味します。
それでも、私のハードウェアキーロガーはパスワードを取得でき、前述のFirefoxの悪用方法でマルウェアをマシンに簡単にロードできます。私が必要とするのは、あなたがあなたの家/コンピューターをたぶん1時間離れることです。
さて、TPM /スマートカード/何でも持って行って、すべての暗号化が実際にチップ上で行われる場合(つまり、キーがRAMに保存されていない場合)、それはほとんど事実上不可能ですあなた(ユーザー)がスリップして何かを忘れない限り、私がまったく参加することはできません。つまり、システムバスから(暗号化されていない)キーを読み取る方法を見つけない限りです。
しかし、すべてのプログラムが合法であることを確認するために、何らかの形式の暗号化/デジタル署名の強制がある場合はどうなりますか?
さまざまなスマートフォン企業で実証されているように、これはセキュリティに対処するための very の良い方法です。これで、悪意のあることを行うためにマシンにコードを挿入する私の能力が無効になりました。これはプラスです。事実上、マシンへの永続的なアクセスをリモートで保持する機能を無効にしました。これは大きなプラスです。
ただし、これはまだ完璧な方法ではありません!デジタル署名の実施により、ハードウェアキーロガーが停止することはありません。また、完全にバグがない必要があります。つまり、自分の証明書をマシンの証明書ストアにロードできるエクスプロイトを見つける方法はありません。さらに、これは、システム上のすべての実行可能ファイルに署名する必要があることを意味します。手動ですべてを実行する場合を除き、すべてにデジタル署名があるAptパッケージなどを見つけるのは非常に困難です。同様に、これは署名されていない実行可能ファイル、つまりリカバリの正当な使用をブロックします。重要な何かを壊し、それを修正する(署名された)実行可能ファイルがない場合はどうなりますか?さて、あなたのシステムがあります。
いずれにせよ、Linuxでの これを行うための努力 は基本的にすべて放棄されており、新しいカーネルでは機能しなくなっているため、独自のカーネルを作成する必要があります。
だから、あなたを私のコンピューターから締め出すことは不可能ですか?
事実上、はい、ごめんなさい。物理的なアクセスと十分なモチベーションがあれば、 always はシステムに入ることができます。例外なく。
しかし、実際には、ほとんどの邪悪な人々は、いくつかの猫の写真のためだけにここまで行こうとはしません。通常、フルディスク暗号化(またはLinuxを実行しているだけです!)で、ほとんどのスクリプトキディが2秒の名声を得ることを阻止するのに十分です。
TL; DR:コンピューターの近くで信頼していない人に聞かせないでください。通常はこれで十分です。
拘束する場合は、 パスワード を使用します。リンクから:
GRUB 2パスワード保護に関する注意事項
Grub 2は、次のパスワード要件を確立できます。
管理者は、GRUB 2システムファイルを編集して、パスワード保護を手動で有効にする必要があります。
ユーザーとパスワードは、/etc/grub.d/00_header
または別のGRUB 2スクリプトファイルで識別する必要があります。
すべてのメニュー項目の普遍的な保護が必要な場合を除き、特定のエントリを識別する必要があります。
/etc/grub.d/
や10_linux
などの30_os-prober
スクリプトを編集して手動でユーザーが作成したカスタム構成ファイルを編集して手動で。
上記のいずれの方法でも、update-grubが実行されるたびに、GRUB 2が構成ファイル(grub.cfg)にパスワード要件を自動的に追加できます。
/boot/grub/grub.cfg
を編集して手動で。 update-grub
が実行されると、このファイルの編集は削除され、パスワード保護は失われます。
GRUB 2パスワード保護のいずれかの形式が有効になっている場合、GRUB 2コマンドラインおよびメニュー編集モードにアクセスするには、スーパーユーザーの名前とパスワードが必要です。
この場合、デフォルトでは(!)ユーザビリティはセキュリティより優先されます。周囲の人を信頼できない場合は、常にマシンを持ち歩きます。より多くのセキュリティを必要とする人々は、システム全体を暗号化する傾向があり、パスワードの必要性を必須にします。
あなたの意図的なハックはこれから始まります:
ただし、ここで説明するように、e
オプションをパスワードで保護できます。 ブートオプションを編集するときではなく、OSロードプロセスにGRUBパスワード保護を追加する方法
リンクで説明されているように、grubパスワードを暗号化する追加の手順を実行できます。実際、おそらく人口の3%(野生の推測)が自宅でLinux/Ubuntuを使用しているため、システム管理者が職場の実稼働システムのe
機能から保護することをお勧めします。 Ubuntuが職場で使用されている場合、30〜40%が自宅でも使用し、そのうち10%がホームシステムでe
を実行する方法を学習していると思います。
あなたの質問のおかげで、彼らはさらに多くを学んだ。ただし、上記のリンクを使用すると、システム管理者は、本番環境を保護するためのTo Doリストに別のタスクを設定できます。
GRUBを安全にするには、アクセスを保護する必要があります。これは、ハードディスクのパスワードを使用して簡単に実行できます。ここでは、ディスク自体のファームウェアに保存されるディスクセキュリティについて説明します。ディスクは読み書きできません。したがって、パスワードなしではgrubにアクセスできないだけでなく、データもアクセスできます。
パスワードはディスク自体に保存されているため、別のシステムにパスワードを移動してもハッカーの助けにはなりません。
製造元のディスクからパスワードを削除できるソフトウェアがありますが、ディスクを効果的に消去します。したがって、データはまだ安全です。