1 Mobile Code l Java Review –Java code is platform independent and runs within a “sandbox”, or a set of restrictions that keep downloaded applets from.

Slides:



Advertisements
Similar presentations
InterScan AppletTrap Zhang Hong Trend Micro, AppletTrap Team (Nanjing)
Advertisements

Mobile Code Security Yurii Kuzmin. What is Mobile Code? Term used to describe general-purpose executables that run in remote locations. Web browsers come.
Chapter 17: WEB COMPONENTS
Introduction To Java Objectives For Today â Introduction To Java â The Java Platform & The (JVM) Java Virtual Machine â Core Java (API) Application Programming.
Mobile Code Security Aviel D. Rubin, Daniel E. Geer, Jr. MOBILE CODE SECURITY, IEEE Internet Computing, 1998 Minkyu Lee
IIS Technologies.
Project 1 Introduction to HTML.
Chapter Concepts Review Markup Languages
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
ACTIVE X By Ethan Huang. OUTLINE What is ActiveX? Component of ActiveX Why ActiveX? ActiveX and Java Security Issue.
Using Visual Basic 6.0 to Create Web-Based Database Applications
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
Introduction to Web Application Architectures Web Application Architectures 18 th March 2005 Bogdan L. Vrusias
Security Awareness: Applying Practical Security in Your World, Second Edition Chapter 3 Internet Security.
CIS101 Introduction to Computing
Using Internet Information Server And Microsoft ® Internet Explorer To Implement Security On The Intranet HTTP.
Active X Microsoft’s Answer to Dynamic Content Reference: Using Active X by Brian Farrar QUE
Mobile Code and Worms By Mitun Sinha Pandurang Kamat 04/16/2003.
Computer Security and Penetration Testing
Define objects and their relationships to multimedia Explain the fundamentals of C, C++, Java, JavaScript, JScript, C#, ActiveX and VBScript Discuss security.
Mobile Code Java, JavaScript, ActiveX Prepared By : Radwan Abu Jassar Supervised By : Dr. Lo ’ ai Tawalbeh New York Institute of Technology (winter 2007)
MCDST : Supporting Users and Troubleshooting a Microsoft Windows XP Operating System Chapter 15: Internet Explorer and Remote Connectivity Tools.
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
Mgt 240 Lecture Website Construction: Software and Language Alternatives March 29, 2005.
COMPUTER TERMS PART 1. COOKIE A cookie is a small amount of data generated by a website and saved by your web browser. Its purpose is to remember information.
Page 1 Sandboxing & Signed Software Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation.
Microsoft ® Official Course Module 9 Configuring Applications.
1 Chapter 6 Understanding Computers, 11 th Edition Software Ownership Rights Software license: agreement, either included in a software package or displayed.
Working with Applications Lesson 7. Objectives Administer Internet Explorer Secure Internet Explorer Configure Application Compatibility Configure Application.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Copyright © 2012 Certification Partners, LLC -- All Rights Reserved Lesson 5: Multimedia on the Web.
1 Chap 10 Malicious Software. 2 Viruses and ”Malicious Programs ” Computer “Viruses” and related programs have the ability to replicate themselves on.
1 Modular Software/ Component Software 2 Modular Software Code developed in modules. Modules can then be linked together to produce finished product/program.
Principles of Computer Security: CompTIA Security + ® and Beyond, Third Edition © 2012 Principles of Computer Security: CompTIA Security+ ® and Beyond,
Web Security Chapter 6. Learning Objectives Understand SSL/TLS protocols and their implementation on the Internet Understand HTTPS protocol as it relates.
Using Visual Basic 6.0 to Create Web-Based Database Applications
Fundamentals of Database Chapter 7 Database Technologies.
3-Protecting Systems Dr. John P. Abraham Professor UTPA.
1 Internet Browsing Vulnerabilities and Security ECE4112 Final Lab Ye Yan Frank Park Scott Kim Neil Joshi.
Client Side Vulnerabilities Aka, The Perils of HTTP Lesson 14.
Chapter 10 Malicious software. Viruses and ” Malicious Programs Computer “ Viruses ” and related programs have the ability to replicate themselves on.
CSCE 201 Web Browser Security Fall CSCE Farkas2 Web Evolution Web Evolution Past: Human usage – HTTP – Static Web pages (HTML) Current: Human.
Web Pages with Features. Features on Web Pages Interactive Pages –Shows current date, get server’s IP, interactive quizzes Processing Forms –Serach a.
Course code: ABI 204 Introduction to E-Commerce Chapter 5: Security Threats to Electronic Commerce AMA University 1.
Chapter 3 Software. Learning Objectives Upon successful completion of this chapter, you will be able to: Define the term software Describe the two primary.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Lecture 16 Page 1 CS 236 Online Web Security CS 236 On-Line MS Program Networks and Systems Security Peter Reiher.
Web Pages with Features. Features on Web Pages Interactive Pages –Shows current date, get server’s IP, interactive quizzes Processing Forms –Serach a.
Java Security Session 19. Java Security / 2 of 23 Objectives Discuss Java cryptography Explain the Java Security Model Discuss each of the components.
1 Firewalls - Introduction l What is a firewall? –Firewalls are frequently thought of as a very complex system that is some sort of magical, mystical..
Chapter 10 Using Macros, Controls and Visual Basic for Applications (VBA) with Excel Microsoft Excel 2013.
HTML Concepts and Techniques Fifth Edition Chapter 1 Introduction to HTML.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
JavaScript 101 Introduction to Programming. Topics What is programming? The common elements found in most programming languages Introduction to JavaScript.
W elcome to our Presentation. Presentation Topic Virus.
Active Directory. Computers in organizations Computers are linked together for communication and sharing of resources There is always a need to administer.
Lesson 5 MULTIMEDIA. Multimedia on the Web has expanded rapidly as broadband connections have allowed users to connect at faster speeds. Almost all Web.
Active X and Signed Applets Chad Bollard. Overview ActiveX  Security Features  Hidden Problems Signed Applets  Security Features  Security Problems.
By the end of this lesson you will be able to: 1. Determine the preventive support measures that are in place at your school.
Security on the Internet Norman White ©2001. Security What is it? Confidentiality – Can my information be stolen? Integrity – Can it be changed? Availability.
ArcGIS for Server Security: Advanced
Distributed Control and Measurement via the Internet
Project 1 Introduction to HTML.
Chap 10 Malicious Software.
About Multimedia Files
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
Lesson 5: Multimedia on the Web
Chap 10 Malicious Software.
Windows Vista Inside Out
Chapter 3 Software.
Presentation transcript:

