ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • SamKEY Crack
    Security 2020. 11. 24. 00:07
    반응형

    *주의사항*

    삼성 스마트폰일경우, 스마트 스위치 어플로 스마트폰 전체 해야하고 

    기타 타사 스마트폰일 경우, 전체 백업 해야합니다.

     

    백업 및 기타 데이터 손실, 보안 문제 등, 기타 어떠한 문제도 본 블로그 및 블로그 주인은 책임없음을 밝힘니다.

     

    백업 및 기타 데이터 손실, 보안 문제 등, 기타 어떠한 문제도 본 블로그 및 블로그 주인은 책임없음을 밝힘니다.

     

    백업 및 기타 데이터 손실, 보안 문제 등, 기타 어떠한 문제도 본 블로그 및 블로그 주인은 책임없음을 밝힘니다.

    서론

    안녕하세요.

    Been94입니다. 오늘은 SamKEY를 크랙하여 Android기반의 삼성 스마트폰 CSC를 변경하려고합니다.

     

    현재 프로젝트를 시작한 배경은 통신사 스마트폰과 통신사 유심이 다를경우 발생하는 스마트폰 기능 제한때문에 시작되었습니다. 예시로 삼성페이,티머니의 교통카드 기능이 제한되는 문제가 있습니다. 이러한 문제를 해결하기 위해서는 유심과 통신사 스마트폰을 동일한 통신사로 변경해야합니다. 하지만 기존에 타사 통신사 스마트폰을 사용하던중에 더 저렴한 다른 통신사의 유심을 사용했을경우, 아래 그림과 같이 문제가 발생합니다. 

     

    문제를 해결하기 위한 다른 방법은 CSC(이하 Consumer Software Customisation) 코드를 변경합니다. 예전 스마트폰의 경우 CSC코드는 키패드에 특정 번호와 특수문자를 입력하면 변경가능한 창이 나오는것이었지만 통신사가 다양해지고 제조사의 패치로 인해 사용자가 정상적인 방법으로 임의로 변경하는것은 불가능합니다. 

     

    더보기

    CSC 자세한설명

    CSC(이하 Consumer Software Customisation)란 스마트폰 제조사에서 각 국가별, 그리고 통신사별로 부여한 코드입니다.

    스마트폰의 동일한 하드웨어와 펌웨어를 CSC에 따라서 다양한 통신사, 자급제 스마트폰으로 분류됩니다.

    각각의 통신사들은 고유앱이 자동으로 설치되며 자급제일 경우, 설치되지 않습니다. 이렇게 같은 펌웨어 CSC 코드 분류를 한 이유는 여러가지 기능적 차이가 발생하기 때문입니다. 삼성페이의 경우 기본적으로 CSC에 설정된 국가에서 발행된 카드만 등록할 수 있고, VoLTE, VoWIFI 등의 기능도 일단은 CSC에 따라 활성화 또는 비활성화가 됩니다. 

     

    이후 테마취약점으로 임의로 제작된 테마로 권한을 상승하고 CSC 변경이 가능하였지만 얼마전 보안 패치로 인해 불가능합니다.

    하지만 Sam KEY 라고 통신사 잠금을 해제 해주는 프로그램이 있습니다.

    해당 프로그램을 사용하려면 크레딧을 구매해야하며 15크레딧당 현재 환율 50,094.45원 정도 나오네요.

    스마트폰의 통신사를 한번정도 변경할 예정이라 1크레딧정도면 충분하고 이베이 또는 아마존에서 해외 카드로 구매가능합니다.  

     

    본 블로그에서는 SamKey의 크레딧 결제를 우회하고 추후 SamKEY 프로그램의 업데이트 방지를 위한 패치도 진행합니다.

     

    **** Sam KEY 취약점

    프로그램으로는 리버싱 방지를 위해 VM프로텍트등 다양한 기법을 사용했습니다.

    하지만 분석결과 클라이언트와 서버의 네트워크 인증부분에서 취약점이 발생했습니다.

     

    1. 재전송 문제

    서버로 부터 받은 정상적인 값을 복사해두고 다시 전송했을 경우, 인증이 완료됩니다.

     

    2. 검증 문제 

    서버로 부터 받은 메시지를 신뢰하기 때문에 발생하는 문제입니다.

     

    3. 평문 전송

    서버로 부터 받은 메시지를 암/복호화 없이 통신합니다.

     

     

    **** Sam KEY 통신과정 (첨부파일로 패킷덤프 올립니다.)

     

    크랙 과정 : SamKEY 프로그램 <--> Crack 프로그램 < ---> 정상 Sam Key 서버

     

    0. 크랙 프로그램은 로컬 프록시 서버로 중간자 역할을 합니다.

        즉, SamKEY 클라이언트가 정상적인 서버로 요청하고 응답받는 모든 패킷의 내용을 볼수있으며 조작까지 가능

     

    1. SamKEY 프로그램에서 최초 로그인할 경우, 아이디/ 패스워드 등을 서버로 전송합니다.

     

    2. 정상 서버는 유저정보를 조회하여 유저의 남은 크레딧, 현재 SamKEY 최신 버전 정보 등을 전송합니다.

     

    3. 남은 크레딧, 현재 SamKEY 최신 버전 정보 등은 Crack 프로그램에서 응답을 조작합니다.

     

    4. 서버의 응답을 신뢰하는 SamKEY 프로그램은 중간에서 조작한 응답대로 조작된 크레딧과 업데이트 체크를 우회합니다.

     

    5. 이후 Sam KEY 프로그램에서 CSC 변경요청 할때, 한번 더 크레딧 검증과정을 서버로 요청하지만 조작된 응답이 돌아오고 스마트폰의 IMIE 정보 및 서버 암호화 키값을 요청하고 응답받습니다.

    서버 암호화 키값은 정상 서버로 부터 받아와야 하므로 조작하지않습니다.

     

    6. 모든 설정이 마무리되면 아래 그림과 같이 작업 성공이라는 메시지가 뜨고 스마트폰은 자동으로 재부팅합니다.

     

    7. SamKEY 프로그램을 사용하면 보통 초기화가 필요없다는 장점있지만

    SamKEY 프로그램은 직접 제작하지 않은 외부 프로그램이므로 스마트폰을 초기화작업 후 복원합니다.

     

    사전준비

    0. 스마트폰 모델명 확인

     -> 예시) SM-G975N

     

    1. 스마트폰 펌웨어 준비

    (안드로이드 보안패치를 다운그레이드를 하기위한 작업이므로, 2020년 8월 1일이거나 이전이면 안하셔도됩니다.)

     -> *. 스마트폰 모델명과 동일한 기종을 다운로드 해야합니다.

     -> *. 스마트폰의 업데이트로 인해 부트로더의 버전이 변경된경우, 다운그레이드가 불가능합니다.

     -> *. 현재 CSC 변경가능한 "안드로이드 보안패치 수준"은 2020년 8월 1일로 가능합니다.

     -> *. 2020년 7월 ~ 10월 사이 보안패치로 인해 삼성 테마로 CSC 변경 취약점은 불가능합니다. 

     

     -> 예시) 파일명 : SM-G975N_3_20200717100433_unlipft8f3_fac.zip

                 안드로이드 버전 : Android Q 10

                 빌드번호 : G975NKSU5CTG3

                 용량 : 4.5 GiB

                 패치날짜 : 2020-08-06

     

    아래와 같이 스마트폰의 설정 정보 -> 빌드번호에서 부트로더버전과 동일한 펌웨어 부트로더버전에서

    2020년 8월 패치로 다운로드 받아야합니다.

    (이후 패치는 댓글부탁드립니다.)

     

     

    펌웨어 다운로드 링크 : 이동하기

     

     

    1.1 오딘 최신버전으로 다운그레이드를 진행합니다.

     

     

    *안드로이드 보안 패치가 2020년 8월 1일 또는 이전, 다운그레이드 하신분들은 계속 진행하세요.*

     

    2. 아래 링크에 따라 최신 버전을 다운로드 하셔도 되고, 첨부파일 구버전을 다운로드받으셔도 됩니다.

     

    구버전의 경우, 스마트폰 기종에 따라 지원이 안될 수 도 있습니다. 

     

    Sam KEY 설치 방법 및 시스템 설정 방법은 본 블로그에서 다루지않습니다.

    인터넷을 참고해주세요.

     

    Sam KEY 다운로드 링크 : 이동하기

     

     

    3. SamKEY 프로그램을 실행 하기 전, 크랙 프로그램을 먼저 실행해야합니다.

        -> 0. 인터넷 설정(프록시)를 복원합니다.

                *. CSC 설정이 끝난 후 PC 인터넷이 불가능할때, 기본 설정은 no

                *.기본적으로 프록시를 이용하므로 스마트폰 CSC 설정이 끝나면 프록시는 해제해야합니다.

                *.아래 그림과 같이 해제가 되어야 CSC 설정이 끝난 후 PC에서 인터넷이 가능합니다.

                *. SamKEY 크랙 & CSC 설정 할때는 켜져있어야합니다.

        -> 1. 프록시로 사용할 포트를 설정합니다. 기본으로 8080 을 입력합니다.

        -> 2. 사용할 크레딧을 설정합니다. 적당한 크레딧 크기로 입력합니다.

        -> 3. 현재 사용하는 SamKEY 프로그램 버전을 입력해주세요. 업데이트를 방지합니다.

     

    4. 사용법 영상

     

    S**의 CSC 변경

     

    서비스 공급자 SW 버전이 "변경 부분/변경 부분/처음 통신사"

    SamKEY 이후 => SKC/SKC/SKC 

     

     

     

     

     

    K***의 CSC 변경

     

    서비스 공급자 SW 버전이 "변경 부분/변경 부분/처음 통신사"

    SamKEY 이후 => KTC/KTC/SKC 

     

     

     

     

     

     

     

     

    L***의 CSC 변경

     

    서비스 공급자 SW 버전이 "변경 부분/변경 부분/처음 통신사"

    SamKEY 이후 => LUC/LUC/SKC 

     

     

     

     

     

     

    자급제 CSC 변경

     

    서비스 공급자 SW 버전이 "변경 부분/변경 부분/처음 통신사"

    SamKEY 이후 => KOO/KOO/SKC 

     

     

     

    5. 소스코드와 프로그램, 그리고 SamKEY 패킷분석 파일 첨부합니다.

     

    개발 언어 : Golang

     

    빠른 개발로 인해 버그가 존재할 수도 있으며, 주석 또한 필요한 부분만 있습니다. 

    수정할 부분은 댓글로 부탁드립니다.

     

     

    패킷분석 : 와이어샤크

     

     

    SamKeyCrack.zip
    3.69MB
    SamKEY3216.z01
    10.00MB
    SamKEY3216.z02
    10.00MB
    SamKEY3216.zip
    1.35MB

    반응형

    'Security' 카테고리의 다른 글

    [DRDOS] 시뮬레이션 과 분석  (0) 2015.12.28
Designed by Tistory.