Slide 1

Slide 1 text

Stripe+PHPで セキュアで安全な決済機能を作る

Slide 2

Slide 2 text

2

Slide 3

Slide 3 text

自己紹介 ◉ 株式会社イノベーター・ジャパン ◉ 穴井 怜 ◉ Twitter @gorou_178 ◉ ファイル転送サービスtenpu ◉ JP_Stripes運営メンバー ◉ コーヒー ◉ ハーフマラソン

Slide 4

Slide 4 text

クレジットカード情報漏洩事件 ◉ 某大型家電量販店サイト ◉ 某鉄道会社の通販サイト ◉ etc... ◉ 今年に入って数十件発生

Slide 5

Slide 5 text

? 原因は?

Slide 6

Slide 6 text

原因 1. クレジットカード情報を保持 2. アプリケーションが脆弱

Slide 7

Slide 7 text

? どう対策すればよい?

Slide 8

Slide 8 text

推奨方法 ◉ 2018年の6月1日に改正割賦販売法が施行 ◉ カード情報保護が義務になった ◉ カード情報漏洩対策として、非保持化またはカー ド情報を持つならPCI DSS準拠が必要

Slide 9

Slide 9 text

? 非保持化?

Slide 10

Slide 10 text

非保持化とは? 通過 させない 10 保存 しない 処理 しない

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

Stripeで非保持化 ◉ Stripe Elementで簡単に非保持化が可能 ○ iframeで動作しているためサイトを通過しない ○ ほぼコピペで完了 ◉ PCI DSS準拠 ◉ SDKは多くの言語をサポート ○ PHP・Ruby・Python・Java・Node・Go・.NET

Slide 15

Slide 15 text

? 導入は簡単 テストは?

Slide 16

Slide 16 text

OpenAPI

Slide 17

Slide 17 text

OpenAPI ◉ OpenAPIとは ○ Swaggerと呼ばれていた ◉ RESUful APIを記述するためのフォーマット ○ YAML or JSON ◉ Stripe APIはOpenAPIを公開している ○ Github stripe/openapi ◉ モックとして動かせる 参照: https://github.com/stripe/openapi

Slide 18

Slide 18 text

“ stripe-mock

Slide 19

Slide 19 text

stripe-mock

Slide 20

Slide 20 text

原因 1. クレジットカード情報を保持 2. アプリケーションが脆弱

Slide 21

Slide 21 text

アプリケーションが脆弱(サイト改変) 偽のカード入力画面 カード情報漏洩 必ず失敗 本当のカード入力画面

Slide 22

Slide 22 text

アプリケーションが脆弱 ◉ 非保持化していたとしても漏洩する ◉ 今年発生した漏洩事件のほとんどがサイト改変 ◉ 非保持化だけでは安全ではない

Slide 23

Slide 23 text

基本的な対策 ◉ サーバのミドルウェアのバージョンアップ(パッチ 適用) ◉ アプリケーションの脆弱性対策 ◉ ライブラリのバージョンアップ ◉ 基本的な対策が一番大切 参照: 2019年1月から5月に公表されたウェブサイトからのクレジットカード情報漏えい事件まとめ | 徳丸浩の日記 https://blog.tokumaru.org/2019/05/credit-card-information-leak-incidents-2019-1-5.html

Slide 24

Slide 24 text

ありがとうございました