LoginSignup
1
0

More than 1 year has passed since last update.

Amazon Linux2にインストールしたOSSECの動作確認をしてみた

Last updated at Posted at 2022-03-01

はじめに

前回の記事では、Amazon Linux2にOSSECをLocalインストールしました。今回はOSSECの動作を確認してみたいと思います。OSSECのインストール手順にご興味のある方は以下の記事を参照ください。

まずはOSSECの起動状態を確認

# /var/ossec/bin/ossec-control status
ossec-monitord is running...
ossec-logcollector is running...
ossec-syscheckd is running...
ossec-analysisd is running...
ossec-maild is running...
ossec-execd is running...

is runningですので、OSSECは起動しています。

動作確認方法について

OSSECは異常を検知すると、/var/ossec/logs/alerts/alerts.log にアラートを出力します。今回は、このファイルにアラートが出力されることを確認します。

事前準備について

今回は存在しないページにアクセスがあった場合にOSSECがアラートを出力するかを確認したいので、Apacheをインストールします。

# yum install httpd
# systemctl start httpd
# systemctl status httpd
# systemctl enable httpd

また、OSSECがApacheのアクセスログを監視するように、OSSECのコンフィグを設定します。具体的には、以下を/var/ossec/etc/ossec.confに追加します。

# cd /var/ossec/etc
# vi ossec.conf
  <localfile>
  <log_format>apache</log_format>
  <location>/var/log/httpd/access_log</location>
  </localfile>

  <localfile>
  <log_format>apache</log_format>
  <location>/var/log/nginx/access.log</location>
  </localfile>

  <localfile>
  <log_format>apache</log_format>
  <location>/var/log/nginx/error.log</location>
  </localfile>

OSSECを再起動します。

# /var/ossec/bin/ossec-control restart

動作確認の手順と確認結果について

存在しないページにブラウザからアクセスする

  • ブラウザのアドレスバーにEC2のIPアドレス/aaaaaaa.htmlを入力する。
  • /var/ossec/logs/alerts/alerts.logを確認する。
/var/ossec/logs/alerts/alerts.log
** Alert 1646126262.7129: - web,accesslog,
2022 Mar 01 09:17:42 ip-EC2のIPアドレス->/var/log/httpd/access_log
Rule: 31101 (level 5) -> 'Web server 400 error code.'
Src IP: ブラウザを起動したPCのIPアドレス
ブラウザを起動したPCのIPアドレス - - [01/Mar/2022:09:17:41 +0000] "GET /aaaaaa.html HTTP/1.1" 404 196 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36"

EC2のSSH接続に失敗する

  • SSH接続に失敗させます。今回はTeratermログインマクロのpemを別マシンのpemを参照するように編集します。(すいません、詳細な手順は省きます。)
  • /var/ossec/logs/alerts/alerts.logを確認する。
/var/ossec/logs/alerts/alerts.log
** Alert 1646128574.11627: mail  - syslog,errors,
2022 Mar 01 09:56:14 ip-EC2のIPアドレス->/var/log/secure
Rule: 1002 (level 2) -> 'Unknown problem somewhere in the system.'
Mar  1 09:56:13 ip-EC2のIPアドレス sshd[5292]: error: AuthorizedKeysCommand /opt/aws/bin/eic_run_authorized_keys ec2-user SHA256:hogehogehogehogehogehogehogehoge/fugafuga failed, status 22

その他 /etc/postfix/main.cfを変更したとき

  • /var/ossec/logs/alerts/alerts.logを確認する。
/var/ossec/logs/alerts/alerts.log
** Alert 1646125562.2090: mail  - ossec,syscheck,
2022 Mar 01 09:06:02 ip-EC2のIPアドレス->syscheck
Rule: 550 (level 7) -> 'Integrity checksum changed.'
Integrity checksum changed for: '/etc/postfix/main.cf'
Size changed from '27176' to '27437'
Old md5sum was: 'hogehogehogehogehogehogehogehogehogehogehogehoge'
New md5sum is : 'fugafugafugafugafugafugafugafugafugafugafugafuga'
Old sha1sum was: 'hogehogehogehogehogehogehogehogehogehoge'
New sha1sum is : 'fugafugafugafugafugafugafugafugafugafuga'

その他 Apacheをインストールしたとき

  • /var/ossec/logs/alerts/alerts.logを確認する。
/var/ossec/logs/alerts/alerts.log
** Alert 1646125961.3335: mail  - syslog,yum,config_changed,
2022 Mar 01 09:12:41 ip-EC2のIPアドレス->/var/log/messages
Rule: 2932 (level 7) -> 'New Yum package installed.'
Mar  1 09:12:40 ip-EC2のIPアドレス yum[3481]: Installed: httpd-tools-2.4.52-1.amzn2.x86_64

