tailscale/cmd
Aaron Klotz aee98e1d9b cmd/tailscale/cli, util/winutil/authenticode: flesh out authenticode support
Previously, tailscale upgrade was doing the bare minimum for checking
authenticode signatures via `WinVerifyTrustEx`. This is fine, but we can do
better:

* WinVerifyTrustEx verifies that the binary's signature is valid, but it doesn't
  determine *whose* signature is valid; tailscale upgrade should also ensure that
  the binary is actually signed *by us*.
* I added the ability to check the signatures of MSI files.
* In future PRs I will be adding diagnostic logging that lists details about
  every module (ie, DLL) loaded into our process. As part of that metadata, I
  want to be able to extract information about who signed the binaries.

This code is modelled on some C++ I wrote for Firefox back in the day. See
https://searchfox.org/mozilla-central/rev/27e4816536c891d85d63695025f2549fd7976392/toolkit/xre/dllservices/mozglue/Authenticode.cpp
for reference.

Fixes #8284

Signed-off-by: Aaron Klotz <aaron@tailscale.com>
2023-06-20 15:35:39 -06:00
..
addlicense all: update tools that manage copyright headers 2023-01-27 15:36:29 -08:00
cloner all: update tools that manage copyright headers 2023-01-27 15:36:29 -08:00
containerboot cmd/containerboot,kube: consolidate the two kube clients 2023-03-02 11:36:06 -08:00
derper all: adjust some build tags for wasi 2023-06-11 09:45:46 -07:00
derpprobe prober: migrate to Prometheus metric library 2023-04-11 08:37:32 +01:00
dist release/dist/synology: build synology packages with cmd/dist 2023-05-29 14:18:37 -07:00
get-authkey all: use cmpx.Or where it made sense 2023-06-07 22:06:24 -07:00
gitops-pusher Add support for OAuth tokens #7394 (#7393) 2023-02-27 18:05:24 -08:00
hello all: update copyright and license headers 2023-01-27 15:36:29 -08:00
k8s-operator cmd/k8s-operator: update controller-runtime to v0.15 2023-06-01 05:51:25 -07:00
mkmanifest cmd/mkmanifest, cmd/tailscale, cmd/tailscaled: remove Windows arm32 resources from OSS 2023-03-01 15:45:12 -07:00
mkpkg all: update copyright and license headers 2023-01-27 15:36:29 -08:00
mkversion version/mkversion: open-source version generation logic 2023-02-18 05:21:05 +00:00
nardump all: update copyright and license headers 2023-01-27 15:36:29 -08:00
netlogfmt all: replace logtail.{Public,Private}ID with logid.{Public,Private}ID (#7404) 2023-02-28 19:00:00 -08:00
nginx-auth tailcfg,all: add and use Node.IsTagged() 2023-03-13 08:44:25 -07:00
pgproxy various: add golangci-lint, fix issues (#7905) 2023-04-17 18:38:24 -04:00
printdep cmd/printdep: print correct toolchain URL 2023-02-11 17:57:36 +00:00
proxy-to-grafana tailcfg,all: add and use Node.IsTagged() 2023-03-13 08:44:25 -07:00
sniproxy cmd/sniproxy: Set App name in tsnet hostinfo 2023-04-28 21:50:30 -07:00
speedtest all: update copyright and license headers 2023-01-27 15:36:29 -08:00
ssh-auth-none-demo all: update copyright and license headers 2023-01-27 15:36:29 -08:00
stunc all: update copyright and license headers 2023-01-27 15:36:29 -08:00
sync-containers cmd/sync-containers: update latest and stable tags 2023-02-10 20:47:18 -08:00
tailscale cmd/tailscale/cli, util/winutil/authenticode: flesh out authenticode support 2023-06-20 15:35:39 -06:00
tailscaled all: adjust some build tags for wasi 2023-06-11 09:45:46 -07:00
testcontrol all: update copyright and license headers 2023-01-27 15:36:29 -08:00
testwrapper all: update copyright and license headers 2023-01-27 15:36:29 -08:00
tsconnect cmd/tsconnect: fix forgotten API change for wasm 2023-05-09 21:23:29 -07:00
tsshd all: update copyright and license headers 2023-01-27 15:36:29 -08:00
viewer util/codegen: support embedded fields 2023-05-09 15:40:17 -07:00