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

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

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

OS(オペレーティングシステム)は、システムソフトウェアの一種であり、一般的に、ハードウェアを直接的に管理・操作する最も中心的な機能を有するソフトウェアがオペレーティングシステムとして呼ばれます。

セキュリティー

このタグは、コンピューターシステムの安全性やデータの機密性に関連したトピックの為に使われます。

TCP

TCP(Transmission Control Protocol)とは、トランスポート層のプロトコルで、コネクション型のデータサービスです。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

マイコン

マイクロコンピュータの略で、CPUにマイクロプロセッサを用いたコンピュータのこと。家電製品、電磁機器などの制御に用いられています。単体でコンピュータとしての機能を一通り備えています。 現代のパーソナルコンピュータに近く、同時期のメインフレームやミニコンピュータと比べ、小さいことが特徴です。

Q&A

4回答

3608閲覧

【超長文質問】【セキュリティエンジニアに必要な技術知識について】【ネットワーク技術、インターネット技術、OS技術について】

sta0208

総合スコア38

OS

OS(オペレーティングシステム)は、システムソフトウェアの一種であり、一般的に、ハードウェアを直接的に管理・操作する最も中心的な機能を有するソフトウェアがオペレーティングシステムとして呼ばれます。

セキュリティー

このタグは、コンピューターシステムの安全性やデータの機密性に関連したトピックの為に使われます。

TCP

TCP(Transmission Control Protocol)とは、トランスポート層のプロトコルで、コネクション型のデータサービスです。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

マイコン

マイクロコンピュータの略で、CPUにマイクロプロセッサを用いたコンピュータのこと。家電製品、電磁機器などの制御に用いられています。単体でコンピュータとしての機能を一通り備えています。 現代のパーソナルコンピュータに近く、同時期のメインフレームやミニコンピュータと比べ、小さいことが特徴です。

0グッド

1クリップ

投稿2015/08/31 21:33

編集2022/01/12 10:55

【超長文質問】【セキュリティエンジニアに必要な技術知識について】【ネットワーク技術、インターネット技術、OS技術について】

(先に、とてもヘビーな質問(質問の数が多すぎる)になってしまったことをお詫びします。
自分でもかなり調べたうえで質問しているので、どうか暖かい目でご教授くださると助かります。)

さて、本題ですが、

セキュリティエンジニア(主に脆弱性診断や不正アクセス防止とかそっち系)(それになれなかったらマルウェア解析の方向でもいいかなと思っている)を目指してる者ですが、インターネットで色々調べてみたところ、「ネットワーク技術」「インターネット技術」「OS技術」の三つを基礎(三本柱)として、その上に「セキュリティ技術」がある、という意見をよく目にします。

しかし、ネットワーク技術、インターネット技術、OS技術…と言われてもイマイチピンと来ません。

そんな私にネットワーク技術、インターネット技術、OS技術の内訳…というか、どういう技術や知識がネットワーク技術になり、どういう技術や知識がインターネット技術になるのか…というのを教えてくれると助かります。

自分なりに調べたところですと、

「ネットワーク技術」には

LAN、WAN、スイッチ、ルータ、セキュリティ、VoIP、無線LAN、TCP/IP、ネットワークのサービスとアプリケーション層、トランスポート層、インターネット層とルーティング、ネットワークインターフェース層とハードウェア、共通鍵と公開鍵、電子証明書

があり、

「インターネット技術」には

サーバーの知識

があり、

「OS技術」には

OS知識

がある…というところまでしかわかりませんでした。

質問は以下の五つです。

一つ目は、「上記の中で間違っているものはあるか」です。ここが違うよ、というのがあれば教えてください。

二つ目は、「ネットワーク技術、インターネット技術、OS技術、セキュリティ技術、の他にセキュリティエンジニアとして必要な技術(技術群?)はあるか」ということです。(今回はプログラミング技術は省く方向でお願いします。)

三つ目は、「私の挙げた『ネットワーク技術』の中に足りないものはあるか」です。他に何かあれば教えてください。

四つ目は、「インターネット技術にはサーバーの知識しかないのか(他にもあるか)」です。いくら調べてもネットワーク技術とインターネット技術の違いがあまりわからなかった(インターネット技術の本にTCP/IPが載っているのにネットワーク技術の本にもTCP/IPが載っている、など)ので、あまり見つけられませんでした。他にもあるなら教えてください。

五つ目は、「OS知識と言ったが、どの程度のOS知識が必要なのか」です。つまり、OSがどのようなものなのかの概要がわかればいいのか、自作できなければいけないのか、Windowsの仕組みだけ知ってればいいのか、Linuxの仕組みもわかればいいのか、組み込みLinuxが自作できなければいけないのか、自作するOSはWindowsやLinuxのような有名なものではなく、「KOZOS」などという聞いたこともない独自のOSさえ作れればいいのか、マイコンに関してはどの程度の知識が必要なのか。マイコンなんて知らなくてもいいのか、マイコンがどんなものなのか概要がわかればいいのか、マイコンを半田ごてを使ったりして自作できるくらいまでの知識が必要なのか、ブートローダーなども作れなければいけないのか、ということです。

