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
22
20150530 セキュリティ実践講座 -優しい愛をあなたに-
2015/5/30のエフスタ!!AIZUの資料です。
Masaru Ogura
May 30, 2015
Tweet
Share
More Decks by Masaru Ogura
See All by Masaru Ogura
20240530 Backlogでスクラムを回してみよう
masaruogura
0
230
20240516 JAWS-UG 朝会 運営の裏側
masaruogura
1
170
20240509 CloudWatch でいろいろなものを監視してみよう
masaruogura
1
190
20240329 第34回 JAWS-UG札幌勉強会 オープニング
masaruogura
0
25
20240216 Amazon Linux 2 を 2023 に移行してみた
masaruogura
1
4.5k
20240202 第33回 JAWS-UG札幌勉強会 オープニング
masaruogura
0
18
20231215 第32回 JAWS-UG札幌勉強会 オープニング
masaruogura
0
17
20230928 第31回 JAWS-UG札幌勉強会 オープニング
masaruogura
0
16
20230630 AWS認定のすすめ
masaruogura
1
560
Other Decks in Technology
See All in Technology
The Role of Developer Relations in AI Product Success.
giftojabu1
0
120
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
12k
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
150
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
190
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
400
Engineer Career Talk
lycorp_recruit_jp
0
170
第1回 国土交通省 データコンペ参加者向け勉強会③- Snowflake x estie編 -
estie
0
130
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.7k
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
スクラム成熟度セルフチェックツールを作って得た学びとその活用法
coincheck_recruit
1
140
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
Adopting Sorbet at Scale
ufuk
73
9.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
Fireside Chat
paigeccino
34
3k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Statistics for Hackers
jakevdp
796
220k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
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