| 1 | <agent_config> |
| 2 | <labels> |
| 3 | <label key="customer">REPLACE</label> |
| 4 | </labels> |
| 5 | <client_buffer> |
| 6 | <!-- Agent buffer options --> |
| 7 | <disabled>no</disabled> |
| 8 | <queue_size>100000</queue_size> |
| 9 | <events_per_second>1000</events_per_second> |
| 10 | </client_buffer> |
| 11 | <!-- Policy monitoring --> |
| 12 | <sca> |
| 13 | <enabled>yes</enabled> |
| 14 | <scan_on_start>yes</scan_on_start> |
| 15 | <time>04:00</time> |
| 16 | <skip_nfs>yes</skip_nfs> |
| 17 | <policies> |
| 18 | <policy>ruleset/sca/cis_apple_macOS_13.x.yml</policy> |
| 19 | </policies> |
| 20 | </sca> |
| 21 | <rootcheck> |
| 22 | <disabled>no</disabled> |
| 23 | <!-- Frequency that rootcheck is executed - every 12 hours --> |
| 24 | <frequency>43200</frequency> |
| 25 | <rootkit_files>/Library/Ossec/etc/shared/rootkit_files.txt</rootkit_files> |
| 26 | <rootkit_trojans>/Library/Ossec/etc/shared/rootkit_trojans.txt</rootkit_trojans> |
| 27 | <system_audit>/Library/Ossec/etc/shared/system_audit_rcl.txt</system_audit> |
| 28 | <system_audit>/Library/Ossec/etc/shared/system_audit_ssh.txt</system_audit> |
| 29 | <skip_nfs>yes</skip_nfs> |
| 30 | </rootcheck> |
| 31 | <!-- File integrity monitoring --> |
| 32 | <syscheck> |
| 33 | <disabled>no</disabled> |
| 34 | <!-- Frequency that syscheck is executed default every 12 hours --> |
| 35 | <frequency>43200</frequency> |
| 36 | <scan_on_start>yes</scan_on_start> |
| 37 | <!-- Directories to check (perform all possible verifications) --> |
| 38 | <directories check_all="yes" realtime="yes">/opt</directories> |
| 39 | <directories>/etc,/usr/bin,/usr/sbin</directories> |
| 40 | <directories>/bin,/sbin,/boot</directories> |
| 41 | <!-- Files/directories to ignore --> |
| 42 | <ignore>/etc/hosts.deny</ignore> |
| 43 | <ignore>/etc/mail/statistics</ignore> |
| 44 | <ignore>/etc/random-seed</ignore> |
| 45 | <ignore>/etc/random.seed</ignore> |
| 46 | <ignore>/etc/adjtime</ignore> |
| 47 | <ignore>/etc/httpd/logs</ignore> |
| 48 | <ignore>/etc/utmpx</ignore> |
| 49 | <ignore>/etc/wtmpx</ignore> |
| 50 | <ignore>/etc/cups/certs</ignore> |
| 51 | <ignore>/etc/dumpdates</ignore> |
| 52 | <ignore>/etc/svc/volatile</ignore> |
| 53 | <ignore>/sys/kernel/security</ignore> |
| 54 | <ignore>/sys/kernel/debug</ignore> |
| 55 | <!-- File types to ignore --> |
| 56 | <ignore type="sregex">.log$|.swp$</ignore> |
| 57 | <!-- Check the file, but never compute the diff --> |
| 58 | <nodiff>/etc/ssl/private.key</nodiff> |
| 59 | <skip_nfs>yes</skip_nfs> |
| 60 | <skip_dev>yes</skip_dev> |
| 61 | <skip_proc>yes</skip_proc> |
| 62 | <skip_sys>yes</skip_sys> |
| 63 | <!-- Nice value for Syscheck process --> |
| 64 | <process_priority>15</process_priority> |
| 65 | <!-- Maximum output throughput --> |
| 66 | <max_eps>100</max_eps> |
| 67 | <!-- Database synchronization settings --> |
| 68 | <synchronization> |
| 69 | <enabled>yes</enabled> |
| 70 | <interval>5m</interval> |
| 71 | <response_timeout>30</response_timeout> |
| 72 | <queue_size>16384</queue_size> |
| 73 | <max_eps>10</max_eps> |
| 74 | </synchronization> |
| 75 | </syscheck> |
| 76 | <!-- Log analysis --> |
| 77 | <localfile> |
| 78 | <location>macos</location> |
| 79 | <log_format>macos</log_format> |
| 80 | <query type="trace,log,activity" level="info">(process == "sudo") or (process == "sessionlogoutd" and message contains "logout is complete.") or (process == "sshd") or (process == "tccd" and message contains "Update Access Record") or (message contains "SessionAgentNotificationCenter") or (process == "screensharingd" and message contains "Authentication") or (process == "securityd" and eventMessage contains "Session" and subsystem == "com.apple.securityd")</query> |
| 81 | </localfile> |
| 82 | <localfile> |
| 83 | <log_format>syslog</log_format> |
| 84 | <location>/Library/Ossec/logs/active-responses.log</location> |
| 85 | </localfile> |
| 86 | <localfile> |
| 87 | <log_format>syslog</log_format> |
| 88 | <location>/var/log/system.log</location> |
| 89 | </localfile> |
| 90 | <localfile> |
| 91 | <log_format>json</log_format> |
| 92 | <location>/var/log/osquery/osqueryd.results.log</location> |
| 93 | </localfile> |
| 94 | <localfile> |
| 95 | <log_format>json</log_format> |
| 96 | <location>/usr/local/var/log/packetbeat</location> |
| 97 | </localfile> |
| 98 | <localfile> |
| 99 | <log_format>json</log_format> |
| 100 | <location>/tmp/packetbeat/packetbeat-*.ndjson</location> |
| 101 | </localfile> |
| 102 | <localfile> |
| 103 | <log_format>command</log_format> |
| 104 | <command>df -P</command> |
| 105 | <frequency>360</frequency> |
| 106 | </localfile> |
| 107 | <localfile> |
| 108 | <log_format>full_command</log_format> |
| 109 | <command>netstat -tan |grep LISTEN |grep -v 127.0.0.1 | sort</command> |
| 110 | <frequency>360</frequency> |
| 111 | </localfile> |
| 112 | <localfile> |
| 113 | <log_format>full_command</log_format> |
| 114 | <command>last</command> |
| 115 | <frequency>360</frequency> |
| 116 | </localfile> |
| 117 | <wodle name="osquery"> |
| 118 | <disabled>yes</disabled> |
| 119 | <run_daemon>yes</run_daemon> |
| 120 | <log_path>/var/log/osquery/osqueryd.results.log</log_path> |
| 121 | <config_path>/var/osquery/osquery.conf</config_path> |
| 122 | <add_labels>yes</add_labels> |
| 123 | </wodle> |
| 124 | <wodle name="syscollector"> |
| 125 | <disabled>no</disabled> |
| 126 | <interval>24h</interval> |
| 127 | <scan_on_start>yes</scan_on_start> |
| 128 | <packages>yes</packages> |
| 129 | <os>yes</os> |
| 130 | <ports all="no">yes</ports> |
| 131 | <processes>yes</processes> |
| 132 | </wodle> |
| 133 | <wodle name="command"> |
| 134 | <disabled>no</disabled> |
| 135 | <tag>open-audit</tag> |
| 136 | <command>/bin/bash /opt/socfortress/scripts/open-audit-osx.sh</command> |
| 137 | <interval>24h</interval> |
| 138 | <ignore_output>yes</ignore_output> |
| 139 | <run_on_start>yes</run_on_start> |
| 140 | <timeout>0</timeout> |
| 141 | </wodle> |
| 142 | </agent_config> |