サイバー攻撃に使われる弱点を見つけるセキュリティエンジニアってどんな仕事?内容、なり方等

こんにちは!管理人のうみねこ(@penta59631)です。

サイバー攻撃とか流行っているしなんとなくセキュリティって今後も需要がありそう。サイバー攻撃の方法とかも知りたいし、そういう仕事につきたい。でもいまいちどんな仕事をするのか分かってないので教えてほしい。あとどうやったらなれるのかも知りたい。

という方に向けた記事です。

この記事の内容
  • セキュリティエンジニア(脆弱性診断士)の仕事内容、脆弱性診断について解説します。
  • セキュリティエンジニア(脆弱性診断士)のなり方を解説します。

私は現在、セキュリティエンジニア(脆弱性診断士)として働いています。

システムエンジニアやプログラマという職種はなんとなくどんな仕事かわかるという人も、セキュリティエンジニアという職種はイメージしづらいのではないでしょうか。

この記事でそういう方向けに、セキュリティエンジニア(脆弱性診断士)にの仕事内容やなり方について解説していきます。

スポンサーリンク

セキュリティエンジニア(脆弱性診断士)とは?

そもそもセキュリティエンジニアとは、システムのセキュリティ対策や調査、監視等を中心に行うエンジニアです。

一例ですが例えば、以下のような仕事がセキュリティエンジニアの業務の領域です。

  • サイバー攻撃を受けそうなシステムの弱点を調査し、報告する。(脆弱性診断)
  • システムを不正利用された際に、その痕跡を調査し攻撃の影響や攻撃者の特定を行う。(フォレンジック)
  • セキュリティ関連のログを監視し、攻撃の痕跡を見つける。(セキュリティ監視)

今回はこの中で脆弱性診断の業務について解説していきます。

ホワイトハッカーと呼ばれる超優秀な人達の中には、脆弱性を見つけることで企業から賞金をもらい生計を立てている人もいます。

スポンサーリンク

脆弱性診断の種類

まず、脆弱性(ぜいじゃくせい)という言葉を聞いたことがありますでしょうか。

脆弱性とは、悪用されると個人情報の流出やシステムの不正利用などにつながるシステムの弱点のことです。

どれだけ、しっかり設計してシステムを作ったとしても人間が作っている以上何かしらの設定ミスやバグは出てきます。

悪意を持ったハッカー(クラッカー)はこれらの脆弱性を悪用して情報を抜き取ったり、Webサイトを改竄したりします。

この脆弱性を依頼を受けた上で見つけて報告する業務が脆弱性診断業務です。

正式に依頼を受けて合法的な範囲で行うという部分がクラッカーとは異なる点です。

脆弱性を先に把握できていれば、システムの管理者は攻撃されないように何らかの対策を取ることができます。

「悪いところを見つけてその治し方を教える」

システムのお医者さんのようなイメージです。

この脆弱性はさまざまな場所に潜んでいます。

ここからは脆弱性診断の種類について解説していきます。

プラットフォーム診断

プラットフォーム診断とは、システムの基盤部分(サーバ、ネットワーク等)を調査する業務です。

インターネット上に公開されない部分のためイメージしづらいかもしれませんが、Webサイトが動く土台のことを指します。

例えば以下のような観点で調査します。

  • 不要なポートが外向けに開放されていないか
  • 外部からの接続設定(アクセスの制限)が正しく行われているか
  • 短時間に大量にアクセスして負荷を上げサーバをダウンさせるDoS攻撃への対策が取られているか
  • システムに不正にログインすることができないか

これらの脆弱性があると、本来インターネットからは接続できない想定のはずのシステムに侵入して攻撃されてしまうというような事態にもなりかねません。

以下の記事にある攻撃手法なんかもプラットフォームに合った脆弱性を悪用したものですね。

このような基盤に関わるセキュリティ上の弱点を調べるのがプラットフォーム診断です。

Webアプリケーション診断

Webアプリケーション診断とは、Webサイトの脆弱性を調査する業務です。

例えば以下のような観点で調査します。

  • 不正なデータを送信して本来権限のないデータが見れないか
  • 不正な文字列を入力してログインができないか
  • 他人の接続情報を利用して他人になりすまし操作ができないか
  • サーバに送信するデータ(パラメータ)を改ざんして本来権限のない操作ができないか

