高橋です。
Webプログラミングをしていて必ず付いてまわってくるのがセキュリティ対策。
Webはプログラムが動作する環境そのものを外部に直接公開することになるので、脆弱性については特に気を付けないといけません。
しかし実際にどういうことに気を付ければいいのか…なかなか理解するのは難しいと思います。
そこで、一番手っ取り早い方法をお教えします。
自分自身が攻撃者としてサイトをアタックしてみればいいのです。
勿論、本当に誰かのサイトをハックするのは犯罪になってしまうので言うまでもなくダメです。
ただ、自分で(外部に影響のないような)練習用の仮環境を用意して、実際に攻撃者が行う手口を体験してみるのは大丈夫です。
むしろ、実際にどのように攻撃が行われているのかを知ることで、守る側に立った時も、どうすれば防御できるのか作戦を立てることができるようになります。習うより慣れろ、というわけですね。
ただ、自分でその練習用の環境を作るとなると、サーバーを用意して、サイトを用意して…となると結構大変です。
実は、そんなセキュリティを学びたい方のために、こんなサイトがあります。
“Hackme“というサイトです。
このサイトでは、実際によく使われるハッキングの手口をつかってサイトの認証の突破にチャレンジすることができます。
ちょっとおバカなミスをついたものから、SQLインジェクションを用いた技術的なものなど、Webプログラムをしていて犯しがちな脆弱性を実際に突きながら、Webプログラムをする際にどういったことに気を付ければいいのか勉強することができる非常に面白いサイトです。
興味のある方は是非挑戦してみてはいかがでしょうか。
ちなみに、一口にハッカーとは言っても、必ずしも悪意のある人を指すわけではありません。
もともとハッカーという言葉は、”コンピューターに詳しい人”を指し、攻撃者だけを指す言葉ではありませんでした。
そういった事情から、不正アクセスを行う人々を”ハッカー”と十把一絡げに読んてしまうと、あまりいい顔をしない人もいるようです。
この場合、悪意をもった攻撃を行う人のことを”クラッカー”と呼び、明確に区別することがあります。
最近では”ブラックハッカー”という呼び方もよく見かけます。
これに対し、”ホワイトハッカー”という人々もいます。
この人たちは、”ブラックハッカー”が行ってくる高度なクラッキング行為を防御する技術をもった人のことを呼びます。
所謂、セキュリティ技術者のことです。
コンピューターセキュリティの救世主 「ホワイトハッカー」の素顔に迫る – 日々タス
ホワイトハッカーを目指して勉強してみるのも面白いかもしれませんね。