ウェブ・セキュリティ基礎試験(徳丸基礎試験)に合格しました


石川です。先日ウェブ・セキュリティ基礎試験(徳丸基礎試験)に合格しました。1000点中700点以上が合格の結果、700点ぴったりだったのであまり自慢できないですが、合格は合格なので勉強方法などを書いていきます。


会社のSlackで合格を報告している様子

ウェブ・セキュリティ基礎試験とは?

ウェブ・セキュリティ基礎試験(徳丸基礎試験) – PHP技術者認定機構

ユーザ、開発者に対してより一層のウェブ・セキュリティに対する意識と知見を高めるべく作成された、ウェブ・セキュリティに関する基礎的な知見を問う試験です。一般社団法人BOSS-CON JAPAN PHP技術者認定機構が主催しています。主教材は徳丸本とも呼ばれる「体系的に学ぶ 安全なWebアプリケーションの作り方」で、この本の内容を理解できていれば合格できるはずです。

ウェブ・セキュリティ実務知識試験というもう一段階難しい試験もあります。今月始まったらしい。

なぜこの試験を受けることにしたか?

業務でウェブアプリケーションの開発を行う中で、フレームワークにカバーされている部分も含めてセキュリティについて勉強し直したいと考えたのがきっかけでした。ウェブ・セキュリティ基礎試験のことは提供開始のニュースを見て知っていて、試験範囲を見る限り業務に生かしやすい内容だと思ったので、他にもいくつかあるセキュリティ系の資格の中からこの資格試験を受けることに決めました。

「体系的に学ぶ 安全なWebアプリケーションの作り方」はWebセキュリティについて学ぶには定番の本ですが、ページ数が多くて全体に目を通せていなかったので「これを機に全部読んでやるぞ!」という気持ちもありました。

試験に向けた学習の流れ

私は資格試験を受けるときは勉強を始めるよりも先に試験の申し込みだけして、期限意識を持って勉強をするようにしています。もし当日になって受かる気がしなくてもとりあえず力試し気分で受けることに決めています。

今回は後から別の用事が重なってあまり勉強の時間がとれず、試験勉強には4日くらいしか取り組めませんでした。(ここは反省ポイント)

主な流れ

①「体系的に学ぶ 安全なWebアプリケーションの作り方 第2版 脆弱性が生まれる原理と対策の実践」を読む

体系的に学ぶ 安全なWebアプリケーションの作り方 第2版 | SBクリエイティブ


会社の本棚にもしっかり入っています

②単語帳アプリで暗記

本を読んだ結果覚えないといけない部分が多いことがわかったので、「自分で作る単語帳 WordHolic!」という単語帳アプリを利用して単語帳を作りました。

アプリに一つ一つ登録していくのは効率が悪いような気がしたので、表計算ソフトで表を作ってからCSV出力し、アプリにそのCSVをインポートして単語カードを登録しました。


単語カードの表(問題)

単語カードの裏(解答)

良かった点 :

悪かった点 :

③OWASP Top 10

OWASP Top 10とは、Webアプリケーション・セキュリティに関する最も重大な10のリスクについてのランキングと修正のガイダンスを提供するドキュメントです。 「体系的に学ぶ 安全なWebアプリケーションの作り方」からも言及されていたため、どんなリスクが上位に入っているのかをざっくりと見ました。(2017年版と2021年版)

OWASP Top 10:2021
OWASP/Top10: Official OWASP Top 10 Document Repository

④安全なウェブサイトの作り方

今回の試験に向けてやった勉強ではありませんが、6年くらい前に開発したWebアプリケーションの脆弱性診断をした経験がありました。IPAが公開している「安全なウェブサイトの作り方」と「セキュリティ実装 チェックリスト」を参考にしました。

安全なウェブサイトの作り方:IPA 独立行政法人 情報処理推進機構

例えば、チェックリストでは「SQLインジェクションに対する対策として、SQL文の組み立てはすべてプレースホルダで実装する」といったチェック項目があるとき、これに 対応済み とチェックを入れるためには「SQLインジェクションとは?」「プレースホルダとは?」「使っているフレームワークでプレースホルダを使うには?」「どんな書き方をしていたら駄目なのか?」といろんなことを知る必要があります。 当時は基本的な脆弱性についての知識もほとんどなく、チェックリストを埋めるために脆弱性やチェックすべき項目について都度調べたり質問しながら進めたので、それが経験として効いたかも知れません。

チェックリストだけでなく、 OWASP ZAPを使った脆弱性診断もこのときに行っていました。OWASP ZAPによって生成されるリクエストを見て「こういう値を渡すと攻撃になるんだなー」と思ったのを結構覚えていました。(過去のブログ「OWASP ZAP を使った脆弱性診断」内の開発担当が私です)

勉強が足りなかったところ

700点ぴったりで合格な通り、わかっていない部分も多かったので後日復習の時間をとりました。

受験して良かった点

興味があり業務にも生かしやすい内容だったので、これ機に勉強できて良かったです。ウェブ・セキュリティ実務知識試験にもいつか挑戦してみたいです。

こちらの記事もオススメです!
OWASP ZAP を使った脆弱性診断
事務システム開発をする中でOWASP ZAPを使った脆弱性診断を行いました。
iPhoneを売ってみた
iPhone 7 32GBをメルカリで販売しました。
開発グループ マネージャーが入社してから3年半でやってきたことのふりかえり
仕事の背景、やったこと、利用サービス、感想の紹介など2018年11月以降の3年半を振り返りました。
無料版 Google Chrome OS の動向(2022年3月時点)
無料版 Google Chrome OS CloudReadyとChrome OS Flex(Preview版)を使ってみました。
The Redmine Award 大賞をいただいたのでこれまでのRedmine活動を振り返る
これまでのRedmineに関する情報発信や開発への協力を評価いただきました。
ファーエンドテクノロジーからのお知らせ(2022/05/25更新)
月例Redmineセミナー 「Redmineプラグイン・テーマの紹介〜ファーエンドテクノロジー開発〜」【2022/06/24開催】
ファーエンドテクノロジーが開発するRedmineのプラグインやテーマを紹介するセミナーを開催します。
ブランドパートナーに5年連続で島根県在住のモデル ユイさんを起用
ユイさん(モデルスタジオミューズ所属)をファーエンドテクノロジーの2022年度ブランドパートナーとして継続して起用します。今年度で5年目となります。
「FAR END NEWS」2022年第2号 発行
広報紙「FAR END NEWS」2022年第2号を発行しました。弊社サービスの運用・サポートに携わっているスタッフや弊社の取り組みをご紹介します。
利用規約変更のお知らせ
「My Redmine サービス利用規約」を変更いたしますので、利用規約第6条に基づきお知らせします。
Redmineの最新情報をメールでお知らせする「Redmine News」配信中
新バージョンやセキュリティ修正のリリース情報、そのほか最新情報を迅速にお届け