안녕하세요.

요즘 몇 몇 분들이 삼성 FUS와 KIES, 펌웨어 복호화에 관심이 많으신 것 같습니다.

저도 관심이 많습니다만, 관련 지식이 없다보니 이게 결코 쉽지가 않네요.

그래서 이번 기회에 정보를 함께 공유해보고, 어떻게 해야 KIES를 통해 비공식 펌웨어 업그레이드를 할 수 있는가에 대해 얘기를 나누어 볼까 합니다.


1. KIES의 펌웨어 업그레이드 원리

# 펌업을 할 시에 처리되는 작업들

1) www.noontang.com이라는 호스트에 접속하여 뭔가를 요청하는 것 같습니다.

## Request Headers:
GET /piterpen_unicode/sdkv2/license.asp?id=%53%41%4d%53%55%4e%47%53%44%4b%5f%43%53%48%41%52%50%47%45%4e&psw=%59%45%50%50%5f%47%45%4e%5f%43%53%48%41%52%50%5f%53%44%4b HTTP/1.1

해석해보면

GET
/piterpen_unicode/sdkv2/license.asp?
id=SAMSUNGSDK_CSHARPGEN
&
psw=YEPP_GEN_CSHARP_SDK
HTTP/1.1

뭔지 모르겠습니다. (그게 제가 이 글을 쓰는 이유니까요!)


2) fus.samsungmobile.com 이라는 호스트에 접속해서 펌웨어 정보를 얻어옵니다.

## Request Headers:
POST http://fus.samsungmobile.com/MS_TEST/msfus.php HTTP/1.1
Content-Type: appliction/x-www-form-urlencoded
User-Agent: SAMSUNG_KIES
Host: fus.samsungmobile.com
Content-Length: 1110
Expect: 100-continue
Proxy-Connection: Keep-Alive

KIES가 fus.samsungmobile.com 으로 펌웨어 정보를 담아서 요청을 합니다.

그럼 fus.samsungmobile.com에서 반응을 하죠. 현재 날아온 펌웨어 정보와 서버에 등록된 최신 펌웨어를 비교해서, 조건에 맞으면 최신 펌웨어의 각종 정보가 담긴 내용을 KIES로 다시 전송해줍니다.


아래는 DH19 펌웨어를 가진 기기를 DI03으로 업그레이드할 때의 예제입니다.


## 요청하는 정보





## 요청이 합당할 경우 DI03을 반환함 (현재 이클레어 최신)





몇 가지 매우 흥미로운 것이 있습니다.

http://fus.samsungmobile.com/Phone_Binary/10/SHW-M110S_SHW-M110SDI03_SHW-M110SDI03_SHW-M110SDH09_SHW-M110SDH09_KR_SKT.zip.enc

네. 펌웨어를 받을 수 있는 주소입니다. 확장자의 enc에서 볼 수 있듯이 암호화 되어있는 압축파일입니다. 3542609 를 살펴보면, 복호화 코드가 3542609임을 알 수 있습니다. 저번에 유출되었던 DI29는 위의 주소를 약간 응용하여 암호화된 압축 파일을 받은 다음에, 특수한 개인제작 프로그램을 이용하여 복호화 코드만 알아낸 뒤 본문에 첨부된 Decoder로 압축을 해제하여 배포된 것 입니다.


2. 우리가 할 수 있는 것들?

1) 웹 디버깅 프로그램(e.g. fiddler2)으로 KIES가 동작하는 동안 주고 받는 데이터를 가로채서 우리가 원하는 정보로 바꾼 다음에 펌웨어 업그레이드를 진행할 수 있지 않을까 싶습니다.

2) 위에서 언급한 개인제작 프로그램을 우리도 만들 수 있지 않을까요. (-_-)

3) 개인이 운영하는 서버에 펌웨어를 올려놓고 다운로드 받는 사람들의 컴퓨터의 호스트를 해당 서버로 수정한 다음, KIES가 fus.samsungmobile.com 에 접속해서 처리하는 일련의 과정들을 흉내낼 수 있지 않을까요..........




여러 능력자분들이 모두 함께 힘을 합쳐 무언가를 만들어낼 수 있었으면 좋겠습니다! :D

