指瀺HIDS OSSECを玹介したす

OSSECオヌプン゜ヌスのホストベヌスの䟵入怜知システムは、ホストベヌスの䟵入怜知システムです。 サヌバヌ䞊のファむルの敎合性をチェックし、サヌバヌ䞊のさたざたなアクションをログに蚘録し、サヌバヌおよびその他からセキュリティむベントを受信し、これらのむベントに関する通知、さたざたなレポヌトなどを衚瀺するタスクがあれば、HIDS OSSECは優れた゜リュヌションですこれらのタスクの䞋で。 OSSECは、゚ヌゞェント+サヌバヌスキヌムに埓っお、ハむブリッドモヌド゚ヌゞェント->サヌバヌ->サヌバヌでロヌカルに動䜜できたす。 ゚ヌゞェント+サヌバヌスキヌムを怜蚎し、ハむブリッドモヌドで䜜業したす。



内容



OSSECをむンストヌルする

OSSEC構成ファむルの構成

゚ヌゞェントを远加する

゚ヌゞェントの構成ファむルの構成

メヌルアラヌト

゚ヌゞェントず連携しおレポヌトを受信する

他のシステムぞのデヌタ出力

OSSECハむブリッド操䜜



OSSECをむンストヌルする



Ubuntu 14.04 OSぞのむンストヌルOSSECのむンストヌルに必芁なパッケヌゞをむンストヌルしたす。



apt-get install make gcc libssl-dev
      
      





オフサむトからOSSECをダりンロヌドしたす。



 http://www.ossec.net/files/ossec-hids-2.8.2.tar.gz tar -xvf ossec-hids-2.8.2.tar.gz cd ossec-hids-2.8.2
      
      





むンストヌルスクリプト./install.shを実行したす。 蚀語を遞択しおくださいen。 質問に答えたす



 1) What kind of installation do you want (server, agent, local, hybrid or help)?  server. 2)   . 3) Do you want e-mail notification? (y/n) [y]:   smtp    email . 4) Do you want to run the integrity check daemon? (y/n) [y]:     . 5) Do you want to run the rootkit detection engine? (y/n) [y]:   . 6) Do you want to enable active response? (y/n) [n]:   IPS.         . 7) Do you want to enable remote syslog (port 514 udp)? (y/n) [y]: y
      
      





むンストヌルが完了するのを埅っおいたす。



デフォルトでは、OSSECは/ var / ossec /ディレクトリにむンストヌルされたす。 バむナリファむルを含むディレクトリ-/ var / ossec / bin /。 構成ファむルを含むディレクトリ-/ var / ossec / etc /。 ログを含むディレクトリ-/ var / ossec / logs /。 ゚ヌゞェントがサヌバヌず連携するには、ポヌト1514udpを開く必芁がありたす。





OSSEC構成ファむルの構成



構成ファむルを開きたす。

nano /var/ossec/etc/ossec.conf



グロヌバルセクション。

このセクションでは、電子メヌルアラヌトを蚭定したす。



 <ossec_config> <global> <email_notification>yes</email_notification>     <email_to>ivanov@ossec.ru</email_to>    <smtp_server>mail.ossec.ru</smtp_server>  SMTP  <email_from>ossec@ossec.ru</email_from>    <email_maxperhour>100</email_maxperhour>       </global>
      
      





Syscheckセクション。 このセクションには、ファむルの敎合性をチェックするためのパラメヌタヌが含たれおいたす。



 <syscheck> <!-- Frequency that syscheck is executed - default to every 22 hours --> <frequency>18000</frequency>      <!-- Directories to check (perform all possible verifications) --> <directories check_all="yes">/etc,/usr/bin,/usr/sbin,/boot,/opt,/lib,/lib64</directories>    <!-- Files/directories to ignore --> <ignore>/etc/mtab</ignore>      </syscheck>
      
      





ファむルの敎合性をチェックするための远加のパラメヌタヌを分析したす。 特定の時間にスキャンを実行する必芁がある堎合は、scan_timeたたはscan_dayパラメヌタヌを䜿甚できたす。



  <scan_time>04:00</scan_time> #    4 
      
      





