Gamit ang Linux 6.4 kernel mayroong kakayahang ipinakilala upang ang machine keyring ay opsyonal na mag-imbak lamang ng mga key na ipinapatupad ng CA.

Si Eric Snowberg ng Oracle ay nagtatrabaho sa CA enforcement keyring restrictions upang magkaroon ng Certificate Authority (CA) na pagpapatupad ng machine keyring. Ipinaliwanag ni Snowberg sa serye ng patch:

“Bago ang pagpapakilala ng machine keyring, karamihan sa mga distro ay pinapayagan lamang ang lahat ng mga key na nasa loob ng platform keyring na gamitin para sa parehong kernel at module verification. Ito ay ginawa sa pamamagitan ng isang out of tree patch. Ilang distros kinuha ito kahit na higit pa at na-load ang lahat ng mga key na ito sa pangalawang pinagkakatiwalaang keyring. Pinayagan din nito ang may-ari ng system na magdagdag ng sarili nilang susi para sa paggamit ng IMA.

Ang bawat distro ay naglalaman ng katulad na dokumentasyon kung paano pumirma sa mga kernel module at i-enroll ang susi sa MOK. Ang medyo diretso ang proseso. Sa pagpapakilala ng machine keyring, nananatiling pareho ang proseso, nang hindi nangangailangan ng anumang out of tree patch.

Pinayagan ng machine keyring na alisin ng mga distro ang out of tree patch para sa kernel module signing. Gayunpaman, kulang ito sa pagpayag sa end user na magdagdag ng sarili nilang mga key para sa IMA. Sa kasalukuyan, hindi magagamit ang machine keyring bilang isa pang trust anchor para sa pagdaragdag ng mga key sa ima keyring, dahil kasalukuyang hindi umiiral ang CA enforcement. Mapapalawak nito ang kasalukuyang agwat sa integridad. Ang IMA_KEYRINGS_PERMIT_SIGNED_BY_BUILTIN_OR_SECONDARY Kconfig ay nagsasaad na ang mga susi ay maaaring idagdag sa mga ima keyring kung ang susi ay wastong nilagdaan ng isang CA cert sa system built-in o pangalawang pinagkakatiwalaang keyring. Sa kasalukuyan, walang code na nagpapatupad ng mga nilalaman ng isang CA cert.

Ang seryeng ito ay nagpapakilala ng isang paraan upang gawin ang pagpapatupad ng CA gamit ang keyring ng makina. Ipinakilala nito ang tatlong magkakaibang paraan upang i-configure ang keyring ng makina. Ang mga bagong opsyon sa Kconfig ay idinagdag upang makontrol ang mga uri ng mga key na maaaring idagdag dito. Ang default na opsyon ay nagbibigay-daan sa lahat ng MOK key sa machine keyring. Kapag ang CONFIG_INTEGRITY_CA_MACHINE_KEYRING ay napili, ang X.509 CA bit ay dapat totoo at ang key na paggamit ay dapat na naglalaman ng keyCertSign; anumang iba pang field ng paggamit ay maaari ding itakda. Kapag ang
CONFIG_INTEGRITY_CA_MACHINE_KEYRING_MAX ay napili din, ang X.509 CA bit ay dapat totoo at ang key na paggamit ay dapat na naglalaman ng keyCertSign. Sa opsyong ito, maaaring hindi maitakda ang paggamit ng digitalSignature. Kung ang isang susi ay hindi pumasa sa CA restriction check, sa halip na pumunta sa machine keyring, ito ay idaragdag sa platform keyring. Gamit ang kakayahang i-configure ang
machine keyring na may mga paghihigpit sa CA, ang code na pumigil sa machine keyring mula sa paganahin gamit ang IMA_KEYRINGS_PERMIT_SIGNED_BY_BUILTIN_OR_SECONDARY ay tinanggal.”

Muli, gaya ng nakasaad, ito ay mahigpit na mahigpit. mag-opt-in gamit ang default na gawi na nagpapahintulot sa lahat ng MOK key sa machine keyring.
Ang TPMDD pull request ay ipinadala ngayon para sa Linux 6.4 kernel at kasama ang bagong functionality na ito.

“Ang.machine keyring, na ginagamit para sa Machine Owner Keys (MOK), ay nakakuha ng kakayahang mag-imbak lamang ng CA na ipinatupad key, at ilagay ang pahinga sa.platform keyring, kaya ihihiwalay ang code signing keys mula sa mga key na ginagamit sa pagpirma ng mga certificate. Ito ay mahalagang i-unlock ang paggamit ng.machine keyring bilang trust anchor para sa IMA. Isa itong tampok na pag-opt-in, na nangangahulugan na ang mga karagdagang hadlang ay hindi makakasira sa sinumang hindi nagmamalasakit sa kanila.”

Ang mga pagpapahusay sa Linux sa paligid ng pamamahala ng Integrity Measurement Architecture (IMA) ay nananatiling isang malaking lugar ng interes para sa mga stakeholder ng korporasyon.

Categories: IT Info