Commit Graph
9788 Commits
Author SHA1 Message Date
Victor Lyuboslavsky fbbd81ff77 UmbrellaMenu.app no longer matches Cisco Umbrella (#15262)
#15176 
This was already fixed earlier in the sprint by
https://github.com/fleetdm/fleet/pull/15187
Adding docs and a test.

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
2023-11-21 16:29:02 -06:00
Noah Talerman 313adb195c Update features.yml (#15026)
- Finish these features so that Fleet can effectively run ads for them
2023-11-21 13:57:24 -08:00
Jacob ShandlingandJacob Shandling e709357ca2 UI – Restore clickability to entirety of sort headers except in filter text inputs (#15260)
## Addresses #14519 

- Applies anywhere there is a sort header, including the query results
and query report tables


https://github.com/fleetdm/fleet/assets/61553566/5bf0db8f-3d13-434d-b811-914fdded02df



- [x] Changes file added for user-visible changes in `changes/`
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-11-21 13:49:41 -08:00
Sam PflugerandRachael Shaw b2899c402e Handbook/company/leadership#structure-of-departmental-handbook-pages (#14811)
- Add Isabell to team table
- reorder contact-us in leadership page
- Standardize "Contact us" on all departmental pages
- Convert all responsibilities to imperative mood verb phrase
- Untangle and deduplicate Engineering <> Product groups <> Product

---------

Co-authored-by: Rachael Shaw <r@rachael.wtf>
2023-11-21 13:55:46 -06:00
Tim Lee c5ea7eac4f Cache policy counts (#15244) 2023-11-21 12:52:06 -07:00
Tim Lee 0557f10ac5 14729 smtp settings validation for TLS (#15029) 2023-11-21 11:48:21 -07:00
4194c44131 Use NVD API 2.0 to download CVE information (#15102)
#14888

@getvictor This is ready for review, but keeping as draft as there are
probably many tests that need amending.

I used the new version of the `./tools/nvd/nvdvuln/nvdvuln.go` to
compare the current vulnerabilities found in our dogfood environment
with the vulnerabilities found by the code in this PR and both results
match:
```
go run -race -tags fts5 ./tools/nvd/nvdvuln/nvdvuln.go --debug --db_dir ./local --software_from_url <dogfood URL> --software_from_api_token <API_TOKEN> --sync 2>&1 | tee out.txt
[...]
CVEs found and expected matched!
```

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [ ] Added/updated tests
- [X] Manual QA for all new/changed functionality

---------

Co-authored-by: Victor Lyuboslavsky <victor@fleetdm.com>
Co-authored-by: Victor Lyuboslavsky <victor.lyuboslavsky@gmail.com>
2023-11-21 12:30:07 -06:00
Jacob ShandlingandJacob Shandling b961c8e912 UI – Add help text, modularize help text styling, misc cleanup (#15252)
## Addresses #14882 

- Add help text
- Align heading of Advanced section
- Add `help-text` mixin for improved modularity/reusability
- Fix responsive styles on LabelFilterSelect

<img width="721" alt="Screenshot 2023-11-21 at 9 52 45 AM"
src="https://github.com/fleetdm/fleet/assets/61553566/216112f8-de9d-4ee3-acb5-376e6ccd3b4e">

- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-11-21 10:16:33 -08:00
Tim Lee 97e88ae32e hotfix: update CPE tests (#15250) 2023-11-21 10:25:27 -07:00
Gabriel Hernandez fd40f3ddf7 add activities for windows profiles (#15246)
relates to #14359

Add activities to fleet UI for windows profiles create, delete, and
edit.

- [x] Manual QA for all new/changed functionality
2023-11-21 17:11:32 +00:00
Eric 29671f4249 Website: Update receive-usage-analytics webhook to limit size of requests sent to Datadog. (#15245)
Closes: https://github.com/fleetdm/fleet/issues/15243

Changes:
- Updated the `receive-usage analytics` webhook to send multiple
requests to Datadog, depending on the number of metrics built from
reported usage statistics. (Datadog has a request body limit of 512kb)
2023-11-21 10:15:59 -06:00
Grant Bilstad 2f618871ca broken link osquery extensions (#15232)
'learn how' link goes to page that no longer exists, updated to new
extensions section
2023-11-20 17:42:19 -07:00
Eric ed7c51c9c9 Add --coverpkg flag to go test in the Makefile (#15153)
Related to: #10209

Changes:
 - Updated the go test in the Makefile to have the `--codepkg` flag.
- Added a newline to the `test-go` GH workflow to trigger a run for this
PR


> Note: I'm creating this as a draft PR to see the results of the "Test
Go" workflow
2023-11-20 17:01:19 -06:00
Joanne Stableford e690c077df Update formula in quarterly reporting (#15223) 2023-11-20 16:11:52 -06:00
Victor Lyuboslavsky eada583ff1 Updating CPE generator to use new NVD API. (#15018)
Loom explaining changes (hit 5 min limit):
https://www.loom.com/share/e59b63bf638e4d9cad7984ef589b878d?sid=111fff75-115a-4a44-ae4f-6f25fede0d51

#14887

- [x] Need to merge fleetdm/nvd PR
https://github.com/fleetdm/nvd/pull/25 before this one.

# Checklist for submitter

- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
- Manually tested (with corresponding fleetdm/fleet changes) in my
personal fork: https://github.com/getvictor/nvd/releases

# QA Plan (must be done before merging this PR, and after merging the
nvd PR)
- [ ] Fork https://github.com/fleetdm/nvd and point `generate.yml` to
this branch.
[example](https://github.com/getvictor/nvd/blob/9d8e54930bc174b00cc2daa70f55cabf0f9dba6e/.github/workflows/generate.yml#L26)
- [ ] Add NVD_API_KEY to nvd secrets, and run the the nvd generate
GitHub action. Get key:
https://nvd.nist.gov/developers/request-an-api-key
- [ ] Compare the generated `cpe-###.sqlite.gz` to the previous one. One
way is to open it up with sqlite3 and `select * from cpe_2 order by
cpe23;` and dump results to a CSV file. Known differences are:
   - New file has ~2,500 more records
- Backslashes are handled differently for `Backpack\CRUD` and `Philips
In.Sight B120\37` products -- not a new issue since we do not support
those products right now
- `cpe:2.3:a:moodle:moodle:4.2.0:*:*:*:*:*:*:*` -- this appears OK.
Also, it is a PHP plugin, and we don't support these currently.
- [ ] Record the existing vulnerabilities of current hosts.
- [ ] Stop any running fleet server. Delete `/tmp/vulndbs/cpe.sqlite`.
Can also delete other files there, or not delete this file -- it should
be overwritten by the new file. Also delete all rows in software_cpe and
software_cve DB tables. (Or can just spin up a fresh fleet server with
fresh DB, and re-enroll hosts (after setting the new env variable
below))
- [ ] Find the path to the generated `cpe-###.sqlite.gz` file
- [ ] Set `FLEET_VULNERABILITIES_CPE_DATABASE_URL` environment variable
to the above path, and start fleet server.
- [ ] After server's vulnerabilities cron job runs, the new
vulnerabilities should match the previous vulnerabilities
2023-11-20 16:10:00 -06:00
Gabriel Hernandez 8e37977605 Implement windows custom profiles in fleet UI (#15205)
related to #14359

Implements the UI for windows custom profiles. This includes:

- uploading, downloading, viewing, and deleting windows profiles
- updating the profile status aggregate to new endpoint that includes
windows profiles.
- UI updates and refactoring of some code to be more maintainable
2023-11-20 18:35:46 -03:00
Eric 6a6f51dce6 Website: Update usage statistics webhook inputs and HistoricalUsageSnapshot model. (#15180)
Closes: #11812

Changes:
- Renamed the `hostStatusWebhookEnabled` attribute of the
`HistoricalUsageSnapshot` model to `hostsStatusWebHookEnabled` and
updated the definition to use the existing database column name.
- Updated the inputs of the `receive-usage-analytics` webhook to accept
a `hostsStatusWebHookEnabled` input.
- Updated the usage statistics documentation to have the [correct
variable
name](https://github.com/fleetdm/fleet/blob/36e12d02e3c4e9dc741a7d5828ac74136f1f404d/server/fleet/statistics.go#L21).
2023-11-20 15:34:19 -06:00
Jacob ShandlingandJacob Shandling 3ad60e1041 UI – Improve UX of label filter dropdown (#15199)
## Addresses #14102

- Enable closing this menu on clicking its header when open
- Other small UX and code improvements around this component


https://github.com/fleetdm/fleet/assets/61553566/b848b2d1-533f-4aa0-9827-e841d3d840e8


- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-11-20 12:42:55 -08:00
Sarah Gillespie 57df2f250c Add Windows MDM profiles to host details API response (#15210) 2023-11-20 14:34:57 -06:00
669be3a53c Enroll hosts docs improvements (#14862)
Summary:
- Enroll hosts page refinement
- Since page was too long and had a lot of content I did following:
    - Moved most important sections to the top
- Did some changes to make things more consistent, when possible having
UI and CLI sections with steps (ordered list)
- Moved `Add hosts with plain osquery` to contributor docs, since I
learned this approach is used just by couple of Fleet customers, and we
don't advise this as best practice anymore
- Added overview (table of contents) on the top to make easier to
navigate through the page
- Moved some technical (advanced) topics into separate section on the
bottom of the page

---------

Co-authored-by: Noah Talerman <noahtal@umich.edu>
Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
Co-authored-by: Rachael Shaw <r@rachael.wtf>
2023-11-20 19:39:41 +01:00
Jacob ShandlingandJacob Shandling 32706a732b UI – Clarify activity items for JIT provisioned SSO user initial logins (#15192)
## Addresses #14345 

![Screenshot 2023-11-17 at 11 43
59 AM](https://github.com/fleetdm/fleet/assets/61553566/b97634dc-53c1-4ddd-910e-8dd7112c2623)

- [x] Changes file added for user-visible changes in `changes/`
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-11-20 10:29:36 -08:00
Eric 9984bc6894 Website: Fix object mutation in receive-usage-analytics webhook. (#15185)
Closes: #15182

Changes:
- Updated the receive-usage-analytics webhook to create new database
records with a cloned `inputs` object. This prevents the JSON attributes
from being mutated into strings.
2023-11-20 12:04:03 -06:00
Victor Lyuboslavsky 8ae88cfe1a Tightening the CPE matching to reduce false positive rate. (#15187)
#15143 and #15162 

Previous fix for #13889 caused false positives on software with similar
names. Tightening the matching to reduce false positive rate.
- Google Chrome Helper.app no longer matches Google Chrome.app
- Acrobat Uninstaller.app no longer matches Acrobat.app

# Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
2023-11-20 11:59:31 -06:00
Joanne Stableford c7af163577 Update fleetctl-workstations to min macOS 14.1.1 (#15209) 2023-11-20 12:50:52 -05:00
Joanne Stableford f02fa91576 Update fleetctl-workstations-canary to macOS 14.1.1 (#15208) 2023-11-20 12:48:02 -05:00
Joanne Stableford 7945c17a39 Update name for workflow (#15203)
Update name to "Apply latest configuration profiles and macOS updates"
Because it used to say update MDM (workflow is for more than MDM), and
keeps it in line with workstation group.
2023-11-20 12:37:42 -05:00
Benjamin Edwards 29de567dc0 add module to enable bringing your own bucket file carving destination (#15206)
This PR adds support for a new terraform module that will make it easy
to configure Fleet instances for S3 backend for file carving results.
Its intended to be applied in two phases.

1) apply target-account which will provision the s3 bucket, IAM role and
policy permissions
2) apply carve on the fleet instance, bootstrapping environment
variables for Fleet server & attaching the IAM policy.

# Checklist for submitter
- [X] Manual QA for all new/changed functionality
2023-11-20 11:26:43 -05:00
Martin Angers c1fa8de992 Fix data race in mysql tests (#15204) 2023-11-20 10:20:08 -05:00
Roberto Dip d9f0f86002 update host profile status when we get a Windows MDM response (#15172)
related to #14364, this adds logic to update the `status` and `detail`
columns of `host_mdm_windows_profiles` when we get a management
response.
2023-11-20 11:25:54 -03:00
Roberto Dip 420dfe1cd0 batch set profiles as pending on profile-related actions (#15179)
final step of #14364
2023-11-20 11:16:02 -03:00
Zach Wasserman d0cc940533 Remove atom_packages table from software inventory query (#15195)
Part of #15135

This needs to be removed ASAP because software inventory queries will
start failing when the table is removed from osquery and the agent
updates to that new version.

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
  - For Orbit and Fleet Desktop changes:
- [x] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux. (macOS only)
2023-11-17 15:26:17 -06:00
Jordan Wright 04a572f542 Fix pluralization in the "delete multiple queries" activity log (#15099)
### Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality

### Summary 

This PR creates a pluralized activity log in the case where a user
deletes multiple saved queries.

I had considered updating the default template to better support
pluralization, but when reviewing the various activity log types, I
think queries are the only type that would benefit from this. So I chose
the easier option here which felt less risky.

cc @sharon-fdm as the currently assigned person on the issue (just
trying to save y'all some cycles by contributing and slowly ramping up
on the codebase 😄)

ref: #15050 

### Test Plan

I added a unit test for this.

Additionally, I deleted multiple saved queries in my local installation.
Here's the resulting log, showing the proper pluralization:

<img width="1381" alt="Screenshot 2023-11-10 at 9 54 40 PM"
src="https://github.com/fleetdm/fleet/assets/1317288/f40414e2-7a9b-4478-b6cf-bb9d4ab6d8f0">
2023-11-17 12:22:47 -08:00
Eric 597dafa187 (2023-11-17) Regenerate osquery_fleet_schema.json (#15189)
Changes:
- Regenerated `schema/osquery_fleet_schema.json`
2023-11-17 13:23:11 -06:00
Noah Talerman d785a7f7d5 Update password profile (#15191)
- Update profile for a live demo
2023-11-17 13:13:49 -06:00
Jahziel Villasana-Espinoza b2e739eba0 fix: address citrix workspace false positive (#15152)
# Checklist for submitter

If some of the following don't apply, delete the relevant line.

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-11-17 13:42:05 -05:00
Sarah Gillespie 3399b31bfc Update API endpoints that support os_setttings filter to include Windows MDM profiles status (#15188) 2023-11-17 12:33:06 -06:00
Victor Lyuboslavsky 91ee14f573 Allow reverting a deleted Munki. (#15183)
When Munki is deleted and reinstalled on the host, Fleet will show Munki
info again.
#12409 

# Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-11-17 12:21:42 -06:00
ba8ae8797e Add docs for new tables (#15046)
- Add documentation for new tables so that they show up on fleetdm.com
and the sidebar in the Fleet UI

---------

Co-authored-by: Rachael Shaw <r@rachael.wtf>
Co-authored-by: Jack-Daniyel Strong <jack@jdstrong.com>
Co-authored-by: Eric <eashaw@sailsjs.com>
2023-11-17 12:17:23 -06:00
Jacob ShandlingandJacob Shandling b49cea6d49 Small docs fixes (#15184)
- Fix the link to SSO Just-in-time (JIT) provisioning docs from the
config files docs
- "Settings > Organization settings > **s**ingle sign-on options" –>
"... > **S**ingle sign-on options"

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-11-17 09:28:49 -08:00
Sarah Gillespie 0850367734 Add GET /mdm/profiles/summary endpoint (#15077) 2023-11-17 10:49:30 -06:00
Noah Talerman f24cc15546 MDM docs: custom macOS settings (#15112)
- Add info about Fleet's profile redelivery
- Cut words
2023-11-17 10:13:22 -06:00
Noah Talerman 1939f0d6b7 Update Windows automatic enrollment instructions (#15114)
- Change instructions
2023-11-17 10:11:10 -06:00
Jacob ShandlingandJacob Shandling 41c2ebfb27 UI – Small adjustments to various Tooltipwrapper instances (#15170)
## Addresses #14244 

- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-11-16 14:34:56 -08:00
Jacob ShandlingandJacob Shandling c6078a1923 UI – Update Advanced settings page (#15181)
## Addresses #14260

- Show host expiry window input field only when setting is enabled
- Update setting tooltip text
- Clean up form validation

![Screenshot 2023-11-16 at 2 21
19 PM](https://github.com/fleetdm/fleet/assets/61553566/5f898650-da47-4e42-885a-21e2c3b5bda5)


![image](https://github.com/fleetdm/fleet/assets/61553566/0af9d7d7-4ab7-4ea3-ad2e-b75a91213cdb)


- [x] Changes file added for user-visible changes in `changes/` 
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-11-16 14:32:53 -08:00
Victor Lyuboslavsky 36e12d02e3 Show host display name in query results. (#15173)
Query report now shows the host display name instead of hostname.
#14763 

# Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-11-16 14:26:57 -06:00
Eric bd68426b03 Update osquery table YAML template (#15078)
Changes:
- Added the `evented` attribute to the osquery schema table YAML
template in the `schema/` folder README.
2023-11-16 13:52:22 -06:00
Sharon Katz c67d9eb3a5 Hackathon add metrics from Fleet servers. (#14216)
Adding a few stats to the metrics Fleet Servers send to Heroku.
2023-11-16 10:25:19 -05:00
Robert Fairburn 7b1ea9cdf1 Terraform aws provider v5 fixes for terraform modules (#15159) 2023-11-15 23:50:38 -06:00
Eric 7ae2a659cb Website: Add "critical" and "MDM required" badges to query details page. (#15156)
Closes: #15071

Changes:
- Added the "CRITICAL" and "MDM REQUIRED" badges to the query details
page for queries that have the "critical" or "requires mdm" tags
2023-11-15 17:02:21 -06:00
Jordan Wright 788f847431 Bump minimum osquery versions (#15101)
### Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality

### Summary

This PR adds the [latest osquery
versions](https://github.com/osquery/osquery/releases) to the list of
versions suitable for use in a query's "minimum osquery version"
setting.

As far as I could tell, this was solely a frontend bug and did not
require any backend changes.

ref: https://github.com/fleetdm/fleet/issues/14991

### Test Plan

I updated a standard query to include:

```yaml
  min_osquery_version: 5.10.2
```

And then applied the query with `fleetctl apply`.

I then saw the version reflected in the UI:

<img width="1381" alt="Screenshot 2023-11-12 at 10 01 32 PM"
src="https://github.com/fleetdm/fleet/assets/1317288/4c9922aa-5afc-4c54-8929-1f64e3931e34">

I also manually set the minimum osquery version in the UI and confirmed
it was reflected in the API response and when refreshing the page.

Longer term, I'd encourage considering whether setting up some kind of
GH Action or, easier but more manual, an engineering ritual might make
sense here to update this list as osquery releases happen. 🤷
2023-11-15 14:18:35 -08:00