1 Mobile Code l Java Review –Java code is platform independent and runs within a “sandbox”, or a set of restrictions that keep downloaded applets from accessing resources that they should not be able to. (Local files, for example.) –Java has the capability to be digitally signed, to prove who the source of the applet is. These signed bundles of code can be packaged into “JAR”s, and downloaded to the browser. »With the addition of code signing, Netscape added the capabilities classes, so that applets can request additional privileges that are approved by the user.

2 Mobile Code l JavaScript Review –JavaScript is an interpreted scripting language embedded into HTML pages, and is interpreted when the page is loaded. –A code signing and bundling facility has been added to JavaScript as well, allowing sites to distribute cryptographically authenticated scripts. »Netscape added the capabilities classes to JavaScript as well, which allows JavaScript more control over page layout and design.

3 Mobile Code l ActiveX - Overview –ActiveX is a name that covers a fairly broad category of items, on a Microsoft operating system. Originally MS provided OLE as a way of encapsulating and interacting with the operating system. Although these programs were not specific to an application, they were specific to the OS as well as the processor –As ActiveX is a derivative of OLE, it has these same limitations; restricted to Microsoft operating systems and the Intel processors.

4 Mobile Code l ActiveX - Overview (continued) –ActiveX was designed with a deep understanding of security in mind, and therefore used advanced cryptographic techniques to ensure security in all areas of its design. The security model can be described as follows: »ActiveX controls are digitally signed to authenticate the author. The user must decide if they trust the sender, and if they do, the control is allowed to execute.

5 Mobile Code l ActiveX - General Problems –ActiveX is machine native code and does not run under any restrictions on the client machine. The code does not even necessarily need to draw anything on the screen; it can simply download and perform arbitrary actions on the client machine without necessarily being detected. –The code has no limits on what it can do when it executes. There is no sandbox, no limits on network connections, or file access. »NT could enforce some restrictions on where a user writes, but by default the permissions are almost completely open.

6 Mobile Code l ActiveX - Trust Issues –The reliance of ActiveX on the digital signatures is troubling. You, as a user, must place complete trust in the author that: »The code they write will not purposefully attack your machine, network, transmit your files, or perform other operations on your machine that you don’t wish. »That the code does not accidentally (via a bug or a side effect) do any of the above operations. »The code signers keep their keys safe and secure, and that nobody who leaves the company has the keys with which to sign code. –This is not reasonable.