他にもいろいろ関連したアラートが出ていましたが、一部のみ掲載します。
Apacheのグループとユーザ追加のアラート等も出ていました。

  • /var/ossec/logs/alerts/alerts.logを確認する。
/var/ossec/logs/alerts/alerts.log
** Alert 1646125961.4652: mail  - syslog,adduser
2022 Mar 01 09:12:41 ip-EC2のIPアドレス->/var/log/secure
Rule: 5901 (level 8) -> 'New group added to the system'
Mar  1 09:12:41 ip-EC2のIPアドレス groupadd[3496]: new group: name=apache, GID=48

** Alert 1646125961.4893: mail  - syslog,adduser
2022 Mar 01 09:12:41 ip-EC2のIPアドレス->/var/log/secure
Rule: 5902 (level 8) -> 'New user added to the system'
Mar  1 09:12:41 ip-EC2のIPアドレス useradd[3501]: new user: name=apache, UID=48, GID=48, home=/usr/share/httpd, shell=/sbin/nologin

他にこんなのも出ていました。

/var/ossec/logs/alerts/alerts.log
** Alert 1646128672.11989: mail  - syslog,sshd,authentication_failed,
2022 Mar 01 09:57:52 ip-EC2のIPアドレス->/var/log/secure
Rule: 5758 (level 8) -> 'Maximum authentication attempts exceeded.'
Src IP: xxx.xxx.xxx.xxx
Src Port: 57055
User: root
Mar  1 09:57:50 ip-EC2のIPアドレス sshd[5313]: error: maximum authentication attempts exceeded for root from xxx.xxx.xxx.xxx port 57055 ssh2 [preauth]

who is で Src IPを調べたら、どこの国のサーバーからのアクセスか分かります。

/var/ossec/logs/alerts/alerts.log
** Alert 1646128672.12381: - syslog,access_control,authentication_failed,
2022 Mar 01 09:57:52 ip-EC2のIPアドレス->/var/log/secure
Rule: 2501 (level 5) -> 'User authentication failure.'
Mar  1 09:57:50 ip-EC2のIPアドレス sshd[5313]: Disconnecting: Too many authentication failures [preauth]
/var/ossec/logs/alerts/alerts.log
** Alert 1646129521.12669: - web,accesslog,
2022 Mar 01 10:12:01 ip-EC2のIPアドレス->/var/log/httpd/access_log
Rule: 31101 (level 5) -> 'Web server 400 error code.'
Src IP: xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx - - [01/Mar/2022:10:11:59 +0000] "GET /.env HTTP/1.1" 404 196 "-" "Mozilla/5.0 (Linux; U; Android 4.4.2; en-US; HM NOTE 1W Build/KOT49H) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 UCBrowser/11.0.5.850 U3/0.8.0 Mobile Safari/534.30"

** Alert 1646129521.13107: - web,accesslog,
2022 Mar 01 10:12:01 ip-EC2のIPアドレス->/var/log/httpd/access_log
Rule: 31101 (level 5) -> 'Web server 400 error code.'
Src IP: xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx - - [01/Mar/2022:10:11:59 +0000] "POST / HTTP/1.1" 404 196 "-" "Mozilla/5.0 (Linux; U; Android 4.4.2; en-US; HM NOTE 1W Build/KOT49H) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 UCBrowser/11.0.5.850 U3/0.8.0 Mobile Safari/534.30"

UCBrowserって、スマホのブラウザのようですね。私はEC2にスマホからアクセスしていないです。

ポートのオープン/クローズもアラート検知するようです。

/var/ossec/logs/alerts/alerts.log
** Alert 1646125987.5438: mail  - ossec,
2022 Mar 01 09:13:07 ip-EC2のIPアドレス->netstat -tan |grep LISTEN |egrep -v '(127.0.0.1| \\1)' | sort
Rule: 533 (level 7) -> 'Listened ports status (netstat) changed (new port opened or closed).'
ossec: output: 'netstat -tan |grep LISTEN |egrep -v '(127.0.0.1| \\1)' | sort':
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp6       0      0 :::111                  :::*                    LISTEN
tcp6       0      0 :::22                   :::*                    LISTEN
tcp6       0      0 :::80                   :::*                    LISTEN
Previous output:
ossec: output: 'netstat -tan |grep LISTEN |egrep -v '(127.0.0.1| \\1)' | sort':
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp6       0      0 :::111                  :::*                    LISTEN
tcp6       0      0 :::22                   :::*                    LISTEN

おわりに

今回、OSSECの動作確認をしましたが、自分の動作確認以外でも、アラートを検知していることに、少し驚きました。(戸惑いました。)
個人利用のEC2にもセキュリティ対策は必要なのか、、、と改めて認識しました。では、また。

 

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0