質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

8回答

1193閲覧

ホワイトハッカーになるには

washi

総合スコア5

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

2クリップ

投稿2020/03/01 03:44

編集2020/03/01 15:11

ホワイトハッカーになるには

自分でサーバーをたてて、ハッキング(そのサーバーのパスワードを変更)をしようとしているのですが、それは法律的には大丈夫なのでしょうか、またどのような方法でするのでしょうか

発生している問題・エラーメッセージ

該当のソースコード

ソースコード

試したこと

C言語を学んだりした

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2020/03/01 07:41

なぜJava? そしてなぜC言語? ハッカーとクラッカーの違いはご存知ですか?
washi

2020/03/01 10:00

すいません。言い方が悪かったですね、ホワイトハッカーになりたいのですが、ホワイトハッカーになるためにはハッキングから始めるべきだと思ったんです。そのハッキングを聞きたかったのですが、自分の説明不足で誤解を招くような言い方をしてしまって申し訳ないです。学校の先生に聞いたところハッキング関係はC言語を取得してからJavaを取得するといいって言われたので参考書を買って勉強中なのですが、まったくもって関係のないものなのですか?
m.ts10806

2020/03/01 10:05

質問は編集できます。回答者に意図が正しく伝わらなければ自身が得たい回答を得られず、回答者の回答も無駄になります。お互い気が悪くなるので、赤の他人が読むことは意識してください。
m.ts10806

2020/03/01 10:10

ホワイトハッカーを目指すのであれば、企業などが求めるものによりますので、「これをやったらなれる」という絶対の基準はありません。 クラッカーもそうですけどね。(目指したことないけど) 学校の先生は実際にホワイトハッカーなのですか? どうかは知らないですけど、CもJavaもホワイトハッカーになるうえでは直接関係はないのではないでしょうか。 どちらかというと「セキュリティ」案件だと思います。(言語はあくまで手段)
washi

2020/03/01 10:28

なるほど。色々勉強になりました、まずはセキュリティ関係の参考書から手をだして見ようと思います
m.ts10806

2020/03/01 10:37

質問は編集できます。回答者に意図が正しく伝わらなければ自身が得たい回答を得られず、回答者の回答も無駄になります。お互い気が悪くなるので、赤の他人が読むことは意識してください。 既に「クラッカーの方だ」と解釈した人だらけになっています。 いちいち個々に説明するより質問を編集した方が今後来る人にも確実に要件が伝わります。
guest

回答8

0

ベストアンサー

自分でサーバーをたてて、ハッキング(そのサーバーのパスワードを変更)をしようとしているのですが、それは法律的には大丈夫なのでしょうか、またどのような方法でするのでしょうか

法律的には大丈夫かどうかは、法律の専門家でないと分からないので、ここで回答を得るのは難しいと思います。


学校の先生に聞いたところハッキング関係はC言語を取得してからJavaを取得するといいって言われたので参考書を買って勉強中なのですが、まったくもって関係のないものなのですか?

ハッキングにもいろいろ手法がありますので、C言語やJavaが「関係する場合」と「しない場合」があります。

先生に言われたことを鵜呑みにせず、ハッキングとどう関係しているのか理解していないと、学習しても意味がないと思います。


質問者さんと回答者とやり取りを見ていると、質問者さんは「ホワイトハッカー」が何なのかいまいち理解されていないように感じました。
質問者さんが考える「ホワイトハッカー」は、以下のどれでしょうか?

  • サーバーに侵入して、サーバー内のデータを盗んだり破壊したりする人(クラッカー)
  • サーバーへの不正な侵入を防ぐ人(セキュリティエンジニア)
  • サーバーを構築する人(インフラエンジニア)
  • サーバーで動作するソフトウェアを作る人(プログラマー)
  • ただコンピュータに詳しい人(コンピュータマニア)

もし「セキュリティエンジニア」を目指すのであれば、以下の書籍を読むことをおすすめします。

体系的に学ぶ 安全なWebアプリケーションの作り方 第2版
https://www.amazon.co.jp/dp/B07DVY4H3M

ハッキング・ラボのつくりかた 仮想環境におけるハッカー体験学習
https://www.amazon.co.jp/dp/B07JJKLZNW

投稿2020/03/02 01:44

nskydiving

総合スコア6500

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

washi

2020/03/02 06:38

ありがとうございます。セキュリティエンジニアになりたいのでとりあえず本を買ってみました。一生懸命勉強します。
guest

0

自分の作ったサイトであれば、何をしようが、自分の意図で使っているわけなので、法律に違反はしません。

ただ、ハッキング可能なサーバーをインターネット上に公開すると、本当にハッキングされて、他サイトへの攻撃に使うとか、詐欺に使うなどされて、他人に害を及ぼす可能性があります。そういう脆弱性を意図的に作ったということであれば、詐欺などの共犯者とみなされるのは十分あり得ることです。

