KDL BLOG

2020.05.26
KDL社内・社員

新卒コンペ ほめのびチーム バックエンド編 vol.4

チーム「ほめのび」の後藤です。

主にデータベースの設計や、バックエンドの開発、セキュリティ担当としてチームに貢献しました。

私事ですが、セキュリティ事業部に所属することが決まっており、今回の開発でもそのあたりを意識して開発するようにしたいと考えていました。ですので、今回はそのあたりについて書きたいと思います。

開発にあたっての前置き

今回の開発では、掛けることができる日数が少ないことがあらかじめ分かっていたため、セキュリティ対策に取れる時間はあまりないだろうと考えていました。そのため、「対策に時間がかからないこと」を重要視しながらプロジェクトを進めていくことにしました。

コーディング規約

まず、開発前にコーディング規約を決めることにしました。
たとえば、SQLiといったメジャーな脆弱性や、

homenobi_4_01.png

パラメータの受け取り方を定義する際に陥るかもしれないミス・起こるかもしれない状況を予想し、対策のためにいくつかのコーディングの規約を決めておきました。

homenobi_4_02.png

開発の前にコーディングの規約を決めておくことで、時間をかけることなく開発後のセキュリティをある程度担保することができたと感じています。

脆弱性のチェック

1つのタスクが終わったタイミングや開発全体が終了したタイミングなどで、開発部分に脆弱性がないかをチェックするためにソースコードのレビューや、プロキシツールなどでスキャンをかける時間はありませんでした。

そのため、今回は1コマンドでチェックを行うような拡張機能を利用することにしました。

homenobi_4_03.png

これにより、セキュリティに詳しくなくても、出力された結果をみることで脆弱性の有無を判断できます。

homenobi_4_04.png

まとめ

対策は以上です。

最近では開発するものにはある程度のセキュリティが担保されているのが当たり前になってきています。
そのため、どのような状況でも使用できるように、自社で使用している言語のコーディング規約などをあらかじめ決めておくことが大事なのかなと感じました。

次回は、リレーブログアンカーの蔦谷さんです。

新卒コンペ ほめのびチーム アイデア出し編 vol.1

新卒コンペ ほめのびチーム画面デザイン編 vol.2

新卒コンペ ほめのびチーム フロントエンド編 vol.3

新卒コンペ ほめのびチーム発表編 vol.5

【関連記事】

KDL流新人研修 第1部「目的・準備編」

初のオンライン開催!新卒社員の「新入社員開発コンペ中間報告会」