1. TOP
  2. ブログ
  3. WordPressなどでも!?ハッキング手法SQLインジェクションとその対策

WordPressなどでも!?ハッキング手法SQLインジェクションとその対策

皆さんは、ハッキング方法について知っていることはありますか?ハッキングはどこか遠くの世界のPCができる人たちがやることと思われがちですが、実は身近なハッキング手法も多くあります。今回はその中でも、SQLインジェクションというWebサイトに対して行われるハッキング方法とその対策を紹介していこうと思います。

意外と身近なハッキング手段

ハッキングはシステムの隙間を突いて想定と違う動作をすることを指します。システムの隙間と聞くと少なそうに思われがちですが、ユーザーが書き込む自由のある場所にはシステムの隙間はどうしてもできやすくなります。また、ユーザーが書き込める場所や操作が可能な場所は必要ですがその自由を許すことは同時にハッキングのできる余地を作ることにもつながります。具体的な場所を知り、そこに専用の対策を講じることで幾つかの身近なハッキングを防ぐことが可能です。

SQLインジェクションの仕組み

SQLインジェクションとは、攻撃者がデータベース宛に送る文章にデータベースを操作する文章を織り交ぜることで、本来の操作ではなく攻撃者の望む操作に誤動作させることをいいます。
例えば、パスワードなどを入力する場面で正しいパスワードをXとする時、SQLインジェクションを使う場合は、「もしくは1=1が成り立つときパスワードが成立します。」という意味の文章を書き加えます。1=1は必ず正しいので、必ずパスワードが成立してしまい、パスワードがなくてもパスワードの必要な場所の内側へと侵入されてしまいます。

このようにSQLインジェクションではHTTPから送るSQL宛の文章をわざと誤読させるように仕向けて不正な操作を行い、個人情報を奪うことや最悪の場合データベース経由でサーバーを乗っ取られる危険性まであるのです。
もう一つのSQLインジェクションとして、データベースの値を参照した人に悪意のあるプログラムを自動的に動かす方法もあります。

対策方法

SQLインジェクションを防ぐ方法として、SQLに使われるような記号をHTMLに通すときに違う文字に変えてしまう方法があります。
例えば、SQLの文章を扱うときには、終了に「;」を使います。この「;」が送信されるときにSQL宛には、自動的に命令文ではない「;」ですよというマークを付けて送信する、というプログラムをSQLに文章を送る直前につけることで対策することができます。
また、入力してくる文字をそのまま使わず、常にユーザーが入力する文字は悪意のある文字だと考えてプログラミングすることもセキュリティー対策を考える上では有用かもしれません。

他にもあるハッキング方法と対策

他にもWEBサイトを使った身近なハッキングはいくつかあります。そのうちの一つが「クロスサイトスクレイピング」です。これは、JavaScriptなどのPC上で動かすプログラムをWebサイトの中に埋め込むことで自分の意図しない動作を強制的にさせるハッキング方法です。

例えば、あるサイトにアクセスすると自動的にウィルスをダウンロードさせたり、知らないうちに反社会的な投稿をSNSに行うなどなど…このようなハッキング方法にユーザー側でする対策は怪しいリンクを踏まないことやFlash PlayerなどのPC上で動作するプログラムを自動的に動かさないようにすることが挙げられます。

 

いかがでしたか?ハッキングされることで大切な個人情報が漏洩することや自分のWEBサイトを閉鎖せざるをえない状況になることは避けたいですね。皆さんも是非、セキュリティーの対策に感心を持ち、安全安心なインターネットライフを過ごしてみてはいかがでしょうか?

 

 

 

 

 

株式会社キャパでは、アプリの企画・開発についてご相談を承っています。

アプリを作りたいので、具体的な提案が欲しい。頭の中にあるアイデアを本当に実現できるのか知りたい。予算内に収まるのか?
などのお客様のご相談に、親身に応じます。
アプリ開発:実績のご紹介

    カテゴリ一覧

    PAGE TOP