SlideShare a Scribd company logo
Basic Vulnerability
@kanayannet
1
仕事: Perl,Ruby,HTML,JS...etc
趣味: badminton,kayak,ski
自己紹介
#gunmaweb,#guruby,#tkbjs
名前: 金澤 宏昭
2
日本語に訳すと…基本的な脆弱性
Basic Vulnerability とは..
3
最近、ID、パスワード漏洩 や サイト改ざん
のニュースが多くなっている。
自分の作ったアプリは大丈夫なのか?
と心配になり、今回、発表資料を整理する中
で自分の頭の中も整理しよう。
なぜ、話そうと思ったのか?
4
1. サービス内容の抜け道を利用した手口
2. アプリケーションの挙動を利用した手口
3. サーバの抜け穴(設定漏れなど)
Web の脆弱性には大きく3種類に分類
されると思います。
5
今回は「1」と「2」について
話していきます。
6
※これから話す「1」は現在、解消
もしくは対処方法があります。
7
「友達の助けを借りる」機能
アカウントをロックされた場合、友人3人に
セキュリティコードを取得してもらって入力すれ
ば利用を再開できる「友達の助けを借りる」機能
(パスワードのリセットが可能)
1. サービス内容の抜け道を利用した手口
例: FaceBook
8
攻撃者が facebook でなりすましアカウントを利
用して友達申請し、相手が承認してしまうと…
「友達の助けを借りる」機能を利用し、3つのな
りすましアカウントに「セキュリティコード」を
取得させて、パスワードの変更し相手のアカウン
トを乗っ取る。
1. サービス内容の抜け道を利用した手口
例: FaceBook
9
1.「(偽の)友達の助けを借りる」を利用する
2.「セキュリティコード」を取得する
3. 相手のアカウントのパスワード
1. サービス内容の抜け道を利用した手口
例: FaceBook(まとめ)
10
攻撃者がAmazonに連絡し、アカウントに新しい
クレジットカード番号を登録したいと伝え、デタ
ラメな番号を登録してもらう(氏名、請求書送付先
住所、メールアドレスをamazonは聞いてくるの
で答える)。
1. サービス内容の抜け道を利用した手口
例:AMAZON
11
一度電話を切って、その後、再度amazonに連絡
を行い、「アカウントにログインできなくなっ
た」旨を伝える。
今度は氏名、請求書送付先住所、クレジットカー
ド番号を聞かれるので、先ほどのクレジットカー
ド番号を答える。これで指定した新しいメールア
ドレスをアカウントに追加して貰える。
あとは…ご想像の通り。
1. サービス内容の抜け道を利用した手口
例:AMAZON
12
1. Amazonに連絡し、アカウントに新しいクレジ
ットカード番号を追加する
2. 再度連絡し新しいメールアドレスをアカウント
に追加させる(「1」 のクレジットカード番号で追
加可能)
3. 新しいメールアドレスを使い..パスワード変更
や注文など出来てしまう。
1. サービス内容の抜け道を利用した手口
例:AMAZON(まとめ)
13
1. サービス内容の抜け道を利用した手口
「ここまで確認を取れば教えても大丈夫だろう。」
という安易な考えでサービスを作ってしまうと陥り
やすい抜け道なのかもしれません。
14
2. アプリケーションの挙動を利用した手口
15
サイト間を横断して悪意のあるスク
リプトを注入させる行為
2. アプリケーションの挙動を利用した手口
例:クロスサイトスクリプティング
16
2. アプリケーションの挙動を利用した手口
例:クロスサイトスクリプティング
<?php
$target = $_POST[ target ];
?>
検索ワード: <php? echo $target; ?>
Form の入力を受け取る script(php)
17
2. アプリケーションの挙動を利用した手口
例:クロスサイトスクリプティング
検査方法:
入力フォームに
「<script>alert('注意!!');</script>」
と打ちブラウザ上に警告ダイアログ
が表示されたらアウト
18
2. アプリケーションの挙動を利用した手口
例:クロスサイトスクリプティング
alert ダイアログなら被害はないが、
任意のページに遷移させる location.href
や
cookie の値を ajax + jsonp で外部サイト
に飛ばされたら...
19
2. アプリケーションの挙動を利用した手口
例:injection
閲覧者からのデータの入力を利用し、プログ
ラムに与えるパラメータにOS や SQLに対す
る命令文を紛れ込ませて不正に操作する
20
2. アプリケーションの挙動を利用した手口
例:OS injection
$target = $_POST[ target ];
system( tar zcvf ./user/$target );
$target に 「¦rm -rf *」と入れると
php の実行権限で消せるファイルやディレクトリを
消されてしまう。
21
2. アプリケーションの挙動を利用した手口
例:SQL injection
SELECT uid FROM user
WHERE uid = ‘$uid’ AND
password = ‘$password’
$uid = “kanazawa”;
$password = “’ OR ‘A’=‘A”;
と入れると次ページのSQL が実行
22
2. アプリケーションの挙動を利用した手口
例:SQL injection
SELECT uid FROM user
WHERE uid = ’kanazawa’ AND
password = ‘’ or ’A’ = ‘A’
パスワードが違ってもログイン
出来てしまう。
23
2. アプリケーションの挙動を利用した手口
例:クロスサイトリクエストフォージェリ
Webサイトにスクリプトやリダイレクト
を仕込むことによって、閲覧者に意図せ
ず別のWebサイト上で何らかの操作(書き
込み や 買い物)を行わせる攻撃手法。
24
2. アプリケーションの挙動を利用した手口
例:クロスサイトリクエストフォージェリ
1. 攻撃者が用意したサーバに 外部サイト(ユーザ
が利用する)へ自動的に飛ばすように仕掛けておく
2. 「1」の仕掛けの中に 買い物 や 書き込み時
の引数と同じものを付けておく
3. あとはユーザが攻撃者が用意したサイトに来る
のを待つ
25
2. アプリケーションの挙動を利用した手口
例:クロスサイトリクエストフォージェリ
防ぐには外部サイトからの遷移を防ぐようアプリ
ケーション側でガードさせたり、ログイン済みで
あったとしても、必ずパスワード入力させたりす
る必要がある。
26
2. アプリケーションの挙動を利用した手口
例:ブルートフォースアタック
暗号解読方法のひとつで、可能な組み
合わせを全て試すやり方。
(総当たり攻撃)
27
2. アプリケーションの挙動を利用した手口
例:ブルートフォースアタック
1. 連続でパスワードをミスしたらブロックする
2. パスワードを長く複雑なものにする
3. ランダムの文字画像->入力させる
(CAPTCHA)
防御方法
28
まとめ
どれも、丁寧に作れば防げる手段...
だけど、長々と開発していると忘れがち...
29
ご清聴ありがとうございました!
30

