When it comes to security, an interesting difference between Java Card and regular Java is the absence of an on-card bytecode verifier on most Java Cards. In principle this opens up the possibility of malicious, ill-typed code as an avenue of attack, though the Java Card platform offers some protection against this, notably by code signing.
This paper gives an extensive overview of vulnerabilities and possible runtime countermeasures against ill-typed code, and describes results of experiments with attacking actual Java Cards currently on the market with malicious code.
Keywords
- Fault Injection
- Malicious Code
- Runtime Check
- Transaction Mechanism
- Array Bound
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.