나의 성장기 보안/코딩$

텍스트 파일에서 문자열을 읽어 특정 파일을 삭제하는 파워쉘 코드

다양한 IT 지식
@2023-08-09 11:06:03
$TextFile = [경로]

# Get-Content -Path $TextFile

# Text 파일의 값을 $a 변수에 저장
$a = Get-Content -Path $TextFile

For($i=0; $i -it 745; $i++){

	# Text 파일의 값을 한 줄씩 출력 후 제거
    $a[$i]
    Remove-Item $a[$i]
}

 

[Web 캡처방지]WebCube 우회 사례

웹 모의해킹 관련 정리
@2023-07-14 23:52:37

보호글입니다.
비밀번호를 입력하셔야 내용을 보실 수 있습니다.


2022 X-Mas CTB 참여 후기

다양한 IT 지식
@2023-01-09 10:37:25

안녕하세요. 2022년도 크리스마스 CTB(Capture The Bug) 참여자 낙영입니다.

사실 크리스마스라서 할일도 없고 ㅠㅠ..

뭐하고 지내지 생각하다가 Find The Gap(구 해킹존)에서 버그바운티를 한다고 하여 일 외적으로 참여를 결심하게 되었습니다. ㅎㅎ

원래는 버그바운티를 자주 참여할 예정이였는데 생각보다 현생에 부딪혀서 많이 참여를 못했었네요. 흑..

하지만 이번 버그 바운티 참여로 다시 버그바운티에 대한 열망이 타올랐습니다.

이번에는 적극적으로 참여하지 못했지만...

나름대로 열심히 찾았더니 윤리적해커 20인 안에 들어갔네요...

다음에는 각잡고 열심히 참여해보도록 하겠습니다 ㅎㅎ

좋은 취지로 개발된 버그바운티 프로그램 항상 홧팅하고 적극적으로 참여하도록 노력하겠습니다!

감사합니다. Find_The_Gap 기업여러분들

의료기기의 보안

다양한 IT 지식
@2022-01-25 22:10:56

2022년 1월에 식약처에서 IMDRF에서 언급되는 사이버 보안에 대해 허가/심사 기준 가이드라인을 만들었다.

주요 내용은 국제규격(IEC 81001-1) 및 IMDRF에서 요구하는 기준(의료기기 사이버 보안 원칙및 지침, 2020)에 맞게 적용하겠다는 것이다.

check list

보안 통신 -3항목

데이터 보호 - 2항목

기기 무결성 - 3항목

사용자 인증 - 1항목

소프트웨어 유지보수 - 4항목

물리적 접근 - 1항목

신뢰성 및 가용성 - 1항목

지금까지는 개인의료정보(웰니스 장비나 디지털 헬스케어 장비)를 송수신하거나 원격제어(원격의료 장비)시에만 적용했으나, 앞으로는 통신이 가능한 모든 의료기기에 적용한다는 것이다.

일전에는 병원 내부에서 네트워크로 연결된 장비들은 거의 이를 요구하지 않았다는 의미이다.

사이버 보안을 넘어선 일반 보안도 신경써야 한다.

보안이란 내부보안과 외부보안으로 나뉘기 때문이다. 사이버 보안이란 외부보안에 해당한다. 병원 내부에서 의료기기를 만져 환자에게 위험을 주는 경우도 막아야 하기 때문이다. 즉 주사액을 잠근다든지, 많이 주입시키는 행위, 아상 증상 파악용 바이오센서를 분리시키는 등의 행위를 막아야 한다. 이것도 사이버 보안이라는 항목안에 들어 있다. (물리적 접근) 그런데 통신이 없는 의료기기는 2022년도에도 이 정도의 보안을 적용 요구하지는 않는게 현실이다.

사이버 보안에 의해 해킹, 정보 유출, 오작동 등의 보안 위협으로부터 사용자를 안전하게 보호할 수 있을 것으로 기대한다고 한다.

[출처] 의료기기에서의 사이버 보안 (2022, 최신)|작성자 ymkim1959

CIA(국제공인 내부감사자 자격증)

다양한 IT 지식
@2021-11-08 09:37:38

CIA(국제공인 내부감사사 자격증, Certifield Internal Auditor)

  • 세계 유일의 국제공인 내부감사 전문 자격증으로, 세계내부감사인협회(IIA, The Institute of Internal Auditors)에서 자격시험을 주관하고 있다.
  • CIA는 오늘날 급변하는 공공 및 민간부문 환경과 고품질 내부감사를 지향하는 흐름에 대응하여, 내부감사인의 전문역량을 검증하는 지표로 인정하고 있다.