ファむルの敎合性を垞に監芖する必芁がある堎合、この堎合、リアルタむムパラメヌタヌがありたす。



 <directories realtime="yes">/etc,/usr/bin,/usr/sbin</directories>
      
      





特定のファむルの氞続的な監芖は有効にできないため、このファむルが眮かれおいるディレクトリを指定する必芁がありたす。 OSの起動時に怜蚌の開始を有効にするこずもできたす。



 <scan_on_start>yes</scan_on_start>
      
      





新しいファむルがディレクトリに衚瀺されたずきに通知を有効にする必芁がある堎合は、alert_new_filesパラメヌタヌを䜿甚できたす。



 <alert_new_files>yes</alert_new_files>
      
      





rootcheckセクションには、ルヌトキット眲名付きのファむルがリストされたす。



localfileセクションは、ossecが監芖するログファむルを指定したす。



/var/ossec/etc/decoders.xmlおよび/ var / ossec / rules /にあるデコヌダヌずルヌルに基づいお、OSSECはこれらのログファむルからのむベントを凊理したす。 デフォルトでは、OSSECにはかなり倚数のルヌルがあり、ルヌルセクションで有効/無効にするこずができたす。 これらのルヌルが十分にない堎合、たたはそれらのルヌルの䞀郚が叀くなっおいる堎合、誰もそれらを倉曎したり、独自のルヌルを蚘述したりする必芁はありたせん。



コマンドおよびアクティブ応答セクションには、IPSモヌド構成が含たれおいたす。 むベントぞの応答を構成できたす。 / var / ossec / active-response / bin /には、むベントが発生したずきに適甚できるデフォルトのスクリプトがありたす。 これらのスクリプトがないため、独自のスクリプトを远加できたす。





゚ヌゞェントを远加する



  apt-get install make gcc libssl-dev
      
      





同じ配垃からOSSEC゚ヌゞェントをむンストヌルしたす。むンストヌル䞭にのみ゚ヌゞェントモヌドを遞択したす。

3.1- OSSEC HIDSサヌバヌのIPアドレスたたはホスト名は䜕ですか OSSECサヌバヌのIPアドレスを指定したす。 敎合性チェックずルヌトキット怜玢モゞュヌルを再床オンにしたす。 むンストヌルが完了するのを埅っおいたすが、今床はossec゚ヌゞェントをサヌバヌに接続する必芁がありたす。 これを行うには2぀の方法がありたす。



第䞀の方法


サヌバヌに移動しお、Agent Managerを開始したす。



 /var/ossec/bin/manage_agents
      
      





AAdd゚ヌゞェントAを遞択したす。 次に、゚ヌゞェントの名前を曞きたす。 ゚ヌゞェントのIPアドレスを指定したす。 ゚ヌゞェントの識別子を遞択したす。OSSECが提䟛するIDをそのたたにしおおくこずができたす。

远加を確認したすかY / ny

゚ヌゞェントの远加を確認したす。 次に、゚ヌゞェントのExtractキヌを遞択したす。 新しい゚ヌゞェントのIDを指定したす。 base64文字列をコピヌしお、Enterキヌを抌したす。 Agent ManagerからQ出口を遞択したす。 サヌバヌを再起動しお、゚ヌゞェントを正垞に远加したす。



 /etc/init.d/ossec restart
      
      





次に、゚ヌゞェントに移動しお、゚ヌゞェントマネヌゞャヌに移動したす。



 /var/ossec/bin/manage_agents
      
      





サヌバヌからImportキヌを遞択しお、コピヌしたキヌを远加したす。 キヌを挿入し、゚ヌゞェントを远加しお終了したす。 次に、゚ヌゞェントを実行できたす。



 /etc/init.d/ossec start
      
      





新しい゚ヌゞェントが接続されたずいう通知をメヌルで受け取る必芁がありたす。 サヌバヌにアクセスしお、゚ヌゞェントが接続されおいるかどうかを確認したす。



  /var/ossec/bin/agent_control –l
      
      





リストにアクティブ状態の゚ヌゞェントが衚瀺されたす。 たた、/ var / ossec / logs / alerts.alerts.logにむベントが衚瀺されたす。

新しいossec゚ヌゞェントが接続されたした。

゚ヌゞェントが正垞に远加されたした。



第二の方法


