헨카쿠

1 개요

HENkaku

PS Vita의 브라우저에 있는 익스플로잇을 이용한 해킹이다. PSP로 치면 커스텀 펌웨어와 비슷하나 버전만 맞다면 더욱 간단하고 펌웨어 자체를 개조하지는 않는다.
어원은 일본어로 "변혁"을 뜻하는 헨카쿠(変革; へんかく)다. 대문자로 표기한 "HEN"은 홈브류 활성화기(Homebrew Enabler)를 뜻한다고.

2 역사

예전부터 PS Vita에서 PSP게임의 익스플로잇을 이용한 PSP 에뮬레이터를 구동하는 VHBL은 있었으나 비타의 게임은 구동이 불가능하였다. 그러던 도중 2014년 여름 비타의 이메일 어플리케이션 취약점을 이용한 pkg 인스톨러라는 방식으로 pkg 확장자를 가진 비타의 게임을 구동할 수 있는 방법이 나왔었다. 허나 이 방식은 DRM을 뚫지 못하였기때문에 DRM 자체가 없는 데모버전 게임이나 무료 어플리케이션만 설치가 가능했다.

얼마 안 가 패치로 막히게 되었으나, 2016년 여름 3.60버전에서 브라우저의 취약점이 발견되었다. 그것을 이용해 HENkaku(変革; 변혁)이라는 비타의 내부영역까지 컨트롤 가능한 익스플로잇이 등장하게 되었다. 하지만 이것도 게임들의 DRM을 뚫은것이 아니라 DRM이 없는 에뮬레이터나 홈브류등만이 실행이 가능했다.

그렇지만 얼마 지나지 않아 Team Freak이라 하는 해킹팀에서 DRM을 제거하는[1] Vitamin이라는 이름의 덤핑툴을 내놓았고, 비타의 기나긴 창과 방패의 싸움일단[2] 창의 승리로 결론을 맺을듯 했지만 다시 막혔기 때문에 싸움은 아직 끝나지 않았다.

3 원리

PS Vita의 브라우저에서 사용하는 Webkit 엔진의 JavaScript 연산 처리와 관련한 버그들을 이용해 악성 ROP(Return-oriented Programming; 반환지향형 프로그래밍) 페이로드를 삽입하고, ASLR이나 Stack-pivot protection과 같은 같은 보호 기법들을 적절하게 우회하여 악성 코드를 실행시킨다. 이를 통해 SceNet(통신 관련 모듈)의 취약점 등을 이용한 커널 모드 익스플로잇을 실행시킨다. 참 쉽죠? 해커 xyz의 Webkit 취약점에 관한 설명.

HENkaku에서 사용된 Webkit 취약점은 PS4 3.55 펌웨어에서도 똑같이 발견되었으나, PS4의 경우 비타와는 달리 유효한 커널 모드 익스플로잇이 없으므로 현재까지는 큰 의미가 없다.

소니는 비타 시스템 소프트웨어 3.61과 PS4 시스템 소프트웨어 4.0 업데이트에서 이 Webkit 취약점을 패치했다. 현재까지 최신 버전의 시스템 소프트웨어에서 커널 모드 익스플로잇을 실행할 수 있는 취약점은 발견되지 않았다.
  1. 사실 기술적으로 DRM을 "제거"하는 건 아니지만, 엔드 유저 입장에서는 아무래도 상관 없는 일인 것이다.
  2. 일단이라고 붙인 이유는 아직 초창기이고, 프리징 현상이나, 심각한 버퍼링 등 구동이 완벽하지 않기 때문