More Related Content

PDF
ふにセミWS 7 -LINE@勉強会- 発表用
PDF
Eguchi web techstudy_01
PDF
Line Clovaで承認欲求を満たしてみた
PPTX
居原田紫世
PDF
mixプレゼン
PPTX
誇れる姫路を未来へ 20150811 案
PDF
Long Term Athlete Development Baseball Canada
PDF
NPO活動の課題、ソーシャルビジネスとしての展望
ふにセミWS 7 -LINE@勉強会- 発表用
Eguchi web techstudy_01
Line Clovaで承認欲求を満たしてみた
居原田紫世
mixプレゼン
誇れる姫路を未来へ 20150811 案
Long Term Athlete Development Baseball Canada
NPO活動の課題、ソーシャルビジネスとしての展望

Viewers also liked (20)

PDF
データ分析に使える野球データまとめ #PyDataTokyo meetup 2015/10/23
PDF
マイナースポーツ勉強会 2013-02-25 ユニカール
PDF
London Stadium Wrap
PDF
20130710bunkyosocial
PPTX
Selecting Sites for a Sports Complex in St. Louis Area
PDF
Mwc2012 120328
PPTX
PFI seminar 2010 0902
PPTX
日本体育・スポーツ経営学会 研究集会プレゼン(まとめ含む)
PDF
スポーツに潜む戦略的思考
PDF
THE 配球 〜Baseball Play Study 2015 NPB開幕直前スペシャル〜 BPStudy#91
PPTX
Venue design project sample
PDF
BPStudy#79 野球好き資料
PPTX
オープンな次世代食・農情報流通基盤 Nober LODチャレンジ2016応募資料
PDF
コミュニティフォーラム2015 分科会b コモンビート×ブラインドサッカー協会
PDF
ファンタジーベースボールの数値分析
PPTX
Adidas中間プレゼン
PPTX
AIIT起業塾「農業×IT」
PDF
PPT
Mls Stadium Business Model
PDF
Rで野球データ解析がしたい ( pitchRxを使う )
データ分析に使える野球データまとめ #PyDataTokyo meetup 2015/10/23
マイナースポーツ勉強会 2013-02-25 ユニカール
London Stadium Wrap
20130710bunkyosocial
Selecting Sites for a Sports Complex in St. Louis Area
Mwc2012 120328
PFI seminar 2010 0902
日本体育・スポーツ経営学会 研究集会プレゼン(まとめ含む)
スポーツに潜む戦略的思考
THE 配球 〜Baseball Play Study 2015 NPB開幕直前スペシャル〜 BPStudy#91
Venue design project sample
BPStudy#79 野球好き資料
オープンな次世代食・農情報流通基盤 Nober LODチャレンジ2016応募資料
コミュニティフォーラム2015 分科会b コモンビート×ブラインドサッカー協会
ファンタジーベースボールの数値分析
Adidas中間プレゼン
AIIT起業塾「農業×IT」
Mls Stadium Business Model
Rで野球データ解析がしたい ( pitchRxを使う )
Ad

More from Net Kanayan (20)

PDF
FileReader and canvas and server silde
PDF
Osc16gm
PDF
Open source
PDF
Http2入門の入門
PDF
Es6 cognition
PDF
ES6 はじめました
PDF
Image convert
PDF
Fxos lt
PDF
PDF
Blueberrypi
PDF
Browser push notifications
PDF
ODP
Windows store app html
PDF
Js kusen
KEY
Sass less
KEY
Ll xcode
KEY
Web creed
KEY
Js mvc
KEY
Tdd&peapro
KEY
J S Smartphone
FileReader and canvas and server silde
Osc16gm
Open source
Http2入門の入門
Es6 cognition
ES6 はじめました
Image convert
Fxos lt
Blueberrypi
Browser push notifications
Windows store app html
Js kusen
Sass less
Ll xcode
Web creed
Js mvc
Tdd&peapro
J S Smartphone
Ad

Basic vulnerability