아이폰 액티베이션부터 유튜브 활성화, 스크린샷까지 총정리

34 Comments

이 글은 iPhone Firmware 1.0.2 기준으로 작성되었으며, 맥을 사용하여 아이폰 액티베이션과 유튜브 활성화 그리고 아이폰 접근을 위한 SSH 설치와 스크린 샷 프로그램 설치까지 한 번에 끝내는 설명서입니다. 유튜브 사용은 국내에서는 거의 최초가 아닐까요? ;-)

설치시 터미널을 사용하면 더 빠르고 가볍게 설치 할 수 있지만, 터미널을 잘 못쓰시는 분들을 위해 가능한 한 터미널을 많이 안쓰는 방법으로 설명을 했고, 스크린샷 프로그램은 GUI 까지 입히기엔 시간이 부족해서 GUI 프로그램은 만들지 못했습니다(아이폰이 제 것이 아니라 앞으로도 할 수가 없습니다. ㅎㅎ). 누가 쉽게 GUI 로 만들어주시면 좋을 것 같네요. ^^

※ 주의!! : 이 문서에 따라 아이폰 해킹을 시도한 경우에 발생하는 문제에 대해서는 일체 문의를 받거나 책임지지 않습니다.

※ 아이폰을 이미 액티베이션 시켜놓으셨고, 유튜브 활성화를 하고 싶으신 분이라면 2번부터 하셔도 무방합니다.

1. 아이폰 액티베이션하기

먼저 다음에서 iActivator 와 iPhone Firmware 1.0.2 를 다운로드 받습니다. iPhone Firmware 는 다운로드 받은 후 압축을 풀어서 phonedmg 정도의 이름을 폴더안에 집어넣어둡니다. (압축이 풀리지 않으면 확장자를 zip 으로 바꿔놓으시면 압축이 풀릴겁니다.)

iActivator 홈페이지
iActivator 다운로드 페이지

iPhone Firmware 1.0.2 다운로드

※ iPhone Firmware 파일은 1.0.2 업데이트를 하셨다면, 홈 -> 라이브러리 -> iTunes -> iPhone Software Updates 에 가시면 있습니다.

그 다음 iPhone 을 맥에 연결하고 iTunes 에 iPhone 이 활성화되면 iPhone 복원을 눌러 아이폰을 초기화시킵니다.

아이폰 초기화가 끝나면 iTunes 를 종료하고, 응용 프로그램 폴더의 유틸리티 폴더에서 활성 상태 보기라는 프로그램을 실행시킨 후 아래의 그림처럼 iTunes Helper 항목을 찾은 뒤 중지 버튼을 눌러 iTunes Helper 를 중지시킵니다.

killituneshelper.jpg

이제 iActivator 실행한 후 다음 스크린샷 아래의 순서에 따라 아이폰을 액티베이션 시킵니다. (iActivator 의 버튼 순서대로 하면 잘 안될 경우가 많습니다. 아래의 순서대로 하는 것이 가장 높은 성공률을 보입니다)

iactivator.jpg

먼저 Generate Activation 을 이용해 Activation 파일을 생성합니다. (IMEI, ICCID 코드는 iPhone 의 화면에서 connect to iTunes 라고 쓰여진 곳 오른쪽의 i 버튼을 누르면 나오며, IMEI, ICCID 코드는 띄어쓰기 없이 적어넣으셔야 합니다.)

그 다음 Perform Jailbreak 를 이용해 아이폰을 쓰기(해킹) 가능한 상태로 만듭니다. 이 때 파일 선택창이 나오면 위에서 iPhone Firmware 를 풀어놓은 폴더를 선택하시면 됩니다. (이어폰 위쪽의 Sleep 버튼과 정면 아래쪽의 메뉴 버튼을 동시에 누른 후 노란색 역삼각형안에 Please connect to iTunes 라는 글이 나올 때까지 기다리면 됩니다. 약 2-30초 정도 걸립니다.)

그 다음 Put PEM FileActivate iPhone 버튼을 순서대로 누르면 액티베이션이 완료됩니다. (Activate iPhone 버튼 클릭시에 선택하는 파일은 조금 전에 Generate Activation 과정에서 만들었던 파일입니다.)

만일 Put PEM File 과 Activate iPhone 버튼이 활성화가 안되거나 Activate iPhone 실행 시 에러가 생긴다면 Perform Jailbreak 과정부터 다시 실행하셔야합니다.

액티베이션이 정상적으로 완료되었다면 Return to Jail 버튼을 눌러 아이폰을 해킹 전 상태로 돌려놓습니다.(이건 안해도 큰 문제는 없습니다.)

2. SSH 데몬 설치

아이폰의 고급 해킹을 위해서 아이폰 내부로 원격 접속할 수 있게 만들어주는 SSH 데몬을 설치하는 과정입니다.

