• sugar_in_your_tea
    link
    fedilink
    English
    arrow-up
    1
    ·
    3 hours ago

    I meant they should have failsafes in place so jamming isn’t an effective attack.

    A simple analogy is locks. Instead of making lock picking kits illegal, design better locks to increase the time and knowledge needed to defeat a lock.

    Car remote unlock design is lazy: you push the button and it generates a key, which is invalidated when used. There’s nothing more complex here than a defined order. To protect against that, add a time element (like TOTP in Google Authenticator). Your fob and car would keep time independently, so an attacker would have a very narrow window (i.e. under a second) to attack the car, if that. Resync the fob with the car after a successful challenge/response process so they don’t drift too much, and allow resyncing with physical entry.

    Car companies should pay when their laziness leads to compromise.

    • KairuByte@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      3 hours ago

      Totps only works when both source and recipient are synced pretty much identically in time. Meaning the car and fob would need to receive their time from an external source.

      Not that hard in many places, just grab the time from a radio broadcast. But what happens when that broadcast isn’t available? You fall back on a known inaccurate time. I’ve seen cars with a bum RTC chip, which lost about a minute a day. That would be enough to kill off this kind of system.

      Not to mention that an external time source would be larger, cost more, require more power, and would be vulnerable to brand new attacks.

      There is no perfect system. Take your physical lock for instance, there is no unpickable lock. They just plum don’t exist.

      • sugar_in_your_tea
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        2 hours ago

        I’ve seen cars with a bum RTC chip, which lost about a minute a day.

        Not the customer’s problem. If car manufacturers want to cheap out on components, they can pay the price when cars get stolen.

        Even cheap watches keep the time really well, as in less than a second drift in a given month. I have a physical TOTP device that works for years, and that needs to be accurate to <30 seconds (realistically, <10 seconds drift). How much do those cost? $10-20, and they have way more features than a basic time crystal.

        You don’t need an external time source, you just need non-crappy parts for your cars and fobs. That’s totally reasonable given the cost of those devices, so spending $1 more or whatever for a reliable time crystal isn’t an issue. Sync them periodically, such as when starting the car, and it won’t be an issue.

        If you rely on an external time source, you have the same problem, but a little higher tech (e.g. blast your own network time), and you introduce privacy concerns (tracking).

        My suggestion requires no privacy violations, prevents replay attacks, shield your time crystal in a Faraday cage), and keeping time synced with the car can be entirely done without the user noticing. It might fail in some crazy scenarios, like not driving the car for a year (possible if you never use one of your fobs), and it’ll need to be resynced after a battery swap, but you have the easy fallback of resyncing when you insert it into the car. The time doesn’t even need to be accurate, it just needs to tick the same way on both ends.

        Yes, there is no perfect system, but there are real world systems that are way better than what we have. Car manufacturers just don’t care enough to implement them, the same way banks don’t care enough to use proper security (why is my email more secure than my bank??). Hold them accountable and they’ll fix it, create regulations and they’ll do the bare minimum.