CIA의 법률적 근거

  • 제 16조(감사담당자의 임용)는 중앙행정기관 및 지방자치단체의 감사담당자가 갖추어야 하는 최소한의 자격요건은 대통령령으로 정한다.
  • 공공감사에 관한 법률 시행령(2019.05.14., 일부개정 시행) 제9조 1호에 따라 공공감사담당자의 자격은 경력요건을 충족하며 감사업무 수행에 필요한 자격증 또는 감사 분야의 전문학사 이상의 학위를 소지한 사람을 임용하도록 하고 있다.

국제적인 공인내부감사사 전문 자격증

  • 내부감사분야의 세계 유일의 국제적인 공인 자격증으로, 회계법인은 물론 외투법인 내부감사, 컨설팅회사, 국내외 은행, 금융업체 및 일반기업의 내부감사인으로 폭넓은 분야에서 활동할 수 있다.

전 세계적인 흐름

2000년대 초 엔론사건 등을 계기로, 기업 투명성 제고가 화두가 됨으로써, 전 세계적으로 CIA와 같은 내부감사 전문가의 중요성이 증대되었으며, 이로써 CIA의 인지도와 권한이 점점 강화될 수 있는 바탕이 마련되고 있다.


CIA의 가치

국제적 가치 척도가 된다.

내부감사인에게 유일하게 국제적으로 인증된 CIA(Certified Internal Auditor)자격증은 세계 어느 곳에서나 여러분과 함계할 것입니다. CIA는 전문성에 대한 세계적인 니즈에 적절하게 대처하며, 미래에 내부감사인의 경력을 변화시키고 전문성에 대한 새로운 역할도 충분히 소화시킬 것입니다. 신기술을 평가, 기회 분석, 질(quality), 경제성 및 효율성 평가, 정확하고 시의적절한 커뮤니케이션을 제공 하는 것 등 CIA는 조직의 세계적 전망에 대한 시각을 갖게 해주며 여러분이 미래 여러분 조직의 발전과 내부감사의 전문성에 핵심적인 인물이 되게끔 해줄 것입니다.

경영자로의 최고 신임장이다.

전문자격증인 CIA(Certified Internal Auditor)를 취득하게 되면, 여러분은 미래의 경영자로서의 최고 신임장을 얻는것과 마찬가지입니다. 경영자(혹은 미래의 경영자)로서의 여러분의 가치는 증대될 것입니다. 여러분은 사업에 대한 위기와 내부 통제를 충분히 이해하고 있기 때문입니다. CIA는 고유의 리스크와 잠재적 리스크를 확인하고 이러한 리스크를 최소화하기 위한 권고 능력을 갖고 있음을 인정해줍니다. 적절한 통제환경이 존재함을 확인하고, 그러한 환경의 통제를 유지하는 여러분의 기술은 영구적인 경영 자산이 됩니다.

전문가로서의 세계적 인증이다.

CIA 시험은 감사의 전문적 지식 테스트입니다. CIA자격을 취득하는 것은 비즈니스 장에서 여러분의 가치를 인정하는 신임장이나 다름없으며, 여러분의 경쟁 우위를 갖게 해 줍니다. CIA는 전문가로서 미래를 계획할 수 있도록 도움을 줍니다. 세계적으로 약 10만명이 넘는 CIA는 성공의 첫 단추를 끼고 현재 맹활약 중에 있습니다.


진출 분야

- 다국적 기업, 상장법인 및 공기업의 경영기획실, 재무처리, 경리부서, 감사실 등에서 활동하고 있습니다.

- 외국기업의 진출이 늘고 있는 현황으로 비추어볼 때 외국기업은 해외 자회사에 대한 내무감사기능을 크게 강조하고 있고 있으므로 향후 폭팔적인 수요가 예상되며, 앞으로의 국내기업에서도 유망직종으로 각광을 받을 것입니다.

- 특히, 국내외 금융기관 내부감사부서, 컨설팅회사의 경영컨설턴트로서 진출이 예상됩니다. 현재 미국에서는 공인회계사가 일반적으로 공인 내부감사 자격증을 소지하는 추세입니다.

- CIA 시험은 내부감사뿐만 아니라 경제, 경영, 회계, 정보 기술 등과 관련된 기본지식을 갖추며, 기업 윤리를 준수하는 감사인을 양성하는 자격제도로써 이는 향후 공인내부감사자가 기업의 최고경영진(CEO)으로 발돋움할 수 있는 초석이 됩니다.

'다양한 IT 지식' 카테고리의 다른 글

