JavaScriptVM 난독화

코드를 JS 가상 머신에서 실행되는 맞춤형 바이트코드로 변환하세요. 이제 고급 Self Defending, Debug Protection, LLM/CDP 대응 방어 기능까지 함께 제공합니다.

VM 난독화가 실제로 동작하는 모습

프로그램은 이전과 완전히 동일하게 동작합니다. 다만 읽어낼 것이 아무것도 남지 않을 뿐입니다.

이전

읽을 수 있는 소스 코드

battle-simulator.js

이후

VM으로 보호된 바이트코드

battle-simulator.protected.js

원래의 로직은 내장된 VM만 실행할 수 있는 맞춤형 바이트코드로 변환됩니다. 정적 분석 도구는 VM 전체를 먼저 리버스 엔지니어링하지 않고서는 이 코드를 이해할 수 없습니다.

다층으로 구성된 LLM/CDP 대응 리버스 엔지니어링 방어

LLM이 난독화된 코드를 공격하는 대부분의 경로를 차단하도록 설계되었습니다.

claude

researcher@MacBook % claude
▐▛███▜▌ Claude Code
▝▜█████▛▘ Opus 4.8 (1M context) with xhigh effort
▘▘ ▝▝ ~/Projects/deobfuscate

❯

obfuscated.js 스크립트를 리버스 엔지니어링해서 무슨 일을 하는지 설명하고 원본 코드를 복원해 줘

⏺︎

먼저 파일을 읽어보겠습니다.

몇 시간 뒤

⏺︎

이 작업에 세션 전부를 쏟아붓고도 아무 데도 이르지 못했다.

평소 쓰던 방법을 다 동원했다 - 정적 분석, 런타임 계측, 후킹, 샌드박스 실행, 자체 도구. 정적으로는 바이트코드가 열리지 않는다. 그것을 디코딩하는 키는 실행 중인 프로그램 안에서만 만들어지기 때문이다. 그래서 CDP 디버거로 실행 중에 덤프를 떠 보려 했는데 - 안티 CDP 방어가 인스펙터가 연결되는 순간 그것을 포착해, 상태를 오염시키거나 실행 자체를 멈춰 버렸다.

들어갈 수 있는 모든 길이 감시되고 있다. 정적으로는 불투명한 덩어리만 남고, 그것을 풀기 위해 동적으로 넘어가는 것이야말로 안티 CDP 계층이 잡아내도록 만들어진 바로 그것이다.

여기서 그만하겠습니다. 이 파일만으로는 소스 코드를 복원할 수 없습니다.

❯

수십만 토큰을 쓰고도, 안에 들어가 보지도 못했다...

* vm-high-obfuscation 프리셋과 LLM/CDP 대응 방어를 적용해 난독화한 코드에 대한 리버스 엔지니어링 시도입니다. JS 환경에서는 런타임 메모리 검사가 언제나 가능하며, 저희 방어 기능은 거기에 도달하기까지의 비용을 크게 높입니다.

그 이면의 동작 원리

LLM/CDP 대응 기능이 내장된 두 개의 독립적인 방어 계층이 함께 작동하여 분석과 리버스 엔지니어링을 현실적으로 불가능하게 만듭니다

VM Self Defending

VM 런타임은 모든 단계에서 자신의 무결성을 검증합니다. 어떤 수정이나 훅 주입, 프록시 가로채기도 탐지되어 무력화됩니다.

코드 무결성 검증

함수 훅 탐지

프록시 및 가로채기 트랩

호출 스택 검증

에이전트 작업 흐름 교란

VM Debug Protection

개발자 도구와 중단점, 런타임 검사를 차단하여 VM 실행을 단계별로 따라가거나 관찰하기 극도로 어렵게 만듭니다.

DevTools 탐지 및 대응

중단점 무력화

실행 환경 핑거프린팅

미끼 바이트코드를 이용한 교란

LLM/CDP 분석 대응 방어

기본 난독화와 VM 난독화 비교

기능별 상세 비교

기능기본VM 난독화

String Array Encryption

Control Flow Flattening

Dead Code Injection

단순

고급

Self Defending

단순

고급

Debug Protection

단순

고급

바이트코드 가상화

바이트코드 암호화

코드 무결성 검사

후킹 방지 및 변조 방지

LLM/CDP 대응 방어

JavaScript 코드 보호 활용 사례

HTML5 게임부터 엔터프라이즈 애플리케이션까지, JavaScript를 도용과 리버스 엔지니어링으로부터 보호하세요

HTML5 게임

플레이어의 치팅이나 경쟁사의 게임 로직 도용을 막으세요. VM 난독화는 리버스 엔지니어링을 극도로 어렵게 만듭니다.

SaaS 애플리케이션

클라이언트 측 코드를 들여다볼 수 있는 경쟁사로부터 독자적인 프런트엔드 알고리즘과 비즈니스 로직을 보호하세요.

라이선스 기반 소프트웨어

변조에 강한 바이트코드로 라이선스 검증과 프리미엄 기능, 불법 복제 방지 장치를 안전하게 지키세요.

브라우저 확장 프로그램

모방 제품과 악의적인 변조로부터 확장 프로그램 코드를 지키세요. 지식 재산을 안전하게 보호할 수 있습니다.

팀을 위해 만들었습니다

시트, 공유 프리셋, 팀 서비스 키를 통해 보호가 한 사람의 설정이 아니라 팀의 표준이 됩니다.

설정을 한 번 저장해 두고 모든 제품과 파이프라인에서 재사용하세요

구성원이 제거되어도 계속 작동하는 CI용 팀 서비스 키

팀 전체에 하나의 난독화 도구 버전과 하나의 프리셋을 강제합니다

모든 빌드를 정확한 버전 또는 minor·patch 릴리스를 따라가는 유연한 범위에 고정

코드를 보호할 준비가 되셨나요?

요금제 살펴보기

자주 묻는 질문