댓글로 함께해 주세요!
댓글 13
  • ?
    BoUnD™
    10.11.21
    이리긴글에 덧글이없단말인가ㅠ
  • ?
    bestksh00
    10.11.21
    이 글을 알아들은 사람이 몇이나 될까요 ㅠㅠ 무슨말인지 하나도 모르겠심;;
  • ?
    강류
    10.11.24
    읽을수 있는건 한글이요..읽을수 없는건 영어라...
  • ?
    ㄱ나니
    10.11.24
    /piterpen_unicode/sdkv2/license.asp? (이 페이지에)
    id=SAMSUNGSDK_CSHARPGEN (아이디 SAMSUNGSDK_CSHARPGEN)
    &
    psw=YEPP_GEN_CSHARP_SDK (패스워드 YEPP_GEN_CSHARP_SDK ..로 접속합니다.)
    HTTP/1.1 (HTTP 1.1 표준으로.)

    .........까지만 알겠어요. (이미 알고 계시겠지만. 크흙;;;;;)

    결론은 페이지(사이트) 로그인(ActiveX 로그인 프로그램과 유사)인것 같아요.
    로그인이 되어야 뭐든 퍼올수 있다고 (전직장에서) 배운듯해요.
  • ?
    대학생
    10.11.25
    검은건 글씨요 흰건 바탕이니 그것이 조화롭도다 ......
  • ?
    노다메
    10.11.30
    noonang 사이트에서 리턴이 ? 0 이라 먼가 흥미롭네요..ㅋ..패스 바꾸면 ?2
    공식 연계 서버는 아닌듯도한데요.ㅋ.
    구체적인 모양새가 구상된다면 여럿이 같이 진행하면 재밌을듯한//ㅋ;;
  • ?
    잘 몰라도 대단한것 알겠네요 ㅋㅋㅋㅋ
  • ?
    drimy
    10.12.03
    처음 license.asp로 아이디와 패스워드를 전송해 로그인 하고,
    펌웨어정보를 전달해 최종적으로 필요한 펌웨어가 있으면 전송 받아 펌웨어 업데이트를 진행하는
    순서로 업데이트가 진행되는것으로 보입니다.

    삼성이 아닌 일반 사용자가 kies를 통해 펌웨어 업데이트를 사용한다면 필요한것은.
    일단 kies를 자신이 원하는 서버로 접속하도록 리버싱엔지니어링을 통해 리버싱 해야 합니다.
    그렇게 한 후 변경한 주소로 작동되는 웹서버를 만들어 이 서버에서 사용자가 만든 펌웨어를 전송하도록
    구성해 놓으면 됩니다. 일단 방법은 이렇습니다만..

    이게 쉬운일은 아닐겁니다^^
  • ?
    보님
    10.12.03
    릴리나이저님 글을 몇번이고 반복해서 읽고 또 읽고 인터넷 검색도하고 해서 열심히 공부했습니다.

    그래서 hosts 파일을 수정하여 fus.samsungmobile.com 도메인을 localhost에 연결되도록 하였습니다. 그리고 컴퓨터에 php 서버를 셋팅하고 LATEST_FW_VERSION 정보를 조작하여 kies에서 업데이트가 되도록 했습니다.
    현재 저의 갤럭시A가 프로요(DK23)로 업그레이드 되어 있는 상태입니다. 같은 버전 DK23 펍업은 이상없이 잘 이루어집니다. 어짜피 같은 버전이라서 루팅이랑 ext 패치가 풀리는 것 외엔 변화가 없습니다.

    제가 원하는것은 이클레어로 다운 그레이드 하는 것입니다. 즉, 프로요(DK23)에서 이클레어(DF27)로 내려가고자 하는 것입니다.
    이클레어의 DF27은 BINARY_URI http://fus.samsungmobile.com/Phone_Binary/10/SHW-M100S_SHW-M100SDF27_SHW-M100SDF27_SHW-M100SDF17_SHW-M100SDF17_KR_SKT.zip.enc 만 알고 있고 BINARY_ENCRYPT_STRING 복호화 코드는 모릅니다.

    복호화 코드를 알 수 있는 방법이 없을까요?

    그런데 지금 삼성펌웨어 업그레이드 프로젝트는 한창 진행되고 있는 건가요?ㅎㅎ
  • ?
    GBO경준
    10.12.04
    도저히;;;; 알아먹을수 있는 대화 내용이 아니군요...
  • ?
    pure
    10.12.09
    굉장히 흥미로운 이야기네요~! 저기서 말하는 개인프로그램이라면.. 몇개의 키 예제만 알아도 충분히 만들 수 있겠네요.
  • ?
    GOTOFBI
    10.12.13
    이미 해외쪽에서 디코더가 나와있습니다.
    http://db.tt/i0yM0Py

    제 생각으로는 KIES를 이용 할 필요도 없다고 봅니다.
    fus.samsungmobile.com 에다가 POST 날려서 내려오는 enc파일 주소와 enc string만 있으면 됩니다.

    위의 예제로 보자면...

    http://fus.samsungmobile.com/Phone_Binary/10/SHW-M110S_SHW-M110SDI03_SHW-M110SDI03_SHW-M110SDH09_SHW-M110SDH09_KR_SKT.zip.enc

    3542609

    이 두가지가 핵심이겠군요.

    제가 처음에 달아놓은 링크에서 받으신 Decrypt를 이용하면 원본 zip파일이 나옵니다
    Decrypt SHW-M110S_SHW-M110SDI03_SHW-M110SDI03_SHW-M110SDH09_SHW-M110SDH09_KR_SKT.zip.enc 3542609

    원본 zip파일을 열어보면 tar 파일이 보이고요...
  • ?
    글을 읽은 권한이 없는것 같네요ㅋㅋㅋ