2022 X-Mas CTB 참여 후기  (0) 2023.01.09
의료기기의 보안  (0) 2022.01.25
Notepad++ 자동 줄 바꿈 설정  (0) 2021.10.26
충청권 ICT이노베이션스퀘어 교육 사이트  (0) 2021.09.23
WebDAV란?  (0) 2021.09.02

iOS 진단 - 탈옥에 관하여

App 진단
@2021-11-01 14:07:41

탈옥

iPhone, iPod touch, iPad와 같은 Apple 휴대용 기기에 사용되는 iOS 및 iPadOS의 제한을 임의로 푸는 행위를 탈옥이라 한다.

안드로이드에서의 루팅과 비교할 때 결과적으로 제한된 권한을 부여한다는 점은 동일할지라도 그 과정은 많이 다르다. 안드로이드의 경우 시스템, 혹은 커널에 Su 바이너리를 심고 Superuser 또는 SuperSU 등 퍼미션 컨트롤 앱을 이용하여 루트 권한을 주도록 OS에 간단하게 파일 몇 개 추가하는 정도로 끝나지만, iOS의 경우 자체 보안이 강력하기 때문에 이 보안을 뚫고 들어가 Cydia를 설치하고 커널을 패치하여 순정 펌웨어로 보이도록 부트ROM을 속인다.

 

A4칩 이전에는 부트롬이 별도로 설치되어 있어서 부트롬 익스플로잇이 한번 뚫리면 이후 iOS 버전에서는 무조건 반탈옥이 가능했으나, A5칩 이후로는 부트롬이 CPU 내부로 들어가게 되어 부트롬 익스플로잇이 불가능해졌다.

 

즉, A4칩 이전 기기는 탈옥 시 Pwned DFU모드로 진입해서 백도어를 열고, 탈옥툴을 돌려 시스템 내부에 접근해 탈옥하는 것이 가능했는데, A5칩이 탑재된 이후 기기는 전원이 꺼지면 부트롬 전원도 같이 꺼지므로 이것이 불가능하게 되었다.

A4 이전 기기도 저런식으로 뒷문을 따고 들어가서 탈옥에 성공했더라도 부팅 과정을 속이지 못하면 재부팅 시 벽돌 상태가 되는 이른바 반탈(Tethered Jailbreak)상태가 되는데, 이것이 패치되는데 까지는 시간이 꽤 소요된다.

 

사실상 Apple 기기의 역사는 탈옥과의 싸움이라고 할 수 있을 정도로, Apple에서 한 기기나 새로운 OS 버전을 출시하면 몇시간 내로 또 탈옥이 뚫리고, 다시 보안 업데이트로 이를 막으면 또 몇 시간 뒤에 뚫리는 식으로 이어져 왔다.

그러나 iPad2의 경우에 부트롬이 플래시 메모리가 아닌 프로세서 자체에 내장되어 있기 때문에 iPhone처럼 바로 뚫리진 않았지만, 2011년 7월 6일 JailbreakMe 3.0이 나오며 대 탈옥시대를 맞이하게 된다.

 

Apple은 탈옥된 제품에 대해서는 AS를 거부한다. 이건 Apple이 민감한 것이 아니고, 삼성이나 소니, LG도 원칙적으로 사용자가 임의로 OS를 수정한 경우 AS를 거부할 수 있다. Apple은 탈옥이 자사 OS에 대한 저작권 침해라는 근거를 내세우면서 불법이라고 주장해 왔으나 미 국회도서관 저작권 사무국 측에서는 관련법률을 개정하여 합법화 하였다.

하지만 이 법개정은 미국 영토 내에서 발생하는 탈옥 행위 자체에 대한 법적 문제 해소만 할 뿐 Apple 등 제조사가 탈옥된 기기에 대한 A/S를 거부하는 것에 대한 소비자 구제장치는 없다. 무엇보다 해당 법 개정은 미국의 영토에서만 영향을 받는 것이기 때문에 우리나라 등 미국 외의 Apple 제품 탈옥에 대해서는 해당이 없다.

즉, 우리나라 법률에 따라서는 법적으로 문제가 될 소지가 있다.

 

탈옥의 명분은 기본적으로 Apple이 제한하고 있는 기능을 가능하게 하는 것이다. 좀 더 상세히 말하자면 OS 차원에서 지원하지 않는 기능을 지원하게끔 개조하는 것이다. 예를들어, 폰트와 테마를 바꿀 수 있도록 한다거나 Cydia에서 Apple 정책 상 App Store를 통해 설치할 수 없던 유용한 트윅들을 찾아 설치하는 것이 주를 이룬다.

