블로그 이미지
안녕하세요~ iolate(isho) 의 블로그 입니다~! iolate

카테고리

분류 전체보기 (164)
Server, Cloud (7)
끄적끄적 (9)
Linux, Ubuntu (22)
개발질 (44)
Mac (18)
iOS (23)
IoT (13)
NAS (1)
Web (5)
Network (3)
Review (10)
기타 (9)
비공개글 (0)
Total598,649
Today192
Yesterday180

'IMEI'에 해당되는 글 1건

  1. 2013.08.14 IMEI, 시리얼 넘버 등 바꾸기 삽질 (ing..) (17)

다른 일 때문에 삽질한게 있어서 간략히(쓰고 보니 난잡) 적어봄.


내 필요에 의해서 한건 아니고 남이 부탁해서 시작한건데 생각보다 꽤나 멀리왔다..;; ㅋㅋㅋ
그 사람이 왜 필요한건지는 아직까지 미스테리....

IMEI, 시리얼넘버 등을 바꾸는게 필요했는데 실제로 완전히 바꾸는건 필요없고 그냥 보이는 것만 바꿔도 되는거였음.

(뭐 보이는걸 바꾸기 위해 통신시에 실제 사용되는 IMEI까지 바꿔보긴 했지만)

우선 IMEI 기준 진짜로 바꾸지 않고 보이는 곳만 바꿀려고 시도했다.

난 속이는게 목적이지 바꿔 쓰는게 목적이 아니였으니..
무엇보다 저거 바꾸면 위법이다 ㅋㅋ

저들이 보이는 곳이라면
1. 설정앱 - 정보
2. 전화 - *#06# (IMEI)
3. iTunes 연결시 뜨는 정보
정도이다.

이중에 1번, 설정앱은 테이블뷰를 후킹함으로써 간단히 바꿀 수 있고, 그게 아니라도 IOKit 에서 값을 가져올때 바꿔주면 된다.(후자는 말이야 쉽지 직접 해볼려면 고생은 할거다 ㅋㅋㅋ 요건 밑에서 다시 말할거임)

여튼 문제는 2, 3번. 둘다 그때그때 가져오는게 아니라 lockdownd 가 최초로 가져오고, 그 값을 계속 돌려쓰는 것 같다. (사실 2번의 경우는 그럴 것이라 추정)

2번 *#06# 은 통화앱에서 다이얼하면 SpringBoard 에서 뷰를 띄우므로, 이것도 적당히 후킹가능.
CoreTelephonyUI.framework 의 클래스를 후킹했다.

3번 아이튠즈는, 아이폰에서 데이터를 가져가는 부분에서 가로챌려 했는데 어느 데몬이 아이튠즈와 통신하는지 찾지를 못했었다 ㅠㅠ
ptpd 라는 녀석이 (이름에도 불구하고) 데이터를 교환하는 것 같아서 삽질해봤는데 역시나 이름만큼의 역할만 하는듯...;;ㅠ
결론은 이 녀석도 lockdownd...

이렇게 하다보니 진짜 사용되는 IMEI 를 바꾸는 과정까지 와버렸다..

IMEI는 CoreTelephony 에서 가져올 줄 알았는데

왠만한 프로세스에서 시리얼, IMEI 등의 정보를 모두 IOKit 이나 lockdownd 으로부터 가져온다.


그래서 각 프로세스 들에서 IOKit 으로 부터 하드웨어 정보를 읽어오는 부분, lockdownd 에서 정보를 가져오는 부분.

그리고 마지막으로 혹시 모르니 CoreTelephony 까지 후킹해주면 폰에서 사용하는 IMEI 가 완전히 바뀐다.


USB 연결시 아이튠즈에서 보이는 IMEI와 시리얼 까지 바뀌고.


나의 경우엔 lockdownd, Preferences 정도만 후킹하고 패쓰~

맥어드레스는 블투, 와파를 같은 키 값으로 가져오는 문제가 있던데 따로 옵션이 있거나, 와파 맥어드레스의 경우 터미널 커맨드로 변경이 가능하니 그거를 하자.. ㅋㅋㅋ



여기서 문제는.......

IMEI 를 바꿔버리면 폰 사용이 불가능해 진다!!!

폰 복원 직후에 액티베이션 하는 화면(유심 넣으라는 부분)들을 모두 별 생각없이 지나가겠지만, IMEI를 바꾸면 저 화면을 다시 만날 수 있다.ㅋ
(시리얼만 바꿔도 저 화면으로 빠지는지는 확실하지 않다 하다가 형한테 컴터자리 쫓겨나서 ㅋㅋ)
다행히, 원상태로 돌리면 iCloud 설정 정도만 다시하고 재사용이 가능해지지만, IMEI를 바꾸면 실질적인 폰사용이 안된다는 소리...
아이러니한건 예전에 쓰던 3gs IMEI를 테스트중이던 4에 넣어봤는데 그래도 안되더라. 바꾼 시리얼 때문인지.... 확실한건 좀더 해봐야 될것 같다.

핵티베이션도 안해봤다. 아마 핵티베이션 하면 인증화면은 통과할 것 같은데, 그 후에 폰 사용은 당연히 안되겠지...?


좀만 더하면 성공할 것 같긴한데 잘 모르겠다.
어차피 내 목적은 눈속임 만이라서, lockdownd 만 건드려서 아이튠즈의 값을 바꾼다거나..

(전화 앱은 따로 후킹해서 값 바꾸는데 성공했으니..)

아니면 전화 기능이 되던 말던 핵티베이션을 한다던가......

핵티베이션도 트윅으로 돌아가는 것 같던데 그거 오픈소스면 좋으련만...


문득 궁금해지는건, 저런식으로 유심이 있는것 처럼 만들어버리면, 유심이 꼽혀 있지 않아도 내 유심으로 전화가 될까....? ㅋㅋㅋ
이것도 나중에 해봐야지.....


저게 수능 98일 전에 하던 삽질 ㅋ
이거 쓰는 지금은... 85일쯤 남았던가......ㅋㅋㅋ


Posted by iolate

최근에 달린 댓글

최근에 받은 트랙백

글 보관함