GNU/Linux >> Linux の 問題 >  >> Linux

Linux または Windows - セキュリティの問題

ここでいくつかの悪い考えを打ち破ります:

1) Linux は市場シェアが少ないため、より安全です。

公共のマシンがボット、ウイルス、ハッカーなどに一日中攻撃されているサーバー市場ではありません:

http://en.wikipedia.org/wiki/Usage_share_of_operating_systems#サーバー

2) Windows は最近のバージョンでより安全です。

少なくともカーネル レベルでは、Windows でのリモート実行エクスプロイトと権限昇格の CVE レポートが増えています。また、Linux でのマルチユーザー環境へのローカル DoS 攻撃も増えています。 CVE データベースからの統計的内訳の束ですが、数か月前に作成した投稿が見つからないので、イライラします! Google はそれを見つけるのを手伝ってくれません...)。

ご覧のとおり、Server 2008 では はるかに CVE 重大度の加重平均:

http://www.cvedetails.com/top-50-product-cvssscore-distribution.php (さらに、2008 年の開発の 1.2 日間と過去 5 年間のすべての Linux 脆弱性!)

もちろん、一連のソフトウェアとその上に事前構成が付属している Ubuntu のようなもので実行します。それらは、その上で実行されているソフトウェアの気まぐれです。

この件に関する私の意見:Linux は多くの Unix の概念に基づいて構築されており、40 ソフトウェア開発とこれらのボックスを打ち負かす人々の死に至るまで、それは主に Unix の火による試練によって安全であり、これは非常に役に立ちました。多くの教訓が学ばれ、Linux に直接適用されました。

<ブロック引用>

これは、Linux のオープンソースの性質と何か関係がありますか?

その多くは、少なくとも 音量 が高くなる速度と関係があります。 の CVE が対処されています。これにより、多くの小さな問題を見つけて修正することもできます (主にその人気によるものです) 、人気のないオープンソースは、コードへの注目がほとんどなく、修正への関心がほとんどないことを意味するためです.

<ブロック引用>

その基礎となるアーキテクチャ (および Windows との違い)?

マルチユーザー環境を中心に構築されていることは、非常に役立ちます。これらのシステムは、一度に多数の人が利用できるように構築されており、1 人のユーザーが別のユーザーに割り込むことはできません。


正当な理由:

<オール>
  • Linux のユーザーベースが小さいため、デスクトップ Linux はあまり魅力的なターゲットではなくなります。コンピューターの 0.1% だけが Ubuntu 10.04 を実行しており、トロイの木馬がその特定のバージョンの Linux でのみ動作する場合、おそらく決してキャッチされません。トロイの木馬が Windows XP でしか動作しない場合でも、市場の最大 25% を攻撃できます。
  • 多くの場合 (常にではありません)、より知識が豊富でセキュリティ意識の高いユーザーベース。とはいえ、Ubuntu のような OS によって Linux はよりアクセスしやすくなり、愚かなことをしている人々を見つけることができます。
  • さらに、Linux はより安全な設計をしていることが多いと主張できる、やや議論の余地のある理由もあります (他の OS が追いついてきているため、これはもはや真実ではないかもしれません)。

    <オール>
  • su による適切な権限分離とアクセス制御 /sudo 、古いバージョンの Windows には実際には存在しません。
  • OS にプリインストールされていない新しいソフトウェア (画像エディタ、LaTeX、Python など) が必要だとします。 Linux では、99% の確率でパッケージ マネージャーを使用して、信頼チェーンから検証された暗号化された署名付きソフトウェアを自動的にダウンロードしてインストールします。これは更新にも自動的に使用されます (そのため、システム全体のすべてのソフトウェアを最新の状態に保ち、セキュリティ ホールにすばやくパッチを当てることが簡単になります)。 Windows では、何か新しいものをインストールする必要がある場合、ほとんどの場合、Web を検索し、スパイウェア/ブロートウェア/トロイの木馬を含むソフトウェアをロードする可能性のあるランダムな http Web サイトからダウンロードしてインストールする必要があります。 MITM 攻撃を回避し、代わりにウイルスをダウンロード/インストールし、各アプリケーションには独自の (異なる) インストーラー/自動アップデーターがあります。 (とは言っても、PPA、インターネット上のランダムなスクリプト、またはLinux / Windowsの両方の主要なセキュリティ脆弱性としてブラウザ拡張機能を追加することを人々が信頼しすぎていることがわかりました).
  • ssh . ssh を介した別のリモート マシンへの標準接続は非常に便利で強力であり、セキュリティの点で Windows リモート認証よりもはるかに優れています。 ssh マシンに接続するときはいつでも、他のマシンのホスト キーが以前に使用されたキーから変更されていないことを暗号的にチェックします。盗聴者にリプレイ攻撃を使わせたり、キーロガーにパスワードを見せたりすることなく、ssh 秘密鍵を使用してチャレンジ トークンに応答できます。次に、すべてのトラフィックが 2 台のマシン間で暗号化されて送信されます。さらに、Linux ボックスにセットアップするのは簡単です。
  • さまざまな無料の Linux セキュリティ ツール:SELinux、AppArmor、wireshark、iptables (または ufw のようなラッパー)、ssh、cron、top (本当は htop)、fail2ban、tripwire、GPG、OpenSSL、md5sum/sha256sum など。また、スクリプトのセットアップ、ログ ファイルのスキャン、アラートの電子メール送信、コマンド ラインからのすべての実行なども非常に簡単です。これらのほとんど (すべて?) には、おそらく Windows と同等のものがありますが、無料ではないか、変更される傾向があります。バージョン間でたくさん。 cronjob の設定は、基本的にいくつかのタスクを自動化することであり、過去 20 年間とほとんど同じです。一方、Windows で自動化されたタスクをセットアップすると、OS 間で劇的な変化が生じます。
  • 正当でない理由:

    <オール>
  • Linus の法則:「十分な目玉があれば、すべてのバグは浅いものである」。したがって、オープンソースはクローズドソース ソフトウェアよりも安全です。オープンソースのもの (Debian OpenSSL など) には重大なセキュリティ ホールが数か月または数年にわたって存在することがわかっているため、この議論に特に説得力があるとは思いません。攻撃者がソースを読んだり、バグを探したり (または偽装したバグをコードベースに導入しようとすることさえあります) する可能性があるため、さらに悪いことです。しかし、クローズソースのソフトウェアが本質的により安全であるとは思いません. 人々は依然として間違いを犯しており、プロプライエタリなコードベースにホールを導入するために誰かに簡単にお金を払うことができます.明らかに、セキュリティ バグやバックドアはクローズソース ソフトウェアに存在することが多く、同様に攻撃されています。 (これは多かれ少なかれ引き分けだと思います。)

  • Linux でのウイルス/マルウェアの状況はほぼ「正常」であり、Windows でのウイルス/マルウェアの状況は統計異常であり、ブラック スワンというよりも「ドラゴン キング」に近いと思います。

    Windows には、異常にバロックな一連の API、Win32、NT ネイティブ API が次々とあり、NT ネイティブが Unicode であるのに対し、Win32 は基本的に ASCII インターフェイスであるなど、それらの間にいくつかの問題がありました。これにより、少なくともマルウェアが助長されました。 Rococo の詳細の例として、任意のディレクトリで機能するマジック デバイス ファイル名、AUX、CON、LP について考えてみましょう。

    Windows ネイティブ API は実際に文書化されたことはありません。この文書化の欠如は、次のような他の事柄につながります:実行可能ファイルのファイル名拡張子のセットは何ですか?ファイルが実行可能かどうかがファイル名によって決まるのはなぜですか?たとえば、NIMDA ワームは「.eml」ファイルの問題を介して拡散したのではないでしょうか。当時、.eml ファイルが実行可能であることは誰も知りませんでした。

    Windows には、特権を分離するという伝統はありません。実際、単一の root ユーザーという伝統があります。多くのアプリケーションはまだこれを想定しています。 Windows には、実行可能ファイルからデータを分離する伝統がありません。分離されていないデータと命令の例として、.doc ファイルに埋め込まれた Word マクロを紹介し、歴史的にウイルスの問題を引き起こしてきました.

    Linux には、少なくとも上記のすべての点とは反対の伝統があります。適度に効果的な任意のアクセス制御、日常的に適用できるほどシンプルでありながら、従来のファイル タイプのウイルスを寄せ付けないほど包括的なものです。システム コール インターフェイスは適度に複雑であり、ソース コードは自由に入手できるため、複数のドキュメント ソースが存在します。通常、実行可能ファイルは「bin」ディレクトリにあり、データは別のディレクトリにあります。各実行可能ファイルには、大きな古いレジストリを共有するのではなく、独自の構成ファイルがあります。データ ファイルはユーザーごとのディレクトリにあり、Word などのデータ ファイルに含まれる強力なマクロが含まれることはほとんどありません。

    また、「Windows」のように「Linux」は実際には存在しません。何百ものディストリビューションが存在し、それぞれが低レベルの詳細のほぼすべての側面をカスタマイズしています。さまざまなコンパイラ バージョン、さまざまな Linux カーネル、一部は完全モジュール式、一部はモジュールなしです。これは、カーネルから電子メール クライアントまで、システムのほぼすべてのソフトウェア面に当てはまります。 「Windows」ユーザーは概して Outlook 電子メール クライアントを使用しますが、Linux ユーザーは数百の異なるクライアントを使用し、それぞれ数十のバージョンがあります。特定のソフトウェアの特定のバージョンのユーザー ベースは存在しません。ユーザー ベースは単に分断されているだけでなく、粉砕されています。これにより、適切な数のホストで脆弱性を見つけたり、ソフトウェアの十分な数のインスタンスで機能するエクスプロイトを作成したりすることが非常に難しくなります.


    Linux
    1. 私のLinuxストーリー:なぜ人々にRaspberryPiを紹介するのか

    2. Linuxlsコマンドをマスターする

    3. Linux ファイルのバックスペースの問題

    1. Linuxのセキュリティ:さらに8つのシステムロックダウンコントロール

    2. UNIX/LINUX でコマンドにかかる時間を追跡しますか?

    3. BCRYPT - Linux ディストリビューションがデフォルトで使用しないのはなぜですか?

    1. 13Linuxセキュリティチュートリアル

    2. Linux での locate コマンド

    3. Linux で 2 つ以上のファイルを結合する最速の方法は何ですか?