시스템 파일을 직접적으로 건드릴 수 있기 때문에 iFile이나 Filza같은 내부 파일 관리자 트윅을 통해 셔터음을 삭제한다던가 하는 행위가 가능하다.

사실 iPhone이 처음 나왔을 때 App Store는 존재하지 않았고, 기능도 많이 부족했고, 이를 보충하기 위해 프로그램을 설치하려면 반드시 탈옥을 거쳐야 했으며, 음지에만 서드파이 iPhone 프로그램이 존재했다. 그 당시의 Apple의 주장은 "웹 프로그램이 있는데 프로그램을 깔 필요가 있나?"였고, 최초의 iPhone 발매 키노트에 이런 사고방식의 내용이 있었다. App Store용으로 올라오는 앱도 Apple 정책상 추가될 수 없는 기능의 한계라는 게 존재한다. 때문에 이런 규제를 싫어하는 사람들은 탈옥용으로 프로그램을 만들게 되며, 이것이 탈옥의 기본적인 명분인 것이다.

 

수 많은 사용자들이 탈옥을 행하는 이유 중 하나가 Crack된 유료 앱을 공짜로 다운받아 무단으로 사용하기 위함 이었다는 사실을 부정할 순 없다. 하지만 PSP등에서도 볼 수 있듯, 홈브류와 불법 복제는 종이 한 장 차이의 기술이므로 개인이 탈옥하여 더 많은 기능을 사용하는 것은 자유인만큼 기기를 탈옥하는 행위 그 자체를 비판할 필요는 없다.

위에도 쓰여있지만 애초에 iOS에서 탈옥이라는게 처음 등장했던 당시에는 애플의 앱스토어가 개설되기 전이었으므로 불법 복제 운운하는 것 자체가 말이 안되기도 했었다.

 

탈옥하면서 잃는 것도 있는데, 가장 큰 것이 AS 불가능이 유일하지만 어차피 부품 이상과 액정 깨짐은 AS가능하며, 탈옥을 했더라도 DFU로 iOS나 iPadOS를 재설치하면 깨끗이 사리지기 때문에 상관 없다.

 

과거의 많은 블로그에서 탈옥 후 여러 소스를 추가하고 각종 트윅을 설치하고 뭐는 지우고 무슨 파일을 열어서 어떻게 고치고 하는 등 각종 설정을 해야 안정화가 된다는 내용들이 팁이라하고 많이 돌아다녔는데 이는 국내에 아이폰이 출시되지도 않았던 시절, 콘솔 화면에서 명령어 한줄 한줄 써가며 탈옥 하던 때에나 필요하던 것이므로 그러한 팁이 돌아다니는 시절이나 지금이나 사실상 별 의미없는 행동들이며 오히려 잘못 따라했다가는 멀쩡하던 시스템을 불안정하게 만들 수가 있다.

 

Root와 mobile계정의 기본 비밀번호(alpine)를 바꿔두라는 부분은 물론 보안에 도움이 되긴 하겠지만 Openssh관련 프로그램을 사용하는게 아니면 필수는 아니다. 그래도 정 원한다면 비밀번호 변경 후에 Open ssh와 관련된 패키지를 도로 삭제하는 편이 쓸데없는 용량 소모도 줄이고 그냥 남겨두는 것보다 보안 차원에도 도움이 될 것이다. 최적화는 iClener Pro하나로도 충분하다.

 

탈옥에는 iPhone Dev Team, Chronic Dev Team등의 해커들이 참여하고 있는데, 이런 여러 해커들이 누가 먼저, 그리고 안정적으로 탈옥을 공개하나 경쟁을 벌이고 있는 상황이다.

아무래도 아이폰 탈옥 개발자라고 하면 그 바닥에서는 상당한 유명세를 얻을 수 있으나 예전의 탈옥툴은 미국, 혹은 유럽쪽 개발자에 의해서 개발되고 발표되었지만 iOS 7을 기준으로 중국 개발자들 또한 탈옥툴 개발에 참여하고 있다.

탈옥툴이 나오는 주기가 예전에 비해 매우 짧아진 것은 덤이며 iOS 7과 8은 모두 중국 개발자들에 의해 발표되었다.

 

2016년 iOS 9를 기점으로 탈옥이 가능한 기기의 파편화와 탈옥툴 릴리즈 기간이 점점 길어지는 것을 알 수 있는데, 이는 iOS 탈옥으로 인해 유명세를 얻은 인원들이 애플에 채용되거나, Apple이 탈옥하는데 필요한 취약점을 제보하면 바운티를 지급하는 버그바운티 제도를 시행하고 있기 때문으로 추정한다.

