Java Binary Enhancement Tool

소프트웨어 스크린 샷:
Java Binary Enhancement Tool
소프트웨어 정보:
버전: 3 R1
업로드 날짜: 3 Jun 15
개발자: Andrew Reisse
라이센스: 무료
인기: 26

Rating: nan/5 (Total Votes: 0)

자바 바이너리 강화 도구 (JBET)는 일반 자바 프로그램 분석 및 조작 도구입니다. 기존 클래스 파일은, 분해 조립 또는 JBET의 API를 통해 프로그램을 편집 할 수있다. JBET은 처음부터 새로운 자바 클래스 파일을 만들 수 있습니다. JBET는 사용자가 구조화 된 방식으로, 용이하게 클래스를 편집 할 수 있도록 자바 이진 (의 .class) 파일의 모든 내용의 편리한 내부 표현을 사용한다.
JBET은 OASIS에서 DARPA 자기 보호 모바일 에이전트 프로젝트의 일부 및 활성 네트워크 프로그램으로 개발되었다 (계약 번호 N66001-00-C-8602) 자동화 된 소프트웨어 난독을 연구하기 위해.
Java 언어 때문에 클래스 파일에 존재하는 정보의 유형에 의해 제공되는 많은 양의 이진 편집 도구를 구성하는 (상대적인) 편의성이 프로젝트를 위해 선택되었다. 우리의이 보고서, 난독 기술 평가 보고서 및 난독 보고서, 다운로드 영역에서 사용할 수 있습니다. 개발 난처 도구는이 릴리스의 일부가 아닙니다.
JBET 또한 자바 표준 라이브러리에 추가 보안 검사를 추가 할 수있는 DARPA / AFRL 존속 서버 프로젝트 (계약 번호 F30602-00-C-0183)에 사용되었다. (자바 보안 API는 이러한 파일이 개봉 후 액세스의 계속 인증 많은 바람직한 보안 검사를 지원하지 않습니다.)
JBET은 플러그 보안 정책을 호출 스텁과 자바 표준 라이브러리의 기본 방법 참조를 대체하기 위해 사용되었다. Jpolicy라는이 도구는 또한이 웹 사이트에서 다운로드 할 수 있습니다. Jpolicy은 현재 매우 불완전하지만, 자신을 자바 보안에서 작업 또는 표준 라이브러리를 변경하는 것과 흥미로운 일이 될 수 있습니다.
JBET에서 사용하는 자바 클래스 파일의 내부 표현은 쉽게 프로그래머가 자바 바이너리 코드 변환을 기록 할 수 있도록하기 위해들이 의도된다. 자바 클래스 파일의 각 요소에 대응하는 내부 데이터 구조를 가지고 : ClassInfo을 전체 클래스, MethodInfo 방법에 대한,의 fieldInfo 필드, Snippit 개별 명령어에 대한 코드 블록 및 교육을위한. Snippit 및 조작법 유효한 Java 프로그램의 자동 생성을 가능하게 자바 오피 구문 및 의미를 이해한다. 자바 호환 수준의 검증도 포함되어 있습니다.
일부 코드 변환들은 자바 지시를 조작하여 직접 프로그래밍하기 어렵다. 이러한 변환을 위해, 코드가 방향성 비순환 그래프 (DAG)의 표현이 가능하다. DAG 표현에서, 각각의 기본 블록은 입력 및 출력 노드 세트, 대응 DAG를 갖는다. 그래프의 가장자리는 "생산자"(예 : 상수로, 또는 계산 결과) 노드 (예 : 메서드 호출 또는 다른 계산 등)을 "사용자"노드를 연결합니다. 기본적인 방법은 블록으로 분할되고, 제어 흐름이 기본 블록 레벨에서 저장된다 (가능한 자바 만 점프 대상을 고정했기 때문에)
그것은 이전의 자바 버전의 클래스 파일에서 작동 할 수 있지만 JBET은, 실행하는 자바 1.4 가상 머신 (VM)이 필요합니다. 공급 포장 및 구축 환경 Cygwin에서와 리눅스와 윈도우를 지원합니다; 그러나, 빌드 프로세스는 간단하고 다른 플랫폼에서 수동으로 수행 할 수있다. 펄은 회귀 테스트가 필요합니다.
Jpolicy는, 구축 자바 1.4 가상 머신 (VM)이 필요합니다 Cygwin에서 리눅스 또는 Windows NT / XP 중 하나. GCC는 윈도우 (Cygwin에서 함께 제공) 구축이 필요합니다. 런타임 시스템은 수 중 리눅스 또는 Windows NT / XP에서 실행 (Sun의 JVM 만에) 자바 1.3 또는 1.4, 수 있습니다. 윈도우 9x 및 Windows 2000도 작동 할 수 있지만 테스트되지 않았습니다.
설치
1. JDK 1.4.1를 설치합니다.
2. 클래스 경로 JDK1.4.1 / JRE / lib 디렉토리 /의 rt.jar
3. CD의 SRC; 확인
그래도 문제가 해결되지 않은 경우 (4), 메이크 파일을 검사합니다. 자바 또는 javac의 경로에 있지 않을 수 있습니다.
5. "병을"실행 "자바 -jar jbet.jar"와 함께 사용할 수있는 jar 파일을 구축합니다.
설치 펄 한 경우 6. "시험을"으로 테스트를 실행합니다.
선택적으로, "회생을, 시험을"실행합니다.
경로에 어딘가에 jbet3 / 빈 / JBET에서 심볼릭 링크를 확인합니다.
용법
JBET 클래스 이름에 대한 JNI 형식을 사용하고, JNI 형식 및 방법 설명. 이 구문의 요약은 'JBET 도움이 구문을'사용합니다. Sun의 JVM 스팩도 도움이 될 수 있습니다.
클래스의 분해를보고, 'JBET 인쇄'를 사용합니다. 당신이 소스를 가지고 클래스를 분해 시도하고 디버그 정보 (-g)로 만들어진 'JBET -P <클래스 패스> 인쇄 <클래스 이름>'. Sun의 JVM 스팩이 명령 참조를 가지고있다.

유사한 소프트웨어

SML/NJ
SML/NJ

3 Jun 15

wxWidgets
wxWidgets

20 Feb 15

omniORB
omniORB

2 Jun 15

Waf
Waf

18 Feb 15

코멘트 Java Binary Enhancement Tool

댓글을 찾을 수 없습니다
코멘트를 추가
이미지를 켜십시오!