プラットフォーム診断に比べて、Webアプリケーションはそれぞれの会社で特性に合わせて独自に作っているということが多いです。

そのため、まずはWebサイトの動きを把握することから始める必要があります。

その後、ツールと手動を使って脆弱性を調べていきます。

サイトによっては、「正しいパスワードを入れていないのに管理者のユーザーでログインできる」「一回しかできない申込みが値を改ざんすることによって複数回できる」、「商品を購入する際に、金額を改ざんすることでタダで購入できる」など悪用されると広範囲に影響が及び脆弱性が検出されることもあります。

手動での確認は、色んなパターンを自分で考えて試したりするので結構面白いです。



この他にもスマートフォンアプリ診断やIoT診断、API診断等いくつかの診断サービスがあります。

診断業務は、あくまで脆弱性を見つけるという観点のサービスなので、攻撃してサイトを使えなくするというところまでは行いません。

とは言っても通常とは異なる文字列を大量に入力したりするため、意図せずサイトが使えなくなってしまうということもあります。

そういう状況も想定しながら顧客側と情報連携して行います。

スポンサーリンク

セキュリティエンジニア(脆弱性診断士)の仕事の流れ

続いて脆弱性診断の仕事の流れを紹介します。

対象の調査

診断業務を行うことが決まったら、まず対象機器や対象サイトの調査を行います。

プラットフォーム診断では、IPアドレスの数や接続情報の確認。

Webサイト診断では、Webサイト全体のページ移動を確認して送られるデータ(パラメータ)などを確認します。

診断作業

調査が完了したら、いよいよ診断です。

診断はツールを使った診断と手動での診断があります。

ツール診断では、決められた動作を機器やサイトに対して繰り返し行います。

サイバー攻撃と言ってもさまざまな攻撃方法があるため、一つずつ手で確認していたらとても時間が足りません。

なので機械的に判定できるツールを使うことで精度を一定に保ちながら診断を効率的に進める事ができます。

そして、手動診断では、ツールでは検出しきれない箇所を調査します。

例えば、Webアプリケーション診断なんかは会社ごとに独自の仕様になっていることも多くそれぞれの会社に合わせて改ざんしたデータを送ったりするなどです。

報告

診断作業が完了したら報告書を作成します。

報告書内には、見つかった脆弱性とその箇所、影響、推奨する対策等を記載します。

報告書が完成したら、報告書を送付して診断作業完了となります。

場合によっては、報告会という形式で顧客先で報告するケースもあります。

セキュリティエンジニア(脆弱性診断士)のなり方

ここからはどうやったらセキュリティエンジニアになれるの?という点について解説していきます。

セキュリティエンジニアになるためには、以下の方法があります。

  1. セキュリティ専門の企業に入る
  2. 企業の情報システム部門(IT、セキュリティ担当)になる

新卒の場合は、1のパターンであればリクナビやマイナビ等の就活サイトから探せば未経験可で募集しているところがあるためそちらから応募するのがおすすめです。

2のパターンについては、新卒だとそもそも募集しているところが少ないため、まずは1でスキルをつけた上で転職というのが良いと思います。

中途の場合は、まずエンジニア就職に特化した転職サイトやエージェントに登録するのがおすすめです。

登録したサイトでセキュリティ等のキーワードで検索すると求人がいくつか出てくるのでそこから気になるところをピックアップしていきましょう。

そもそも知識や技術がないよ・・・という方はまずセキュリティエンジニアではなくITエンジニアとして、プログラムやシステム開発を経験してからセキュリティエンジニアになるというのも一つの手です。

私が一緒に働いた30代の人でこれまで全く別の職種にいて、ITに関わりがなかったけどそこから今診断業務を行っているという経験の人もいます。

求人に書いてある必須条件は多少経験を盛れば(嘘はだめですが)なんとかなることも多いので、どこまで諦めずに頑張れるかがポイントだと思います。

そもそも知識や技術がないという方が勉強しやすい、おすすめの本を紹介した記事も書いているのでよければご覧ください。

さいごに

セキュリティエンジニアは専門的な知識がいる職種ですが、その分やりがいもある職種です。

サイバーセキュリティの知識はこれからの時代持っておいて損は無いと思うので気になっている方は目指してみてはいかがでしょうか。