Apple이 제공하는 취약점 보완 목록에서도 탈옥툴 개발에 참여했던 Pangu팀 등의 이름을 자주 발견할 수 있으며, Cydia를 개발한 Saurik이 올린 바운티 정책을 보면 바운티가 결코 무시할 수 없는 수준이라는 것을 알 수 있다.


탈옥의 흐름도

  • iOS 8.1.2.의 탈옥툴을 내놓은 이후 탈옥툴의 소식이 뜸하다가, 2015년 6월 23일 중국의 탈옥툴 개발 팀인 TaiG팀에서 8.3까지 탈옥이 가능한 탈옥툴을 내놓은 상태이다. TaiG팀은 8.4도 동일한 방식으로 탈옥할 수 있을 것이라고 했고, 결국 7월 1일 iOS 8.4가 배포되자마자 탈옥을 할 수 있는 탈옥툴이 나왔다.
  • iOS 8.4 탈옥이 하루만에 나올 수 있던 것은 Apple에서 Taig 8.3 Tool의 취약점을 iOS 8.4를 배포할 당시에 관련 취약점 패치를 안해서 그런것이다.  iOS 8.1.3에서 ios 8.3까지 지원되는 탈옥툴이 나오는데 반년이 넘는 시간이 걸린 것을 생각해보자.
  • 2015년 8월 22일 Pangu팀에서 8.4.1의 탈옥을 선보였다. iOS 9이 배포된지 얼마 안된 상태라 공개하지는 않다가 2015년 10월 14일 Pangu에서 iOS 9 탈옥툴을 공개했다.
  • 2016년 7월 중국의 Pangu팀에서 64비트 기기 한정 iOS 9.2에서 9.3.3까지 탈옥 가능한 툴을 내놓았다. 다만 아직 완전한 탈옥은 아니라 재부팅 후엔 탈옥이 풀려 기기 내에 설치된 앱을 실행해 재 탈옥 시켜줄 필요가 있다. 다만 Pangu팀에서 배포한 툴로 탈옥 후 페이팔 계정이 해킹당했다는 등의 보고가 이어지고 있다고 한다. 이 이슈에 대해 Cydia의 개발자로 유명한 iOS해커 Saurik이 reddit의 덧글을 통해 의견을 밝혔다. Pangu의 탈옥 툴로 인해 이러한 문제가 발생했을 것이라고 생각되지는 않으나, 중국의 사기업인 25PP에서 배포하는 툴로 인증하는 대신, Cydia Impactor를 이용해 애플 서버를 경유하여 인증하는 것을 권장한다고 한다.
  • 2016년 8월 30일 새벽 3시경에 iOS 9.2 - 9.3.3 탈옥 어플이 다른 곳도 아니고 App Store에 올라왔다! 한 시간도 안돼서 내려갔지만 레딧에서 계정 공유를 통해 구매이력에서 내려받는 방식으로 계속 다운로드가 이루어졌었고 결국엔 공유된 계정이 정지되었다.
  • 2017년 1월 26일 iOS 10.1.1-10.2 Version이 탈옥이 가능한 "Yalu"가 등장했다. 이유는 알 수 없지만, 이 탈옥 툴의 아이콘은 북측 체고존엄이다. 애초에 Yalu라는 게, 압록강의 중국어 발음이다.
  • 2018년 1월 13일, iOS 11.1.2 Version의 탈옥을 개발한 팀에서 11.3.1 Version까지 탈옥이 가능한 동명의 툴을 릴리즈 하였다.
  • 2019년 1월 30일, iOS 11.1.2, 11.3.1 Version의 탈옥을 개발한 팀에서 11.4.1 Version까지 탈옥이 가능한 동명의 툴을 릴리즈 하였다.
  • 2019년 2월 22일, pwn20wnd가 ios 11.0 - 11.4.1에서 더하여 12.0 - 12.1.2 Version까지 탈옥이 가능한 unc0ver를 출시했다. 아직까진 베타 버전이지만 안정성은 높다고 한다.
  • 2019년 08월 최신 버전인 ios 12.4에서 탈옥이 가능한 unc0ver과 Chimera 툴이 출시했다. 애플에서는 8월 말 이 탈옥에 관련된 보안 허점을 패치한 12.4.1을 출시했다.
  • 2019년 11월 10일 A7 - A11 Bionic칩을 탑재한 모든 디바이스가 iOS 12.3 이상이기만 하면 무조건 탈옥이 가능한 checkra1n이 출시되었다. 해당 탈옥툴은 하드웨어 취약점을 이용했기 때문에 Apple이 소프트웨어로 취약점을 패치할 수 없다.
  • 2020년 5월 말 최신 버전인 iOS/iPadOS 13.5에서 탈옥이 가능한 unc0ver툴이 출시 되었다. Apple은 이를 iOS/iPadOS 13.5.1에서 패치하였고, 13.5.5 Beta 버전에서는 탈옥이 가능하나 Apple이 사이닝 서버를 닫았다.
  • 2020년 11월 20일 iOS/iPadOS 13.5.1-13.7 탈옥이 Odyssey에 의해 가능해졌다.
  • 2021년 2월 말 iOS/iPadOS 14.0-14.3 Version 탈옥이 가능한 Unc0ver툴이 출시되었다.
  • 2021년 4월 초 iOS/iPadOS 14.0-14.3 Version 탈옥이 가능한 Taurine 툴이 출시되었다.
  • 2021년 4월 8일 reddit에 iOS/iPadOS 14.2 이하에서 iOS/iPadOS 사이닝 서버가 닫혔음에도 불구하고 iOS/iPadOS 14.3을 설치하는 방법이 올라왔다.
    https://www.reddit.com/r/jailbreak/comments/mm0g3f/news_new_method_of_updating_to_ios_143_if_you_are/
 

