Matt W
61558048c0
Add basic metrics to report when the FAM client is enabled ( #1043 )
2023-02-17 11:57:18 -05:00
Matt W
cf0e3fd3db
Add support for platform binary to process exceptions ( #1041 )
...
* Add support for platform bianry to process exceptions
* Fun with bool types
2023-02-17 11:30:46 -05:00
Matt W
15519c6de8
Clear ES cache when watch items change ( #1042 )
2023-02-17 11:04:08 -05:00
Nick Gregory
27ae60e265
Small test fixes to make sanitizers happy ( #1030 )
...
* Small test fixes to make sanitizers happy
* lint
* missing authclient
* new MockEndpointSecurityAPI per subtest
2023-02-06 20:16:22 +00:00
Matt W
29a50f072c
Report log type in santactl status ( #1036 )
...
* Report log type in santactl status
* Remove unnecessary fallback case
2023-02-06 14:59:42 -05:00
Matt W
a97e82e316
Replace SNTDecisionCache dictionary with SantaCache ( #1034 )
...
* Replace SNTDecisionCache dictionary with SantaCache
* PR feedback. Fix tests.
2023-02-03 15:58:53 -05:00
Russell Hancox
532120ac02
Configurator: Return an unsafe_unretained pointer to avoid needless retain/release ( #1035 )
2023-02-03 15:55:15 -05:00
Russell Hancox
ec934854fc
santactl & syncservice: Use synchronousRemoteObjectProxy where it makes sense ( #1033 )
2023-02-03 14:31:37 -05:00
Matt W
ad0e2abdac
Restart daemon on log type change ( #1031 )
...
* WIP register for event log type changes. Flush metrics.
* Add Flush to writer interface. Flush logger on log type change.
* Standardize non-thread-safe method names
2023-02-03 11:04:57 -05:00
Matt W
dc11ea6534
Rework timeout handling in metrics HTTP writer ( #1029 )
...
* Change HTTP writer to use session config timeouts
* Remove unnecessary block variable
* Fix tests
* Revert serializer changes for now
* Remove setting timeoutIntervalForRequest
2023-02-02 10:58:28 -05:00
Matt W
3acf3c1d00
Use cached sizes when serializing ( #1028 )
2023-01-30 16:08:38 -05:00
Matt W
41bc3d2542
Perf: Translocate cache, reserve proto repeated fields ( #1027 )
...
* Translocate cache, reserve proto repeated fields
* Remove copy/paste
2023-01-30 12:18:32 -05:00
Pete Markowsky
45a5d4e800
Fix: Rewrite the SNTMetricHTTPWriter to avoid potential stack corruption ( #1019 )
...
* Updated the SNTMetricHTTPWriter to use a for loop to prevent crashes caused by writing to stop.
* Make requests serial again.
* Fix the typo, I just pushed.
* Ensure we only lookup the timeout value once.
* Make SNTConfigurator assignment only happen once.
2023-01-30 11:53:26 -05:00
Matt W
82bd981f31
Fix team ID and signing ID checks ( #1026 )
...
* Fix policy checks with missing team/signing ids
* Update docs to clarify how symbolic links are handled
2023-01-30 09:14:27 -05:00
Matt W
a3ed5ccb40
Log type metrics ( #1018 )
...
* Add event log type to metrics
* lint
* PR Feedback
2023-01-27 10:22:09 -05:00
Matt W
2313d6338d
Remove extra expectation in test ( #1015 )
2023-01-26 11:42:14 -05:00
Russell Hancox
414fbff721
Project: Fix module maps for swift libraries and their dependencies ( #1014 )
2023-01-26 09:15:30 -05:00
Matt W
5a2e42e9b4
Reduce calls into configurator ( #1013 )
2023-01-25 16:51:13 -05:00
Matt W
f8d1b2e880
Reduce proto warning severity ( #1012 )
2023-01-25 14:37:00 -05:00
Matt W
5f4d2a92fc
Ensure watch item names conform to naming requirements ( #1011 )
...
* Ensure watch item names conform to naming requirements
* Only compile regex once
2023-01-25 13:27:27 -05:00
Russell Hancox
4ccffdca01
GUI: Migrate DeviceMessageWindow to SwiftUI ( #1010 )
2023-01-25 12:16:31 -05:00
Russell Hancox
eee2149439
GUI: Re-write AboutWindow view in SwiftUI ( #1007 )
2023-01-20 13:43:50 -05:00
Russell Hancox
dcbbc33e5e
Revert "Configurator: Apply config updates in non-daemon processes ( #1003 )" ( #1008 )
...
This reverts commit 1e88b88ee6 .
2023-01-20 13:30:06 -05:00
Matt W
ebe5166d77
Prevent recursive reconnect attempts ( #1005 )
2023-01-19 10:03:15 -05:00
Matt W
6e5a530df5
Low hanging fruit perf changes ( #1004 )
...
* Some minor changes for some easy perf wins based on trace info
* Manually track buffer offsets in File writer
* Add metrics tests
* Call members from appropriate shared object
2023-01-18 15:14:48 -05:00
Russell Hancox
1e88b88ee6
Configurator: Apply config updates in non-daemon processes ( #1003 )
2023-01-18 10:00:39 -05:00
Nick Gregory
2d74f36ddb
Reconnect to santametrics service on failure ( #1001 )
...
* Reconnect to santametrics service on failure
* use logging macros
2023-01-12 10:41:36 -05:00
Matt W
3a3564f36b
Add watch item state to santactl status ( #1000 )
...
* Add method to get WatchItems state
* Update santactl status with watch items state
* Update status label
* PR feedback - add missing dispatch_group_leave
2023-01-12 10:38:12 -05:00
Matt W
d3c7cbbcc3
Rename type aliases ( #999 )
2023-01-11 11:30:11 -05:00
Matt W
1ff6967934
Support configuring signing IDs for process exceptions ( #998 )
2023-01-11 09:42:32 -05:00
Matt W
53877f6114
Adopt new FS Access Auth config format and policy application logic ( #994 )
...
* WIP parsing new watch item config format
* Change WatchItemPolicy param order. Define policy default constants.
* rename write_only policy member to allow_read_access
* WIP parsing new config format, WatchItemsTest all pass
* Restructured process config parsing. Added tons of tests.
* Abstract NSError creation to a function
* Better errors. Bubble up NSErrors to reduce duplicate messages. More Tests.
* Validate min string lengths. Add a bunch more tests.
* Adopt new policy process logic and add tests
* Address PR feedback
2023-01-10 16:40:13 -05:00
Matt W
8c50af4041
Add policy version and name to basic string serializer ( #997 )
2023-01-10 13:17:21 -05:00
Matt W
df3aac5baf
Change name of santa config keys for file access monitoring ( #995 )
2023-01-09 21:08:57 -05:00
Matt W
4adad2ecfa
More event type support ( #992 )
...
* Add truncate and create support
* Add metrics support
2023-01-06 12:51:40 -05:00
Matt W
dc1a3c27c2
Add more event coverage in the file access client ( #991 )
...
* Support more file access protection event types
* Update tests for new events and method signatures
* lint
* Add metrics for new event types
* Add support for LINK event
* Fix spacing
2023-01-05 13:03:21 -05:00
Nick Gregory
a2f8030482
Fuzz embedded plist reading ( #990 )
...
* fuzz embedded plist reading
* remove newline
* consolidate size checking
* brackets
Co-authored-by: Russell Hancox <russellhancox@users.noreply.github.com >
2023-01-03 14:22:31 -05:00
Matt W
338a4f738f
Opportunistically use ES cache when possible ( #989 )
...
* WIP fixing up ES cacheability in file access client
* Removed old code from before simplification
* Add more tests
2023-01-03 14:09:21 -05:00
Nick Gregory
ca81270bff
Fix SNTFileInfo Fuzzing ( #985 )
...
* fix SNTFileInfo fd leak
* auto poweroff VM after fuzzing
* lint
2022-12-27 16:20:32 -05:00
Matt W
42cf1b232a
Adopt new ES APIs to watch target paths in tamper client ( #984 )
2022-12-22 16:49:25 -05:00
Nick Gregory
9423beecc8
fix spinloop when no override config is specified ( #981 )
2022-12-22 13:51:46 -05:00
Pete Markowsky
b18d4a0e30
Fix SNTFileInfoTest for macOS 13 ( #977 )
...
* Fix SNTFileInfoTest for macOS 13
2022-12-22 10:37:22 -05:00
Matt W
435868aa7a
Add build targets, lint ( #978 )
2022-12-21 22:56:20 -05:00
Matt W
60f53bc20a
Adopt new ES APIs to monitor target paths ( #975 )
...
* WIP begin adopting new ES APIs inverting target mute paths
* Track subscription status so as not to unnecessarily enable/disable
* Properly chain call to invert target mute paths. Fix using wrong Message obj.
* Add base client tests
* Support compiling on older platforms
* More changes to support compiling on older platforms
* Only enable watch items periodic task on macOS 13
* Add more asserts to test
* Disable ES caching for now
* lint
2022-12-20 21:15:01 -05:00
Matt W
ae63055f34
Fix golden test data for macOS 13 ( #972 )
2022-12-19 14:47:06 -05:00
Russell Hancox
e5a0c3c1c0
sync: Fix deduplication in reachability handler ( #973 )
2022-12-19 14:42:18 -05:00
Matt W
5680c69164
Address policy consistency issues ( #971 )
...
* Change FindPolicyForPath to operate on vector of inputs
* Adopt new interface to find all policies simultaneously
* Fix tests to use new FindPoliciesForPath signature
2022-12-19 14:20:05 -05:00
Matt W
6aa7c9ba86
Fix import issues ( #969 )
...
* Fix import issues
* lint
2022-12-15 16:10:26 -05:00
Matt W
6adef6a714
Track path types for current/new watch items ( #968 )
...
* Move WatchItemPolicy to its own header. Add path type enum.
* When tracking current/new paths, also track path types
* lint
2022-12-15 15:44:47 -05:00
Nick Gregory
1d8c105257
absl_guarded_by ( #967 )
2022-12-15 13:34:32 -05:00
Matt W
e2d7cf04fc
Fix under retain ( #966 )
2022-12-15 12:50:59 -05:00