SlideShare a Scribd company logo
1 of 24
Download to read offline
2019.02.08
OWASP Nagoya
Masatoshi Nishimura
OWASP Top 10 2017
AWS WAF テンプレート について
〜 WordPressの場合 〜
OWASP Nagoya Chapter Meeting #9
自己紹介
西村 将利(にしむら まさとし)
・株式会社こころみらい 代表取締役  https://cocoro-mirai.co.jp
 旧 ニシインターナショナル 代表  https://4649-24.com
・OWASP Nagoya https://www.owasp.org/index.php/Nagoya
・FB https://www.facebook.com/nishimura.masatoshi.3
・twitter https://twitter.com/BankKeikei55
・Instagram https://www.instagram.com/masatoshi55
アジェンダ
1.AWS WAFとは?
2.OWASP Top 10 2017
  テンプレートとは?
3.使ったAWSサービスと構築中のつまずき
4.OWASP Top 10 2017 テンプレートのメリット/気をつけるべき所
5.AWS WAF のメリット/気をつけるべき所
1.AWS WAFとは? ①
● 正式名称
AWS WAF and AWS Shield
● コンソールでは、
「セキュリティ、 アイデンティ
ティ、 コンプライアンス」の
「WAF&Shield」
1.AWS WAFとは? ②
1
ルールセットのテンプレート(ymlファイルなど)を使ったり、
自ら条件とルールを登録してhttp/httpsリクエストのAllow/Block/Countを行うこ
ともできるWAFサービス
2
ルールセットはマネージドと非マネージド
Managed Rules セラー
(F5 Networks , FORTINET , TREND MICRO , etc..)
3
テンプレートをS3バケットに保存、AWS CloudFormationでS3のURLを読み込
み、スタックをつくる。AWS WAFのWeb ACLsでスタックのRulesをELBへ紐づ
けてWAFとして使う
1.AWS WAFとは? ③
4
AWS CloudFront(CDN)かELB(LoadBalancer)に紐づけて使用
API Gatewayでも使える
5 httpとhttpsのリクエストに対するシグネチャに基づいたセキュリティを提供。物理
層のL1等、カバーしていない層のセキュリティ対策は別で必要
6
CloudWatchで監視可能。フィルタ条件に一致するリクエストを監視、アラートな
ども可能。誤検知分析はAWS WAFのログをFirehorseでストリ―ミング、S3保
存、Athenaで分析など、いろいろな手法がある
2.OWASP Top 10 2017 AWS WAF テンプレート?
OWASP Top 10 2017
ルールセット
テンプレート
非マネージド
OWASP Top 10 20×× の場合、
自分でテンプレート交換、設定
有償マネージドルールと異なる
2.OWASP Top 10 2017 AWS WAF テンプレート?
1
github
https://github.com/aws-samples/aws-waf-sample/tree/master/waf-owasp-top-10
2
Use AWS WAF to Mitigate OWASP’s Top 10 Web Application Vulnerabilities
https://d0.awsstatic.com/whitepapers/Security/aws-waf-owasp.pdf
3
AWSがS3で提供するダウンロードリンク
https://aws.amazon.com/jp/about-aws/whats-new/2017/07/use-aws-waf-to-mitigate-owasps-to
p-10-web-application-vulnerabilities/
2.OWASP Top 10 2017 AWS WAF テンプレート?
OWASP Top10 2017 AWS WAF テンプレート
https://github.com/aws-samples/aws-waf-s
ample/tree/master/waf-owasp-top-10
● AWS CloudFormation用テンプレート
WebACL(アクセスコントロールリスト)
Rule(ルール)
Condition(条件)
● スタートキットであり、利用者自身でカスタマイ
ズを行っていく事を作者が推奨
2.OWASP Top 10 2017 AWS WAF テンプレート?
● owasp_10_base.ymlファイル本体
https://github.com/aws-samples/a
ws-waf-sample/blob/master/waf-o
wasp-top-10/owasp_10_base.yml
● 1200行くらいで1つのymlファイル
● AWS CloudFormation向け
2.OWASP Top 10 2017 AWS WAF テンプレート?
OWASP Top10 2017 AWS WAF テン
プレートダウンロードリンク
https://aws.amazon.com/jp/about
-aws/whats-new/2017/07/use-aw
s-waf-to-mitigate-owasps-top-10-
web-application-vulnerabilities/
3.使ったAWSサービス
IAM CloudWatch
VPC ACM(AWS Certificate Manager)
Route53 ALB(Application Load Balancer)
ElasticIP CloudFormation
KMS(Key Management Service) S3
EC2 AWS WAF(WAF&Shield)
AWS WAFを使う場合、ELB か ColudFront が必須
3.使ったAWSサービス
3.構築中のつまずき①
ALBにACMを設定、
WordPressダッシュボード
ログインできなくなった!
3.構築中のつまずき①対策
①.htaccessの非SSLからSSLへのリダイレクト実装
②データベース内の非SSLパスをSSL化置換
③wp-config.phpに以下を記載
$_SERVER['HTTPS'] = 'on';
$_ENV['HTTPS'] = 'on';
④https://やhttp://を固定的に出力してしまうphp関数から
 https:やhttp:をpreg_replaceやstr_replaceで除去