댓글 쓰기 권한이 없습니다.
List of Articles
제목 글쓴이 추천 조회 날짜
롬쿠킹 테이크야누스 4.1.2젤리밤1탄^@^!! 14 file 나나낸ᆞ 8 7975 2014.12.20
롬쿠킹 [SHV-E250S] SKT갤럭시 노트2 MF6 ValuePack 배포 14 file 히어로즈 12 4210 2013.07.15
롬쿠킹 [갤럭시S] SHW-M110S 프로요 SK22 커스텀롬 (deodex,zipalign) 14 file HTC_Kovsky 3 16663 2010.12.05
롬쿠킹 Cyanogenmod7 포팅중지 및 Cyanogenmod9 포팅 준비 14 요크 8 7666 2011.10.30
롬쿠킹 갤스 TC22 OC 1.3GHz 순종Kernel(1.2GHz추가) 13 file vulcano 2 27513 2011.04.06
롬쿠킹 [SHW-M440S]SKT갤럭시S3 3G MH1 LightPack을 배포했습니다. 13 히어로즈 12 6121 2013.08.20
롬쿠킹 STK 갤럭시S3 3G(SHW-M440S) 쿠킹롬 배포 예정 13 히어로즈 6 8272 2013.11.17
롬쿠킹 자양님과 릴리니아님 덕분에 TB23 ext4 투폰 커널 만드러써요~!!! 13 WHacker 4534 2011.03.06
롬쿠킹 갤럭시S 루트 apk 13 file dseo80 11216 2010.08.06
롬쿠킹 [삼성 펌웨어 업그레이드 프로젝트] KIES와 함께하는 신나는 해킹! 13 Liliniser 1 14450 2010.11.04
롬쿠킹 숫자놀이 3천대 12 file rhkffk 6487 2011.01.05
롬쿠킹 [발제] 공장 모델명 변경(또는 Fake), MAC 변경(또는 Fake) 12 블랙쏘온 3619 2010.08.16
롬쿠킹 bootanimation.zip로 qmg파일을 대체하기 12 다븟이(An 5 7078 2011.09.06
롬쿠킹 SHW-M110S SK05 initramfs 12 Liliniser 8772 2010.11.21
롬쿠킹 (SKT) M250S 1.5OC Kernel 12 file 갤라그2 4 6934 2011.05.14
롬쿠킹 갤럭시s 패턴 어플 12 전 주임 11028 2010.12.09
롬쿠킹 sl28 테그라크 원낸드에 HTC_Kovsky 님 1.3 OC커널 적용 후기 12 file 갤맨 2 6239 2011.02.10
롬쿠킹 Dokdo-Project 3.1.10 For Galaxy S2 (SHW-M250S/K) 12 file 베가레이 11 13372 2014.03.23
롬쿠킹 [테스트] TA28 OC + Configurable UV Kernel 11 file HTC_Kovsky 4 6079 2011.03.01
롬쿠킹 갤럭시S 부팅시 마운트 스크립트 짜기 11 file 슈퍼유 9029 2010.08.15
롬쿠킹 SKT_Note 3 TouchWizHome S5 _ 4×5-5×5 11 file tiep1984 8 5601 2014.07.15
롬쿠킹 ntfs for android 11 file 벼리 4 7464 2011.08.01
롬쿠킹 nilfs_cleanerd 없다는 분들 11 미라클 4479 2010.11.04
롬쿠킹 갤럭시S3 유플(SHV-E210L)용 MIUI 제작중입니다!! 10 ohk990102 13 7363 2013.12.06
롬쿠킹 SKT&삼성 순정 app 한방에 지우는 스크립트 10 file 블랙쏘온 1 8951 2010.08.12
1 4 - 17