また、上記の五つ以外にも何かお気付きになったことがあればご教授してくれると助かります。

とてもヘビーな質問(質問の数が多すぎる)になってしまいましたが、現役のセキュリティエンジニアやセキュリティエンジニアについてよく調べられている方などならばすべての質問に答えられるかな、と思ったので一度にまとめて質問することにしました。

どうか、無知な私に道を照らしてくださると助かります。よろしくお願いします。

参考サイト
http://jibun.atmarkit.co.jp/lskill01/special/security_edu01/sec_edu01.html

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

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

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

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

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

guest

回答4

0

「セキュリティ」は抽象的な概念ですので、座学で把握しようとしてもなかなか難しいものです。実際にサーバ上へサービスを組み立てて運用してみる、ということがいちばんの学習法だと考えます。

まず、サービスを構築する段階で、Unix系のコマンドライン操作や管理技術、TCP/IPでどんなことが行われているのかの知識が必要となります。そして、運用する段階では、実際に起きたセキュリティ問題の知識を得た上で、自分のシステムに問題がないのか確かめる、対策することが継続的に必要となります。

質問に即して答えなおしていきますと、

一つ目と二つ目ですが、自分でプログラムを書かないとしても「コンピューターそのものやプログラムの動作に関する知識」というのも必要となります。たとえば、書式文字列攻撃という攻撃はC言語のprintf()という関数に由来するものなので(幸い他言語にも多くありますが)、この関数がどのように動作するか知らないとどういう危険があるのかも掴みづらいです。

また、サーバサイドでよく使われるデータベースシステムですが、SQLインジェクションなどこれに対する攻撃も存在して、情報漏洩・破壊など甚大な影響も起きうるものなので、SQLについても基本的な知識は必要です。

あと、忘れがちですが、システムを動かすのは「人」なので、「人を動かすための知識・経験」というのも、立場によっては必要になります。さらに言えば、絶対に何も問題が起きないセキュリティを構築するのは不可能ですし、システムの運営で得られる収益を越えてセキュリティにお金をかけるようでは事業として成立しないので、リスクの計量・配分といった経営的な視点も必要となります。

4つ目ですが、インターネットのサービスにはサーバとクライアントがあります。XSSやCSRF、クリックジャッキングなど、クライアントサイドに仕掛ける攻撃も数多くありますので、クライント側のセキュリティも考えないといけません。

5つ目の「OS知識」ですが、最低でも「Unix系のサーバの構築・運用が行える程度」の実技と「カーネル・シェル・システムコール・プロセス・仮想メモリ」というような、プログラムの動く舞台裏で何が起きているのかの知識は必要だと思います(自分でOSやマシンを自作する必要まではありません)。

投稿2015/09/01 01:20

maisumakun

総合スコア145121

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

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

0

世の中の定義がどうなってるかは分かりませんが、個人的にはネットワーク技術と言われるとアプリケーション層までの話かなと思います。

その上でどのようなシステムがあり、どう管理運用されてるかと言ったものがインターネット技術なのかなと。たとえばDNSの知識やドメイン、グローバルIPがどのように管理運用されてるかと言った物はインターネット技術と言えるかもしれません。

投稿2016/08/18 02:48

take88

総合スコア1351

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

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

0

ネットワークとインターネットが別れているのが不思議ですね。「インターネット技術」というよりは「Web技術」なのではと思います。
それと「○○技術」よりも「○○エンジニア」といった職業や役割について調べたほうが実践的になる気がします。

いろいろな技術について知りたいなら、雑誌がまとまっていていいと思います。バックナンバーの目次だけでも今注目されている技術が一覧できると思います。
他にはスマホを中心に展開しているようなニュースアプリのテクノロジーカテゴリーや、はてなブックマークも有用です。

セキュリティ技術は特にWebで活用されている技術ですが、Webでは流行っている技術が発展して世界標準になります。流行が権威を持つので、流行を追いかけることが正道の学習方法になります。技術カタログを作る前に、まずはこの方法を試してみてはいかがでしょうか。

投稿2015/09/01 12:48

編集2015/09/01 12:53
pmint

総合スコア33

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

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

0

各質問に回答しようかと思いましたが、それよりも、まずIPAの情報処理技術者試験の情報セキュリティスペシャリスト試験に合格することから始めてはどうでしょうか。
この試験に受かってもセキュリティエンジニアになれるわけでは無いですが、網羅的な知識を身につけるにはいいかと。千里の道も一歩からです。
ただ、60点取れば受かってしまう試験なので、試験の合格と言うより、テクニカルな問題では90%以上取れるようなレベルを目指すのが良いかと。

質問の様子から、大学生ではないかと思うので、もしそうなら(or高校生でも)セキュリティキャンプに出るのもいいかと思います。
https://www.ipa.go.jp/jinzai/camp/index.html

投稿2015/09/01 11:12

otn

総合スコア84421

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問