11
Addressing Security Issues in Addressing Security Issues in Programming Languages for Programming Languages for Mobile Code Mobile Code DEXA’98 S. Gritzalis, J. Iliadis Department of Information and Communication Systems, University of the Aegean Department of Informatics, Technological Educational Institute of Athens

Addressing security issues in programming languages for mobile code - Conference Presentation

Embed Size (px)

DESCRIPTION

The services offered to the Internet community have been constantly increasing the last few years. This is mainly due to the fact that mobile code has matured enough in order to provide the Internet users with high quality applications that can be executed remotely. When a user downloads and executes code from various Internet sources, security issues arise. In this paper, we are addressing the latter and we present a comparative evaluation of the methods used by Java, Safe-Tcl and ActiveX in order to confront with these issues, based on current security functions and implementations as well as on future adjustments and extensions.

Citation preview

Page 1: Addressing security issues in programming languages for mobile code - Conference Presentation

Addressing Security Issues in Addressing Security Issues in Programming Languages for Programming Languages for Mobile CodeMobile Code

DEXA’98

S. Gritzalis, J. Iliadis

• Department of Information and Communication Systems,University of the Aegean

• Department of Informatics,Technological Educational Institute of Athens

Page 2: Addressing security issues in programming languages for mobile code - Conference Presentation

IntroductionIntroduction

• Mobile CodeMobile Code– travels on heterogeneous networkstravels on heterogeneous networks

– crosses security domainscrosses security domains

– is executed upon arrival to the destinationis executed upon arrival to the destination

– security concernssecurity concerns

Page 3: Addressing security issues in programming languages for mobile code - Conference Presentation

Mobile Code LanguagesMobile Code Languages

• JavaJavageneral-purpose, object oriented language. Portable in compiled general-purpose, object oriented language. Portable in compiled

binary codebinary code

• Safe-TclSafe-Tclhigh-level interpreted scripting languagehigh-level interpreted scripting language

• ActiveXActiveXvisual control framework, using COM as the underlying visual control framework, using COM as the underlying

infrastructure. O/S dependentinfrastructure. O/S dependent

Page 4: Addressing security issues in programming languages for mobile code - Conference Presentation

Security IssuesSecurity Issues

Hostile AppletsHostile Applets– attack the attack the IntegrityIntegrity of a system of a system

– violate the user’s violate the user’s PrivacyPrivacy– limit the limit the AvailabilityAvailability of a system of a system

– achieve user’s achieve user’s AnnoyanceAnnoyance

Page 5: Addressing security issues in programming languages for mobile code - Conference Presentation

Java SecurityJava Security

• SandboxSandbox• ClassloaderClassloader• Bytecode VerifierBytecode Verifier• Security ManagerSecurity Manager

• JDK 1.2 new security modus operandiJDK 1.2 new security modus operandi• security policysecurity policy• access controlaccess control• protection domainsprotection domains

Page 6: Addressing security issues in programming languages for mobile code - Conference Presentation

Java Security - ExtensionsJava Security - Extensions

• Digital SignaturesDigital Signatures

• Policy EnforcementPolicy Enforcement– capabilitiescapabilities

– extended stack extended stack introspectionintrospection

– namespace namespace managementmanagement

• Policy DefinitionPolicy Definition

• Secure Code Secure Code DistributionDistribution

• Corporate-wide Corporate-wide policypolicy

• Confining the use of Confining the use of Java in a network Java in a network domaindomain

Page 7: Addressing security issues in programming languages for mobile code - Conference Presentation

Safe-Tcl SecuritySafe-Tcl Security

• Padded cell approach / Dual-InterpreterPadded cell approach / Dual-Interpreter– Trusted Interpreter -> Full TclTrusted Interpreter -> Full Tcl

– Untrusted/Restricted Interpreter -> Safe-TclUntrusted/Restricted Interpreter -> Safe-Tcl

• Command AliasesCommand Aliases

• Security PolicySecurity Policy

Page 8: Addressing security issues in programming languages for mobile code - Conference Presentation

Safe-Tcl Security ExtensionsSafe-Tcl Security Extensions

• Authentication of TcletsAuthentication of Tclets

• Authentication of Safe-Tcl security Authentication of Safe-Tcl security policiespolicies

• Confronting with denial-of-service attacksConfronting with denial-of-service attacks

Page 9: Addressing security issues in programming languages for mobile code - Conference Presentation

ActiveX SecurityActiveX Security

• Applet authenticationApplet authentication

• code code safe for initialisingsafe for initialising

• code code safe for scriptingsafe for scripting

• lack of configurable security policylack of configurable security policy

• ActiveX, Digital Signatures and FirewallsActiveX, Digital Signatures and Firewalls

Page 10: Addressing security issues in programming languages for mobile code - Conference Presentation

ActiveX Security - ExtensionsActiveX Security - Extensions

• Execution safetyExecution safety

• Software memory protectionSoftware memory protection– attach proofs of attach proofs of memory protectionmemory protection to code to code

Page 11: Addressing security issues in programming languages for mobile code - Conference Presentation

ConclusionsConclusions

• Security SchemeSecurity Scheme

• Detailed Security PolicyDetailed Security Policy

• Security IntegrationSecurity Integration