7 Mobile Code l ActiveX - Example Exploit –One exploit that was demonstrated was the combination of a signed ActiveX control and the Quicken financial management software. Quicken has access to bank account information and can electronically manage the money in these accounts. The data is encrypted, but pending requests reside in a queue so that the next time the application is connected, it will perform these operations. –An ActiveX control was written that was silently downloaded, looked for quicken, and inserted a transfer of money into the attackers account.

8 Mobile Code l JScript –JScript is mentioned for the sake of completeness. It is a derivative of JavaScript, and performs some of the same operations, and some additional operations that JavaScript cannot. –How JScript inter-operates with different components within Internet Explorer is not well defined, and has not been as studied as Netscape’s LiveConnect. It is quite possible that there are privacy and information migration issues with this variant of JavaScript.

9 Mobile Code l VBScript - Overview –VBScript is a subset of Visual Basic (VB), designed to operate similarly to JavaScript or JScript, in that it is an interpreted scripting language embedded in HTML pages. This, obviously, is a Microsoft technology and is not found in other browsers and platforms. –VBScript also adds certain functionality for manipulating the web interface and environment not found in the standard Visual Basic Distribution.

10 Mobile Code l VBScript - Issues –VBScript is not well studied in the way that it manages data and inter-operates with other components. It is possible for VBScript to trade information with Java applets and ActiveX controls, so the possibility of a user gaining access to information that they should not have is quite possible. This environment is very similar to the Netscape LiveConnect mechanism, where different components have different security models, and this leads to unforeseen consequences.

11 Mobile Code l As we have discussed, mobile code is any code that migrates between machines and is executed. This is not limited to web-based applets and additions. Many other applications and systems have been extended with programmatic control, without security concerns. These include: –Printing –Application Documents

12 Mobile Code l PostScript - Overview –In an effort to make a platform and device independent language for describing a graphic page layout, Adobe invented PostScript. PostScript is an interpreted and stack based language with much of the functionality of a normal language. (Functions, loops, etc) –One interesting aspect of PostScript is that it can be used for more than printing. Other things that people have done are: »Fractal Generation, Mathematical Equation Solving, etc. –Some people, quite obviously, have too much free time.

13 Mobile Code l PostScript - Issues –One of the options available within PostScript is file IO. This allows a PostScript document, when run within an interpreter that does not place restrictions upon the scripts actions, to read or write users files. »This could be used in an attack where a users.rhosts file is overwritten with the “+ +” that we talk about so often. –Many interpreters will offer some level of security and not allow this access. (Very similar to the Java sandbox model)

14 Mobile Code l Microsoft Word - Overview –Microsoft Word has macro capabilities, that is, commands and sets of commands can be scripted and added to a document to perform some action. These macros are saved with the document so that they will be available when the user next loads it. –As these macros are performing actions at a users request, no restrictions are placed upon them. They may do search and replace operations, add content to the document, or anything else a person would do when writing and managing a document.

15 Mobile Code l Microsoft Word - Issues –The biggest problem with this macro capability is the fact that macros can be automatically executed upon document load, without prior authorization from the user. This means that a malicious user could give somebody a Word file with a macro that would delete words or sentences, modify content, or write itself into other documents. –Macros that will write themselves into other documents are called Word or Macro viruses. They are the most prevalent form of viruses at this time, due to the heavy sharing of documents in networked enterprises.

16 Mobile Code l Microsoft - Other –One point to be made is that the Macros are not limited to Word documents, and other Microsoft products are vulnerable to this. Excel spreadsheets, for example, will allow these macro viruses just as easily. –The main limiting factor in the other products is the limited scope of sharing other document formats. People do not normally download spreadsheets from the net, but may download a Word document to read about a new product.

17 Mobile Code l Other –Mobile code is mainly dealing with small encapsulated programs that are quickly and easily transported between machines. With the web, however, and the ease in which people can download and install whole applications, the problem of trojan horses and viruses is getting worse. –It is getting to the point where all applications can be considered mobile to a certain extent, and must be considered when looking at the security of a system.

18 Mobile Code l Review –Code signing does not adequately protect users from malicious code. If a trusted site is compromised and the keys stolen, the user looses all assurance that the code is “safe”. –Code needs to have restrictions placed upon it by default, and only with the user permission should it be allowed to perform other actions. –Code should not automatically be executed in any circumstance, users should have the option of allowing or disallowing the code.

19 Mobile Code l Summary –Mobile code is only increasing as users and systems become more connected. Netscape and Microsoft are racing too tie users desktops into web interfaces, and the line between a remote network site and a users system will continue to get more vague. Security is increasing slowly, but basic problems* with trading code between systems will always exist. *Users