ManageIQ / manageiq

ManageIQ Open-Source Management Platform
https://manageiq.org
Apache License 2.0
1.35k stars 898 forks source link

[TRACKER] All potential ssl hotspots #20777

Closed djberg96 closed 3 years ago

djberg96 commented 4 years ago

Due to a series of recent events where we've been affected by various ssl issues, this issue is mainly a collection point to note all the places where any potential future issues may arise. In short, anywhere we use ssh keys, tls versions, etc. For now, just point out the file/model/provider/repo/whatever, and what's possibly significant.

...work in progress, will add stuff as I find it, and from comments...

CORE

OVIRT

FOREMAN

LENOVO

ANSIBLE TOWER

GOOGLE

AMAZON

AZURE

"the last two list the paths of the person who recorded the cassette: "path":"/home/dberger/.ssh/authorized_keys" and I don't know if we care" - we should probably scrub that.

MISC

d-m-u commented 4 years ago

scvmm

ssh: spec/tools/scvmm_data/get_inventory_output_hash.yml — bunch of ssh key yaml stuff spec/tools/scvmm_data/get_inventory_output.yml — same spec/tools/scvmm_data/get_inventory_output.xml — same

tls:none

manageiq-providers-ibm_cloud

ssh: app/models/manageiq/providers/ibm_cloud/inventory/collector/power_virtual_servers.rb — def sshkeys app/models/manageiq/providers/ibm_cloud/inventory/parser/power_virtual_servers.rb — def sshkeys

tls:none

openstack

ssh: spec/models/manageiq/providers/openstack/infra_manager/host_spec.rb — tests ssh fleecing app/models/manageiq/providers/openstack/infra_manager.rb — keypair stuff spec/models/manageiq/providers/openstack/infra_manager_spec.rb — test credential verification app/models/manageiq/providers/openstack/infra_manager/host.rb — def ssh_users_and_passwords, def authentication_best_fit(requested_type = nil) spec/models/manageiq/providers/openstack/infra_manager/event_parser_spec.rb — test command execution via SSH

tls:none

kubevirt

ssh: spec/fixtures/files/template-without-parameters.yml — cloudInitNoCloud yaml has references to ssh_authorized_keys

tls: none

azure_stack

ssh: spec/fixtures/orchestration_templates/deployment.json spec/models/manageiq/providers/azure_stack/cloud_manager/vcr_fixtures/full-refresh-deployment.json

both of the above have a networkSecurityGroupName has a security_rules field with ssh

tls: none

vmware has a single reference:

ssh: spec/tools/vcsim/README.md — the notes for Setup a VC Simulator for Recording EmsRefresh Specs

tls: none

openshift

ssh:none

tls: app/models/manageiq/providers/openshift/inventory/parser/openshift_parser_mixin.rb: def parse_route(route) has a TODO that is for persisting tls

autsde

ssh:none

tls: lib/autosde_oas_client/generated/lib/autosde_openapi_client/configuration.rb — couple settings for verifying SSL host names

[a note for me: the providers with no references to ssh/tls so far are nuage, nsxt, kubernetes, ibm_terraform, and redfish]

d-m-u commented 3 years ago

api

ssh: spec/requests/conversion_hosts_spec.rb app/controllers/api/conversion_hosts_controller.rb — optional conversion_host_ssh_private_key and vmware_ssh_private_key params

tls: app/controllers/api/conversion_hosts_controller.rb —optional tls_ca_certs param

Fryguy commented 3 years ago

@djberg96 Out of curiosity, what is goal/purpose of this list? I see that it's various places we use ssl, but why?

djberg96 commented 3 years ago

@Fryguy We had a string of cases related to SSL issues, that I think ultimately were caused by changes in SSL itself. Dennis asked us to put together a list of possible hotspots in case they sprung up again.

The issue appears to have settled down. Closing for now.