Difference between revisions of "Real-Time Clock"

From RCS Wiki
Jump to navigation Jump to search
(Add Ownership section)
(→‎Ownership: Add Whonix links)
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
== Ownership ==
 
== Ownership ==
  
For security reasons, by default, the [[BMC]] owns the RTC; the host has read-only access to the RTC via [[IPMI]].
+
For security reasons, by default, the [[BMC]] owns the RTC; the host has read-only access to the RTC via [[IPMI]]. The [[Whonix]] developers have [http://www.dds6qkxpwdeubwucdiaord2xgbbeyds25rbsgr73tbfpqpt4a6vjwsyd.onion/wiki/Time_Attacks documented] ([https://www.whonix.org/wiki/Time_Attacks clearnet link]) a variety of security vulnerabilities that manifest if malware on the host is able to tamper with the RTC.
 +
 
 +
== Accuracy ==
 +
 
 +
Unfortunately, the RTC suffers from substantial drift. This is exacerbated by its default ownership by the BMC, making it inconvenient to correct. It would be interesting to explore running [http://www.w5j6stm77zs6652pgsij4awcjeel3eco7kvipheu6mtr623eyyehj4yd.onion/wiki/Sdwdate sdwdate] ([https://www.kicksecure.com/wiki/Sdwdate clearnet link]), by the [[Kicksecure]] developers, on the BMC to improve security.
  
 
== Setting the hardware real-time clock has no effect ==
 
== Setting the hardware real-time clock has no effect ==
  
If `hwclock --systohtc` has no effect (i.e. `hwclock --get` is unchanged), then:
+
If <code>hwclock --systohtc</code> has no effect (i.e. <code>hwclock --get</code> is unchanged), then:
  
 
1. From the BMC console, power off the host
 
1. From the BMC console, power off the host
  
2. Type `busctl set-property xyz.openbmc_project.Settings    /xyz/openbmc_project/time/owner xyz.openbmc_project.Time.Owner    TimeOwner s xyz.openbmc_project.Time.Owner.Owners.Host` (note the capitalization: `Host`, not `HOST` as the openbmc github issues tell you!)
+
2. Type <code>busctl set-property xyz.openbmc_project.Settings    /xyz/openbmc_project/time/owner xyz.openbmc_project.Time.Owner    TimeOwner s xyz.openbmc_project.Time.Owner.Owners.Host</code> (note the capitalization: <code>Host</code>, not <code>HOST</code> as the openbmc github issues tell you!)
  
 
3. Reboot the BMC
 
3. Reboot the BMC
  
 
4. Power on the host
 
4. Power on the host

Latest revision as of 04:33, 15 April 2025

Ownership

For security reasons, by default, the BMC owns the RTC; the host has read-only access to the RTC via IPMI. The Whonix developers have documented (clearnet link) a variety of security vulnerabilities that manifest if malware on the host is able to tamper with the RTC.

Accuracy

Unfortunately, the RTC suffers from substantial drift. This is exacerbated by its default ownership by the BMC, making it inconvenient to correct. It would be interesting to explore running sdwdate (clearnet link), by the Kicksecure developers, on the BMC to improve security.

Setting the hardware real-time clock has no effect

If hwclock --systohtc has no effect (i.e. hwclock --get is unchanged), then:

1. From the BMC console, power off the host

2. Type busctl set-property xyz.openbmc_project.Settings /xyz/openbmc_project/time/owner xyz.openbmc_project.Time.Owner TimeOwner s xyz.openbmc_project.Time.Owner.Owners.Host (note the capitalization: Host, not HOST as the openbmc github issues tell you!)

3. Reboot the BMC

4. Power on the host