먼저 다음에서 AppTapp Installer 프로그램을 다운로드 받아서 AppTapp Installer 를 설치합니다. 설치는 더블클릭 한 번으로 쉽게 끝납니다.

AppTapp Installer 홈페이지
AppTapp Installer 다운로드

AppTapp Installer 실행 후 프로그램이 종료되지 않아도 아이폰 리부팅이 성공하면 설치가 완료된 것이므로 Installer 를 강제종료해주면 됩니다.

installed_installer.png

이제 아이폰에서 맨 아래 생긴 Installer 프로그램을 실행합니다. 실행 후 프로그램 목록이 안나오면 우측 아래쪽에 있는 Refresh 버튼을 한 번 눌러줍니다.(주의 : Installer 는 인터넷에서 패키지를 다운로드 받아서 설치하는 프로그램이므로 반드시 무선인터넷 접속이 가능한 환경에서만 제대로 작동합니다.)

그 후 다음과 같은 순서로 필요한 패키지들을 설치합니다.

Update -> Installer
Community Sources
BSD Subsystem
OpenSSH

리부팅하면 SSH 설치 끝.

※ 루트 암호는 기본적으로 dottie 로 설정되어 있습니다. 별로 암호를 바꿀 필요는 없다고 생각하지만 찝찝하신 분들은 Hack the iPhone (클릭)을 참고하여 암호를 재설정해주세요.

3. Youtube 활성화와 screenshot 프로그램 설치하기

먼저 Youtube 활성화와 스크린샷 프로그램을 쉽게 만들어 놓은 다음의 파일들을 받습니다. (제가 만든거니, 작동이 잘 안되거나 시스템이 이상해져도 책임지지 않습니다. 흐흐..)

파일 다운로드 : youtubenscreenshot.zip

※ 여기서부터는 터미널을 조금 사용해야하나 터미널 사용이 익숙하지 않으신 분들도 쉽게 따라하실 수 있으므로 겁내지 마시고 천천히 따라해보세요.

위의 파일을 다운로드 받아 데스크탑에 압축을 풀어놓은 후 응용프로그램 폴더의 유틸리티 폴더 안에 있는 터미널 프로그램을 실행시킵니다.

그 후 다음의 명령어들 복사해서 터미널에 붙여넣어 실행시킵니다.

cd ~/Desktop/youtubeNscreenshot

./easy_install 192.168.0.5 1234

여기서 easy_install 뒤의 192.168.0.5 는 Settings -> Wi-Fi 에서 선택 된 무선 신호 우측에 있는 파란색 화살표 버튼을 누르시면 나오는 IP Address 이며, 아이폰에 접근할 수 있는 주소입니다.

그리고 그 뒤의 1234 는 지금 쓰고 있는 맥 계정의 암호입니다. iphone_screenshot 를 /usr/bin 에 복사해 넣어 쉽게 사용할 수 있도록 하기 위해 사용됩니다.

ipaddress.png

프로그램들을 실행한 결과는 다음과 같습니다(조금 더 복잡하게 나올 수도 있습니다).

youtubenscreenshot.jpg

마지막으로 리부팅하면 유튜브가 활성화 될 겁니다.

이게 끝입니다. 쉽죠? ^^

※ 유튜브 활성화 후 유튜브를 실행하면 스트리밍이 무지하게 늦습니다만, 몇 번 사용하고 나면 빨라집니다. 환경에 따라 다른건지는 잘 모르겠습니다..

※ ssh 암호를 바꾸신 분들은 easy_install 과 screenshot_files/iphone_screenshot 파일 안의 dottie 라고 된 부분을 바꾸신 암호로 바꿔주세요.

※ 스크린샷 프로그램 사용하기

스크린 샷 프로그램은 www.tuaw.com의 것을 사용하였으며, 위의 3번 과정에서 맥에 이미 설치가 되었을겁니다. 기본 프로그램은 아이폰에 접속해서 써야해서 쉽게 사용하기는 힘든 관계로 제가 스크립트를 조금 만들어 넣었습니다. 시간이 되시는 분이 계시면 참고하셔서 GUI 프로그램으로 만들어 주시면 더 쉽게 사용할 수 있을 것 같네요. ^^

스크린샷을 뜨시려면 터미널을 여시고 다음과 같은 명령어를 넣으시면 됩니다.

iphone_screenshot 192.168.0.5

192.168.0.5 는 위에서 설명했던 아이폰의 주소입니다.

이것으로 끝. (팁 : ipho 까지만 치시고 탭을 누르시면 명령어가 자동 완성 될겁니다)

파일은 iphone_screenshot 프로그램을 실행시킨 현재 위치에 foo_0.png 라는 파일로 생성되어 있을겁니다.(터미널을 연 후 바로 입력하셨다면 자기 계정의 홈 폴더에 위치합니다)

