人気のドラマや映画で、ハッカーはコンピューターシステムやネットワークに不法にアクセスする悪役として描かれることがよくありますが、実のところ、ハッカーとはコンピューターシステムとネットワークを熟知した人のことです。ハッカーの中には、自分が持っている技術を違法な、または非倫理的な目的のために使うブラックハットハッカーと呼ばれる人もいますが、ホワイトハットハッカーは、挑戦するためにハッキングをします。ホワイトハットハッカーは、自分が持っている技術を駆使してセキュリティシステムの強化や問題解決に取り組み、セキュリティシステムの脆弱性を改善したり犯罪者を捕まえたりしています。ハッキングをしようとは思わなくても、標的にならないようにハッカーがどのように攻撃するかを知っておくと良いでしょう。ハッキングをする方法を学ぶ準備が整っているのであれば、ここで紹介する方法を参考にしましょう。
ステップ
-
ハッキングとは何かを理解する 簡単に言うと、ハッキングとは、コンピューター、スマートフォン、タブレット、ネットワーク全体などのデジタルシステムへのアクセスを侵害、または取得するために使用される様々なテクニックのことです。ハッキングには様々な専門技術が関係しており、非常に高度な技術や心理的な方法も含まれます。様々な目的で活動しているあらゆる種類のハッカーが存在します。 [1] X 出典文献
-
ハッキングの倫理を理解する ドラマや映画でハッカーは悪役として描かれますが、ハッキング自体は良いことでも悪いことでもなく、どちらの目的にも使われる可能性があります。ハッカーとは、問題を解決したり制限を克服したりすることが好きな、科学技術を熟知した人のことです。ハッカーとしての技術を使って問題の解決策を見つけることもできれば、反対に問題を引き起こして違法行為を行うこともできます。
- 注意: 自分のものではないコンピュータにアクセスすることは違法です。ハッカーとしての技術をこのようなことに使う場合は、良いことに自分の技術を使うハッカー(ホワイトハットハッカー)の存在に注意する必要があります。ホワイトハットハッカーの中には、高額の報酬を受け取って悪いハッカー(ブラックハットハッカー)を追跡する人もいます。ホワイトハットハッカーに捕まると刑務所に行くことになるでしょう。
-
インターネットとHTMLの使い方を習得する ハッキングをするつもりなら、インターネットの使い方を覚える必要があります。インターネットブラウザの使い方だけでなく、高度な検索技術を習得しましょう。さらに、HTMLを使用してウェブページを作る方法も習得する必要があります。HTMLの勉強をすると、プログラミングに役立つ思考習慣が身につくでしょう。 [2] X 出典文献
-
プログラミングを学ぶ プログラム言語の習得には時間がかかるので、根気強く取り組む必要があります。個々の言語を学ぶことよりも、プログラマーのような思考を身につけることに重点を置きましょう。すべてのプログラム言語に共通する概念に焦点をあてます。
- C言語やC++言語は、LinuxやWindowsの基礎となった言語です。アセンブリ言語と同じように、メモリがどのようなものかという、ハッキングにおいてとても重要なことを学べます。
- PythonやRubyは高度で強力なスクリプト言語であり、様々なタスクを自動化させることができます。
- 多くのウェブアプリケーションがPHPを用いているため、PHPも学ぶ価値があります。また、Perlもこの分野における選択肢の一つです。
- Bashスクリプティングは必須です。Bashスクリプトを書くとUnixやLinuxのシステムを簡単に操作することができ、仕事のほとんどを任せられるでしょう。
- アセンブリ言語も必須です。アセンブリ言語は、プロセッサーが理解する基本的な言語であり、様々な種類があります。アセンブリ言語を知らないと、プログラムの脆弱性を利用することができません。
-
オープンソースのUnix系システムを入手して、使い方を学ぶ Unix系のオペレーションシステムには、Linuxを含めて様々な種類があります。インターネットのWebサーバーの大部分はUnix系なので、インターネットをハッキングするつもりならUnixの使い方を習得する必要があります。 [3] X 出典文献 また、Linuxのようなオープンソースシステムはコードを読み取って改変できるため、いろいろと試すことができます。
- UnixとLinuxには様々なディストリビューションがありますが、最も一般的なのはUbuntuです。Linuxをプライマリオペレーティングシステムとしてインストールしたり、Linuxの仮想マシンを作成したりすることができます。もしくはWindowsとUbuntuをデュアルブートしても良いでしょう。
広告
-
まずは、自分のマシンを保護する ハッキングをするためには、優れたハッキング技術を実践するためのシステムが必要です。ただし、自分が標的を攻撃する権限を持っているか確認しましょう。自分のネットワークを攻撃する、書面による許可をもらう、仮想マシンを備えた実験室を用意するなどします。コンテンツの内容にかかわらず、許可なくシステムを攻撃することは違法であり、問題に巻き込まれることになります。
-
標的について知る 標的の情報を集める過程を「エニュメレーション」と言います。エニュメレーションの目的は、標的とのアクティブな接続を確立し、システムを攻撃するための脆弱性を見つけることです。エニュメレーションに役立つ様々なツールやテクニックがあります。NetBIOS、SNMP、NTP、LDAP、SMTP、DNS、Windows、Linuxをはじめ、様々なプロトコルでエニュメレーションを実行できます。次の情報を集めましょう。 [5] X 出典文献
- ユーザー名、グループ名
- ホスト名
- 共有ネットワーク、ネットワークサービス
- IP tables、ルーティングテーブル
- サービス設定、監査設定
- アプリケーション、バナー
- SNMPとDNSの詳細
-
ポートスキャンを実行する ネットワークスキャナを使ってポートスキャンを実行できます。こうすると、マシンやオペレーションシステムで開いているポートが表示され、使用されているファイアウォールやルータの種類がわかるので、行動計画を立てることができます。
-
システムの解放されたポートやパスを探す FTPの21番ポートやHTTPの80番ポートなどの一般的なポートは厳重に防御されている場合が多く、未発見のエクスプロイトに対する脆弱性しかないかもしれません。LANゲーム用に開いたままになっている様々なUDPポートやTelnetなど、忘れられている可能性があるTCPやUDPのポートを試しましょう。
- 22番ポートが開放されていれば、SSH(セキュアシェル)が動作していることの証ですが、総当たり攻撃で開けることもできます。
-
パスワードや認証プロセスをこじ開ける パスワードをこじ開けるには、次のような方法があります。
- 総当たり攻撃: これは、ユーザーのパスワードを推測する方法なので、推測しやすいパスワード(password123など)が使われている場合に効果的です。ハッカーは、辞書からさまざまな単語をすばやく推測するツールを使ってパスワードを推測します。総当たり攻撃の被害を防ぐためには、単純なパスワードを避けましょう。文字と数字、記号を組み合わせてパスワードを作ります。
- ソーシャル・エンジニアリング: ユーザーを騙してパスワードを聞き出す手口です。たとえば、ハッカーがIT部門の社員を名乗り、問題を解決するために必要だとしてユーザーからパスワードを聞き出します。防御されている部屋に忍び込むためや情報を得るためにゴミ箱を漁ることもあります。そのため、誰が何と名乗ろうと、自分のパスワードを教えないようにしましょう。個人情報を含む書類は、必ずシュレッダーで処理してから捨てるようにします。
- フィッシング: ユーザーが信用する個人や会社になりすまして偽のメールを送る手口です。偽のメールには、スパイウェアやキーロガーをインストールするための添付ファイルが含まれていたり、本物にそっくりな偽のウェブサイト(ハッカーが作成した)へのリンクが含まれていたりすることもあります。偽のウェブサイトに誘導し、ユーザーに個人情報を入力させて盗み取ります。フィッシング詐欺の被害を防ぐには、怪しいメールを開かないようにして、ウェブサイトが安全である(URLに「HTTPS」が含まれている)ことを必ず確認しましょう。メールのリンクをクリックするのではなく、ウェブサイトで直接ログインするようにします。
- ARPスプーフィング: ハッカーがスマートフォンのアプリを使って、公共の場にいる誰もが使用できる偽のWi-Fiアクセスポイントを作る手口です。店などが正規に提供しているネットワーク名に似た名前が使われるため、フリーWi-Fiだと思ってログインすると、インターネット経由で送信したすべてのデータがログに記録されます。通信内容が暗号化されていない場合は、ユーザー名とパスワードを使用してアカウントにログインするとそのデータがハッカーのアプリに保存され、ハッカーに盗まれます。被害を防ぐには、フリーWi-Fiを使わないようにしましょう。どうしても使う必要があれば、施設の所有者に問い合わせて、正しいアクセスポイントにログインするようにします。通信内容が暗号化されているかを見分けるには、URLに鍵のマークがついているか確認しましょう。もしくは、 VPNを使用 しても良いでしょう。
-
スーパーユーザーの権限を取得する 非常に重要な情報のほとんどは保護されており、それを手に入れるには一定レベルの認証を得る必要があります。コンピューターのすべてのファイルを見るには、スーパーユーザーの権限、つまり、LinuxやBSDのルートユーザーと同じ権限を持つユーザーアカウントが必要です。スーパーユーザーは、ルーターでは既定の(変更されていない限り)管理者アカウントであり、Windowsでは管理者アカウントです。スーパーユーザーの権限を取得する方法はいくつかあります。
- バッファオーバーフロー攻撃: メモリレイアウトを知っている場合は、バッファに保存できない量のデータを送って誤作動を起こさせ、メモリに保存されているコードを自分のコードに書き換えてシステムをコントロールすることができます。 [7] X 出典文献
- Unix系のシステムの場合は、バグのあるソフトウェアにファイルのパーミッションを保存するようにsetuidビットが設定されていると誤作動が発生します。誤作動が発生すると、プログラムは別のユーザー(例えば、スーパーユーザー)として実行されます。
-
バックドアを作る システムを完全に支配したら、再度侵入できるようにしておくと良いでしょう。バックドアを作るには、SSHサーバーのような重要なシステムサービスにマルウェアをインストールする必要があります。バックドアを作っておくと通常の認証システムを回避できますが、次回のシステムアップグレートでバックドアが削除されるかもしれません。
- 経験豊富なハッカーは、コンパイラそのものにもバックドアを作るため、コンパイルされたソフトウェアはすべて裏口になる可能性があります。
-
足跡を隠す システムに侵入したことを管理者に気づかれないようにしましょう。ウェブサイトに変更を加えず、必要以上のファイルを作らないようにします。追加のユーザーを作らずに、できるだけ素早く行動しましょう。SSHDのようなサーバーにパッチを当てた場合は、ハードコーディングされた秘密のパスワードがあることを確認しましょう。誰かがこのパスワードでログインしようとした場合、サーバーはこれを受け入れるはずですが、重要な情報は保持していないはずです。広告
ポイント
- あなたがプロのハッカーや専門家でない限り、有名企業や政府のシステムにこれらの方法を用いるとトラブルの原因になります。システムを守るために、あなたよりも知識が豊富な人が雇われていることを覚えておきましょう。こうしたセキュリティ対策の担当者は、侵入者を見つけると犯罪行為を行うまで監視し、その後法的措置をとることもあります。つまり、システムをハッキングして自由にアクセスできると思っていたら、実は監視されていていつでも制止される状態であったということです。
- ハッカーとは、インターネットやLinuxを作って、オープンソースソフトウェアに取り組んでいる人たちです。ハッキングは尊敬に値する仕事で、現実世界で本格的に行うには多くの専門的知識が必要だと考えましょう。
- 標的側が最善を尽くしてハッカーを追い出そうとしないなら、こちらのハッキングはいつまで経っても上達しないということを覚えておきましょう。もちろん、調子に乗ったり自分は最高のハッカーだと思ったりするべきではありません。常に成長することを目標にしましょう。新しいことを学ばなかった日は無駄な一日です。重要なのは自分自身です。中途半端に終わらせないで、何としても最高を目指し、能力を最大限に引き出しましょう。ヨーダが言うように、「やるか、やらないかだ。やってみる、などない」です。
- TCP/IPネットワークに関する本を読みましょう。
- ハッカーとクラッカーには大きな違いがあります。クラッカーは悪意に基づいて(お金を稼ぐために)行動しますが、ハッカーは情報を取得して知識を得るために探索(セキュリティの回避など)を行います。
- まずは、自分のパソコンをハッキングしてみましょう。
広告
注意事項
- ログファイル全体を削除するのではなく、ファイルから問題のあるエントリだけを取り除きましょう。もう1つの問題は、バックアップファイルがあるかということです。違いを見比べられると、あなたが消去したものが見つかるかもしれません。常に慎重に行動しましょう。最善の方法は、自分の分を含めたログのランダムな行を消去することです。
- この記事の情報を悪用すると、地域レベルや国家レベルの犯罪となる可能性があります。この記事はあくまで情報を提供するものであり、この情報は倫理的で合法的な目的に用いられるべきものです。
- 興味本位でハッキングをするのはやめましょう。ネットワークにハッキングすることはゲームではありません。ハッキングには世界を変える力があるということを覚えておきましょう。稚拙な行動でせっかくの技術を無駄するのはやめましょう。
- 自分のスキルに自信がなければ、企業や政府、軍のネットワークに侵入するのはやめましょう。システムが脆弱だったとしても、向こうは大金を使ってあなたを追跡し、破滅させるかもしれません。そのようなネットワークに欠陥を見つけたら、経験が豊富で信用できるハッカーに任せ、有効に活用してもらいましょう。
- 他人のシステムをハッキングすることは法に触れる可能性があります。ハッキングしようとしているシステムの所有者に許可をもらい、ハッキングする価値があると思う場合に限って行いましょう。そうでないと、捕まってしまいます。
- セキュリティ管理において明らかな欠陥や雑な間違いを見つけたら、警戒する必要があります。セキュリティ管理の担当者がハッカーを騙そうとしているか、 ハニーポット が仕掛けられているかもしれません。
- 反対のことを聞いたことがあるかもしれませんが、他の人がプログラムやシステムにパッチを当てるのを手伝うのはやめましょう。これは非常に見苦しい行為と見なされ、ハッキングコミュニティーから追放されるでしょう。他人が見つけたエクスプロイトを公表すると、その人はあなたの敵となるかもしれません。おそらく、その人は、あなたより優秀なハッカーでしょう。
広告
必要なもの
- インターネットに接続した(動作の速い)パソコン
- プロキシ(任意)
- IPスキャナ
出典
- ↑ https://www.malwarebytes.com/hacker/
- ↑ http://www.catb.org/esr/faqs/hacker-howto.html
- ↑ https://www.youtube.com/watch?v=tlezBUdD53w
- ↑ https://blog.techorganic.com/2013/12/10/creating-a-virtual-machine-hacking-challenge/
- ↑ https://resources.infosecinstitute.com/what-is-enumeration/#gref
- ↑ https://www.hackerone.com/blog/100-hacking-tools-and-resources
- ↑ https://www.imperva.com/learn/application-security/buffer-overflow/
このwikiHow記事について
このページは 67,775 回アクセスされました。
広告