06.11.2014 Views

A User Centric Security Model for Tamper-Resistant Devices

A User Centric Security Model for Tamper-Resistant Devices

A User Centric Security Model for Tamper-Resistant Devices

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

8.2 Smart Card Runtime Environment<br />

As noted, the reason <strong>for</strong> the success was the buggy JCVM. Their results were based on<br />

eight dierent smart cards and they only managed to attack one of them, as the other<br />

smart cards had eective runtime protection mechanisms. Similar results were also shown<br />

by Lanet and Iguchi-Cartigny [195]. Sere et al. [216] use the similar attack of modifying the<br />

bytecodes to gain unauthorised access or skip security mechanism on a plat<strong>for</strong>m. However,<br />

Sere et al. relied on fault attacks to modify the bytecodes rather than modifying them<br />

o-card as done by [190, 195, 215]. This way, Sere et al. managed to bypass the on-card<br />

bytecode verication. A countermeasure to this attack provided by Sere et al. relied on<br />

tagging the bytecode instructions with integrity values (i.e. integrity bits) and during the<br />

execution, the JCVM checks these bits and if it fails, the execution terminates.<br />

In 2010, Barbu et al. [194] along with Vétillard and Ferrari [198] used a similar attack<br />

methodology to Sere et al. [216] that later came to be known as combined attacks. Later,<br />

the combined attack technique was extended to target various components of JCVM in<br />

[217][220]. These attacks are signicant; nevertheless, they require the loading of an<br />

application designed specically to accomplish the attack goals. There<strong>for</strong>e, such attacks<br />

are not practical to some extent in the ICOM; however, due to the open nature of the<br />

UCOM such attacks become a real concern.<br />

In this section we glanced over the attack techniques proposed in the literature that specifically<br />

target the SCRT. The discussion is by no means exhaustive but it introduces the<br />

challenges faced by the UCTD runtime environment. Be<strong>for</strong>e we move to discuss the protection<br />

mechanism, we rst discuss the fault attacks in some detail in next section.<br />

8.2.2.1 Fault Attacks<br />

The aim of an adversary during a fault attack is to disrupt the correct execution of an<br />

application by introducing errors. These errors are usually introduced by physical perturbation<br />

of the hardware plat<strong>for</strong>m on which the application is executing. By introducing<br />

errors at a precise instruction, an adversary can circumvent the security measures implemented<br />

by the runtime environment. Possible types of faults an adversary can produce are<br />

described as below:<br />

1. Precise bit error: In this scenario, an adversary has total control over the timing and<br />

locations of bits that he wants to change.<br />

2. Precise byte error: This scenario is similar to the previous one; however, an adversary<br />

only has the ability to change the value of a byte rather than a bit.<br />

3. Unknown byte error: An adversary has no control on the timing and byte that it<br />

modies during the execution of an instruction.<br />

193

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!