|
ABSTRACT
We predict that we will soon witness attacks on all kinds of systems that will be based on the attacked systems' worst-case behavior. For example, the worst-case performance of Java Bytecode Verification rises quadratically with program length. By sending a legal, but difficult-to-verify program to a server virtual machine, we can keep that server occupied for an inordinate amount of time, effectively making it unavailable for useful work. The problem, however, is not restricted to mobile-code verification: for example, an attacker could exploit knowledge about a just-in-time compiler's register allocator by sending it a particularly difficult to solve graph-coloring puzzle. The same vulnerability can be exploited if the attacker has intimate knowledge of the data structures used in the attacked system. Similar problems occur in hardware, e.g. with respect to power variability or the heat dissipation of processors. Malicious programs can exploit which parts of computer chips dissipate power, thereby overheating regions of the chip that are known to contain no temperature sensors. This attack could be used to affect battery life or cause early chip aging. Unfortunately, worst case-based attacks are hard to counter without also limiting the system's behavior in the average case.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
B. Alpern , M. N. Wegman , F. K. Zadeck, Detecting equality of variables in programs, Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.1-11, January 10-13, 1988, San Diego, California, United States
[doi> 10.1145/73560.73561]
|
| |
2
|
|
 |
3
|
|
| |
4
|
CERT Coordination Center, Carnegie Mellon University, http://www.cert.org.
|
 |
5
|
|
| |
6
|
G. J. Chaitin, M. A. Auslander, A. K. Chandra, J. Cocke, Martin, E. Hopkins, and P. W. Markstein. Register allocation via graph coloring. Computer Languages, 6(1):47--57, 1981.
|
| |
7
|
R. M. Cohen. The defensive Java Virtual Machine specification version 0.5. Technical report, Computational Logic, Inc., May 1997.
|
| |
8
|
S. A. Crosby and D. S. Wallach. Denial of Service via Algorithmic Complexity Attacks. In Proceedings of the 2003 USENIX Symposium on Virtual Machines. USENIX Association, 2003.
|
| |
9
|
P. Dadvar and K. Skadron. Potential Thermal Security Risks. In 21st IEEE SEMI-THERM Symposium. IEEE, 2005.
|
| |
10
|
D. Dean and A. Stubblefield. Using Client Puzzles to Protect TLS. In Proceedings of the 2001 USENIX Security Symposium. USENIX Association, 2001.
|
| |
11
|
A. Gal, C. W. Probst, and M. Franz. An Applet performing a complexty-based Denial-of-Service attack on the verifier. Available at http://nil.ics.uci.edu/exploit.
|
| |
12
|
A. Gal, C. W. Probst, and M. Franz. A Denial of Service Attack on the Java Bytecode Verifier. Technical Report 03--23, University of California, Irvine, School of Information and Computer Science, 2003.
|
| |
13
|
A. Gal, C. W. Probst, and M. Franz. Proofing: An Efficient and Safe Alternative to Mobile-Code Verification. Technical Report 03--24, University of California, Irvine, School of Information and Computer Science, November 2003.
|
| |
14
|
A. Gal, C. W. Probst, and M. Franz. Integrated Java Bytecode Verification. In Proceedings of the First International Workshop on Abstract Interpretation of Object Oriented Languages, January 2005.
|
| |
15
|
S. Garfinkel. Script for a king. HotWired Packet, http://hotwired.lycos.com/packet/garfinkel/96/45/geek.html and see http://simson.vineyard.net/table.html for the table attack., November 1996.
|
 |
16
|
|
 |
17
|
|
| |
18
|
|
| |
19
|
|
| |
20
|
|
| |
21
|
|
| |
22
|
V. Paxson. Bro: A System for Detecting Network Intruders in Real Time. Proceedings of the 7th Security Symposium. (USENIX Association: Berkeley, CA), 1998.
|
 |
23
|
|
| |
24
|
Redhat. Vulnerability in zlib library, Advisory ID: RHSA-2002:026-35, 2002.
|
 |
25
|
B. K. Rosen , M. N. Wegman , F. K. Zadeck, Global value numbers and redundant computations, Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.12-27, January 10-13, 1988, San Diego, California, United States
[doi> 10.1145/73560.73562]
|
| |
26
|
Sun Microsystems. The Java Hotspot Virtual Machine, 2002.
|
| |
27
|
Sun Microsystems. CDC: An Application Framework for Personal Mobile Devices, http://java.sun.com/products/cdc/, 2003.
|
| |
28
|
F. Yellin. Low level security in Java. In O'Reilly and Associates and Web Consortium (W3C), editors, World Wide Web Journal: The Fourth International WWW Conference Proceedings, pages 369--380. O'Reilly & Associates, Inc., 1995.
|
|