Clock glitching on external clock


I am performing a clock glitching attack over the ATMega328P using its external clock. If I’m not mistaken, I should connect the ChipWhisperer HS1 pin to XTAL2 pin (clock output), right? Do I need more connections related to the clock?

I also have another question: how is the glitch inserted? From my understanding, the process is as follows: sample the external clock, manipulate it and insert it back to the clock. In this case, how is the pin impedance handled?


That’s not possible, unfortunately. ChipWhisperer is able to create a glitchy clock, but it’s not meant to insert glitches onto an existing clock.

You’ll need to modify your target to accept a clock generated by ChipWhisperer. We allow for this on our “Notduino” target so it should be possible.

Thanks for your reply.
I thought it was possible, as in the Scope API, the clk_src property allow to use an external clock using the “target” option, but I should have misunderstood it.

That’s because the scope.glitch module is used for both clock glitching and voltage glitching.
In the case of voltage glitching, it is possible to time the voltage glitches using the target clock; however it’s not possible to insert glitches onto a clock that’s generated by the target.

If you haven’t already, do go over our Jupyter tutorials; the notebooks in fault101 teach the basics of glitching with ChipWhisperer.