インターネットにつながっていないネットワーク環境で行うのがいいと思います。

投稿2020/03/01 04:03

otn

総合スコア85901

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

washi

2020/03/01 04:05

わかりました。本当に感謝しています。図々しいと思いますが、ハッキングにおいて必要な技術やツールってありますか。
otn

2020/03/01 04:47

「プログラミングはどうやってするのですか?」並みの質問ですね。 まずは、入門書を2、3冊読むところからでしょうか。
washi

2020/03/01 05:07

わかりました。とりあえずprogateやUdemyから始めてみようと思います。
guest

0

パスワードを変更するのはパスワードを変更するコマンドを使用します。コマンドはOSによって異なります。
自分の管理下のパスワードを変更するのは違法性はなく、ハッキングとは言いません。

投稿2020/03/01 05:14

編集2020/03/02 04:52
sage

総合スコア1240

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

washi

2020/03/01 05:45

知識を誤ったのは謝ります、すいません。ハッキングというのはどうゆうものなのですか?
sage

2020/03/01 06:12

wikipedia(https://ja.wikipedia.org/wiki/%E3%83%8F%E3%83%83%E3%82%AD%E3%83%B3%E3%82%B0)によれば ハッキング (英語: Hacking、別名: ハック、hack) とは、コンピュータの隅々までを熟知した者が行うハードウェア・ソフトウェアのエンジニアリングを広範に意味する言葉である。他人のコンピューターに不正に侵入するなどの行為がハッキングと呼ばれる場合もあるが、これは正式にはクラッキングと呼ぶ。(以下略) あなたがやりたいのはハッキングですか、それともクラッキングですか? ハッキングならば詳しく勉強するしかないです。教えてもらったことを実行するだけならばハッキングとは言いづらいです。 クラッキングならば(違法行為なので)表立って教える人はいないと思います。クラッキングツールを販売しているとの噂話ならば読んだことがあります。
washi

2020/03/01 09:51

なるほど...ホワイトハッカーを目指したいんですよ。それになるにはどうするか考えたところ、ハッキングをするしかないと思ったんです。 浅はかな知識で申し訳ないです。
dodox86

2020/03/01 18:43 編集

>質問者さん > クラッキングツールを販売しているとの噂話 こういったもので第三者の施設をクラックしたり、他人が作ったプログラムコードをただ利用してクラックするような者は「スクリプトキディ(Script kiddy, Script kiddie)」と呼ばれます。破壊行為と言う意味で社会的影響力は大きいものの当人の技術力は低いので、更に軽蔑される存在ではありますね。防衛側の優秀なハッカーに「ハニーポット(Honeypot)」などの罠を用いて逆襲されることもあるでしょう。そうはなりたくないものです。
退会済みユーザー

退会済みユーザー

2020/03/02 00:05 編集

訂正を要求 誤:自分のパスワード 正:自分の管理下のパスワード 元のままだと情シスがパスワードを変更することが違反になる
sage

2020/03/02 04:54

自分のパスワード以外の変更は違法・違反とまでは書いていなかったですが。回答は修正しました。
sage

2020/03/02 05:05 編集

ホワイトハッカーになりたいのならば、ドキュメントを読むなり、ソースを読むなり、また、実際にシステムを運用してノウハウを積み上げる等で勉強するしかないです。 調べれば、自分で運用しているシステムのrootのパスワードを忘れてしまった場合の、新たなパスワード設定の方法も見つかります(少なくとも昔のLinuxシステムの実機の場合)。 しかし、個別の知識をひとつだけここで教わってもホワイトハッカーになるまでの道筋は遠いです。 知らないことでも(他人に聞かず)自分で調べて作業できるようにならなければなりません。
guest

0

基本的にホワイトハッカーの仕事は、サーバなどのファイヤーウォールの欠陥(脆弱性)を発見することが主な仕事です。人間は必ずしも完璧ではありませんそのため、ファイヤーウォールやログイン認証機能にも何かしらの欠点があります。それを脆弱性と言います。
これは、システムに携わるもの全員が知っている基礎知識です。
ホワイトハッカーになるには、法律の知識も必要ですし、プログラムの欠陥を見つけられるだけの応用までの知識が必要となるかと思います。
また、どのような攻撃が行われて被害に遭っているかなどの情報の収集も必要です。
その被害にあった情報などはIPAやNISCなどのホームページに載っています。
他にもFBIのホームページを見てみるのもいいかと思います。
FBI-CyberCryme

とりあえずは、コンピュータの基礎を勉強してください。

投稿2020/03/05 08:40

yomyom

総合スコア24

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

washi

2020/03/06 00:55

本当にありがたいです。
yomyom

2020/03/06 07:14

実際に実技として行うのは法律を勉強してからにした方が良いです。 法律は、基本的に社会のルールでもありますが、どこまでが許容範囲内であると言う指針でもあります。 意外と知られていないような事が違反になる場合があります。 とりあえずは、基礎の勉強を頑張ってください。
guest

0

ハッキングの定義は色々とありますが、
大まかにはセキュリティ上の穴(脆弱性)をついて攻撃対象のサーバ上で攻撃者が望む何らかの処理を実行させる
というのが想像されているイメージに近いんじゃないかと思います。

で、これをどのようにすれば試行出来るかというと、その脆弱性がどういうものかを知り、意図的に脆弱性がある環境を作る必要があります。

これについては環境構築からフォローしている書籍やサイトを参考にするのが良いでしょう。

例えば、
体系的に学ぶ 安全なWebアプリケーションの作り方 第2
では、仮想マシンを使って脆弱性のある環境を作って試す方法が具体的に記述されています。

プログラミングの知識が完全に無い状態だと読み解くのに苦労はあると思いますが、平行してwebアプリケーション開発の基本を学習すれば理解も早まると思います。

投稿2020/03/01 06:22

編集2020/03/01 06:24
tanat

総合スコア18727

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sage

2020/03/01 06:42

これはクラッキングの定義では?
tanat

2020/03/01 06:57

私の認識だと - クラッキングは狭義の意味でのハッキングである - 質問者のイメージではハッキングとクラッキングを区別していない様に思われるが、クラッキングを指していると推測される - クラッキング、ハッキングについて厳密な定義が存在するわけでは無く、特に非技術者からの観点だと同一視されることが多い ことから「想像れれているイメージに近い」ものとして表記しました。 (wikipediaを一般的な用語の定義として引用するのは適切では無いとも考えます)
sage

2020/03/01 07:04

クラッキングは狭義の意味でのハッキングではありません。これは根本的な間違いです。広義ではクラッキングもハッキングに含まれるかもしれませんが。クラッキングはツールを買ってきてすることができますが、それはハッキングとは言えません。知識がないから。
tanat

2020/03/01 07:22

sageさんがクラッキングとハッキングの単語としての厳密な使い分けを標榜したいというのは理解しましたが、ここで単語の定義について議論をするつもりはありませんし、回答の意図としては前述のコメントの通りなので修正する必要は無いと考えます。 (何らかの一般的な規格等で定義がされているのであれば話は別なので、定義が存在するのであれば教えて頂けると助かります)
yomyom

2020/03/05 08:29

クラッキングは基本的に(ブラックハッカーまたはブラックハットが)悪意をもって行うことで、データの改竄などを意図して行うことです。ハッキングは悪い意味でも言葉として使用されますが、基本的な定義として(ホワイトハッカーが)プログラムの欠陥(脆弱性)を発見するなどの目的で行うことを指したりします。
tanat

2020/03/05 08:38

yomyomさん 用語の定義については場合によって範囲も定義も変わってしまいます。 前提を明確にしない限りはあまり意味が無い(yomyomさんの定義に異議を唱えている訳では無いです)ので、ここで用語の定義について議論するつもりは無いのです。 >(何らかの一般的な規格等で定義がされているのであれば話は別なので、定義が存在するのであれば教えて頂けると助かります) と書いたのは、規格などで定められているのであれば、それを前提と出来るからです。
yomyom

2020/03/05 08:43

tanatさん そうだったのですね、勉強になります。
guest

0

法律的な話をするのなら、専門の弁護士か誰かに相談するべきなのでは?

ハッキングについては知識がないので、こういうのがあるよとだけ。

Webセキュリティ入門

投稿2020/03/01 03:46

編集2020/03/01 10:21
swordone

総合スコア20669

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

washi

2020/03/01 03:51

はい、一度調べてみたのですが。大丈夫らしいです。どうしてもハッキングの練習をしたいんです。
guest

0

自分でサーバーをたてて、ハッキング(そのサーバーのパスワードを変更)をしようとしているのですが、それは法律的には大丈夫なのでしょうか、またどのような方法でするのでしょうか

状況により、法律に抵触する可能性があります。

例えば、サーバをあなたが立てたとして、そのサーバの管理者があなたではなく別人である場合、「不正アクセス行為の禁止等に関する法律」に抵触する可能性があります。

法律の専門家に相談してください。

投稿2020/03/01 19:45

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

CTF競技とかいかかでしょうか? そういう興味を持ってるならきっと楽しめるんじゃないかと思います。

セキュリティ未経験の初心者がCTFに出場するための5ステップ

投稿2020/03/01 05:04

crhg

総合スコア1177

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

washi

2020/03/01 05:09

ありがとうございます。本当に助かります。参考にさせていただきます
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問