Commit Graph
13282 Commits
Author SHA1 Message Date
Victor Lyuboslavsky f00e985850 Small optimization for #21073 (#21459)
Small optimization for #21073
2024-08-21 10:54:42 -05:00
Robert Fairburn dc207e913d Update WAF to support allowlists (#21448) 2024-08-21 10:42:43 -05:00
Joanne Stableford abee4954d7 Handbook: Adding 2024 pen test document to security audit page (#21393) 2024-08-21 11:15:37 -04:00
Victor Lyuboslavsky b965587671 Added software install capability to agent. (#21196)
Testing feature for #19551
2024-08-21 09:08:16 -05:00
Victor Lyuboslavsky 734357af14 Deleting an ABM iOS/iPadOS host keeps it in Fleet. (#21433)
#21073 
- Deleted iOS/iPadOS host will continue to report to Fleet as long as
host is in Apple Business Manager (ABM).
- Refetching an offline iOS/iPadOS host will not add new MDM commands to
the queue if previous refetch has not completed yet.

Video demo:
https://www.loom.com/share/2f7ecb22e1924d4cbbbdd7dd297439ef?sid=dbfe1939-cb46-47ca-a7a8-84965ed68a7e

I considered `nano_command_results` but could not think of an efficient
way to use `nano_command_results` to determine if refetch was already
done. The problem is that we're overloading `command_uuid` to include
the `REFETCH` identifier. So we can't simply add an index on `(uuid,
command_uuid, updated_at)`. We need to do a partial text match on
`command_uuid` which then requires a full scan of the matching
`updated_at` timestamps. It feels like a search like this could blow up
for a large `nano_enrollment_queue` and `nano_command_results` table.

# 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/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Committing-Changes.md#changes-files)
for more information.
- [x] Added/updated tests
- [x] If database migrations are included, checked table schema to
confirm autoupdate
- For database migrations:
- [x] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
- [x] Manual QA for all new/changed functionality
2024-08-21 08:51:04 -05:00
RachelElysia 544fd4131d Fleet UI: Filter software by vulnerabilities follow-up (#21420) 2024-08-21 09:43:27 -04:00
github-actions[bot]andlucasmrod 1b23de484c Update versions of fleetd components in Fleet's TUF [automated] (#21455)
Automated change from [GitHub
action](https://github.com/fleetdm/fleet/actions/workflows/fleetd-tuf.yml).

Co-authored-by: lucasmrod <lucasmrod@users.noreply.github.com>
2024-08-21 06:45:02 -03:00
Mike Thomas 8c8fe3e9db Homepage-text-update (#21449)
Add text about debunking the cross-platform myth.
2024-08-20 18:56:12 -06:00
Mike Thomas 7d45d42332 Website - /start progress bar success icon (#21451)
Updated the success icon in the /start progress bar.
2024-08-20 17:17:02 -06:00
Ian Littman e98410dfd7 Add VSCode launch configuration for debugging vuln_processing command (#21305)
This is an easy way to debug the various vulnerabilities ETLs that we'd
normally execute as an in-app cron. I used this over the weekend to test
#21242.

# Checklist for submitter

- [x] Manual QA for all new/changed functionality
2024-08-20 16:00:54 -05:00
Mike McNeil c6eb839481 www: Create script migration example (#21437)
moving away from calling people "leads", it's weird

this continues the effort of making it so that leads are more like a:
"dear fleeties, you have to do something"

Now, lead sources are effectively GA conversions, and will eventually
change to just be auto-created stage0 opportunities, and even then only
for booked meetings where there's work that a fleetie needs to do to
make sure and prepare a useful demo for the folks on the other end, so
they can present Fleet internally while spending as little time talking
to us as possible.

So that's the end of lead sources.

Whereas compare w/ user actions, which are now captured as either
contact creation (contact source), contact psychological progress (most
recent psystage change reason), or opportunity creation (opportunity
source).
2024-08-20 15:18:06 -05:00
Savannah FriendandSam Pfluger d0a62ac28b Update leadership.md/#schedule-ceo-interview (#21380)
- Moved "Compile feedback" step to before "Request CEO interview" 
- Fixed typos
FYI @ireedy

---------

Co-authored-by: Sam Pfluger <108141731+Sampfluger88@users.noreply.github.com>
2024-08-20 15:13:25 -05:00
Isabell Reedy 09adc0491a Update personnel change to CSE role (#21407) 2024-08-20 15:05:49 -05:00
Lucas Manuel Rodriguez ede0897acd Pin trivy action (#21425)
Fixing code scanning warnings
https://github.com/fleetdm/fleet/security/code-scanning for the recently
added workflow.
2024-08-20 15:27:41 -03:00
Victor Lyuboslavsky 88d0c57585 Downloading a software installer package now shows the browser's built-in progress bar (#21341)
#19561 
In Fleet GUI, downloading a software installer package now shows the
browser's built-in progress bar.

New API endpoints: https://github.com/fleetdm/fleet/pull/21346

# Checklist for submitter

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

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Committing-Changes.md#changes-files)
for more information.
- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-08-20 12:37:29 -05:00
Lucas Manuel Rodriguez 18f010f228 Update fleetdm/fleetctl, fleetdm/wix and fleetdm/bomutils docker images (#21063)
#20571

## Summary of changes

We have a few moving parts in fleetctl land (`fleetdm/wix` is used to
build `msi`s and `fleetdm/bomutils` is used to build `pkg`s, and
`fleetdm/fleetctl` can be used to build packages using docker, no need
for fleetctl executable):
```mermaid
graph LR

fleetctl_exec[fleetctl<br>executable];
wix_image[fleetdm/wix<br>docker image];
bomutils_image[fleetdm/bomutils<br>docker image];
fleetctl_image[fleetdm/fleetctl<br>docker image];

fleetctl_exec -- uses --> wix_image;

fleetctl_image -- COPY dependencies<br>FROM --> wix_image;

fleetctl_exec -- uses --> bomutils_image;

fleetctl_image -- COPY dependencies<br>FROM --> bomutils_image;
```
So, we'll need to update the three images: `fleetdm/bomutils`,
`fleetdm/wix` & `fleetdm/fleetctl`.

- `tools/bomutils-docker/Dockerfile`, `tools/wix-docker/Dockerfile` and
`tools/fleetctl-docker/Dockerfile`: Updating the base image to fix the
CRITICAL vulnerabilities.
- Modified existing+unused
`.github/workflows/build-and-check-fleetctl-docker-and-deps.yml` to run
every day to check for CRITICAL vulnerabilities in `fleetdm/wix`,
`fleetdm/bomutils` and `fleetdm/fleetctl`.
- `.github/workflows/goreleaser-fleetctl-docker-deps.yaml`:
`fleetdm/bomutils` and `fleetdm/wix` were pushed manually a few years
ago (most likely by Zach), so I've added a new action to release them
when we have changes to release (like now). It will basically release
`fleetctl/bomutils` and `fleetdm/wix` when pushing a tag of the form
`fleetctl-docker-deps-*` (we'll need to protect such tag prefix).
- Changes in `.github/workflows/test-native-tooling-packaging.yml` to
build `fleetdm/bomutils` and `fleetdm/wix` for `fleetdm/fleetctl` to use
them instead of the ones in docker hub.

--

Build before upgrading `debian:stable-slim`:

https://github.com/fleetdm/fleet/actions/runs/10255391418/job/28372231837
![Screenshot 2024-08-05 at 5 24
25 PM](https://github.com/user-attachments/assets/8a7d3576-3eb6-474f-989a-079873fca4fa)

Build after upgrading `debian:stable-slim`:
https://github.com/fleetdm/fleet/actions/runs/10255550034

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Committing-Changes.md#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2024-08-20 14:07:59 -03:00
Sam Pfluger 2e68d594f4 Add prepare for CEO shadow to leadership (#21383) 2024-08-20 10:02:10 -05:00
Gabriel Hernandez e1e425a2ab add UI to support self service VPP software (#21174) (#21415)
relates to #19883

implements UI to support self service VPP apps. 

**Self service checkbox in add software modal**



![image](https://github.com/user-attachments/assets/bb6f3b3b-61aa-4a78-a223-e73ad2c2c5b9)

The rest of the changes are the same as the original self service
feature.

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes

files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Committing-Changes.md#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2024-08-20 15:51:36 +01:00
Lucas Manuel Rodriguez 415cccc121 Add matching rules for Microsoft 365 for July and August 365 (#21410)
#20409

I used `Current Channel`'s build version from
[here](https://learn.microsoft.com/en-us/officeupdates/microsoft365-apps-security-updates)
for `ResolvedInVersion`. Please @mostlikelee let me know if that's a-ok
(mimicked from June's change).

- [X] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Committing-Changes.md#changes-files)
for more information.
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
2024-08-20 11:35:44 -03:00
RachelElysia 3dd1219a27 Fleet UI: Filter software/version tables by vulnerability score and exploitability (#21278)
## Issue
Story #19099 
Subtask #20706 

## Description
- Additions to Software > Software tab to filter software and versions
by vulnerable, known exploit, and CVSS score
- Includes a new "Add filters" button which has dynamic tooltip and
button text
- New responsive design to the table header controls
- New modal to customize vulnerability filters
- Handles edge case where user types in a custom CVSS score in URL

## TODO list
- [x] Design, confirm and build empty states
- [x] search bar is showing on empty state, fix this
- [x] Disabled state color for dropdown placeholder text
- [x] Add tests to the modal
- [ ] Test with API when API is ready (good flow to check, choose from
dropdown, then toggle versions on)

## Screen recording
TODO

# 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] Added/updated tests
- [ ] Manual QA for all new/changed functionality
2024-08-20 09:41:49 -04:00
github-actions[bot]andlucasmrod 686b05513b Update versions of fleetd components in Fleet's TUF [automated] (#21414)
Automated change from [GitHub
action](https://github.com/fleetdm/fleet/actions/workflows/fleetd-tuf.yml).

Co-authored-by: lucasmrod <lucasmrod@users.noreply.github.com>
2024-08-20 07:24:58 -03:00
Robert Fairburn 53ef29b4f4 Fix redundant security group variable in terraform module (#21350) 2024-08-20 00:23:25 -05:00
Tim Lee d0e271f51f Bugfix: add filter to counts (#21411) 2024-08-19 16:55:59 -06:00
Eric 05f9f5dd77 Website: update values set by SF helpers. (leadSource » contactSource) (#21408)
Changes:
- Updated the `update-or-create-contact-and-account` helper to set a
"Contact source" on new contact records created.
- Updated everywhere where a lead source was being set to instead set a
contact source
2024-08-19 15:42:49 -05:00
Mike Thomas ce83b6d8e3 Redirect for learn-how-to-use-fleet guide (#21405)
Redirected the link for "Learn how to use Fleet" from local preview to
go to [/guides/queries](https://fleetdm.com/guides/queries) since the
information in "Learn how to use Fleet" is redundant.
2024-08-19 15:18:09 -05:00
Tim Lee 5b9074836e Bugfix: remove filter validation (#21399) 2024-08-19 14:14:01 -06:00
dependabot[bot] 83be4f1d8b Bump elliptic from 6.5.4 to 6.5.7 (#21371) 2024-08-19 15:05:12 -05:00
George Karr 4998514b8a Adding changes for Fleet v4.55.1 (#21320) 2024-08-19 15:03:23 -05:00
Roberto Dip f4820e2af9 Release fleetd 1.31.0 (#21391)
- **Release fleetd 1.30.0**
- **fix issue with disk encryption banner (#21385)**
- **Release fleetd 1.31.0**
2024-08-19 16:53:14 -03:00
dependabot[bot] 87f12388ae Bump axios from 1.6.0 to 1.7.4 (#21306) 2024-08-19 14:51:17 -05:00
Ian Littman ac38d9ca99 Fix YAML-in-Markdown formatting in Team scripts area of fleetctl apply docs (#21382) 2024-08-19 13:58:16 -05:00
Roberto Dip 936cc4a6d7 notify #help-engineering when a dogfood deploy is in progress (#21347)
This ensures `#help-engineering` is notified when a dogfood deploy is in
progress. It helps set people's expectations about what's going on while
the server is temporarily down.
2024-08-19 15:33:00 -03:00
Lucas Manuel Rodriguez cdfa31ada5 Release osqueryd 5.13.1 (#21329) 2024-08-19 13:52:30 -03:00
Tim Lee 3aa68aecc6 Bump Loadtest Aurora Version (#21395) 2024-08-19 10:32:01 -06:00
Ian Littman 605779eee3 Warn on CVE description language tags from NVD feed that we haven't seen before (#21310)
We may need more effort to alert on this in a place where we can
see/action it, but for that alerting we can just catch warn (or
warn-and-above) logs, as I just ran the artifact build command and
didn't get any warnings.

Confirmed that this works by starting without the "es" case (since I
wasn't sure which language tags other than "en" and "en-US" we were
seeing) and seeing a bunch of CVEs from 2004 with "es" language tags
reported as warnings. Also confirmed (`gzcat
cvefeed/nvdcve-1.1-2024.json.gz | grep -A 5 -B 5 "description_data"`)
that language tags were correctly set in the resulting feed (caught a
bug locally due to Golang having an implied break at the end of each
switch case).

# Checklist for submitter

- [x] Manual QA for all new/changed functionality
2024-08-19 10:42:24 -05:00
Roberto Dip 3cfe583ea0 fix issue with disk encryption banner (#21385)
for #21381

# 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/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Committing-Changes.md#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
- For Orbit and Fleet Desktop changes:
- [x] Orbit runs on macOS, Linux and Windows. Check if the orbit
feature/bugfix should only apply to one platform (`runtime.GOOS`).
- [ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [x] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
2024-08-19 12:02:43 -03:00
Brock Walters 0f384ad9e6 Grammar check on Step 1. (#21386)
# 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. -->

- [ ] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Committing-Changes.md#changes-files)
for more information.
- [ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
- [ ] Added/updated tests
- [ ] If paths of existing endpoints are modified without backwards
compatibility, checked the frontend/CLI for any necessary changes
- [ ] If database migrations are included, checked table schema to
confirm autoupdate
- For database migrations:
- [ ] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [ ] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [ ] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
- [ ] Manual QA for all new/changed functionality
- For Orbit and Fleet Desktop changes:
- [ ] Orbit runs on macOS, Linux and Windows. Check if the orbit
feature/bugfix should only apply to one platform (`runtime.GOOS`).
- [ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
2024-08-19 06:48:23 -07:00
Noah Talerman d3b3784620 Mark App Store apps API endpoints as experimental (#21379)
API endpoints are associated with the following experimental features:
- #19447
- #18867 

Fleet's handbook
[here](https://fleetdm.com/handbook/company/product-groups#experimental-features):
![Screenshot 2024-08-16 at 1 25
33 PM](https://github.com/user-attachments/assets/e0c76309-aae3-4c2d-9685-5f046060115a)
2024-08-17 11:20:06 -07:00
2171544ad1 Docs quick reference optimization (#21331)
This PR closes https://github.com/fleetdm/fleet/issues/21108

@noahtalerman, I double-checked all redirects, and they are working.
Clicking through the URLs in [this
spreadsheet](https://docs.google.com/spreadsheets/d/1djVynIMuJK4pT5ziJW12CluVqcaoxxnCLaBO3VXfAt4/edit?usp=sharing)
is a pretty quick way to go through them all. Note that "Audit logs" and
"Understanding host vitals" redirect to the contributor docs on GitHub,
so they will throw a 404 until this is merged.

Some new guides benefitted from a name change, so they make more sense
as stand-alone guides, and also so that we don't have to mess around
with more redirects later. Those name changes followed [this
convention](https://fleetdm.com/handbook/company/communications#headings-and-titles),
which was recently documented in the handbook.

Have fun!

---------

Co-authored-by: Eric <eashaw@sailsjs.com>
Co-authored-by: Noah Talerman <noahtal@umich.edu>
2024-08-16 15:30:31 -05:00
Noah Talerman 934c02a5c2 API design: Install App Store apps on iOS/iPadOS (#20892)
API changes for the "Install App Store apps on iOS/iPadOS" story
(#19447)
2024-08-16 10:33:24 -07:00
Mike Thomas ebfd5c27ee Re-order pricing categories (#21297)
Follow up to https://github.com/fleetdm/fleet/pull/20993 to re-order
categories on the pricing page.
2024-08-16 11:24:23 -05:00
Victor Lyuboslavsky 48ea9984f8 Updating migrations timestamps for ordering to be correct (#21373)
Updating migrations timestamps for ordering to be correct when migrating
from v4.55.1
2024-08-16 17:53:04 +02:00
Mike Thomas 4d7be66dab "Compare all features" >>> "View all features" on the device management land page (#21360)
Closes https://github.com/fleetdm/confidential/issues/7685

I changed "Compare all features" to "View all features." The current
"Compare all features" language suggests that the user can continue to a
large list of feature comparisons between Fleet, Omnissa, and Jamf Pro
which is not the case.
2024-08-16 10:07:02 -05:00
Victor Lyuboslavsky 4eb72535dc Support for MySQL 8.4.2 (#21364)
#21270

The main change for MySQL 8.4.2 is that foreign key constraints are
stricter:
https://dev.mysql.com/doc/refman/8.4/en/server-system-variables.html#sysvar_restrict_fk_on_non_standard_key

Also, most replica-related commands have been renamed.

# Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Committing-Changes.md#changes-files)
for more information.
- [x] Added/updated tests
- [x] If database migrations are included, checked table schema to
confirm autoupdate
- [x] Manual QA for all new/changed functionality
2024-08-16 16:32:38 +02:00
Victor Lyuboslavsky 84ee756b1b Include known_vulnerability field when query is a CVE. (#21363)
Update to #19857 after customer feedback.

If the search query is in CVE format (CVE-YYYY-<4+digits>), we always
return if that exact match is a CVE known to Fleet.

# Checklist for submitter

- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-08-16 14:09:52 +02:00
Jahziel Villasana-Espinoza 1fef99af47 feat: macOS MDM migration updates (#21359)
> Related issue: #19625 

# 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/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Committing-Changes.md#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
- For Orbit and Fleet Desktop changes:
- [x] Orbit runs on macOS, Linux and Windows. Check if the orbit
feature/bugfix should only apply to one platform (`runtime.GOOS`).
- [x] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [x] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
2024-08-15 21:21:58 -04:00
Noah Talerman d3805abe41 Fleet Desktop is supported on CentOS 8+ (#21167)
https://github.com/fleetdm/fleet/pull/20679#issuecomment-2273539991
2024-08-15 18:06:13 -07:00
Jahziel Villasana-Espinoza 3fbe6cb881 fix: rename context 2024-08-15 19:03:21 -04:00
Jahziel Villasana-Espinoza 715068e27f fix: add missing comments 2024-08-15 19:00:47 -04:00
Jahziel Villasana-Espinoza 27429a4ae5 fix: undo editor changes 2024-08-15 18:55:18 -04:00