※全て、WEBサーバーがApacheの場合です
3.構築中のつまずき②
ALBにAWS WAFを設定、
WordPressダッシュボード
また、ログインできなくなった!
3.構築中のつまずき②対策
・EDIT web ACL
WAF RulesのActionをBlockからAllowに
1個ずつ変更して、ダッシュボードログイン
可否確認。原因ルールを探す
・Allowにしたものはアプリケーション側で
対応を検討
WAF&Shield
3.構築中のつまずき②対策
OWASP Top 10 2017 Template × AWS WAF × WordPress 5.0.3の場合
generic-enforce-csrf
(OWASP Top 10 2017 A8)
Allowに変えて
アプリケーション側で
x-csrf-tokenの実装対応
3.構築中のつまずき②対策
generic-detect-ssi
(OWASP Top 10 2017 A9)
Allowに変えて、
該当ファイルパーミッションを
400などに変更
OWASP Top 10 2017 Template × AWS WAF × WordPress 5.0.3の場合
3.参考
generic-detect-admin-access
(OWASP Top 10 2017 A4)
のConditionsを以下の様に変更、
allowにする
● 自社の固定IP
● wp-admin
● wp-login.php
※ログインURLを変更した場合、
上記を変更後のURLに変える
OWASP Top 10 2017 Template × AWS WAF × WordPress 5.0.3の場合
4.OWASP Top 10 テンプレートのメリット
● 無料
● 2019年2月の時点で、OWASP Top 10 2017 テンプレートなので、
次のOWASP Top10 20××の時に新バージョンが出てくる可能性
● OWASP Top 10 2017の対策は何をしていくといいのか、
具体的に記載されているので理解しやすい
4.OWASP Top 10 テンプレートの気をつけるべき所
● 非マネージドルールのテンプレート(OWASP Top 10 2017テンプレート)を使う場合、設定
最適化を利用者自身で行う必要がある、OWASP Top 10 2017から アプリケーション側ま
で幅広いスキルが必要
● OWASP Top 10 20×× がリリースされて、新テンプレートが出てきたらテンプレート交換は
自分の手で行う必要がある
5.AWS WAFのメリット
● 初期設定簡単。ALBとEC2の間でRoute53のAレコードではなく、
ALBエイリアスを使えるのでイージーミスを減らしやすい
● ルールや条件のカスタマイズ作業がやりやすい。EC2再起動不要
即反映で設定検証しやすい
● CloudWatchを合わせて使ったり、いろいろな方法で監視可能、アラートも可能
● 安い。リクエスト数とルール数による従量課金
リクエスト数を抑える技術力があるとかなり安く出来る
● ルールのテンプレートを同じAWSアカウント内で共有できる
5.AWS WAFの気をつけるべき所
● AWSのELBかCloudFront、CloudFormationやS3やRoute53あたりが必要
EC2とAWS WAFの2つだけでは使えない
● ルールセットテンプレートは有償マネージドルールか?非マネージドルールか?
非マネージドはルール更新が手動
● 誤検知などの監視やアラートの運用も必要
● ルール内容を理解出来ないと誤検知対応が難しい

More Related Content

More from OWASP Nagoya

