1人では出来ることは思ったより少ないです。
Webの脆弱性診断士としての観点で書いていきます。
はじめに
セキュリティエンジニアとは?
セキュリティエンジニアとは?仕事内容・年収からキャリアパス・なり方まで
私はWebの脆弱性診断をしているので、Webアプリのセキュリティを高めることに貢献しています。
なぜWebアプリのセキュリティに貢献する必要があるのか?
それは、そのWebアプリを作った人や使っている人に被害が無いようにするためです。
なんでも好き勝手にWebアプリを診断していいのか?
仕事で許可が出た範囲か、バグバウンティなどで許可が出た範囲だけです。
XSSを見つける。SQLインジェクションを見つける。
これらの技術はネットを見ながら習得できると思います。
何が目的なのか?どれを診断していいのか?どの範囲なら問題ないのか?
これを独学で把握するのは難しいと思います。
間違ってしまうと、犯罪になってしまいます。
実践をやりたくなったら、誰かに聞きましょう。
やりかたを失敗すると、犯罪となってしまう可能性があります。
技術面でもスタートが難しい
XSSを例とします。
私はテキストボックスにalertって入れてアラートが出るかくらいしか知らず、それがXSSだと思ってました。
それ以外のパラメータで出たり、storedやDOMがあるなんて知りませんでした。
いざ、やられアプリを目の前にして「やってやるぞ!」と思った時。
何もできませんでした。
私がその時思ってたことはこれです。
- 毎回alertって入れてアラートが出ればいいんでしょ?
- テキストボックスがないとこは、どこで出るの?
- あれ、できそうなテキストボックスが無いけど、これでXSS終了か・・・
- 「クロスサイトスクリプティング やりかた」 ・・・やりかたはあってるよなぁ
やがて徳丸本にもたどり着きますが、数多くの脆弱性に頭が追いつきませんでした。
用意されている検証環境に書かれている通りにやれば再現できますが、どんなロジックで再現できているかはわかりませんでした。
「初心者」の私にとって、何をしていいかわかりませんでした。
私はどうやってきたか
以下のことをしたら転機が訪れました。
- カンファレンスに行った
- 転職した
- グループを作った
1.カンファレンスに行った
seccon2018本戦の傍らやってるカンファレンスでした。
バグバウンティはどんな感じに取り組まれているのか、賞金を獲得しているのはどんな方なのかわかりました。
ここで情報元がある程度増えたり、英語の記事も読むようになりました。
これが人に教わってるかは微妙ですが、もしこのカンファレンスに行ってなかったらバグバウンティにここまで取り組めていたかは微妙ですね。
脆弱性診断も出来てなかった可能性は高いです。
2.転職した
技術的に各種脆弱性の確認の仕方を教えてもらえたのが本当に大きいです。
「そんなことするんだ!」ってめっちゃ思ってました。
どう考えてみても、1人でやっていたら思いつかないと感じました。
SQLインジェクションなんて、sqlmapやればいいやとしか考えていませんでした。
覚えなきゃ仕事にならないというプレッシャーもあり、一気にレベルが引き上げられました。
個人の努力というより、会社や先輩方の協力が大半を占めてます。
私個人ができたことといえば、きっかけ作りだったのかなと思います。
3.グループを作った
これも完全な思いつきでとりあえずやってみたものですが、想像以上の方が参加してくれました。
たかだか脆弱性診断を3~4ヶ月やっただけですが、教える立場になりました。
とりあえず勉強会を開催してみました。
貰う質問への回答、私自身の考えを話すのは難しかったです。
回答を繰り返す内に、技術や思考が私に定着していきました。
アウトプットすることによる定着率は想像を超えていました。
質問してくださった方に回答していたはずですが、私自身にも回答していたのですね。
これは自問自答では決して得られなかったです。
その他、情報収集や集めた情報の簡単な説明など。
自分だけのためだったらここまでやっていなかったと思います。
グループに参加してくださった方のおかげです。
このように色んな方に協力して頂いてからとてもスムーズに仕事やスキル習得が出来ています。
私自身も求める人に協力が出来たらと思っています。
1人でも勉強はしよう
基本的に、他の方に相談したり、ディスカッションしたりするのは有効ですが、1人で勉強していることが前提となります。
終わりに
1人でもくもくとやっているより、人と関わっていたほうが効率よく頭に入ってきたので、記事にまとめてみました。
個人でやっていると、視野に入らない限り学べないので、どうしても知らないことが出てきてしまうのが痛いです。
法律面は特に、技術に興味ある人は調べようと思うかは微妙だと思っています。
「なぜやるか?」を考えながら、いろんな人と関わっていくのが安定かなと思いました。
コメント