Commit Graph

5697 Commits

Author SHA1 Message Date
Stefano Bonicatti
7f21ccfe67
Drop the facebook and source_migration layers (#6473)
We have ported all platforms to use the source layer.
The facebook layer is not needed anymore since we build everything from source now,
the same is for the transitional source_migration layer.

Minor cleanups about the recently removed python modules.
2020-06-01 09:58:56 -04:00
Stefano Bonicatti
ada1692417
Fix libelfin build on ossfuzz and LLVM/Clang 10 (#6472)
The set_binding function is incorrectly marked as const,
since it actually modifies one of the struct members.
This was somehow not caught by older compilers,
but is failing on LLVM/Clang 10, so we create a patch to fix this.
2020-06-01 09:57:55 -04:00
Teddy Reed
c34bdf6214
codegen: Port Jinja2 to Templite (#6470) 2020-05-31 18:36:47 -04:00
Teddy Reed
34cc6f1411
libraries: Move ssdeep-cpp to source_migration (#6464) 2020-05-30 10:21:51 +02:00
Teddy Reed
9d371124f8
libraries: Move smartmontools to source_migration (#6465) 2020-05-30 10:21:33 +02:00
Stefano Bonicatti
d7c43e61db
Pass the minimum macOS SDK version to openssl only if explicitly set (#6471) 2020-05-29 22:19:18 -04:00
Ted Reed
a8469d63f1 macos: Add locks around auditpipe and event ID accesses 2020-05-28 23:02:09 -04:00
Ted Reed
ca87a35121 macos: Add small optimizations to OpenBSM 2020-05-28 23:02:09 -04:00
Ted Reed
11d8f3e7d1 macos: Switch OpenBSM to block while waiting for data 2020-05-28 23:02:09 -04:00
Ted Reed
ba5c1522fe Do not allow EventPublishers to check for interrupted 2020-05-28 23:02:09 -04:00
Ted Reed
b1940e45c7 macos: Add polling to OpenBSM publisher 2020-05-28 23:02:09 -04:00
Stefano Bonicatti
03cf73367b
Build openssl with the macOS SDK version taken from CMake (#6469) 2020-05-28 12:09:08 -04:00
Stefano Bonicatti
11bdf32188
Fix rpm and deb package name format (#6468)
By using RPM-DEFAULT and DEB-DEFAULT as package names,
CPack leaves the naming of the packages to the underlying
packaging tools which will use the standard naming format.
2020-05-28 12:06:21 -04:00
Mike Myers
8a9fb0558e
Correct the 'cwd' and 'root' columns of processes table on Windows (#6459)
Correct the 'cwd' and 'root' columns of processes table on Windows
2020-05-26 14:29:49 -04:00
Nick Anderson
d1feab7bf2
release: adding nupkg cpack build option, updating win deployment script (#6262) 2020-05-25 12:42:06 -04:00
Breakwell
a154e45026
Add additional logging in the watcher for windows (#6376)
Co-authored-by: Teddy Reed <teddy@casualhacking.io>
2020-05-25 12:33:21 -04:00
Teddy Reed
25e0088e9f
Use LOAD_LIBRARY_SEARCH_SYSTEM32 for LoadLibrary (#6458) 2020-05-25 12:30:17 -04:00
Teddy Reed
247f8d644b
Fix potential overread bug in package_bom (#6461) 2020-05-25 12:27:46 -04:00
srikwit
ff1227f4d3
Fixing the description of failed_login_count from account_policy_data (#6415) 2020-05-25 12:21:40 -04:00
Oleg Dolgov
2bf31f3311
build sleuthkit under windows (#6445) 2020-05-25 12:17:11 -04:00
Mike Myers
c75ae5bfd2
Fix the handling of empty args strings, on Windows (#6460) 2020-05-25 12:05:56 -04:00
uptycs-nishant
6c75b041dd
macos: automating audit rules install (#6447) 2020-05-25 12:05:27 -04:00
Stefano Bonicatti
b64a63f6e3
Do not install openssl docs (#6441)
This is meant to reduce the noise in the installation output of openssl,
since docs would easily fill the scrollback of most terminals.
Since we don't care about the docs, only install binaries.
2020-05-23 09:01:44 -04:00
Teddy Reed
d8e4d5e98a
Fix package_bom table (#6457) 2020-05-22 16:30:20 -04:00
Teddy Reed
dec9a177e8
docs: Update .readthedocs.yml to use version 2 (#6456) 2020-05-21 13:14:41 -04:00
Ryan Mack
c6f811b143
Update hash cache inode number (#6440) 2020-05-20 20:57:08 -04:00
Stefano Bonicatti
baa8ebe885
Add 'maintainer', 'section', 'priority' columns to deb_packages (#6442) 2020-05-20 20:55:40 -04:00
Stefano Bonicatti
9373b30375
Add 'vendor', 'package_group' columns to rpm_packages (#6443) 2020-05-20 20:54:53 -04:00
Stefano Bonicatti
a5104a43bf
Add 'arch' column to os_version (#6444) 2020-05-20 20:53:24 -04:00
Breakwell
089becf614
Change the registry LIKE path constraint to filter recursively (#6448) 2020-05-19 21:12:39 -04:00
Teddy Reed
da7c95b393
docs: Exclude all submodules for RTD builds (#6434) 2020-05-12 23:05:27 -04:00
Teddy Reed
34c8ac302a
docs: Update osquery security policy (#6425) 2020-05-08 22:16:34 -04:00
Scott Lundgren
e237619db2
Update winbaseobj.table (#6429) 2020-05-08 22:16:08 -04:00
Stefano Bonicatti
6e08fdb913
Update openssl from 1.1.1f to 1.1.1g (#6432) 2020-05-08 22:15:12 -04:00
Stefano Bonicatti
4d4957f12a
Disable openssl compression support (#6433)
Openssl was depending on zlib for SSL/TLS compression,
though it was trying to load it as a dynamic library.
On Windows especially this is an issue because the dll
could possibly be loaded from a insecure place,
so this can be exploited.

Moreover it's proven that compression can lead
to leaks of information; so we completely disable it
to resolve both issues.
2020-05-08 22:14:12 -04:00
Chris Broome
26d94ce037
Add messages to distributed query results (#6352) 2020-05-03 21:51:59 -04:00
seph
f54d904b21
Update some sqlite types (#6392)
Correct SQL data types.
2020-04-28 14:01:39 -04:00
Stefano Bonicatti
a07140ad93
Build sleuthkit from source on macOS (#6416)
Also separated the C from the C++ source code in a different library,
so that the C code is not compiled as C with a C++ compiler.
This would make the macOS C++ compiler fail to compile sleuthkit
since it wasn't how the original build system of the library was building it.
2020-04-25 22:07:03 -04:00
Stefano Bonicatti
3d4102ce74
Build popt from source on macOS (#6409) 2020-04-25 22:04:36 -04:00
srikwit
3bdbdaf27f
Partial fix for md_devices issue (#6417) 2020-04-25 21:58:29 -04:00
Reed Loden
9e116e5453
audit: Add fields auid, fs{u,g}id, s{u,g}id (#6362) 2020-04-21 21:57:30 -04:00
Stefano Bonicatti
c84d288629
Build augeas from source on macOS (#6399) 2020-04-21 21:57:00 -04:00
Stefano Bonicatti
69f8877b5a
Build lldpd from source on macOS (#6406) 2020-04-21 21:56:04 -04:00
Stefano Bonicatti
0855a5f2c0
Build linenoise-ng from source on macOS and Windows (#6412) 2020-04-21 21:52:49 -04:00
Zachary Wasserman
499d775849
Add documentation for enabling socket_events on macOS (#6407) 2020-04-20 15:05:11 -04:00
Stefano Bonicatti
fd7cfbd4eb Add container access to the hash table
PR: osquery/osquery#6209
2020-04-20 17:49:57 +02:00
Stefano Bonicatti
d2c93001f3 Add container access to the file table
PR: osquery/osquery#6209
2020-04-20 17:49:57 +02:00
Stefano Bonicatti
46c1e6d8be Implement container access from tables on Linux
- Add the possibility of running table logic inside a container
  namespace, so that's possible to query it instead of the host.
  Needs minor modifications to each table logic and how they use logging.

  In practice it works by having a pid_with_namespace column, which should
  contain pids that are in the same mount namespace of the container one
  wants to query.
  The worker receives that column as a constraint, prepares two unnamed
  pipes for read/write communications with the future child, then forks
  into a new process.

  While the parent sends a query job to the just created child and then waits
  for results, the child receives the job, takes all the values given in the
  pid_with_namespace constraint, retrieves the fd of the mount namespace
  under "/proc/<constraint pid>/ns/mnt", then switches to it.
  Finally it runs the table logic, sending the results back to the parent
  through the pipe with a JSON message.

  Important to note that the logging in the table logic is not GLOG
  directly, because in the child this is in an unknown state; a custom
  logging system that resembles glog and that takes advantage of the
  existing communication channel is used to send the messages in JSON
  format to the parent, which will take care to forward to GLOG.

- Add FLAGS_keep_container_worker_open so that the process used for
  accessing a container is kept open, until the queries are for the same
  table; when the table changes, the process will be closed
  and a new one created.
  This is off by default, which means that a new process will be always
  created.

- Implemented a way to run tests that require root separated
  from the others.
  The OSQUERY_BUILD_ROOT_TESTS has been added to requests such tests to
  be built.
  To run only tests which require a normal user, one has to use
  `ctest -LE "root-required"`, while `sudo ctest -L "root-required"`
  to run those who need root.

PR: osquery/osquery#6209
2020-04-20 17:49:57 +02:00
Rich
a851d8531c
system_info table: add "board_" columns like "hardware_" (#6398) 2020-04-18 07:43:25 -04:00
Stefano Bonicatti
62f99383ca
Fix Userassist.test_sanity test sometimes failing (#6396)
The specific key the test checks for its existence,
which is Microsoft.Windows.Explorer,
might not be always present.
Use UEME_CTLSESSION key which should be always present since
it generically represents the start of a session.
2020-04-16 22:25:58 -04:00