[News] New Method Of Updating to iOS 14.3 if you are on 14.2.1 or lower without blobs!

**Edit: It appears this does not work on A14 devices** **Make sure you are not blocking OTA updates for this to work** 1. (Optional) Rootfs &...

www.reddit.com

  • 2021년 10월 25일 twitter에 Linus Henze는 iOS/iPadOS 14.2-14.5.1 버전의 탈옥을 지원하는 스크립트를 완성하였음을 발표했다. 무려 Untethered, 즉 완탈이라고 한다. 다만 이 스크립트를 이용하여 탈옥하기 위해선 MAC이 필요하며, 14.2부터 14.3 미만의 버전에서 사용하기 위해서는 파일 2개의 수정이 필요하다.
    https://github.com/LinusHenze/Fugu14
 

GitHub - LinusHenze/Fugu14: Fugu14 is an untethered iOS 14.3-14.5.1 jailbreak

Fugu14 is an untethered iOS 14.3-14.5.1 jailbreak. Contribute to LinusHenze/Fugu14 development by creating an account on GitHub.

github.com


SHSH백업

탈옥툴은 각 프로그램 버전마다 지원하는 기기와 iOS 버전이 정해져 있다. 때문에 탈옥을 하지 못하는 버전이 있으며 최신 버전의 iOS를 쓰는 사람은 해당 버전을 지원하는 탈옥툴을 개발팀이 내놓을 때까지는 순정 상태로 기다리는 수밖에 없다.

하지만 iOS의 펌웨어는 현재 정상적인 방법으로 한 번 업데이트하고 나면 다운그레이드가 불가능하다.

Apple 사가 탈옥을 막는 방법 중 하나이긴 한데, 문제는 업그레이드한 펌웨어에 버그가 발생하더라도 순정 사용자 역시 다운그레이드가 불가능하다는 것이다.

iOS 펌웨어를 업데이트할 때 Apple의 서버에 접속을 해서 인증을 받기 때문에 그런 것이다.

탈옥 개발자들은 이를 일종의 프록시에 기기 인증코드를 저장해주는 방법으로 우회하였다. 이를 SHSH백업이라 부른다.

하지만 펌웨어 업데이트 전에 백업을 해야 하고, iOS 기기 자체에서 하는 무선 OTA 업데이트는 인증코드 오작동을 가져오므로 반드시 컴퓨터 기기로 업데이트해야 한다.

이는 기기를 탈옥하지 않더라도 사용 가능하니 순정 사용자도 사용을 권하며 기기에 문제가 생겨 DFU 모드 복원(공장 초기화)을 해야 할 경우 자동으로 최신 버전의 iOS가 설치되기 떄문에 만일을 대비하여서라도 필수적으로 하는 것이 좋다.

[링크 막힘] 방법 찾아야 함

Tinyumbrella를 다운받을 수 있다. 이 프로그램 말고도 SHSH 백업 툴이 몇가지 존재하니 찾아보자

 

언제부턴가 Apple의 인증 정책(?)이 APTicket으로 바뀌어서 기존의 SHSH Blobs(단, iOS 5.x이상 Version)는 더 이상 쓸 수 없게 되었다. 따라서 지금까지 백업했던 건 모두 버리고 TinyUmbrella나 iFath 등을 이용해 재작성해야 한다.(몇년 전 이야기니, 최근에 백업했다면 상관없다.) 물론 해당 버전으로 복원할 수 있을 때만 백업이 유효하므로 대부분은 할 수 없다.

 

