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
情報セキュリティ入門(バックエンド編)
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
ti-aiuto
April 27, 2024
Technology
0
130
情報セキュリティ入門(バックエンド編)
ti-aiuto
April 27, 2024
Tweet
Share
Other Decks in Technology
See All in Technology
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
150
AIエージェントに必要なのはデータではなく文脈だった/ai-agent-context-graph-mybest
jonnojun
1
250
Claude Code for NOT Programming
kawaguti
PRO
1
110
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.6k
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
5.6k
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
250
Greatest Disaster Hits in Web Performance
guaca
0
300
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
530
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
440
22nd ACRi Webinar - 1Finity Tamura-san's slide
nao_sumikawa
0
110
GitHub Copilot CLI を使いやすくしよう
tsubakimoto_s
0
110
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
150
Featured
See All Featured
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
190
WENDY [Excerpt]
tessaabrams
9
36k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
170
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
440
Claude Code のすすめ
schroneko
67
210k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Are puppies a ranking factor?
jonoalderson
1
2.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
120
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Transcript
情報セキュリティ入門 バックエンド編 アプリの裏側はどうなっている? 某連盟東海支部 ti-aiuto
目標 • 情報セキュリティに関連する基本的な用語や考え方がなんとな くでいいからわかっている状態 • 情報セキュリティの三要素 • クライアント・サーバ・WEBサーバ • セキュリティインシデントのよくある原因と関連する概念
• 参考事例 • そういうことを頑張ってる人たちがいるんだ~と思ってくれれ ば
ここでいう「情報システム」 • 情報のやりとりによって利用者の目的を達成する全体の仕組み のこと • 「ネットで買い物をしたい」 • 「スマホでメッセージを送受信したい」 • オンラインゲームとかも似たようなもんかな
• 「写真や文書などのデータを共有したい」 • 「ネットで動画などのコンテンツをみたい」
情報セキュリティの三要素 • 機密性:データを流出させない • 「登録したメールアドレスやパスワードが流出した!」 • 可用性:システムが正常に使える状態 • 「オンラインゲームを起動してもエラーと表示されて動かない!」 •
完全性:データが失われない・改ざんされない • 「セーブデータが消えている!レベルが勝手に変わっている!」 ※いろんな論点が出てきて混乱したときは、この中にどれに当てはまるか?を考えてみるといいかも
クライアント/サーバシステム クライアント サーバ インターネット などの通信路 と呼ばれるコンピュータ パソコンとかスマホに 入れてるアプリ ◦◦ちょうだい! 〇〇を実行して!
◦◦ちょうだい! 〇〇を実行して! どうぞ 実行したよ どうぞ 実行したよ 要求(リクエスト) 応答(レスポンス)
クライアント/サーバシステム クライアント サーバ スパゲッティちょうだい どうぞ serve: 提供する
WEBサーバ • WEBサーバ • WEBブラウザで色々ページ見るときの通信相手のサーバのこと • WEBブラウザ • WEBサーバと通信してWEBページを見るためのアプリ •
ChromeとかSafariとかEdgeとかFirefoxとか • WEBの技術はHTTPという規格で実現されている • 便利なのでWEBブラウザ以外の場所でも広く使われている HTTPが使われてそうなアプリの例(推測)
サーバの物理的な実体 • データセンタという建物の中にコンピュータが設置されている ことが大半 • 自分でコンピュータなどの機材を調達して管理:オンプレミス • 第三者が管理するコンピュータをサブスクのように利用:クラウド
裏側では様々なコンピュータが役割分担 WEBサーバ データベース サーバ ◦◦さんの データちょうだい! どうぞ WEBブラウザの要求に 応えることに専念 各種データを正確に
管理することに専念
ファイアウォール ファイアウォール 怪しそうな 要求をブロック 設定ミスや脆弱性(製品に含まれるセキュ リティ上の欠陥)を狙って攻撃
アクセス殺到への対策 • アクセス殺到で落ちる:「可用性」が損なわれている状態 https://www.asahi.com/articles/ASP5B7394P5BUNHB009.html https://www.nikkei.com/article/DGXMZO60782230V20C20A6000000/
WEBサーバを強化(=スケール)しよう 余裕のあるところに 振り分ける ロードバランサ 台数を増やして強化 (=スケールアウト)
スケールの限界 在庫数・座席の予約状況・予約枠の残数などは一か所で 中央集権管理する必要があるため、 データベースサーバを増やすわけにはいかない =>ここの性能の限界が全体の限界に(=ボトルネック)
スケールのしやすさ • データを読み出す処理はスケールしやすい • 例:ニュース記事を読む • 例:ログインして会員情報を見る • データを書き込む処理はものによってはスケールしづらい •
どんどん新しいデータを登録していくだけならまだマシ • 例:SNSに書き込みを行う • 例:新しい文書を作成する • ※インターネット投票アプリもこっちに入りそう • 処理がダブらないよう慎重に管理(=排他制御)が必要だと大変 • 例:限られた在庫数の商品・枠数のチケットを購入する
余談:なんとかしてスケールさせる方法 • 非同期化:見かけ上だけ「注文完了」画面を先に表示してしま い、排他制御により時間のかかる注文処理は裏側で実行する • 「他の人が先に購入していたので注文できてなかった」もあり得る https://techblog.yahoo.co.jp/entry/2023020230408203/
故障や不調への対策 • 故障で止まる:「可用性」が損なわれている状態 https://www.asahi.com/articles/ASNB13T3CNB1ULFA00B.html https://xtech.nikkei.com/atcl/nxt/news/24/00378/
冗長構成 いざというときのために 同じ組み合わせをもう一つ準備しておき (=冗長構成)、 問題が発生したときに切り替える (=フェイルオーバー) ※失敗することもある
事故、災害や人為的ミスも https://gihyo.jp/article/2023/12/zengin-nttdata https://cafe-dc.com/security/australian-mouse-plague-causes-multiple-network- outages-across-new-south-wales/#google_vignette https://gigazine.net/news/20150820-google-lightning-data-lost/
インターネット側からの攻撃 • DoS(サービス拒否攻撃)・DDoS(分散型サービス拒否攻撃)※F5攻撃 • 大量の要求を送って処理不能な状態にする • Rate Limit(〇分あたり〇回まで)のような制限をかける方法も • 脆弱性や設定ミスを突くことによりサーバに侵入する・不正な操作
を実行させる攻撃 • 機密性・完全性の侵害、ウイルスなど不正なプログラムを仕込む
WEBサーバに不正なプログラムを仕込む https://www.itmedia.co.jp/news/articles/2107/20/news150.html https://www.blueplanet-works.com/column/anti-malware/mining-virus/ https://scan.netsecurity.ne.jp/article/2024/04/26/50934.html
内部経由の攻撃 インターネットにつながっていないコンピュータの場合でも、 誰かがそのコンピュータのデータを利用したり、 そのコンピュータのメンテナンスをしたりしている
内部経由の攻撃 開発や運用・メンテナンスの担当者に悪意のある人が 紛れている場合もある(=内部犯行) そのような場合も含めてシステムに対して操作された内容を記録 しておく仕組み(=監査ログ)
開発運用体制も含めたセキュリティ対策 https://note.com/mickmack/n/n8aac06454ab4?sub_rt=share_h https://xtech.nikkei.com/atcl/nxt/column/18/00138/030501482/ https://techtarget.itmedia.co.jp/tt/news/1410/29/news04.html
標的型攻撃 特定の組織等を攻撃することを目的として ウイルス付きメールを送り付けるなど攻撃 (=標的型攻撃)
標的型攻撃 https://wired.jp/2016/04/30/german-nuclear-plants-fuel-rod- system-swarming/ https://www.asahi.com/articles/ASRBS5JMDRBSUTIL025.html
まとめ • 情報システムのセキュリティを損なう要因はいろいろある • 三要素のどれが侵害されているのか? • 人為的なもの?人為的でないもの? • 悪意のあるもの?ないもの? •
外部から?内部から? • そういうのをなんとかするために頑張っている人たちがいる!