Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20150530 セキュリティ実践講座 -優しい愛をあなたに-
Search
Masaru Ogura
May 30, 2015
Technology
0
31
20150530 セキュリティ実践講座 -優しい愛をあなたに-
2015/5/30のエフスタ!!AIZUの資料です。
Masaru Ogura
May 30, 2015
Tweet
Share
More Decks by Masaru Ogura
See All by Masaru Ogura
20241218 私の気になる VPC 周りのアップデート
masaruogura
0
120
20240530 Backlogでスクラムを回してみよう
masaruogura
0
320
20240516 JAWS-UG 朝会 運営の裏側
masaruogura
1
220
20240509 CloudWatch でいろいろなものを監視してみよう
masaruogura
1
280
20240329 第34回 JAWS-UG札幌勉強会 オープニング
masaruogura
0
39
20240216 Amazon Linux 2 を 2023 に移行してみた
masaruogura
1
6.5k
20240202 第33回 JAWS-UG札幌勉強会 オープニング
masaruogura
0
33
20231215 第32回 JAWS-UG札幌勉強会 オープニング
masaruogura
0
25
20230928 第31回 JAWS-UG札幌勉強会 オープニング
masaruogura
0
25
Other Decks in Technology
See All in Technology
なぜ私はいま、ここにいるのか? #もがく中堅デザイナー #プロダクトデザイナー
bengo4com
0
480
Snowflake Summit 2025 データエンジニアリング関連新機能紹介 / Snowflake Summit 2025 What's New about Data Engineering
tiltmax3
0
310
CursorによるPMO業務の代替 / Automating PMO Tasks with Cursor
motoyoshi_kakaku
0
200
SalesforceArchitectGroupOsaka#20_CNX'25_Report
atomica7sei
0
190
【TiDB GAME DAY 2025】Shadowverse: Worlds Beyond にみる TiDB 活用術
cygames
0
1.1k
~宇宙最速~2025年AWS Summit レポート
satodesu
1
1.9k
生成AI活用の組織格差を解消する 〜ビジネス職のCursor導入が開発効率に与えた好循環〜 / Closing the Organizational Gap in AI Adoption
upamune
5
3.7k
rubygem開発で鍛える設計力
joker1007
2
220
エンジニア向け技術スタック情報
kauche
1
270
Snowflake Summit 2025全体振り返り / Snowflake Summit 2025 Overall Review
mtpooh
2
400
Observability в PHP без боли. Олег Мифле, тимлид Altenar
lamodatech
0
360
MySQL5.6から8.4へ 戦いの記録
kyoshidaxx
1
260
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
710
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
The World Runs on Bad Software
bkeepers
PRO
69
11k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
Being A Developer After 40
akosma
90
590k
Writing Fast Ruby
sferik
628
62k
Transcript
セキュリティ実践講座 -優しい愛をあなたに- 2015/5/30 Sat エフスタ!!AIZU
自己紹介 • 名前 :小倉 大 (おぐら まさる) • Twitter :@MasaruOgura
• 北海道出身 • ネットワークエンジニア • エフスタ!!TOKYOのスタッフ • SPREAD情報セキュリティマイスター • スイーツ大好き
アジェンダ • 目的 • 留意事項 • SQLインジェクションとは • デモ環境説明 •
デモ・解説 • 対策 • まとめ
目的 • SQLインジェクションを知る - 防御のために攻撃を理解する • セキュリティへの関心を高める - 家のローカル環境で試してくれる人がいるといいな
留意事項 • インターネット上のWebサーバに攻撃し てはいけません - 法的措置をとられる可能性があります • 私はネットワークエンジニアです
SQLインジェクションとは ※SQLインジェクション - Wikipedia http://ja.wikipedia.org/wiki/SQL%E3%82%A4%E3%83%B3%E3%82%B8%E3%82%A7%E3%82 %AF%E3%82%B7%E3%83%A7%E3%83%B3 SQLインジェクションとは、アプリケーションのセキュリ ティ上の不備を意図的に利用し、アプリケーションが想定 しないSQL文を実行させることにより、データベースシス テムを不正に操作する攻撃方法のこと。また、その攻撃を
可能とする脆弱性のこと。 悪意のある攻撃者 Webサーバ データベース 不正なリクエスト 処理結果を取得 不正なリクエスト 不正なリクエスト を処理
デモ環境説明 (1/2) デモにBadStore.netを利用します。 BadStore.net は、脆弱性をわざと作りこん である Linuxです。 ※2015/5/6に正規のサイトにアクセスしたのですが、接続できなかっ たので、もしかしたら提供が終了しているかもしれません。
Windows7上のVMWarePlayerで、 BadStore.netを起動し、HostOSから GuestOSに対してSQLインジェクションを 実施 デモ環境説明 (2/2) 192.168.177.0/24 .254 .128 GuestOS(BadStore.net)
HostOS(Windows7)
デモ・解説 (1/6) 事前に以下のユーザを作成済み Email Address : phenix Password : phenix
デモ・解説 (2/6) phenixユーザでログイン Email Address : phenix Password : phenix
- SQL文のイメージ select * from <Table名> where email= ‘phenix’ and passwd=‘phenix’;
デモ・解説 (3/6) Email Passwd Age Address satoshi konkatsu 35 Tokyo
phenix phenix 41 koriyama kageyama gesui 36 moriya dj kato 30 Aizu hayash sportsbar 30 Koriyama : データベース例
デモ・解説 (4/6) phenixユーザがいることを知っている場合 Email Address : phenix ‘ or ‘
1=1’ --‘ Password : なし - SQL文のイメージ select * from <Table名> where email= ‘phenix ‘ or ‘ 1=1’ --‘’ and passwd=‘’;
デモ・解説 (5/6) ユーザ情報を知らない場合 Email Address : ' or 1=1 or
' Password : なし - SQL文のイメージ select * from <Table名> where email= ‘’ or 1=1 or ‘’ and passwd=‘’;
デモ・解説 (6/6) おまけ Admin権限のユーザ作成 Email Address : test Password :
test Burp Suiteを経由して、リクエスト内容を 変更する ※ Badstore.net User Manual http://www.cs.umd.edu/class/fall2012/cmsc498L/materials/BadStore_net_v1_2_Manual.pdf
対策 (1/4) 脆弱性検査ツールを利用 ※ IPAテクニカルウォッチ 「ウェブサイトにおける脆弱性検査手法の紹介(ウェブアプリケーション検査編)」 https://www.ipa.go.jp/files/000035859.pdf
対策 (2/4) OWASP ZAP使用例
対策 (3/4) Webサイトの管理者は、既知の脆弱性について対 策を実施しましょう Webサイトを公開する前にすること 1. 脆弱性検査ツールで脆弱性の有無を確認 2. 結果の内容を確認 3.
脆弱性がある場合、脆弱性対策を実施 4. もう一度、脆弱性検査ツールで修正を確認 ※4で脆弱性を検知する場合は、2~4を繰り返す
対策 (4/4) ユーザ側でできること ・ウイルス対策ソフトを導入し、定義ファイルを 最新に保つ ・OSやアプリケーションにセキュリティパッチを 適用する ・パスワードの使いまわしをしない
まとめ ・脆弱性があればSQLインジェクションなどの攻 撃は簡単にできる ・脆弱性の知識がなくても、ツールを利用するこ とで、既知の脆弱性の有無を確認できる ・脆弱性対策を実施し、セキュリティリスクを低 減する
ご清聴ありがとうございました
Appendix 参考資料 「わざと脆弱性を持たせたWebアプリ」で練習を http://www.atmarkit.co.jp/fsecurity/column/ueno/59.html 警察庁 サイバー犯罪対策 不正アクセス行為の禁止等に関する法律の解説 https://www.npa.go.jp/cyber/legislation/pdf/1_kaisetsu.pdf IPA 知っていますか?脆弱性
- 1. SQLインジェクション http://www.ipa.go.jp/security/vuln/vuln_contents/sql.html IPA 安全なウェブサイトの作り方 http://www.ipa.go.jp/security/vuln/websecurity.html
Appendix 参考資料 IPA SQLインジェクション対策について http://www.ipa.go.jp/files/000024396.pdf Badstore.net User Manual http://www.cs.umd.edu/class/fall2012/cmsc498L/materials/BadStore_net_ v1_2_Manual.pdf