Garfinkel and Spafford, Web Security and Commerce
chapter 3 Java and Javascript (security)
Java security is not proof against denial of service attacks.
means the excessive consumption of resources: screen, CPU, memory,
processes, interrupt handlers, socket connections, etc.
by an offending process
to the exclusion of other (desirable) process's use of these limited computing resources.
Some use of resources is intended for any process.. how much is excessive?
A faulty or malicious applet can run away with resources doing apparently nothing or trivial things.
Denial of service possibility is serious in Java etc. because authors did not consider this form of attack: the JVM interpreter is not built to exclude it;
PC operating systems are not as independently robust as old batch or multi-user mainframe systems.
Solutions:
- will allow the user back into control.
security obtained by enbedding a security policy into the runtime environment in the elements:
No theoretical base for the security model:
not as secure as encryption systems with mathematical/computational complexity
theory and years of open published literature examination as basis for belief
in security
but may be strengthened in future with automated proof systems on applets
[ANU research]
Vulnerabilities
Advantage of Java model is that greater level of simple security comes with the same effort (running in sandbox vs running in the open)
No silver bullets:
web-based systems must be openly accessable to many new opportunities of applications (change or wither away!) in information dissemination, computer mediated communications, distributed applications, electronic commerce...
always opportunites to spam, skim, scam
always a dynamic balance between social desires for privacy and open information, equal access rights.
A product defined by Netscape
not the same as Java
Embeds script commands within HTML pages using javascript tag.
Script is not compiled: human readable form is interpreted directly
hence larger code size for equivalent function as Java bytecode.
Well suited to simple Web page activity.
More secure than Java:
therefore
Microsoft technology.
downloadable executables - dynamic plug-ins - associated with Visual Basic controls, etc.
may be written in target (client) native machine code - hence execute
quickly once downloaded (no easy way to get security at browser end)
- or may be written in Java, download as Java bytecode
processor and system dependent (unlike Java and scripting languages)
Security - certificate only - full privileges when executing native code (no sandbox model)
derived from tcl/tk scripting language - tk graphics toolkit controls
require tcl-enabled browser - safe tcl
basically similar to Javascript, more powerful
(full tcl is equivalent to a shell command language in expressiveness and power)


Last modified: Tue Mar 30 11:32:43 EST 1999