Power LED Attack - Computerphile

Extracting a secret key by simply watching the flickering of an LED? Sounds implausible but that's what we're discussing with Dr Mike Pound!
Author’s page on the attack:
Video-Based Cryptanalysis (nassiben.com)
Paper: bit.ly/C_PowerLED
/ computerphile
/ computer_phile
This video was filmed and edited by Sean Riley.
Computer Science at the University of Nottingham: bit.ly/nottscomputer
Computerphile is a sister project to Brady Haran's Numberphile. More at www.bradyharan.com

Пікірлер: 497

  • @sean_vikoren
    @sean_vikoren11 ай бұрын

    Back in the day, the sound of the drive was a powerful debugging tool for programmers. You could literally hear a bad sort.

  • @DataCab1e
    @DataCab1e11 ай бұрын

    Reminds me of the early days, when "transmit" and "receive" status lights were wired directly to those lines, and transmission rates were a lot lower. Data could be intercepted literally just by recording those lights.

  • @dgo4490

    @dgo4490

    11 ай бұрын

    It reminds me of the days of analog lines, where dial-less (receive calls only) phones could still be hacked to dial by pulsing the numbers on the close line switch, which is how the analog rotary dial does it as well.

  • @Huvada

    @Huvada

    11 ай бұрын

    On Arduino’s they still are wired directly to the communication lines :p on the atmega based nano anyways. Correction in response to Catelyn’s comment: this is only true on Arduino using the CH340 chip, which is the case for many clones. The official Arduino nano does not have this problem and uses normal activity LEDs that blink independent from content. I didn’t realize I had a clone schematic in front of me, my bad!

  • @major__kong

    @major__kong

    11 ай бұрын

    Reminds me of the day when we used to send Morse using light guns. You could read the message just by reading the lights. How insecure :-)

  • @catgirlQueer

    @catgirlQueer

    11 ай бұрын

    @@Huvada false, they're wired to the communication activity lines on the UART USB bridge

  • @cameronmonks1561

    @cameronmonks1561

    11 ай бұрын

    ⁠@@major__kongreminds me of the days when we use to send information by talking to people in person. You could just listen. How insecure :).

  • @BatterOrWurst
    @BatterOrWurst11 ай бұрын

    I worked for IBM Office Products in 1980. Selectric typewriters bound for US embassies had to have a capacitor and a heavy flywheel installed to prevent powerline analysis of the characters being typed.

  • @nixonkutz3018

    @nixonkutz3018

    11 ай бұрын

    I was thinking a similar thing is at play with the LED - there some impedance in the LED itself and the circuit that drives it, resulting in essentially a low-pass filter that *has* to cutoff far below the MHz of the CPU. Furthermore, the intensity & color of LEDs is typically controlled by PWMing a current source - again, limiting the rate at which the LED can change intensity.

  • @gaborm4767

    @gaborm4767

    10 ай бұрын

    Who would have analyzed the powerline and where?

  • @absalomdraconis

    @absalomdraconis

    10 ай бұрын

    ​@@nixonkutz3018 : You can fight against the "inertia" of an LED by forcing the current going into it. This itself has a limit on it's effectiveness, but does get you frequency improvements, and in the simplist examples will be present in power LEDs without being intended.

  • @absalomdraconis

    @absalomdraconis

    10 ай бұрын

    ​@@gaborm4767: In the 80s? Stereotypical case would be KGB, but really any semi-sophisticated group could have tried it.

  • @BatterOrWurst

    @BatterOrWurst

    10 ай бұрын

    @@gaborm4767 Russians at the time. US embassies

  • @russell2952
    @russell295211 ай бұрын

    Dr. Pound is naturally gifted at explaining things

  • @MarioGoatse

    @MarioGoatse

    10 ай бұрын

    His name is Dr Octothorp where I’m from

  • @Gvozd111
    @Gvozd11111 ай бұрын

    I was studying cybersecurity in Kyiv Polytechnic. One of the thing they developed in 80s and 90s was a device that can pick up radiation from tube computer monitor and produce near perfect image from another room. This cannot be done with LCD but picking up radiation from computer itself is still valid attack vector (exactly the same principle as mentioned in the video). So there are special radiation blocking boxes that computer should be placed in. They also told us methods of picking up vibrations from window glass to listen to conversations inside. Kinda wish now that I took more of those classes, I was more into math and crypto back then

  • @peterfireflylund

    @peterfireflylund

    11 ай бұрын

    TEMPEST.

  • @MeiinUK

    @MeiinUK

    11 ай бұрын

    Crazy that this existed back then. I just saw a laser printer that existed in 1900. Even more crazy.

  • @GrandPoobah4

    @GrandPoobah4

    11 ай бұрын

    Reminds me of the chapter from Cryptonomicon

  • @markzockerzwerg8997

    @markzockerzwerg8997

    11 ай бұрын

    ​@@GrandPoobah4 Van-Eck-Phreaking

  • @philp4684

    @philp4684

    11 ай бұрын

    Back in the 1980s, my brother and I had a small portable TV - the sort with the aerial on top and a channel tuning dial instead of preset channel buttons. One day, we were scanning through the frequencies, and we picked up a fairly clear signal from our next door neighbour playing Green Beret on his C64.

  • @Huvada
    @Huvada11 ай бұрын

    This the Lock Picking Lawyer, and today we’re going to exploit the presence of an LED on this cheap Chinese lock to open it.

  • @FasutonemuMyoji

    @FasutonemuMyoji

    11 ай бұрын

    .. and somehow the Computerphile vid is 12 min but LPL does it in 3:48

  • @maximus6884

    @maximus6884

    11 ай бұрын

    Using a made in china iphone 😂

  • @kendlyduprince

    @kendlyduprince

    11 ай бұрын

    Sorry the lawyer is a mere child at that level

  • @OutbackCatgirl

    @OutbackCatgirl

    11 ай бұрын

    i was literally scrolling past a lpl video before i clicked on this. lo and behold, top comment is this.

  • @4.0.4

    @4.0.4

    11 ай бұрын

    ​@@marcosolo6491he'd have to read the name twice, to confirm it was a Fluke.

  • @Pystro
    @Pystro11 ай бұрын

    To everyone who writes an "Ah, the fix is easy just do this" comment; the problem isn't this specific vulnerability. The problem that this is one of dozens or hundreds of attack vectors into dozens or hundreds of possible algorithms, each made from thousands of lines of code. And each one showing more hard to imagine ways to utilize side channel information. Any one of them is easy to fix, if you are aware of it. And any diligent software or hardware engineer who is qualified to work on cryptography stuff *will* attempt to fix as many of these issues as they are aware of. It's the "being aware" part and the sheer number of possible issues that's the problem.

  • @Manoplian

    @Manoplian

    11 ай бұрын

    Adding on to this, it's possible for someone to harden their security against every single known side channel attack, but if someone thinks of a new one, then suddenly all existing infrastructure is vulnerable.

  • @pistonsjem

    @pistonsjem

    11 ай бұрын

    Ah, the fix is easy just destroy the LED

  • @davidw8668

    @davidw8668

    11 ай бұрын

    ​@Canzandridas, yes, better protection is very bad

  • @puucca

    @puucca

    11 ай бұрын

    Exactly

  • @gblargg

    @gblargg

    11 ай бұрын

    @@pistonsjem And if it was a blue LED, it deserved destruction anyway.

  • @seedmole
    @seedmole11 ай бұрын

    I saw the paper on this the other day, very cool stuff. I never realized that the rolling shutter meant that a video camera actually captures *more* samples per second than audio recorders at standard audio sample rates. I've always understood that there would be circumstances where electrical leakage could reveal sensitive info, and I've always wondered what precisely was responsible for the flickering of my network switch's LED.. makes sense that these two concepts are related. The missing factor for me was definitely that rolling shutters could give a quick enough sample rate to capture the data needed to do this operation. Also processing time-based attacks are useful in certain videogame contexts. The one that comes to mind is in Path of Exile, where you can farm certain low percentage things very quickly by paying attention to how long areas take to load: if the area loads quickly, leave and open a new instance of it, because that means none of the additional low-probability things are present; if it takes longer than usual, then the server had to process the generation of those additional things and you should stay in the zone until you find them.

  • @VorpalHerring

    @VorpalHerring

    11 ай бұрын

    Your PoE example reminded me of how in Fate Grand Order, when you are rolling the Gacha you can reliably guess whether a given roll is the new Servant you are trying to get before the animation even starts just because there is a noticeable delay at the start where it has to load assets for the new Servant.

  • @jamesphillips2285

    @jamesphillips2285

    11 ай бұрын

    Activity LEDs on network gear are not as useful now that they started blinking as a steady rate to avoid leaking information.

  • @fss1704

    @fss1704

    11 ай бұрын

    @@VorpalHerring Same on Warface boxes

  • @shufflecat3334
    @shufflecat333411 ай бұрын

    This must explain some readers I've seen which seem to turn off their LED while authenticating. The job of the LED is to advertise to users that the device is powered and working, once cryptography is occurring the LED has already done its job and can be powered off for the brief moment the CPU needs power.

  • @pokepress

    @pokepress

    11 ай бұрын

    I’ve also heard of some similar light-based “spy” techniques being potentially thwarted using noise on the power going to the light.

  • @JH-tc3yu

    @JH-tc3yu

    6 ай бұрын

    Ze Rd DQ. Jv,№

  • @SystemBD
    @SystemBD11 ай бұрын

    Plot twist: The shirt is also a vision-based attack. Your system is now compromised. /joke, of course

  • @gloverelaxis
    @gloverelaxis11 ай бұрын

    this is such creative hacking; i love it! using the rolling shutter effect to sacrifice visual resolution for time resolution is just so ingenious

  • @threeMetreJim
    @threeMetreJim11 ай бұрын

    A useful application of flickering lights and rolling shutter would be to modulate room lighting so that, say, if a photograph of a secret document was released, you would know exactly where the picture was taken and be able to narrow down suspects.

  • @janoschabr

    @janoschabr

    10 ай бұрын

    Something similar already exists with the background hum heard in analog audio. Although there it isn't done on purpose. Tom Scott has a video called "The hidden background noise that can catch criminals" where he explains exactly this.

  • @barneylaurance1865

    @barneylaurance1865

    10 ай бұрын

    If the photographer knew that was being used they could defeat it either by using a longer exposure or by using flash. Or simply by retyping the document and not sharing the original photo.

  • @halbronk7133

    @halbronk7133

    6 ай бұрын

    @@barneylaurance1865 Or you could just use film.

  • @oresteszoupanos
    @oresteszoupanos11 ай бұрын

    Wheeeen twooooo.... grids hit your lens and your sensor does sense that's a Moirééééé 😀

  • @seeigecannon
    @seeigecannon11 ай бұрын

    That is neat. A camera makes sense for static analysis. For a more realtime analysis a photo diode can be used and plugged straight into an oscilloscope. I found one with a 200pS response time for $15 on Digikey (part number 1601-C30737MH-230-80A-ND).

  • @ReidBallardIII
    @ReidBallardIII11 ай бұрын

    This specific attack feels like it would be more reasonable to fix in hardware than software.

  • @PIXELamPC

    @PIXELamPC

    11 ай бұрын

    yeah, a capacitor on the led might do the trick

  • @rhysbaker2595

    @rhysbaker2595

    11 ай бұрын

    Simply switch off the LED when processing cryptography?

  • @gianluca.g

    @gianluca.g

    11 ай бұрын

    @@PIXELamPC Uhm no, that's security through obscurity. The real fix is to use an algorithm which always perform a square and a multiply for each bit of the private key, even if the multiply part is not used (bit = 0).

  • @drkastenbrot

    @drkastenbrot

    11 ай бұрын

    there are basic mitigations in hardware but nothing you can really do to truly prevent someone from seeing fluctuations in processor power. its down to the software to add nops to take the discernible pattern out of power consumption.

  • @somdudewillson

    @somdudewillson

    11 ай бұрын

    @@gianluca.g Uh... no, that's not security through obscurity. Knowing that the power led is filtered doesn't make the system any less secure - it's still removed an attack vector.

  • @joshuahillerup4290
    @joshuahillerup429011 ай бұрын

    Another problem with trying to fix this, is even if the developers of a cryptographic library does take steps to avoid these attacks, they can't always be sure that some consumer of the library won't have something in their toolchain that optimizes away the fix

  • @cameron7374

    @cameron7374

    11 ай бұрын

    Time to dynamically link all of your crypto libraries and to never compile them from source.

  • @joshuahillerup4290

    @joshuahillerup4290

    11 ай бұрын

    @@cameron7374 and never use bytecode, all of which is a problem if you're on a less than common architecture

  • @jhoughjr1

    @jhoughjr1

    11 ай бұрын

    It’s actually not hard to fix at all and have seen ZERO evidence of it being done outside a lab.

  • @JorgetePanete

    @JorgetePanete

    11 ай бұрын

    since the standard is Rust just use the black box to make the compiler not optimize it

  • @Antymatters
    @Antymatters11 ай бұрын

    This reminds me of some work people were doing on generating 3d models using the noises of a 3d printer as it prints.

  • @allvods1385
    @allvods13856 ай бұрын

    The attack is so clever ! From the idea of using the LEDs to using the fact that pixels are not synchronized, it's very bright

  • @orange_leaf4913
    @orange_leaf49137 ай бұрын

    Really enjoyed this video. Started watching computerphile in high school and now I’ve graduated university. I thought I had chosen a nice medium from the course page and videos from my two fave which is art and technology. But as the course got further and further away from what I initially enjoyed, I kind of lost my sense of self in my practice but watching this today I remember why I fell in love with this field in the first place!

  • @Happydrumstick93
    @Happydrumstick9311 ай бұрын

    It would suck if someone went through all this effort - making a device to do this analysis, figuring out how to break into the server room... Only for them to find out someone put a capacitor across the LED essentially making this entire attack void.

  • @lucrativelepton

    @lucrativelepton

    11 ай бұрын

    I thought about this too lol, seems easy to protect against

  • @RafaelKarosuo

    @RafaelKarosuo

    11 ай бұрын

    At least now they know that it wasn´t that useless and just be removed from the BOM to reduce costs

  • @viacheslav1392

    @viacheslav1392

    11 ай бұрын

    how would the capacitor save you from current change in led...

  • @ado3247

    @ado3247

    11 ай бұрын

    @@viacheslav1392 by making the voltage smoother

  • @square_wheel

    @square_wheel

    11 ай бұрын

    ​@@ado3247 Smoother but probably leaking some variations that can be measured with more accurate sensors.

  • @brycemw
    @brycemw10 ай бұрын

    There are so many attacks like this because you can even end up in situations where the amount of power used is not just based on the number of computations but even the contents of registers etc because a register full of 1s takes more power than one full of zeros

  • @wktodd
    @wktodd11 ай бұрын

    RF emission may also relate to power consumption, so a simple tranny radio close to the reader may also work.

  • @jhoughjr1

    @jhoughjr1

    11 ай бұрын

    It “may”. Most likely not in any real design.

  • @666Tomato666

    @666Tomato666

    11 ай бұрын

    @@jhoughjr1 capturing noise from the microphone running on the same laptop is enough, yes, radio will work just as well as this power LED attack

  • @migueldelag

    @migueldelag

    11 ай бұрын

    @@666Tomato666 wow read this, and tried putting my ear on the bottom of my laptop and scrolled with the trackpad, you can listen the cpu computing, no joke

  • @xystem4701
    @xystem47017 ай бұрын

    Always a fan of Professor Pound! He's a wonderful explainer

  • @Veptis
    @Veptis10 күн бұрын

    This is the kind of paper (and hack con talk) I would love to see more off.

  • @katejay9786
    @katejay978628 күн бұрын

    The idea of a computer basically announcing "I FOUND A 1!!! I'M GONNA STORE IT SOMEWHERE SUPER SECRET FOR U" is really funny to me

  • @DmitryKiktenko
    @DmitryKiktenko10 ай бұрын

    Adding low-pass filter in form of capacitor will filter out rapid changes in brightness and ruin analysis approach. Also there could be lots of other noise in power signal from power source and converters, other ICs on the same power line, etc. However, the paper gives unusual view angle on hardware, thank you for telling the story, it was interesting to learn of

  • @stevelin3659
    @stevelin36599 ай бұрын

    My brain exploded from the ingenuity from this paper when I heard the word "rolling shutter", this is peak human ingenuity!

  • @darrenchapman7203
    @darrenchapman720310 ай бұрын

    Try a solar cell, small amplifier and speaker, feed the output of the solar panel into the amplifier while pointing the panel at distant car headlights, a lens and enclosure will help to focus the light, you should hear the music that the driver is listening to, the louder they have it the higher the amplitude expressed by their lights. I did this experiment back in the late 1980s with a radioshack solar cell and intercom and a lens while using my own car as the light source the song playing at the time was Boys in town, Divinyls.

  • @Stego27
    @Stego2711 ай бұрын

    I'm surprised video compression doesn't wreak havoc with this approach.

  • @Orxenhorf

    @Orxenhorf

    11 ай бұрын

    It would.

  • @7thboss931

    @7thboss931

    11 ай бұрын

    The monitoring would need to be pretty accurate but if you know a little filmography it would be easy to configure

  • @7thboss931

    @7thboss931

    11 ай бұрын

    If you’ve seen Tom Scott’s video on MP4 compression I’m pretty sure it would be fine with 3 colors

  • @Ghi102

    @Ghi102

    11 ай бұрын

    Lossless compression shouldn't impact anything and you could always film without any compression

  • @ShaunHusain

    @ShaunHusain

    11 ай бұрын

    Ah heh didn't make it to part of the vid where they explained using the offset in time from rolling shutter/rows of pixels as a means of amplifying the effective sample rate but think photoresistor and oscilloscope could work fine too in terms of upping the sample rate.

  • @MrSonny6155
    @MrSonny615511 ай бұрын

    I would say the shirt is quite thematically appropiate for a video on video-based attacks.

  • @bernard2735
    @bernard273511 ай бұрын

    We were so enthralled by what you had to say that no one noticed the moiré 😊

  • @CrazyMineCuber
    @CrazyMineCuber11 ай бұрын

    Would be interesting if somebody tries to perform this attack on the DNSSEC root key ceremony that is livestreamed to KZread. You can actually see the led’s blinking on their HSM when they are putting in their smart cards. Although it is not as zoomed in as the paper suggested.

  • @LaMirah
    @LaMirah11 ай бұрын

    Loved the shirt! Very trippy.

  • @paulstubbs7678
    @paulstubbs767811 ай бұрын

    This kind of reminds me of an early chip, the MC6805K1 I used, it only had 512 bytes of flash, so when I wrote some code for it I quickly ran out of space, I ended up with a string of calculations that all got run in a line, one after the other, as there was no room for the conditionals to do otherwise. I just used the results I needed at various times and ignored the others, doing this in a security box as mentioned would help confusing the attackers. Also many years ago I got a touch close to some gear used by the military for secure comms, it used a shunt mode power supply, so no matter what it was doing it always drew the exact same current, monitoring the power would reveal nothing. They knew all about this one 35+ years ago, so why this modern junk without remidiations known about for like absolute ages.

  • @realkrzaku
    @realkrzaku11 ай бұрын

    It's anything but practical. It assumes a lot of things, that the processor does nothing but encryption/decryption all the time or most of the time, that you know what kind of encryption and the specific implementation it uses, that a high resolution, high framerate and a very high zoom camera is available or that you can get into there with a camera of your own and put it right on the led. And by the time you can get close enough with a camera to an led that you can read that leds fluctuation when the device is reading a smart card (seems the only use case for this), you can just yank the card out of that persons hand or something, because you're already suspicious enough. It's interesting, but it's not at all feasible nor practical. It's basically a fun fact.

  • @Endelin
    @Endelin11 ай бұрын

    Finding the actual worst shirt pattern could be a fun video in itself.

  • @Orxenhorf
    @Orxenhorf11 ай бұрын

    One smoothing capacitor on the LED and the entire attack is all but impossible. Any remaining power fluctuations would be many, many -instructions- operations long. Proper usage in the logic circuitry would also mask it to ridiculously low levels.

  • @CyclingSteve

    @CyclingSteve

    11 ай бұрын

    Exactly. I stopped watching when I realised he was going to use maths to solve a simple hardware issue.

  • @thomasb4422

    @thomasb4422

    11 ай бұрын

    also a PC is already filled with lots of smoothing capacitor. There are some on the CPU, some next to VRMS, some in the PSU, and there's even an inductor in the VRMs. Absolutely no direct correlation between the CPU power consumption ( a 1000Mhz CPU runs one clock cycle every picosecond!) and the power usage of the system (which fluctuates in milliseconds)

  • @mytube001

    @mytube001

    11 ай бұрын

    @@thomasb4422 Exactly!

  • @u2bear377

    @u2bear377

    11 ай бұрын

    @@thomasb4422 A system running the secret key calc algorithm is not always a personal computer. It could be a mere smartcard lock.

  • @Richardincancale

    @Richardincancale

    11 ай бұрын

    Yup - came to say this. A 0.1 cent 100nF capacitor across the LED will give it a time constant of tenths of a second making such an attack impossible. Look at the interior light in your car as it fades down when you close the door - just a cheapo capacitor, nothing sophisticated.

  • @roger_isaksson
    @roger_isaksson10 ай бұрын

    A tiny cap between the series resistor and LED would make an effective low-pass filter that would mitigate this. Add a ferrite in series as well to add another tap to the filter.

  • @RobJD
    @RobJD11 ай бұрын

    I love this magic little hack, with a bit of context, they're basically shouting their secrets.

  • @zelllers
    @zelllers11 ай бұрын

    Reminds me of that side channel attack to an air gapped network using air temperature and ambient air sensors built into the servers.

  • @gblargg

    @gblargg

    11 ай бұрын

    Wow, did it cause the transmitter to heat up (by doing CPU-heavy tasks), then read that as the server next to it heating up despite no change in its load?

  • @zelllers

    @zelllers

    11 ай бұрын

    @@gblargg I don't remember the details, it was a theoretical attack but not something found in the wild. I think the scenario was an insider that compromised the HVAC control system and also implanted software in the air gapped server. They could then open a VERY low bitrate communication channel, something like 40 bits per hour I think

  • @alimanski7941
    @alimanski794110 ай бұрын

    The same group at Ben Gurion University who put out this paper produces quite a lot of research in the same vein. Interesting concepts.

  • @Pumbear
    @Pumbear10 ай бұрын

    Great explanation!

  • @IlluminatiBG
    @IlluminatiBG11 ай бұрын

    Super interesting. However, a possible solution for this specific problem is quite easy to get - store both the original value x and the temporary result to an array of 2 (or two registers in assembly). Then on each loop shift the exponent by 1, and extend the LSB to integer to get the index within the array and multiply (no conditional jump required). You will multiply by original number if 0: x * x^t = x^(t+1) or by the temporary result of 1: x^t * x^t = x^(2*t). Not only it is the same number of operations, but uses only one multiplication per loop (but also one additional bitwise-and operation per loop). Interestingly, there are a lot of problems like this, where writing an algorithm with imperative language, especially using if/else can reveal data to side-channels like the one in this paper, but writing homogeneous implementations (where number of instruction executed on each unit is the same), suitable for the way GPU works avoids this problem.

  • @kurt7020

    @kurt7020

    11 ай бұрын

    Yeah - right up until the instructions generated by *someone else's* compiler outputs not-what-you-thought-it-would. The problem is obvious, the solution is simple - never happens.

  • @mastershooter64
    @mastershooter6411 ай бұрын

    Well just add artificial noise into the LED so you can easily throw off these attacks!

  • @anywhereroam9698

    @anywhereroam9698

    11 ай бұрын

    It can be average away if repeated.

  • @Deipnosophist_the_Gastronomer

    @Deipnosophist_the_Gastronomer

    11 ай бұрын

    Have the LED always flash in such a way as to generate a specific key. Whenever somebody uses that key in the card reader, instead of opening the door, your system releases the bees.

  • @leftaroundabout

    @leftaroundabout

    11 ай бұрын

    @@anywhereroam9698 averaging out the noise is only any use if you can exactly align the signals, else you average away the signal along with the noise. So if there is randomness on the timing too, that's pretty much impossible. There may still be other ways of getting around it, but the noise definitely makes things a lot more difficult for an attacker.

  • @DripDripDrip69

    @DripDripDrip69

    11 ай бұрын

    Just an SMD capacitor would be enough.

  • @tesses50

    @tesses50

    11 ай бұрын

    if you can manipulate the led why not shut it off during crypto and turn it back on when done (some things need simple answers) this would not help the power snooping attack though just so we are clear

  • @dmitrystelefona8453
    @dmitrystelefona845311 ай бұрын

    Just finished another attack vid and this in was in queue, neat.

  • @nenharma82
    @nenharma8211 ай бұрын

    How is this possible with all the power decoupling happening in electronics?

  • @acbthr3840

    @acbthr3840

    11 ай бұрын

    Magnetic fields exist

  • @TheBackyardChemist

    @TheBackyardChemist

    11 ай бұрын

    cheap hardware

  • @mattsadventureswithart5764

    @mattsadventureswithart5764

    11 ай бұрын

    Hardware being specced downwards to make the people holding the purse strings happier. Engineers design something super-fast-amazing, the boss gets hold of the design and says "Why do we have x, y and z in this, when a, b and are much cheaper." Boss begins with why, but it isn't actually a question.

  • @Huvada

    @Huvada

    11 ай бұрын

    @@mattsadventureswithart5764yup. Besides, I wonder if manufacturers considered it a realistic issue that ever crossed their minds. And if it did, if it was worth it for the budget. This stuff is maybe something that you have to cover if your lock is in the absolute top bracket of security where price doesn’t have relevance. But in the competitive market of consumer level locks, or even low security industries, the cost isn’t justifiable to your boss.

  • @Charles20112011

    @Charles20112011

    11 ай бұрын

    Capacitor across the LED, problem solved.

  • @cannaroe1213
    @cannaroe121311 ай бұрын

    4:52 There are loads of variants of this, including two variants that are in this paper ᵃˡʳᶦᵍʰᵗ One of the ones in the paper is, how long the signature process takes, for ECC DSA, can divulge, with enough of these, what the secret key is ᵃˡʳᶦᵍʰᵗ Because basically it informs us of how many leading zeros there are, in the RNG that was used in the signature ᵃˡʳᶦᵍʰᵗ

  • @losthighway4840
    @losthighway484011 ай бұрын

    This seems like something that while possible in a lab, is impossible in reality. There are many processes running on the hypothetical computer that is performing these computations, and you'd have no way of isolating the processes from a black box perspective. If the attack is just limited to smart card readers, it seems like it's an electrical circuit design problem. Maybe put the led on a capacitor?

  • @mindstorms8888
    @mindstorms888811 ай бұрын

    Wow that was super clever to use the rolling shutter. As an EE, that means to add more decoupling capacitors to the mcu and led driver circuit. Just one more attack vector to think of

  • @pigpuke

    @pigpuke

    11 ай бұрын

    Or, just disable the LED, don't have it on constantly, etc. Many ways to protect against this.

  • @Bbonno
    @Bbonno11 ай бұрын

    Miele dishwashers don't have anything you can plug a data cable in to: the technician talks to it using blinking LEDs (for logs, status, run counts etc). He uses keeps the reader in place with a magnet. I think this but if kit is ideal for this attack 😅

  • @cmdlp4178
    @cmdlp41789 ай бұрын

    Programming languages need support for branchless programming: It is not just useful to avoid wrong branch prediction, it is also useful in cryptographic implementations like this exact case of the square multiply algorithm.

  • @fiftyfat
    @fiftyfat11 ай бұрын

    The LED are like the different sound that would play when your typed your CC code and the melody played would reveal your code, they got rid of the sound, they can get rid of the LED

  • @suncat530

    @suncat530

    11 ай бұрын

    you may be able to get rid of the LED, but you can't get rid of changing power consumption or timing discrepansies without changing the code itself

  • @fiftyfat

    @fiftyfat

    11 ай бұрын

    @@suncat530 yes but at least you're not "broadcasting" your code.

  • @tonelemoan

    @tonelemoan

    11 ай бұрын

    Erm, no.

  • @mallxs
    @mallxs11 ай бұрын

    Power leds used to work different in the old days. (adleast in the Northstar) It was a led with a RC net work and it is powered from a interupt routine every time interfal. This would not give a way any internal working and also shows the OS is stil running correct.

  • @legion1791
    @legion179110 ай бұрын

    This is the coolest thing ever!!!

  • @danceswithdirt7197
    @danceswithdirt719711 ай бұрын

    Great video.

  • @AndyGaskin
    @AndyGaskin11 ай бұрын

    Really fascinating

  • @JacobSnover
    @JacobSnover11 ай бұрын

    "Even I could write that code" That doesn't give me any hope that I could write it Mike! lol

  • @cidercreekranch
    @cidercreekranch11 ай бұрын

    Would adding a large smoothing capacitor to the LED circuit prevent this type of attack?

  • @CyclingSteve

    @CyclingSteve

    11 ай бұрын

    Yes. And it would be far simpler in the long run.

  • @MrCarni2
    @MrCarni29 ай бұрын

    I've got two ideas off the top of my head to fix this vulnerability, would these work well in practice? I'm aware that more practical approaches have been commented so far but I'm curious whether these are viable at all. a) for devices like personal computers or servers which usually come with a power led, one could design software that handles cryptographics so that it would also run some junk maths in parallel on another thread because it is typical for these kinds of machines to have more than one core b) for dedicated small devices like an ATM, or some kind of a peripheral where it could be expected for a cpu to only have a single core, one could design the hardware to accommodate for heightened security because they are expected to handle cryptographics all the time, so it would make sense to put a door in front of the power led and only open it when it is needed to be seen when the machine is repaired, serviced, or under maintenance

  • @rich1051414
    @rich105141411 ай бұрын

    So now we are going to get 'secure LEDs' with a capacitor in parallel and a resistor in series? To explain in programming terms, that's functionally a brightness interpolation or low pass filter for led brightness.

  • @barneylaurance1865
    @barneylaurance186510 ай бұрын

    A lot of photographers will know the problem of using an electronic shutter in a room with LED lighting - depending on the quality of the lighting you can easily get banding in the photo as the rolling shutter makes the the PWM dimming of the LED show up as light and dark bands. Not great for photos of people at a party - but this is turning it on its head and making the bands the entire point of the photo.

  • @hammerth1421
    @hammerth142111 ай бұрын

    That's more of an issue with dedicated encryption hardware like smart cards. A modern CPU with let's say 8 cores and hyperthreading is so incredibly noisy that you could never read actual data from it via power consumption. The only thing you can see there are the load insertion and load release transients from really heavy operations like MMX or AVX starting and stopping.

  • @jimbobbyrnes
    @jimbobbyrnes11 ай бұрын

    Could you use one of those wireless amp meters to measure the current itself? No led needed just measure the quiescent current number and compare to every button press.

  • @Anonymous______________
    @Anonymous______________11 ай бұрын

    Power signal analysis as a side channel attack has been a thing for years.

  • @koncinar
    @koncinar11 ай бұрын

    So an average gaming computer is just a billboard with your password written all over it 😂

  • @Abdullu
    @Abdullu11 ай бұрын

    Looking at Mike's hastily wiped whiteboard, I feel like there is a chance of a whiteboard attack.

  • @adriantarver2229
    @adriantarver222911 ай бұрын

    While such an attack is clever, it's less likely to be used "In the wild" so to speak. Of course, its possible when having just physical access to any given device, but then time also can play a big factor as well. Regardless, very interesting.

  • @trevinbeattie4888
    @trevinbeattie488811 ай бұрын

    One thing I don’t understand is how an observer would know that the computer is calculating a cryptographic key as opposed to performing some other CPU-intensive operation?

  • @Huvada

    @Huvada

    11 ай бұрын

    This method requires the attacker to have technical knowledge of the lock. You already have to know how it processes the key and how it shows up on the LED in order to use the exploit. So I imagine the attacker can tell de difference between the different CPU tasks. Or monitor it for so long that patterns become obvious. This is a super specific exploit, you'll have to approach each system differently.

  • @karapuzo1

    @karapuzo1

    11 ай бұрын

    You can't. You have to know what the system is doing up to a nanosecond and/or initiate the process yourself (probably multiple times). This might only be a practical attack on hardware you have full control of like a nicked crypto wallet.

  • @ch33rfulness

    @ch33rfulness

    11 ай бұрын

    Because, like any other hack on the existing hardware around, inside information is leaked. I’ve worked on securing engine electronic control units and by the time we were planning a future release, we were finding out that our previous version was already “open” by some “clever guys”, located in “non-friendly” countries. Honestly, after doing a lot of investigation (we’ve even purchased some “official” products which were attacking our product), we’ve concluded that somehow there’s some sort of a leak from the inside (lots of engineers have access to such a project and the teams are spread over multiple countries). I mean, there was no way that someone, without inside knowledge, would’ve managed to find a workaround so quickly. It’s a mouse and cat around the clock race. Quite stressful 😂

  • @GordonjSmith1
    @GordonjSmith111 ай бұрын

    Every secret leaves a footprint. It is either the. surprise appearance of information, or the surprise lack of information, but a secret is always 'visible'...

  • @NeiroAtOpelCC
    @NeiroAtOpelCC11 ай бұрын

    Cool video. I started out thinking 'This cannot be done' and ended with 'This is a real issue' ...

  • @fullmuppet
    @fullmuppet11 ай бұрын

    Some sort of capacitor would seem to be in order.

  • @mrtnsnp
    @mrtnsnp11 ай бұрын

    Dimming the LED with pulse width modulation will probably mess up this attack rather efficiently, as long as the pulse frequency interferes well enough with the pace of the computations.

  • @DasEtwas

    @DasEtwas

    11 ай бұрын

    PWM for lighting is usually in the kHz range, which wouldn't interfer much besides sometimes "turning off" the windows of attacks

  • @Kathlanus
    @Kathlanus9 ай бұрын

    This is both fascinating and terrifying. But I wonder if it is hard on a hardware level to take care of this. In theory all you have to do is ever so slightly vary the power to the LED continuosly. So that the variance in it's brightness is both random and permanent. Then it is not only harder to tell when the system is doing hard calculations, but it would also scramble the signal on the LED. Maybe an antenna and an operational amplifier could help with that. If the antenna is hooked up to the op-amp. And the op-amp is the last step in the power delivery to the LED, the EM-Field in the area should influence the LED. Should be quite random then.

  • @Atrix256
    @Atrix256Ай бұрын

    Maybe it'll become standard practice to add capacitors to power LEDs to low pass filter these things. I wonder what else you could do to thr circuit to obfuscate the power usage? Some way to add noise to the led current seems like it'd be useful.

  • @sandy_knight
    @sandy_knight10 ай бұрын

    Surely IRL the server's CPU will be processing multiple threads from different processes at the same time, so unless you know what all those other services/requests are how do you filter it out? Related(?): I can tell when a compile finishes and whether it was successful from my PC fan.

  • @PuerinTheHunter
    @PuerinTheHunter11 ай бұрын

    It's been a long time since I've seen that continuous feed paper, with those perforations on the sides. Is he still using matrix printers over there?

  • @ashleycrow8867
    @ashleycrow886711 ай бұрын

    last time I worked with hardware was in school but I remember the Routers and switches we used there had 2 flickering lights over every Ethernet port that would flicker if data is transmitted so I was always wondering if they just wired the binary of the data transmitted through the LEDs and if I could read off the package sent by looking at the lights

  • @omgitguy
    @omgitguy10 ай бұрын

    Just some off-topic feedback: the shirt was OK in 4K resolution and probably in 1440p too.

  • @JohnWilliams-gy5yc
    @JohnWilliams-gy5yc11 ай бұрын

    PCI-SIG : You have been told... PCI-SIG: The 12VHPWR is a side-channel mitigation security feature, never a design flaw.

  • @chiraldude
    @chiraldude7 ай бұрын

    The one problem with this is how to know when the processor is processing a crypto task vs something else. CPUs do lots of things besides crypto. Do you just record hours of video then process the data looking for something that resembles a private key?

  • @kevinshumaker3753
    @kevinshumaker375311 ай бұрын

    If a card is read 'flat' just put the LED in the area the card covers to be read, which hides it, and do an audio beep to indicate the card is approved or not. If it is a plug the card in, put the LED under the slot for the card. If it is a slide/swipe, only light an LED if fail or success, not as power on indication.

  • @zockertwins

    @zockertwins

    11 ай бұрын

    or just put a capacitor in the LEDs circuit to smooth out the signal

  • @u2bear377

    @u2bear377

    11 ай бұрын

    @@zockertwins When all the capacitor bank of the system's power supply cannot suppress power fluctuations by varying CPU load then a cap for the LED won't fix it.

  • @fusseldieb

    @fusseldieb

    11 ай бұрын

    @@u2bear377 Wrong. Small capacitors in picofarad range do filter high frequencies, while normal microfarad caps only filter low frequencies. You kinda need both. Also, for such applications the SMD pF cap would need to be placed RIGHT next to the LED, as close as possible.

  • @barneylaurance1865
    @barneylaurance186510 ай бұрын

    I suppose a difficulty with writing code to always do the same thing whatever the input is that general purpose compilers, CPUs, virtual machines etc etc are all engineered to be efficient, meaning if they can detect that code is doing something that provably doesn't affect the "output" (not thinking of side channels as output) they will skip over that code to save time and power.

  • @tlniec
    @tlniec11 ай бұрын

    No surprise that this is possible in principle, but interesting that a practical implementation was actually demonstrated. Then again, even things that seem extremely far-fetched can be achieved when an attacker has sufficient motivation and resources!

  • @gubunki

    @gubunki

    10 ай бұрын

    unlikely, i mean cpu have multiple process running on a single core, but u also have multiple cores, and the computers have gpu too and other parts that add noise, so really doubt this can be done

  • @Beregorn88
    @Beregorn8811 ай бұрын

    Nice cautionary tale, but I find really hard to believe that it can be ACTUALLY pulled of in the wild. First of all, because the rolling shutter doesn't work the way it was presented in the video: the lines are acquired at different times, but each one of them is still integrated over a 1/60th of a second (or whatever the shutter speed was). Then you have the fact that even with a rolling shutter you are still way too slow compared to the operation speed of, well, basically anything: by the time you have finished a line and moved to the next one, any single operation should be already done and gone. Then you have all the noise sources around the target: the flickering of ambient lights, just to mention one. Then you have the electronic noise of your sensor. Then you have the fact that the signal is too small to be recorded: even if the single operation lasted 20us (which would be an eternity), and even if you were in the ideal recording condition, the signal would be about 0.3 high, when you record an integer between 0 and 255. In fact, if you take the time to properly read the paper, you will find out they did exactly none of that, since, you know, it's physically impossible. What they ACTUALLY did was taking a card reader where, for some reason that I can't fathom, the led indicator was deliberately wired to show the exact time the decryption process started and ended, and, at the same time, used an encryption library where the time needed to perform the whole operation was enough to recover the private key (an exploit 4 years old, and linked to a very precise card manufacturer, but some cheap Chinese producers must have missed the memo). They then took a security camera with a 25x optical zoom, performed extensive calibration on it to recover some specific working parameters and put it in a completely dark room. At that point they just needed to collect the recording of 10500 card swipes and, presto! they were able to obtain the private key of the device...

  • @authentic6825
    @authentic682511 ай бұрын

    Yes, please do a moire pattern video!

  • @4akat
    @4akat11 ай бұрын

    my favorite ridiculous attack is showing a QR code with a virus on it to CCTV camera to disrupt the video recording server

  • @williamdrum9899

    @williamdrum9899

    11 ай бұрын

    Lmfao... I thought cctv was stuck in the 90s and couldn't do that

  • @ashleycrow8867
    @ashleycrow886711 ай бұрын

    would you need a different algorithm for that based on if it's in the US or the EU? cause the frequency of the power grid is different so there'd be flickering from that too that you'd need to adjust for no?

  • @ashleycrow8867

    @ashleycrow8867

    11 ай бұрын

    actually, you'd probably need to adjust whatever algorithm you're using based on the model of card reader you're looking at already so you could adjust for that too

  • @oleksiishekhovtsov1564
    @oleksiishekhovtsov156411 ай бұрын

    This is insane, I was literally just checking out "Power Analysis Attacks" at the library and now this pops up

  • @pigpuke

    @pigpuke

    11 ай бұрын

    Big Brother is watching

  • @marijngrashoff30
    @marijngrashoff3011 ай бұрын

    Power leds are already being used to capture data spesificly the rubber ducky can use the capslock led on the keyboard to gather data

  • @zwe1l1nkehaende

    @zwe1l1nkehaende

    11 ай бұрын

    Yes, but in that case the rubber ducky uses the LED to transmit the signal by controlling it. So the transmission via LED is on purpose, while the rubber ducky need a seperate vulnerability to gain control of the LED. In this case the LED is the vulnerability.

  • @realitynowassigned
    @realitynowassigned9 ай бұрын

    They've been suggesting this since at least the 00s

  • @ashleycrow8867
    @ashleycrow886711 ай бұрын

    just make the LED flicker randomly every time it does something, it both signifies the user that something is indeed happening and it would work around this kinda, unless your random noise generator for the flickering uses the CPU state as input but that's a whole other issue

  • @UberGeek
    @UberGeek11 ай бұрын

    "Huge problem" is the power supply LED doesn't flicker solely based on data xfer. It flickers based on the entire system activity.

  • @carpemkarzi
    @carpemkarzi11 ай бұрын

    Amazing, scary but damned interesting.

  • @bunnybreaker
    @bunnybreaker11 ай бұрын

    I thought this was going to be about hacking smart devices that had IR receivers on the power LED, but it was way more interesting than I could have expected.

  • @NetBandit70
    @NetBandit7011 ай бұрын

    His shirt isn't a Moire pattern, it's just encoded with data for rolling shutters.

  • @BongoBaggins
    @BongoBaggins11 ай бұрын

    So now we can expect Norton to start selling smoothing capacitor circuits for a million pounds each

  • @Huvada

    @Huvada

    11 ай бұрын

    They won't sell it to you, it's going to be a subscription model.

  • @ChrisGWGreen
    @ChrisGWGreen11 ай бұрын

    Hours of research and awesome nerdiness beaten by a decoupling capacitor

  • @aikumaDK
    @aikumaDK10 ай бұрын

    Now I'm kind of curious if there's any security measure made before the 80's that's still in use today, in its original form. Like, some algorithm or function that's just so stupidly powerful that nobody really bothered to add more stuff to it.

  • @EMAngel2718
    @EMAngel271811 ай бұрын

    I wonder how well some low pass filters in the electronics could do to fix this

  • @MichaelKingsfordGray
    @MichaelKingsfordGray10 ай бұрын

    Which is why I have, for many decades, included random delays in my cryptographic code.