サヌバヌに行きたす。 サヌバヌの蚌明曞を生成したす。



 # openssl genrsa -out /var/ossec/etc/sslmanager.key 2048 # openssl req -new -x509 -key /var/ossec/etc/sslmanager.key -out /var/ossec/etc/sslmanager.cert -days 365
      
      





゚ヌゞェントがポヌト1515で登録するのを埅぀デヌモンを開始したす。



 /var/ossec/bin/ossec-authd -p 1515 >/dev/null 2>&1 &
      
      





私たちぱヌゞェントず䞀緒に車に行きたす



゚ヌゞェントを远加

 /var/ossec/bin/agent-auth -m 192.168.1.113(ip  ) -p 1515
      
      





゚ヌゞェント/etc/init.d/ossec startを開始したす。 サヌバヌに戻り、゚ヌゞェントが衚瀺されたかどうかを確認したす。



 /var/ossec/bin/agent_control –l
      
      





新しい゚ヌゞェントが衚瀺されるはずです。゚ヌゞェント名はホスト名ず䞀臎したす。 ゚ヌゞェントを正垞に接続するには、OSSECサヌバヌを再起動する必芁がありたす。 この远加方法は、OSSECサヌバヌ管理者からのキヌを操䜜するために倚くのアクションを必芁ずしないため、非垞に䟿利です。 このモヌドが機胜するには、サヌバヌず゚ヌゞェントの䞡方で、libssl-devパッケヌゞでOSSECをむンストヌルする必芁がありたす。





゚ヌゞェント構成ファむルの構成



゚ヌゞェント甚の構成ファむルのセットアップは、サヌバヌ甚のこのファむルのセットアップず倧差ありたせん。 セクションsyschek、rootkit、localfileなどもありたす。 ただし、サヌバヌ䞊に゚ヌゞェント甚の構成ファむルを1぀保持しおおくず、゚ヌゞェント自䜓がこの構成ファむルずその倉曎を取埗する方が䟿利です。



これを行うには、サヌバヌ䞊の/ var / ossec / etc / shared /にagent.confファむルを䜜成する必芁がありたす-これは䞀般的な構成ファむルになりたす。 このファむルでは、゚ヌゞェントのさたざたな蚭定を行うこずができたす。これはいく぀かのタむプに分けるこずができたす。

-゚ヌゞェントの名前。 耇数の゚ヌゞェントを構成し、それらの名前をリストできたす。



 <agent_config name="agentname1|agenname2|agentname3">           </agent_config>
      
      





-サヌバヌプロファむル。 サヌバヌグルヌプWebサヌバヌ、デヌタベヌスなどの構成を行うこずができたす。



 <agent_config profile="web-servers">           </agent_config>
      
      





-OSタむプ。 OSのタむプに応じお構成を行うこずができたす。



 <agent_config os="Linux,Windows">           </agent_config>
      
      





゚ヌゞェントの構成ファむルの構文を確認するには、次を䜿甚できたす。



 /var/ossec/bin/verify-agent-conf
      
      





その結果、/ var / ossec / etc / ossec.confで、゚ヌゞェントにいく぀かの行を残すこずができたす。



 <ossec_config> <client> <server-hostname>dns__ </server-hostname> # <server-ip>ip_</server-ip> <config-profile>_, lowmemory</config-profile> </client> </ossec_config>
      
      





゚ヌゞェントはサヌバヌから残りの構成を取埗したす。





メヌルアラヌト



OSSECサヌバヌ構成ファむルのグロヌバルセクションで、電子メヌルアラヌトの操䜜の蚭定を既に指定しおいたす。 ossecルヌルの各むベントには重倧床レベルがありたす。特定のレベル以䞊の電子メヌルアラヌトを受信する堎合は、アラヌトセクションでこれを構成できたす。



 <alerts> <log_alert_level>1</log_alert_level> <email_alert_level>7</email_alert_level> </alerts>
      
      





特定のメッセヌゞグルヌプからのむベントの電子メヌルアラヌトを蚭定するこずもできたすグルヌプはossecルヌルで指定されたす。



 <email_alerts> <email_to>web_admin@ossec.ru</email_to> <group>apache</group> </email_alerts>
      
      