드디어 유튜브를 포함한 아이폰 해킹의 모든 과정이 끝났습니다.

즐거운 아이폰 라이프를 즐기시기 바랍니다. :-)

※ 가지고 있는 아이폰으로 몇 번 시도해서 모두 성공한 상태의 설정들을 올린거지만, 제가 요즘 정신이 온전치 못한 상태라서 잘 안될 수도 있습니다. 하시다가 잘 안되어 문의하셔도 답변해드리지 못할 수 있습니다. 아이폰이 제 것이 아니라서 내일이면 갖다드려야하거든요..^^;

iPhone 스크린 샷

12 Comments

어제 어느분께 아이폰을 잠깐 빌려서 이것저것 해봤습니다.

몸이 안좋아서 많이 해보진 못했구요. 아이폰과 유튜브의 액티베이션, 터미널과 쉘 프로그램들 그리고 보이스레코더와 닌텐도 에뮬 정도만 설치해봤습니다.

방법들은 모두 Hack the iPhone에 있구요. Unix 를 조금 아시는 분들은 개념만 이해하신다면 쉽게 하실 수 있을겁니다. (아.. 유튜브 액티베이션만 조금 까다롭습니다. 핵더아이폰에 있는것만으로는 안되더군요. 그래도 쉽게 할 수 있는 정도구요)

가능하면 내일 위의 방법들 한 번 써볼 수 있도록 해보겠습니다.

일단 스크린샷만 우선.. 사진을 못찍은 관계로 실물 사진은 내일 올려보겠습니다.


1topscreen.png

2terminal.png

3youtube_1.png

4youtube_2.png

5nes_bbs.png

6nes_zelda.png

아이폰을 하루정도 써 본 소감을 한마디 말하자면, 처음에는 대단하다 수준이었다가 점점 놀라움으로 바뀌어갑니다. 그리고 나서 블랙잭을 보면 이건 무슨 80년대 나팔바지같은 느낌이 납지요..=_=

간만에 가슴을 뜨겁게 해주는군요. ㅎㅎ

골빈넷 서버 해킹하기

11 Comments

어제 새벽 어느순간부턴가 갑자기 골빈넷 서버에 ssh 접속이 거부되었다.

헉..-0-;;; 뭐지 해킹당한건가? ㅜ,.ㅡ;;;

골빈넷 서버에 ssh 를 제외하고는 접속하여 제어할 수 있는 방법은 ftp 하나 뿐이라 답답하기 그지 없었다.

그래도 ftp 로 접속하여 이것저것 아는 방법 모르는 방법, 모두 동원해보고 구글링을 해 보아도 문제점을 찾을 수 없었고, 적어도 log 파일들은 봐야 알 것 같은데 그것조차 root 만 접근 할 수 있게 되어 있어서 볼 수가 없었다.

너무나도 완벽한 보안에 기뻐해야할른지… ;;;ㅡ,.ㅡ)/

암튼, 어찌할까 깽이와 같이 고민하다가 cron 에 내 계정으로 1분마다 한 번씩 돌리고 있는 스크립트가 생각나서 그것을 다음과 같이 교체해 보았다.

# crontab 에 등록되어 있는 프로그램을 아래와 같이 교케
#!/bin/sh

/home/nuthack/test > /tmp/log 2>&1

# test
#!/usr/bin/expect
spawn su root
expect -re "Password: "
send "rootpassword\r"
expect -re "#"
send "chmod -R a+r /var/log\r"
interact

위의 스크립트를 작성해 놓고 로그파일의 퍼미션이 바뀔때까지 잠시 기다린후 log 디렉토리의 messages 를 확인해보니 다음과 같은 메시지가 들어 있었다.

www opensshd[3891]: fatal: Missing privilege separation directory: /var/empty

잉? O,.o;; 어이없게도 /var/empty 디렉토리가 없어서 sshd 가 실행되지 못하고 있었던 것이었다. ㅡ,.ㅡ;; 도대체 저 파일이 어디에 쓰이는 것인지는 모르겠지만, 어제 저 파일을 지운 것이 생각났다..다행이 해킹은 아닌 듯..ㅡ,.ㅡ;;;

test 파일을 다음과 같이 작성하여 /var/empty 디렉토리를 생성해주고 나니 sshd 가 정상적으로 실행되면서 ssh 접속이 가능하게 되었다.

#!/usr/bin/expect
spawn su root
expect -re "Password: "
send "rootpassword\r"
expect -re "#"
send "mkdir /var/empty\r"
interact

아무튼, 이번 사건으로 정신적 데미지를 꽤 입은 후 느낀 것 하나가 있다면, 너무 완벽한 보안은 오히려 좋지 않을수도 있다는 것.

서버 관리자라면 자기 서버에 자기만 알 수 있는 백도어 하나쯤은 만들어두자..;;;ㅡ,.ㅡ)