그러나 SHSH백업을 철저히 해두었다고 해도, 실제로 iFaith를 통해 복원 시에는 일정의 하드웨어 취약점을 사용하기 때문에 해당 취약점이 없는 iPhone 4s 이상의 기기는 복원이 불가능했었다.

다만 최근에 탈옥된 iOS기기에서 kloader 바이너리를 통해 Pwned DFU모드로 진입하는 방법이 나오면서 SHSH 백업이 되어 있다면 A5칩 이상 기기에서 다운그레이드가 가능해졌다. (다만 이 바이너리의 업데이트가 안 되고 있는 상황이어서 언제 막힐지 모른다.)

 

2017년 현재, 64비트 기기의 다운그레이드를 지원하는 FutureRestore라는 툴킷이 릴리즈되어 있는 상태다. 다만 종전의 SHSH Blobs가 아닌 SHSH2 Blobs가 백업되어 있어야 하고, CLI툴이라 일반인의 접근이 어렵다.

또한 복원을 위해서는 ApNonce값을 백업된 SHSH2와 맞춰야 하는데, 순정에서는 이 값이 랜덤으로 나와 Noncesetter, noncereboot 계열의 툴을 이용해서 Apnonce값을 특정한 값으로 설정해야 한다. 문제는 해당 툴들이 취약점으로 동작하기 때문에 탈옥이 가능한 버전으로 업/다운그레이드를 하기 위해 탈옥을 하거나 최소한 탈옥이 가능한 버전이어야하는 웃지 못할 상황이 발생한다.

 

무엇보다 아이폰 5s 시리즈 이후부터 AP 내부에 SEP(Secure Enclave Process)가 들어갔는데, iOS가 새로 설치될 때마다 SEP의 펌웨어를 새로 설치한다. 문제는 이 SEP 펌웨어가 현재 사이닝이 열려 있는 iOS의 펌웨어와 FutureRestore툴을 사용해 업/다운그레이드할 iOS와의 호환성이 없는 경우, 일반적으로 복원 실패가 되며, 복원이 진행된다 해도 iPhone X를 11.3.x복원 할때 Face ID 사용이 불가능하게 되는 것처럼 정상적인 복원이 되지 않는다. 결국 SHSH2를 백업했더라도 제대로 써먹을 수 없는 것이다.

SEP 펌웨어 호환 현황 (iOS 14.6 기준)

iOS Version 호환 여부
iOS 14.0 ~ 14.6 호환
iOS 11.3 ~ 13.7 미호환

탈옥 종류

크게 재부팅 시 PC와의 연결이 필요한지, 그리고 탈옥이 작동하는지 여부에 따라 갈린다.

  • 반탈(Tethered): 반탈옥, BootRom 취약점을 이용한 탈옥 후 재부팅을 하게 되면 PC와 연결하여 탈옥 과정을 재실행해야 한다. 그렇지 않으면 흔히 무한사과라고 불리는 부팅 불가 상태가 된다. 현재는 사라진 탈옥 종류이다. 보통 반탈이라고 하면 이 탈옥이 아닌 준완탈을 부른다고 보면 된다.
  • 완탈(Untethered): 완전한 탈옥. 완탈은 재부팅 시 아무 문제 없이 탈옥 상태 정상 부팅이 된다. 가장 편리하고 이상적인 탈옥이지만 iOS 9.2 이후로 대폭 강화된 보안으로 인해 현재는 나오지 않고 있다가 Fugu14의 등장으로 오랜만에 완탈이 나왔다. 마지막으로 완탈을 지원한 Version은 iOS 9.1이었으나 Fugu14의 등장으로 iOS/iPadOS 14.5.1이 마지막 완탈 지원 버전이 되었다.
  • 커스텀 번들(Custom Bundles): 줄여서 커번이라고도 한다. 쉽게 말하자면 완탈에서 Cydia와 트윅들을 뺀 것. Root File System에 존재하는 파일들을 덮어씌우는게 가능하다. 즉, 테마를 제작하고 사용할 때 쓰이는 것이다. 주로 레드스노우(redsn0w)같은 툴이 이 기능을 내장하고 있다. 하지만 iOS의 디렉토리를 완전히 복제 해 놓아야 하기 떄문에 상당히 많이 번거롭다(...) iOS 6 탈옥까지 존재했으나, iOS 7부터는 나오지 않았다.
  • 준반탈(Semi-Tethered): 부트롬 취약점을 이용할 때 나오면, Tethered 탈옥은 재부팅을 하면 무한사과가 되어 PC에 연결하기 전까지 기기를 사용할 수 없게 되지만, Semi-Tethered탈옥은 재부팅 후에도 기기를 사용할 수 있어도 트윅이 작동하지 않는 순정 상태가 된다. 이후 PC에 연결하여 재탈옥 과정을 실행하면 다시 탈옥 상태가 된다. Checkra1n을 이용한 탈옥이 이런 종류이다.
  • 반탈(준완탈, Semi-Unththered): 보안 강화로 인해 나오지 않는 완탈을 대신하는, 현재 탈옥툴이 채택하는 방법으로, Kernel 취약점을 이용한다. 위의 Semi-tethered 탈옥과 비교하여, 재부팅 시 순정 상태가 되는 것은 같지만, 특정 앱을 실행하여 기기 내부에서 재탈옥 과정을 실행할 수 있다. 따라서 반드시 PC의 연결을 필요로 하지 않는다. 서양권에서는 Tethered 탈옥과 구분되는 Semi-Untethered 탈옥 이라고 부르지만, 한국에서는 구분 없이 똑같이 반탈로 불린다. 다만 Tethered탈옥이 사실상 없어진 현재로선 별 상관이 없다.