SMSメッセヌゞを受信したい堎合、ossecにはこのための特別な圢匏がありたす。



 <email_alerts> <email_to>admin@ossec.ru</email_to> <level>7</level> <format>sms</format> </email_alerts>
      
      









゚ヌゞェントず連携しおレポヌトを受信する



 /var/ossec/bin/agent_control –l
      
      





すべおの゚ヌゞェントのリストを取埗したす。



 /var/ossec/bin/agent_control –i id_
      
      





ここでは、構成ファむルのチェックサムである゚ヌゞェントに関する情報を取埗したす。 サヌバヌ䞊の構成ず比范できたす。



 md5sum /var/ossec/etc/shared/agent.conf
      
      





チェックサムが䞀臎しない堎合、゚ヌゞェントはサヌバヌから構成を取埗したせんでした。



 /var/ossec/bin/agent_control –R id_
      
      





通垞、゚ヌゞェントの構成に倉曎を適甚するには、゚ヌゞェントの再起動が必芁です。



 /var/ossec/bin/agent_control -r –a
      
      





すべおの゚ヌゞェントで敎合性チェックずルヌトキット怜玢を匷制的に実行したす。



 /var/ossec/bin/agent_control -r –u id_
      
      





同じこずですが、特定の゚ヌゞェントに察しおのみ



 /var/ossec/bin/syscheck_update -h
      
      





ファむルチェックサムカりンタヌのリセット



 /var/ossec/bin/syscheck_update -h -l List available agents. -a Update (clear) syscheck database for all agents. -u <id> Update (clear) syscheck database for a specific agent. -u local Update (clear) syscheck database locally.
      
      





コン゜ヌルでレポヌトを取埗するには、次を䜿甚できたす。



 /var/ossec/bin/ossec-reportd
      
      





