DOI QR코드

DOI QR Code

A Visualization System for Permission Check in Java using Static Analysis

정적분석을 이용한 자바 언어의 권한검사 시각화 시스템

  • 김윤경 (숙명여자대학교 컴퓨터과학과) ;
  • 창병모 (숙명여자대학교 컴퓨터과학과)
  • Published : 2006.10.30

Abstract

In Jana 2, to enforce a suity policy of a program, programmer writes permission sets required by the code at the policy file, sets Security Manager on system and executes the program. Then Security Manager checks by stack inspection whether an access request to resource should be granted or denied whenever code tries to access critical resource. In this paper, we develop a visualization tool which helps programmers enforce security policy effectively into programs. This system is based on the static permission check analysis which analyzes permission checks which must succeed or fail at each method. Based on this analysis information, programmer can examine visually how permission checks and their stack inspection are performed. By modifying program or policy file if necessary and examining analysis information repeatedly, programmer can enforce security policy correctly.

Java 2에서 자원에 대한 접근 권한관리를 위하여 프로그래머는 프로그램 실행에 필요한 권한들을 정책파일(polic file)에 기술하고, 보안관 리자(Security Manager)를 설치하여 프로그램을 수행시킨다. 프로그램 실행 중에 자원에 대한 접근을 시도할 때마다. 보안관리자는 스택 인스펙션을 통해 접근 권한이 있는지 검사한다. 본 논문에서는 프로그래머가 안전한 보안정책을 세우는데 편의를 제공하고자 권한검사 관련 정보를 정적으로 분석하여 시각적으로 보여주는 시스템을 구현하였다. 권한김사 시각화 시스템은 정적 권한검사 분석에 기반하여, 각 메소드 별로 항상 성공하거나 항상 실패하는 권한검사를 계산한다. 프로그래머는 프로그램을 실행시켜보기 전에 권한검사와 스택 인스펙션이 어떻게 수행되는지 시각적으로 확인해 볼 수 있다. 이러한 정보를 토대로 안전한 보안정책을 세우기 위해 프로그램이나 정책파일을 수정할 수 있다.

Keywords

References

  1. M. Bartoletti, P. Degano, G. L. Ferrari. 'Stack inspection and secure program transformations', International Journal of Information Security Vol.2 , Issue.3, August, 2004 https://doi.org/10.1007/s10207-004-0038-8
  2. Byeong-Mo Chang, 'Static Check Analysis for Java Stack Inspection', ACM SIGPLAN Notices, To appear https://doi.org/10.1145/1140543.1140550
  3. Boris BokoWski, Andre Spiegel. 'Barat-A Front-End for Java'. Technical Report B-98-99. December, 1998
  4. http://java.sun.com/j2se/1.5.0/docs/api
  5. S. Koleth, M. Hansen, R. Zsolt. open source GPL license, http://jipe.sourceforge.net
  6. F.Nielson, H. R. Nielson, C. HanKin, 'Principles of Program Analysis'. pp.363-390, Springer, 2005
  7. Horstmann, Cay S, G. Cornell, 'Core Java 2', Vol.2, Advanced Features (4th Edition), Sun Microsystems, 2000
  8. C. Fournet and A. D. Gordon. 'Stack inspection: Theory and Variants', Symposium on Principles of Programming Languages, 2001
  9. M. Bartoletti, P. Degano, and G. L. Ferrari. 'Static Analysis for Stack Inspection', International Workshop on Concurrency and Coordination, Vol.54 of ENTCS. Elsevier, 2001
  10. L. Koved, M. Pistoia, A. Kershenbaum. 'Access Rights Analysis for Java', OOPSLA 2002
  11. Ulfar Erlingsson, Fred B. Schneider. 'IRM Enforcement of Java Stack Inspection', IEEE Symposium on Security and Privacy, 2000 https://doi.org/10.1109/SECPRI.2000.848461