Rethinking car security based on autonomous driving and advanced driving support
Rethinking car security based on autonomous driving and advanced driving supportRethinking car security based on autonomous driving and advanced driving support
Rethinking car security based on autonomous driving and advanced driving supportOWASP Nagoya
 
Owasp top10 2017 a4 xxe
Owasp top10 2017 a4 xxeOwasp top10 2017 a4 xxe
Owasp top10 2017 a4 xxeOWASP Nagoya
 
OWASP Nagoya_WordPress_Handson_3
OWASP Nagoya_WordPress_Handson_3OWASP Nagoya_WordPress_Handson_3
OWASP Nagoya_WordPress_Handson_3OWASP Nagoya
 
OWASP Nagoya_WordPress_Handson_2
OWASP Nagoya_WordPress_Handson_2OWASP Nagoya_WordPress_Handson_2
OWASP Nagoya_WordPress_Handson_2OWASP Nagoya
 
OWASP Nagoya_WordPress_Handson_1
OWASP Nagoya_WordPress_Handson_1OWASP Nagoya_WordPress_Handson_1
OWASP Nagoya_WordPress_Handson_1OWASP Nagoya
 
20190208 脆弱性と共生するには
20190208 脆弱性と共生するには20190208 脆弱性と共生するには
20190208 脆弱性と共生するにはOWASP Nagoya
 
20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!
20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!
20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!OWASP Nagoya
 
20180601 OWASP Top 10 2017の読み方
20180601 OWASP Top 10 2017の読み方20180601 OWASP Top 10 2017の読み方
20180601 OWASP Top 10 2017の読み方OWASP Nagoya
 
WPSCanによるWordPressの脆弱性スキャン
WPSCanによるWordPressの脆弱性スキャンWPSCanによるWordPressの脆弱性スキャン
WPSCanによるWordPressの脆弱性スキャンOWASP Nagoya
 
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)OWASP Nagoya
 
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築)
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築)OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築)
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築)OWASP Nagoya
 
20170909 第13回名古屋情報セキュリティ勉強会 LT
20170909 第13回名古屋情報セキュリティ勉強会 LT20170909 第13回名古屋情報セキュリティ勉強会 LT
20170909 第13回名古屋情報セキュリティ勉強会 LTOWASP Nagoya
 

More from OWASP Nagoya (12)

Rethinking car security based on autonomous driving and advanced driving support
Rethinking car security based on autonomous driving and advanced driving supportRethinking car security based on autonomous driving and advanced driving support
Rethinking car security based on autonomous driving and advanced driving support
 
Owasp top10 2017 a4 xxe
Owasp top10 2017 a4 xxeOwasp top10 2017 a4 xxe
Owasp top10 2017 a4 xxe
 
OWASP Nagoya_WordPress_Handson_3
OWASP Nagoya_WordPress_Handson_3OWASP Nagoya_WordPress_Handson_3
OWASP Nagoya_WordPress_Handson_3
 
OWASP Nagoya_WordPress_Handson_2
OWASP Nagoya_WordPress_Handson_2OWASP Nagoya_WordPress_Handson_2
OWASP Nagoya_WordPress_Handson_2
 
OWASP Nagoya_WordPress_Handson_1
OWASP Nagoya_WordPress_Handson_1OWASP Nagoya_WordPress_Handson_1
OWASP Nagoya_WordPress_Handson_1
 
20190208 脆弱性と共生するには
20190208 脆弱性と共生するには20190208 脆弱性と共生するには
20190208 脆弱性と共生するには
 
20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!
20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!
20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!
 
20180601 OWASP Top 10 2017の読み方
20180601 OWASP Top 10 2017の読み方20180601 OWASP Top 10 2017の読み方
20180601 OWASP Top 10 2017の読み方
 
WPSCanによるWordPressの脆弱性スキャン
WPSCanによるWordPressの脆弱性スキャンWPSCanによるWordPressの脆弱性スキャン
WPSCanによるWordPressの脆弱性スキャン
 
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)
 
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築)
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築)OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築)
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築)
 
20170909 第13回名古屋情報セキュリティ勉強会 LT
20170909 第13回名古屋情報セキュリティ勉強会 LT20170909 第13回名古屋情報セキュリティ勉強会 LT
20170909 第13回名古屋情報セキュリティ勉強会 LT
 

20190208 OWASP TOP10 2017 AWS WAF について