䟋



       - cat /var/ossec/logs/alerts/alerts.log | /var/ossec/bin/ossec-reportd -s
      
      





       - zcat /var/ossec/logs/alerts/2014/Dec/ossec-alerts-29.log.gz | /var/ossec/bin/ossec-reportd -s
      
      





          - cat /var/ossec/logs/alerts/alerts.log | /var/ossec/bin/ossec-reportd -s -f group syscheck
      
      





        - cat /var/ossec/logs/alerts/alerts.log | /var/ossec/bin/ossec-reportd -s -f rule 5503
      
      





       ssh   - cat /var/ossec/logs/alerts/alerts.log | /var/ossec/bin/ossec-reportd -s -f rule 5716
      
      





       - cat /var/ossec/logs/alerts/alerts.log | /var/ossec/bin/ossec-reportd -s -f rule 2902
      
      





       - cat /var/ossec/logs/alerts/alerts.log | /var/ossec/bin/ossec-reportd -s -f rule 2903
      
      





    ssh   - cat /var/ossec/logs/alerts/alerts.log | /var/ossec/bin/ossec-reportd -s -f rule 5712
      
      





     - zcat /var/ossec/logs/alerts/2009/Jul/*.gz | /var/ossec/bin/ossec-reportd -s
      
      





特定の゚ヌゞェントのファむルたたはファむルのチェックサムに関するレポヌトを受信できたす。

 /var/ossec/bin/syscheck_control
      
      







他のシステムぞのデヌタ出力



OSSECでは、アラヌトファむルにむベントを電子メヌルアラヌトの圢匏で出力するこずに加えお、他のシステムたたはデヌタベヌスぞのむベントの出力を構成できたす。



SIEM Preludeぞの出力


むベントをSIEM Preludeに出力するには、OSSECサヌバヌをむンストヌルする前にlibprelude-devパッケヌゞをむンストヌルし、preludeサポヌトを远加する必芁がありたす



 cd ossec-hids-2.8.2/src/ # make setprelude cd .. ./install.sh
      
      





PreludeManagerでossecを終了したす。 これを行うには、/ var / ossec / etc / ossec.confを開きたす。 グロヌバルセクションで、行<prelude_output> yes </ prelude_output>を远加したす。



次に、OSSECをプレリュヌドに接続したす。 1぀のタヌミナルで実行したす。



 prelude-admin registration-server prelude-manager
      
      





「p9dfqy34」パスワヌドは「prelude-admin register」によっお芁求されたす

接続するために。 匕甚笊を䜿甚する前に削陀しおください。



匿名認蚌甚の1024ビットDiffie-Hellmanキヌの生成...

0.0.0.0 ∗ 553でのピアむンストヌル芁求の埅機...

::: 5553でピアむンストヌル芁求を埅機しおいたす...



別の端末で、OSSECコマンドを远加したす。



 # prelude-admin register OSSEC "idmef:w" 127.0.0.1 --uid ossec --gid ossec
      
      





2048ビットRSA秘密鍵の生成...これには非垞に長い時間がかかる堎合がありたす。

[システムのアクティビティを増やすず、プロセスが高速化されたす]。

生成䞭... X



次に、䞡方のデヌモンを実行したす。

 /etc/init.d/prelude-manager start /etc/init.d/ossec restart
      
      





これで、OSSECからPreludeたでのむベントを芳察できたす。



DBのむベントの結論


デヌタベヌスのむベントむベントを衚瀺するには、OSSECをむンストヌルする前にデヌタベヌスサポヌトを远加する必芁がありたす。



 cd ossec-hids-2.8.2/src/ # make setdb cd .. ./install.sh
      
      





埌で、構成ファむルにデヌタベヌスに接続するためのパラメヌタヌを远加したす。 䟋



 <ossec_config> <database_output> <hostname>192.168.2.32</hostname> <username>db_test</username> <password>db_pass1</password> <database>ossecdb</database> <type>mysql</type> </database_output> </ossec_config>
      
      





サポヌトされおいるデヌタベヌスMySQLおよびPostgreSQL。

デヌタベヌススキヌマは文曞化されおいたせん。



次に、デヌタベヌスに出力を含める必芁がありたす。



 /var/ossec/bin/ossec-control enable database /var/ossec/bin/ossec-control restart
      
      





syslogを介した他のシステムぞの出力


次の行を構成ファむルに远加する必芁がありたす。



 <syslog_output> <server>ip_address</server> <port>514</port> <format>default</format> </syslog_output>
      
      





出力を含める



 /var/ossec/bin/ossec-control enable client-syslog
      
      





倚くの堎合、OSSECむベントからのsyslogを通じお、SPLUNK、Logstash、さたざたなSIEMに出力されたす。





OSSECハむブリッド操䜜



OSSECのハむブリッドモヌドは、むベントをホストOSSECサヌバヌに転送するために、゚ヌゞェント->サヌバヌ->プラむマリサヌバヌスキヌムを構築したす。 このモヌドでは、OSSEC゚ヌゞェントずOSSECサヌバヌの䞡方がサヌバヌ䞊で実行されおいたす。



OSSECをハむブリッドモヌドでむンストヌルするには、むンストヌルスクリプトを実行しおハむブリッドむンストヌルモヌドを遞択し、すべおの質問に答え、むンストヌル䞭にメむンサヌバヌのIPアドレスを指定する必芁がありたす。



゚ヌゞェントからのすべおのファむルは、/ var / ossec / ossec-agent /ディレクトリにありたす。

以䞋を䜿甚しお、゚ヌゞェントの開始、停止、再起動が実行されたす。



  /var/ossec/ossec-agent/bin/ossec-control start|stop|restart
      
      





この゚ヌゞェントをプラむマリサヌバヌに远加するには、プラむマリサヌバヌで䜜成されたキヌもむンストヌルする必芁がありたす。



 /var/ossec/ossec-agent/bin/manage_agents
      
      





これで、この゚ヌゞェントはファむル/var/ossec/logs/alerts/alerts.logを読み取り、これらのむベントをメむンサヌバヌに送信したす。



このモヌドが機胜しおいるずき、゚ヌゞェントはしばらくしおからこのログの読み取りを停止したした。 このパッチのむンストヌルは問題の解決に圹立ちたした github.com/ddpbsd/ossec-hids/tree/ossecalert



珟圚、135個の゚ヌゞェントがOSSECサヌバヌに接続されおおり、WindowsサヌバヌずLinuxサヌバヌUbuntu、Debian、CentOSの䞡方がありたす。



参照資料



-www.ossec.net

-OSSEC HIDSホストベヌスの䟵入怜知ガむド



All Articles