You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/cmd
Aaron Klotz 7adf15f90e 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>
1 year ago
..
addlicense all: update tools that manage copyright headers 2 years ago
cloner tailcfg,ipn/ipnlocal,wgengine: add values to PeerCapabilities 1 year ago
containerboot cmd/containerboot,kube: consolidate the two kube clients 2 years ago
derper all: update exp/slices and fix call sites 1 year ago
derpprobe prober: migrate to Prometheus metric library 2 years ago
dist cmd/dist,release/dist: sign release tarballs with an ECDSA key (#8759) 1 year ago
get-authkey all: use cmpx.Or where it made sense 1 year ago
gitops-pusher cmd/gitops-pusher: re-use existing types from acl package 1 year ago
hello all: update copyright and license headers 2 years ago
k8s-operator cmd/k8s-operator: update controller-runtime to v0.15 1 year ago
mkmanifest cmd/mkmanifest, cmd/tailscale, cmd/tailscaled: remove Windows arm32 resources from OSS 2 years ago
mkpkg all: update copyright and license headers 2 years ago
mkversion version/mkversion: open-source version generation logic 2 years ago
nardump all: update copyright and license headers 2 years ago
netlogfmt all: update exp/slices and fix call sites 1 year ago
nginx-auth tailcfg,all: add and use Node.IsTagged() 2 years ago
pgproxy various: add golangci-lint, fix issues (#7905) 2 years ago
printdep cmd/printdep: print correct toolchain URL 2 years ago
proxy-to-grafana tailcfg,all: add and use Node.IsTagged() 2 years ago
sniproxy cmd/sniproxy: add client metrics 1 year ago
speedtest all: update copyright and license headers 2 years ago
ssh-auth-none-demo all: update copyright and license headers 2 years ago
stunc all: update copyright and license headers 2 years ago
sync-containers cmd/sync-containers: update latest and stable tags 2 years ago
tailscale cmd/tailscale/cli, util/winutil/authenticode: flesh out authenticode support 1 year ago
tailscaled util/linuxfw: remove yet-unused code to fix linux/arm64 crash 1 year ago
testcontrol all: update copyright and license headers 2 years ago
testwrapper cmd/testwrapper: handle build failures 1 year ago
tsconnect cmd/tsconnect: fix forgotten API change for wasm 2 years ago
tsshd all: update copyright and license headers 2 years ago
viewer util/codegen: support embedded fields 2 years ago