코락 CoRock
코딩하는 락스타
코락 CoRock
  • 분류 전체보기 (393)
    • frameworks (19)
      • spring (19)
      • spring-boot (0)
      • testing (0)
    • languages (94)
      • java (39)
      • kotlin (0)
      • python (42)
      • r (13)
    • libraries (0)
    • programming (239)
      • android (13)
      • c (17)
      • cpp (22)
      • database (18)
      • design-pattern (4)
      • data-structures (11)
      • git (8)
      • hadoop (6)
      • html-css (7)
      • issue (4)
      • javascript (26)
      • jsp (34)
      • os (29)
      • php (6)
      • preferences (19)
      • etc (15)
    • discography (37)
      • k-pop (18)
      • pop (19)
    • blog (3)

블로그 메뉴

  • Programming
  • Java
  • JavaScript
  • Discography
  • K-Pop Songs
  • Pop Songs
  • Blog
  • Guestbook

공지사항

인기 글

태그

  • jsp
  • Spring
  • Java
  • r
  • python
  • Android
  • javascript
  • 파이썬
  • oracle
  • CentOS
  • linux
  • 자바스크립트

최근 댓글

최근 글

티스토리

반응형
hELLO · Designed By 정상우.
코락 CoRock

코딩하는 락스타

[Spring] 코드 난독화
frameworks/spring

[Spring] 코드 난독화

2018. 8. 3. 14:07
반응형


9. 코드 난독화


9.1 자바스크립트 난독화


* 자바스크립트는 클라이언트에서 실행되는 스크립트 언어이므로 소스 코드가 그대로 노출됨


* 자바스크립트 난독화 사이트


http://dean.edwards.name/packer/



9.3 자바 코드 난독화(Java Code Obfuscation)


- 자바 프로그램은 디컴파일(decompile), 디스어셈블(disassemble)이 가능하므로 코드 난독화가 필요함


- 프로가드(proguard) : 대표적인 자바 난독화 라이브러리


- 변수명, method name을 읽기 어렵게 변환함


- 난독화를 해도 근본적으로 디컴파일은 막기 어려움


- spring 프로젝트보다는 자바 프로젝트에 적합(war 파일보다는 jar 파일로 export 할 경우에 적합함, 어노테이션, xml 설정 등에는 난독화 작용이 어려움)


9.4 자바 코드 난독화 실습


- jad(자바 디컴파일러), 자바 실습소스

- 자바 실습소스를 이클립스로 import 한 후 jar 파일로 export

- jad에서 export한 jar 파일을 열어서 디컴파일된 소스 코드 확ㅇ;ㄴ

- 프로가드 사이트 : http://proguard.sourceforge.net


proguard 6.0 다운로드 주소 : https://sourceforge.net/projects/proguard/files/


난독화 테스트할 jar 파일 준비(jsp 프로젝트보다는 java 프로젝트로 테스트하는 것이 더 좋음), jar 파일을 찾기 쉬운 경로에 미리 복사


압축 해제 후 cmd로 접속


lib 디렉토리에서 java -jar proguardgui.jar 입력


좌측 메뉴 Input/Output을 누른 후

우측 상단의 Add Input, Add output 버튼을 클릭하여 원본 jar 파일과 변환할 jar 파일을 입력함


하단의 rt.jar 파일의 경로가 정확한지 확인해야 함


Add Input : 원본 jar 파일

Add Output : 변환할 jar 파일

Next 버튼을 계속 누른다.


난독화 처리가 완료된 후 jd-gui.exe 프로그램을 실행하여 변수, method 등이 읽기 어려운 이름으로 변경된 것을 확인한다.


반응형
저작자표시 비영리 변경금지 (새창열림)
    'frameworks/spring' 카테고리의 다른 글
    • [Spring] 이메일 보내기
    • [Spring] 파일 업로드(ajax 방식)
    • [Spring] Interceptor(인터셉터)
    • [Spring] AOP
    코락 CoRock
    코락 CoRock
    A COder dreaming of being a ROCKstar

    티스토리툴바