IP Library Granted Patent US 7,814,465
Granted Patent B2
US 7,814,465 · App. 11/433,661 · Granted Oct 12, 2010

Method and apparatus for application verification

Assignee: Oracle America, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,814,465
App. No.
11/433,661
Granted
Oct 12, 2010
Kind
B2
Abstract

A method for verification of an application for zones that includes determining an execution environment of the application, obtaining a list of permissions from the execution environment, analyzing the application to identify a restricted instruction within the application, wherein the restricted instruction is zone specific, and generating a report when a required permission of the restricted instruction is not in the list of permissions.

Claims (45)

1. A method, executed by a computer system, for verification of an application comprising:

identifying a non-global zone of a plurality of zones for executing the application, wherein the plurality of zones execute within a single instance of an operating system, and wherein each of the plurality of zones corresponds to an isolated execution environment within the single instance;

obtaining a list of permissions for the non-global zone;

obtaining a restricted instruction listing corresponding to the non-global zone, wherein the restricted instruction listing comprises application restricted instructions and platform restricted instructions;

analyzing the application to identify a dependent code restricted instruction, wherein analyzing the application comprises:

comparing a plurality of instructions in the application with the restricted instruction listing to identify which of the plurality of instructions in the application is in the restricted instruction listing;

identifying a call in the application to dependent code external to the application; and

comparing a plurality of instructions in the dependent code with the restricted instruction listing to identify the dependent code restricted instruction in the dependent code; and

generating a report comprising an alert identifying the dependent code restricted instruction when a required permission to execute the restricted instruction is not in the list of permissions.

2. The method of claim 1 , further comprising:

updating the application to remove the dependent code restricted instruction.

3. The method of claim 2 , further comprising:

re-verification of the application after removing the dependent code restricted instruction.

4. The method of claim 1 , wherein the platform restricted instructions are further specific to a hardware environment.

5. The method of claim 1 , wherein analyzing the application comprises analyzing source code of the application.

6. The method of claim 1 , wherein analyzing the application comprises activating a plurality of probes in binary code of the application.

7. The method of claim 6 , wherein the probes are restricted instruction specific.

8. The method of claim 6 , wherein analyzing the application comprises executing the binary code of the application.

9. The method of claim 8 , wherein the probes identify the presence of the dependent code restricted instruction from executing the binary.

10. A system for verification of an application comprising:

a computer processor;

an application verification toolkit, configured to execute on the computer processor, and to perform a method, the method comprising:

identifying a non-global zone of a plurality of zones for executing the application, wherein the plurality of zones execute within a single instance of an operating system, and wherein each of the plurality of zones corresponds to an isolated execution environment within the single instance;

obtaining a list of permissions for the non-global zone;

obtaining a restricted instruction listing corresponding to the non-global zone, wherein the restricted instruction listing comprises application restricted instructions and platform restricted instructions;

analyzing the application to identify a dependent code restricted instruction, wherein analyzing the application comprises:

comparing a plurality of instructions in the application with the restricted instruction listing to identify which of the plurality of instructions in the application is in the restricted instruction listing;

identifying a call in the application to dependent code external to the application; and

comparing a plurality of instructions in the dependent code with the restricted instruction listing to identify the dependent code restricted instruction in the dependent code; and

a report generator configured to generate a report comprising an alert identifying the dependent code restricted instruction when a required permission to execute the restricted instruction is not in the list of permissions.

11. The system of claim 10 , further comprising a client configured to: update the application to remove the dependent code restricted instruction.

12. The system of claim 11 , wherein the client is further configured to: re-verify the application after removing the dependent code restricted instruction.

13. The system of claim 10 , wherein analyzing the application comprises analyzing source code of the application.

14. The system of claim 10 , wherein analyzing the application comprises activating a plurality of probes in binary code of the application.

15. The system of claim 14 , wherein analyzing the application comprises executing the binary code of the application.

16. The system of claim 14 , wherein the probes identify the presence of the dependent code restricted instruction from executing the binary.

17. A computer readable medium comprising computer readable program code embodied therein for causing a computer system to perform a method for verification of an application, the method comprising:

identifying a non-global zone of a plurality of zones for executing the application, wherein the plurality of zones execute within a single instance of an operating system, and wherein each of the plurality of zones corresponds to an isolated execution environment within the single instance;

obtaining a list of permissions for the non-global zone;

obtaining a restricted instruction listing corresponding to the non-global zone, wherein the restricted instruction listing comprises application restricted instructions and platform restricted instructions;

analyzing the application to identify a dependent code restricted instruction, wherein analyzing the application comprises:

comparing a plurality of instructions in the application with the restricted instruction listing to identify which of the plurality of instructions in the application is in the restricted instruction listing;

identifying a call in the application to dependent code external to the application; and

comparing a plurality of instructions in the dependent code with the restricted instruction listing to identify the dependent code restricted instruction in the dependent code; and

generating a report comprising an alert identifying the dependent code restricted instruction when a required permission to execute the restricted instruction is not in the list of permissions.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037306/0530 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2006
From: LIU, LEI
To: SUN MICROSYSTEMS, INC.
Reel/Frame 017884/0026 →
Continuity (1)
Related Publication 20070266373A1 · Nov 15, 2007