Saebyeol
14.03.29
조회 수 6038
추천 수 9
댓글 5










안녕하세요 맛클 가족분들 ^^ 저도 짱구삼촌 님 따라 pkm해제기를 떠났는데요


제가 2틀간 분석한 결과는 이렇습니다


제가 연구한 apk는 SecVideoPlayer.apk 입니다.


우선 apk내부에서도 차이점이있죠




이게  SecVideoPlayer.apk 내부인데요 다른 apk와 비교해보겠습니다




비교한 apk는 PKM화가 되있지 않은 SecSettings.apk입니다 어떠신가요 차이가 보이시나요??


네 바로 하나의 파일이 없죠? manifest.mf이라는 파일이 있길래 한번 제가 열어봤는데 디컴파일 을 안한채 열어도 언어가 깨지지 않는걸 보면 분명 컴파일은 되지 않은 파일이네요


manifest.mf내부를 보시죠

Manifest-Version: 1.0

Created-By: Flipboard Inc. 2013-07-27 - Samsung Electronics. 2013-07-30

Copyright: 2013 Flipboard Inc, Samsung Electronics , All Rights Reserved

Library-Version: 0.14 - S0.1

Info: Confidential. For internal use only

Sealed: true


라고 나와있는데 대충 감이오시나요??

네 Sealed: true 이말을 보니 Sealed: true(봉인 : true)라고 나와있네요

생성 연도를 보니 또한 삼성은 pkm화를 이미 놋3 출시전 s4를 출시하고나서 시작한걸로 추측이 됩니다.

또한 짱구삼촌 님이 언급하신데로 SDK에서 etc1tool.exe이 존재하길래 저도 이놈으로 예시 pkm을 만들어 봤습니다

예시 이미지는 
그냥 폰에 저장된 아무 png로 사용했습니다

이제 이걸 pkm화 를 시키기 위해



이렇게 명령어를 사용했습니다.




그러더니 이렇게 PKM이 만들어 지더군요?

또한 삼성 pkm을 디코딩을 시켜볼려 시도해봤죠



결과는 이렇게 나와버리네요 Bad header PKM header for input file 이라고...

뭔가 수상한 냄새가 나더군요...

이제 그래서 본격적으로 pkm분석을 하기위해 pkm을 뜯어봣는데요 mux_ic_video.pkm 이라는 이미지 파일을 사용했습니다.



이게 삼성 pkm파일의 헤더입니다



이건 제가 만든 pkm내부인데요..어떠신가요 차이가 보이시나요???

삼성 pkm헤더는 IPT0이라는 파일로 시작을 하고 제가만든건 pkm이라는 헤더를 읽어오네요...

여기 까지가 제가 연구한 결과입니다.

결론※※

1. 삼성은 s4 출시이후 s5제작을 돌입하였고 그당시(7월 30일)부터 pkm이미지를 만들기 시작했다

2. pkm이 존재하는 apk내부에는 
Manifest-Version: 1.0
Created-By: Flipboard Inc. 2013-07-27 - Samsung Electronics. 2013-07-30
Copyright: 2013 Flipboard Inc, Samsung Electronics , All Rights Reserved
Library-Version: 0.14 - S0.1
Info: Confidential. For internal use only
Sealed: true
이라는 내용이 존재하는 manifest.mf 파일이 존재한다

3. 삼성의 pkm은 기본 pkm이랑 헤더가 다르다 (IPT0헤더 표시)

4. pkm의 목적은 삼성디자이너들이 자신들이 만든 이미지를 보호하기 차원에서 제작된 것이다.

5. pkm을 풀지 못하면 pkm이 존재하는 apk를 이식할경우 강종이 떠버려서 폰을 마비시킨다.

※추측※※

s5만 pkm이 들어가는 것은 아니다

차후 펌웨어 업데이트후에 API 19 지원기종 (갤럭시노트3 갤럭시s4 갤럭시s4 lte-a 갤럭시노트2 갤럭시s3 및 기타등등)

폰에 이미지들이 pkm보호화 처리될수 있다. 또한 앞으로 나오는 기종들은 ex>갤럭시노트4 이미지가 pkm보호화 처리되는게 

확실하다. 또한 보호화 처리되는 영역 apk들이 확장될수도 있다.


제가 연구한 토대를 바탕으로 하면 이렇네요.

확실히 삼성이 저작권 유출 방지를 위해 머리를 쓰는게 보이네요^^

지금 까지 저의 두서없는 긴글을 읽어주신 여러분 감사합니다.

언젠간 이 pkm이 뚫릴 날이 오겠죠??^^

Written By Saebyeol
Extra Form
첨부
sfsd.png  [File Size:36.8KB/Download:0]
ds.png  [File Size:2.9KB/Download:2]
ds.png  [File Size:4.9KB/Download:0]
sdfs.png  [File Size:1.9KB/Download:0]
df.png  [File Size:10.26MB/Download:0]
dksd.png  [File Size:32.8KB/Download:0]
dksd.png  [File Size:269.7KB/Download:0]
제목 없d음.png  [File Size:56.3KB/Download:0]
제목d 없d음.png  [File Size:64.9KB/Download:0]
제목 없d음.png  [File Size:56.3KB/Download:0]
댓글을 남겨야 다운로드가 가능합니다. 감사의 댓글을 달고 오른쪽 확인버튼을 눌러주세요.
다운로드시 일주일에 한개 이상의 게시물 작성이 필요합니다. 지금 자유게시판에 회원님의 하루를 남겨보세요.
추천♡버튼을 잊지 마세요. 추천인과 회원님 모두 포인트가 적립됩니다.
댓글 5
  • ?
    chitos7
    14.03.29
    박사님 수고가 많으십니다.^^
  • ?
    pkm을 뚫는 사람은 외계인!!! [2.2.7/N900SKSUENC4/4.4.2]
  • profile
    보통 이미지를 etcqtool.exe 인코딩 옵션으로 --encodeNoHeader 옵션을 주면 삼성 이미지와 유사한 16바이트 pkm 으로 시작하지 않는 그런 이미지가 생성되더군요. Bad Header 오류도 같이 뜨구요. 기본 pkm에 존재하는 사이즈 정보등을 포함하는 앞부분 16바이트 헤더를 끼워넣으면 어떻게 될지 궁금하고 헤더가 없는 이미지를 raw etc1 data 라고 하던데 결국 java 를 써야 하는건가 아닐지 ㅜㅡㅜ developer.android.com/reference/android/opengl/ETC1.html developer.android.com/reference/android/opengl/ETC1Util.html [2.2.8/E210SKSUGNA2/4.3]
  • ?
    Artilda™
    14.03.29
    ㅎㅎ..
  • ?
    Saebyeol
    14.03.29
    음.....저도 더 연구를 해봐야겠네요 ㅠㅠ [2.2.7/N900SKSUENC4/4.4.2]
댓글 쓰기 권한이 없습니다.
최신순 목록 검색 쓰기
등록된 글이 없습니다.
1 - 2