반탈과 완탈이 갈리게 된 이유

  • 해커들이 발견한 초기 취약점의 불안전성
    - 초기 터치 2세대의 경우 취약점이 완벽하지 않아 반탈이 등장했고 그 뒤로부터는 완탈이 되어서 문제가 되지 않았다. 그 후 신 부트롬을 쓰는 모델은 부트롬 상의 취약점은 존재하나 이것을 펌웨어 상에서 유지할 수 없어서 완탈이 불가능해도 반탈이 가능한 경우가 생겼다.
  • Apple의 대응
    - iPhone 3Gs에도 동일한 취약점을 가지고 있어서 출시된지 얼마 지나지 않아 완탈이 되기 시작했으나, Apple이 iOS가 수정되었다고 판단되면 부팅을 중단하게끔 부트롬쪽을 수정한 모델을 시장에 내놓으면서 문제가 발생하였다. 그후 iPhone 3GS와 iPod touch 2세대 8G MC모델들 간의 탈옥에 관한 문제가 부각되기 시작되었다.

탈옥이 가능한 Apple 제품 운영체제 버전

iOS 버전 탈옥여부
iOS 15.0 / ipadOS 15.0 불가능
iOS 14.4 ~ 14.7 beta 4 / iPadOS 14.4 ~ 14.7 beta 4 제한적 가능
iOS 10.0.1 ~ 14.3 / iPadOS 13.0 ~ 14.3 가능
iOS 9.0 ~ 9.3.6 제한적 가능
iOS 8.0 ~ 8.4.1 제한적 가능
iPhone OS 1.0 ~ iOS 7.1.2 가능

탈옥 프로그램 목록


시디아의 개발자인 제이 프리맨은 2017년 7월경 이제 iPhone 탈옥은 공식적으로 죽었다고 말했다. 또한, 알레그라는 이 시점에서 탈옥은 근본적으로 죽었다고 느낀다고 말했다. 탈옥 커뮤니티에서 가장 유망한 해커인 루카 토데스코는 금년에 자신이 이 일을 그만 두겠다고 발표했다. 전에는 탈옥을 통해 거의 경이적인 기능들을 갖곤 했지만 이제는 소수의 작은 수정만 얻을 뿐이라고 한다.

 

탈옥이 죽은 이유는 다음과 같다.

  • Apple이 탈옥을 어렵게 하기 위해 보안을 강화하고 있음
  • 만일 해커가 취약성을 발견하면 이를 100만 달러에 팔 수 있음
  • 대부분의 최고 탈옥 해커들은 고연봉의 보안 직장으로 자리를 옮김
  • iPhone을 탈옥하면 보안 취약성에 노출되기 떄문

그래도 탈옥 자체는 아직도 꾸준히 나오고 있다.

안드로이드 진단 - XAPK파일...

App 진단
@2021-11-01 10:17:05

보호글입니다.
비밀번호를 입력하셔야 내용을 보실 수 있습니다.


Sparrow - 암호화되지 않은 중요정보

Source Code 진단 - PHP Secure Coding
@2021-11-01 00:45:37

보호글입니다.
비밀번호를 입력하셔야 내용을 보실 수 있습니다.


분류 전체보기 (118)

[1] [2] [3] [4] [···] [15]