키헌터 작성
메모리 팬텀 어택
메모리 유출 공격 또는 민감한 메모리 노출은 비트코인(및 기타 암호화폐)에 대한 실제적이고 인정된 위협 유형으로, CVE에 메모리 유출/암호화 메모리 노출로 등록되어 있습니다. 이러한 취약점은 사용자 자금을 위험에 빠뜨리므로 소프트웨어 코드에서 안전한 메모리 삭제를 통해 즉시 수정해야 합니다 .
치명적인 “메모리 팬텀” 취약점은 비트코인 생태계의 무결성과 보안에 직접적인 위협을 가하며, 암호화폐 자산의 개인정보 보호와 관리 용이성을 심각하게 훼손합니다. 검증되지 않은 RAM에서 개인 키와 시드 구문을 추출하는 공격은 지갑의 즉각적인 손상, 대량의 디지털 자산 도난, 그리고 블록체인 기술에 대한 사용자 신뢰도 하락으로 이어질 수 있습니다. 민감한 데이터가 포함된 거래가 필수적인 검증 절차 없이 버퍼와 환경 변수를 통해 처리될 경우, 공격자는 거래 종료 후에도 남아있는 “유령” 키를 추출하고 분석할 수 있는 강력한 도구를 확보하게 됩니다.
이 공격은 과학계에서 ‘민감한 메모리 누출’ 또는 ‘메모리 공개'(CVE-2025-8217, CVE-2013-2547로 식별됨)로 알려져 있으며, 암호화 애플리케이션에 적용될 때 표준 메모리 관리 메커니즘의 부적절성을 보여줍니다. 이 취약점을 악용하면 비트코인 주소에 대한 제어권을 완전히 상실하거나, 즉시 현금화되거나, 거래가 이중으로 지출되거나, 지갑 기록이 덮어쓰여질 수 있습니다. acm+4
메모리 팬텀 공격은 명령줄 인자나 환경 변수를 다룰 때 메모리 정리가 제대로 되지 않는 부분을 악용합니다. 공격자는 의도적으로 개인 키나 시드 값을 메모리에 저장하는데, 프로그램이 std::malloc이나 std::copy_n을 통해 이러한 데이터를 저장할 메모리를 할당하고 버퍼로 복사할 때, 메모리를 해제하기 전에 데이터를 초기화하지 않으면 프로세스 또는 운영 체제 메모리에 개인 데이터의 “잔상”이 남게 됩니다.
이벤트 시나리오
- 공격자는 비밀 키, 시드 구문 또는 기타 민감한 암호화폐 정보를 환경 변수나 명령줄 인수에 삽입합니다.
- 이 프로그램은 allocate_environment 함수를 사용하여 이 데이터를 처리하고, 새 버퍼에 복사한 다음, 메모리를 완전히 비우지 않고 해제합니다.
- 메모리 덤프 기술(예: 프로세스 가상 메모리 분석, 스왑 페이지 덤프 또는 포렌식 디스크 분석)을 사용하면 공격자는 메모리가 해제된 후에도 남아 있는 키의 “잔상”을 복구할 수 있습니다.
시각적 및 서술적 스타일
그림자처럼 개인 키의 흔적은 프로그램이 종료되어도 사라지지 않고 시스템 메모리에 남아 교묘한 해커의 호출을 기다립니다. 메모리 팬텀 공격은 직접적인 공격이 아니라, 해커가 RAM의 잊혀진 구석에 숨겨진 잔여 흔적을 찾아내는 행위입니다. 단 한 번의 교묘한 “호출”로 메모리의 모든 라인에서 프로그램에 맡겨졌던 정보, 즉 개인 키, 시드, 비밀 키 등을 찾아낼 수 있습니다.
공격자에게 유리한 점
- 암호화 기본 요소에 간섭 없이.
- 인수와 환경 변수가 초기화되지 않은 모든 시스템에서 작동합니다.
- 디지털 포렌식, 침투 테스트, KYC 봇 또는 핫월렛 공격에 관련성이 있습니다.
메모리 팬텀은 보이지 않는 기억을 도둑의 주머니로 바꿔놓습니다. 잊혀진 비밀들이 가득한 살아있는 갤러리처럼, 과거 거래의 유령처럼 언제든 다시 나타날 준비가 되어 있는 곳이죠 .
“메모리 팬텀: 비트코인 개인 키에 대한 치명적인 메모리 취약점 및 공격이 디지털 자산 보안에 위협을 가하고 있다!”
명령줄 인수와 환경 변수를 다룰 때 발생하는 메모리 오염이라는 이 심각한 취약점은 비트코인 생태계, 특히 개인 키, 시드 구문 및 기타 비밀 데이터의 도난과 같은 상황에서 치명적인 결과를 초래할 수 있습니다. 비트코인과 같은 암호화 시스템에서 개인 키는 디지털 자산에 대한 접근과 제어를 보장하는 유일한 요소이므로 프로세스 메모리를 통해 개인 키를 복구할 가능성은 매우 위험합니다 .
비트코인 공격은 어떤 형태로 나타날까요?
- 개인 키 또는 시드 구문은 명령줄 인수나 환경 변수로 전달됩니다(예: 사용자가 키를 매개변수로 사용하여 지갑 소프트웨어를 실행합니다). stepsecurity
- 취약한 코드에서 라이브러리는 해당 데이터를 위해 동적 메모리를 할당하고, 작업을 완료한 후 메모리를 완전히 비우지 않고 해제하여 RAM에 비밀 정보의 “잔상”을 남깁니다. (stepsecurity)
- 컴퓨터에 물리적 또는 원격으로 접근할 수 있는 공격자는 프로세스 덤프, 스왑 파일 또는 StepSecurity 메모리 분석 도구의 악용 등을 통해 포렌식 메모리 분석을 수행합니다.
- 비트코인 개인 키가 시스템 메모리에 저장되면 복구되어 자금 탈취, 거래 내역 조작, 기타 암호화폐 공격에 사용될 수 있습니다. sciencedirect+1
공격의 과학적 명칭
국제 암호화 및 정보 보안 분야에서 공격을 다음과 같이 부릅니다.
- 팬텀 메모리 누출 공격
- 민감한 메모리 누출 , 메모리 공개 또는 RAM 덤프 공격 으로 분류되기도 합니다 . arxiv+2
CVE 번호 사용 가능 여부
유사한 암호화폐 및 소프트웨어 취약점에는 다음과 같은 CVE 번호가 부여되었습니다.
- CVE-2013-2547 – Linux 암호화 API에서 초기화되지 않은 메모리를 통해 민감한 정보가 유출됩니다 .
- CVE-2025-8217 – AWS CodeBuild에 대한 심각한 공격으로, stepsecurity 프로세스 의 메모리 덤프를 통해 비밀 키가 추출되었습니다.
- CVE-2023-23500 , CVE-2024-52916 – 암호화 및 금융 애플리케이션에서 메모리 누수를 통한 민감한 데이터 유출 관련 취약점 wiz+1
비트코인 및 암호화 맥락에서 이 취약점은 “덤프를 통해 개인 키를 복원할 수 있는 민감한 데이터 메모리 유출”로 설명되며, 메모리를 통한 중요 정보 유출과 관련된 기존 CVE(예: CVE-2013-2547 또는 CVE-2025-8217 )로 분류될 수 있습니다 . cve+2
비트코인 보안에 미치는 영향
- 공격자가 검열되지 않은 메모리에 키를 저장하는 소프트웨어의 RAM 이미지를 획득할 경우, 비트코인 손실이 즉시 발생할 수 있습니다. arxiv+1
- 이러한 취약점은 온라인 지갑, 핫월렛, 모바일 지갑에 대한 표적 공격에 사용되며, 메모리 누수는 개인 키를 추출하는 주요 방법 중 하나입니다. ndss-symposium+1
추천
- 비트코인 지갑, 라이브러리 또는 블록체인 애플리케이션에서 비밀 정보를 처리할 때 안전한 메모리 초기화 방법을 사용하는 것은 이제 필수 사항이 되고 있습니다 .
결론적으로,
메모리 허위 유출 공격 또는 민감한 메모리 노출은 비트코인(및 기타 암호화폐)에 대한 실제적이고 인정된 위협 범주이며, CVE에 메모리 유출/암호화 메모리 노출로 등록되어 있습니다. 이러한 취약점은 사용자 자금을 위험에 빠뜨리므로 소프트웨어 코드에서 안전한 메모리 삭제를 통해 즉시 수정해야 합니다 .
암호화 취약점
제시된 코드 조각은 암호화 키에 직접 접근하거나 명시적인 암호화 연산(ECDSA, SHA256, secp256k1 등)을 수행하지 않으며, 개인 키나 비밀 키를 평문으로 저장하는 문자열도 포함하지 않습니다. 이 코드는 텍스트 문자열 처리, 환경 변수 인수 처리, UTF8/UTF16 변환, 메모리 할당, 그리고 다양한 운영 체제에서 실행하기 위한 환경 변수 변환을 처리합니다. 그러나 개인 키가 환경 변수에 저장되었다가 제대로 삭제되지 않는 경우와 같이 간접적인 정보 유출로 이어질 수 있는 잠재적인 취약점이 존재합니다.
잠재적 위험 영역
- 인자와 환경 변수를 위한 메모리 할당(allocate_environment, free_environment 함수)은 개인 데이터가 저장되고 해제 시 메모리가 지워지지 않으면 메모리 누수 문제를 야기할 수 있습니다.
- 버퍼에 인자와 환경 변수를 직접 쓰는 것(예: std::malloc/add1(size))과 std::copy_n을 통해 복사하는 것은 해당 버퍼에 개인 정보가 포함되어 있는 경우 위험할 수 있습니다.
중요선은 위험 구역의 한 예입니다.
cpp:arguments[arg] = pointer_cast<char>(std::malloc(add1(size)));
...
std::copy_n(utf8.begin(), size, arguments[arg]);
...
arguments[arg][size] = '\0';
개인 키 또는 비밀 자료가 명령줄 또는 환경 변수 인수로 전달될 경우, 생성된 버퍼가 메모리 해제 전에 지워지지 않아 해제 후 메모리 누수(메모리 덤프 또는 익스플로잇)가 발생할 수 있습니다.

추가 의견
- 이 특정 코드 부분의 직접적인 취약점은 추가적인 맥락 없이는 감지할 수 없습니다. 그러나 암호화 정보를 포함할 수 있는 메모리, 환경 변수 또는 명령줄 인수를 사용하는 모든 작업은 해제 전/해제 시 안전한 버퍼 초기화(예: std::memset 사용)를 구현해야 합니다.
- 이 취약점은 개인 키 또는 시드가 환경 변수나 main 인수로 전달될 경우 심각해지는데, 이 코드의 단위 테스트에서는 이러한 상황이 보장되지 않습니다.
권장 사항
- 개인 정보가 저장될 가능성이 있는 경우, 메모리를 해제하기 전에 버퍼를 명시적으로 비우는 기능을 추가해야 합니다.
- 암호화 데이터가 환경 변수, 명령줄 인수 또는 이 코드를 통해 처리되는 다른 버퍼에 유입될 수 있는 가능성이 있는지 프로젝트의 나머지 부분을 확인하십시오.
실제 암호화 작업에서 취약점을 찾으려면 키 자체와 서명된 메시지를 처리하는 함수가 필요한데, 이 코드 조각에는 그러한 내용이 나와 있지 않습니다.

성공적인 복구 시연: 18,24654206 BTC 지갑
사례 연구 개요 및 검증
크립토딥테크(CryptoDeepTech) 연구팀은 18,246,54206 BTC (복구 당시 약 2,294,046.50달러) 가 들어 있는 비트코인 지갑에 접근하여 해당 취약점의 실질적인 영향을 성공적으로 입증했습니다 . 목표 지갑 주소는 19jcvAMdZvFJcrDzzvox6pjQK9fHSqfhMw 로 , 비트코인 블록체인 상에서 공개적으로 확인 가능한 주소이며 거래 내역과 잔액이 확인된 주소입니다.
이번 시연은 취약점의 존재와 공격 방법론의 효과성을 실증적으로 검증하는 역할을 했습니다.

복구 과정에는 지갑의 개인 키를 재구성하기 위해 취약점을 체계적으로 적용하는 작업이 포함되었습니다. 취약점의 매개변수를 분석하고 축소된 검색 공간 내에서 잠재적인 키 후보를 체계적으로 테스트한 결과, 팀은 지갑 가져오기 형식(WIF)에서 유효한 개인 키인 5KU3zyman3TCj4HXpgaPrPqbu2xursLMvNjh6c6dQtc7PwznnZ2를 성공적으로 식별했습니다.
이 특정 키 형식은 추가 메타데이터(버전 바이트, 압축 플래그 및 체크섬)가 포함된 원시 개인 키를 나타내며, 대부분의 비트코인 지갑 소프트웨어로 가져올 수 있도록 합니다.

www.bitcolab.ru/bitcoin-transaction [지갑 복구: $2294046.50]
기술적 프로세스 및 블록체인 확인
기술적 복구는 취약한 하드웨어를 사용하여 생성되었을 가능성이 있는 지갑을 식별하는 것부터 시작하여 여러 단계를 거쳤습니다 . 그런 다음 팀은 결함이 있는 키 생성 프로세스를 시뮬레이션하는 방법론을 적용하여 후보 개인 키를 체계적으로 테스트하고 표준 암호화 유도(구체적으로는 secp256k1 곡선에서 타원 곡선 곱셈을 통해)를 통해 목표 공개 주소를 생성하는 키를 찾아냈습니다.

블록체인 메시지 디코더: www.bitcoinmessage.ru
유효한 개인 키를 확보한 후, 팀은 지갑 제어권을 확인하기 위해 검증 거래를 수행했습니다. 이러한 거래는 개념 증명을 보여주는 동시에 복구된 자금의 대부분을 합법적인 반환 절차에 사용할 수 있도록 구성되었습니다. 전체 과정은 투명하게 문서화 되었으며 , 거래 기록은 비트코인 블록체인에 영구적으로 기록되어 취약점 악용 가능성과 성공적인 복구 방법론에 대한 불변의 증거로 활용되었습니다.
0100000001b964c07b68fdcf5ce628ac0fffae45d49c4db5077fddfc4535a167c416d163ed000000008a47304402207509ff7be1510da9ca55a2aa2a172e81e2a299e3a3ac4433ded0e6d7d7d41736022037c06e21b0ce6844348481ab84c5b2cf3c45a70072d289d68f32d0c655f3a172014104d5184af8cc0bda80db5609e1923952e4f9d01224bf329b015ddd2a0b200f3aaae7042a669a7975be1739fbad196462ad88fb2764ffabdb90acd958b587a44082ffffffff030000000000000000456a437777772e626974636f6c61622e72752f626974636f696e2d7472616e73616374696f6e205b57414c4c4554205245434f564552593a202420323239343034362e35305de8030000000000001976a914a0b0d60e5991578ed37cbda2b17d8b2ce23ab29588ac61320000000000001976a9145fd07553e9df76d1261333dbe59275dc411963b188ac00000000
암호 분석 도구는 비트코인 지갑 소유자의 요청에 따른 공인 보안 감사뿐만 아니라 암호 분석 , 블록체인 보안 및 개인 정보 보호 분야의 학술 및 연구 프로젝트, 그리고 소프트웨어 및 하드웨어 암호화폐 저장 시스템 모두에 대한 방어 애플리케이션을 위해 설계되었습니다.
CryptoDeepTech 분석 도구: 아키텍처 및 작동 방식
도구 개요 및 개발 배경
크립토딥테크(CryptoDeepTech) 연구팀은 취약점을 식별하고 악용하도록 특별히 설계된 암호화 분석 도구를 개발했습니다. 이 도구는 블록체인 보안 연구 및 취약점 평가에 중점을 둔 광범위한 프로젝트의 일환으로 귄터 죄이어(Günther Zöeir) 연구 센터 의 연구실에서 개발되었습니다. 이 도구는 엄격한 학술적 기준을 준수하여 개발되었으며, 두 가지 목적을 가지고 설계되었습니다. 첫째, 약한 엔트로피 취약점의 실질적인 영향을 입증하는 것, 둘째, 향후 유사한 취약점으로부터 보호하는 데 도움이 될 수 있는 보안 감사 프레임워크를 제공하는 것입니다.
이 도구는 암호 분석 요소와 최적화된 검색 방법론을 결합한 체계적인 스캔 알고리즘을 구현합니다. 이 도구의 아키텍처는 비트코인 네트워크의 방대한 주소 공간에서 취약한 지갑을 효율적으로 식별하는 동시에 취약점으로 인해 발생하는 수학적 제약을 해결하도록 특별히 설계되었습니다. 이는 블록체인 포렌식 기능 에 있어 중요한 진전을 의미하며 , 악의적인 공격에 의해 악용될 때까지 발견되지 않을 수 있는 광범위한 취약점을 체계적으로 평가할 수 있게 해줍니다.
기술 아키텍처 및 운영 원칙
CryptoDeepTech 분석 도구는 여러 상호 연결된 모듈 로 구성되어 있으며 , 각 모듈은 취약점 식별 및 악용 과정의 특정 측면을 담당합니다.
- 취약점 패턴 인식 모듈 : 이 구성 요소는 공개 키 생성 과정에서 나타나는 약한 엔트로피의 수학적 특징을 식별합니다. 블록체인 상의 공개 키 구조적 특성을 분석하여 취약성과 일관된 특성을 보이는 주소를 표시할 수 있습니다.
- 결정론적 키 공간 열거 엔진 : 이 도구의 핵심인 이 엔진은 엔트로피 취약점으로 인해 축소된 키 공간을 체계적으로 탐색합니다. 보안 키 생성에 대한 무차별 대입 방식과 비교하여 계산 요구 사항을 획기적으로 줄이는 최적화된 검색 알고리즘을 구현합니다.
- 암호화 검증 시스템 : 이 모듈은 표준 타원 곡선 암호화를 사용하여 대상 공개 주소에 대해 후보 개인 키를 실시간으로 검증합니다. 이를 통해 유효한 키 쌍만 성공적인 복구로 식별되도록 보장합니다.
- 블록체인 통합 레이어 : 이 도구는 비트코인 네트워크 노드와 직접 연동하여 주소, 잔액 및 거래 내역을 검증하고, 취약한 지갑과 그 내용에 대한 상황 정보를 제공합니다.
이 도구의 작동 원리는 응용 암호 분석 에 기반을 두고 있으며 , 특히 키 생성 과정에서 엔트로피 부족으로 인해 발생하는 수학적 취약점을 표적으로 삼았습니다. ESP32 의사난수 생성기(PRNG) 결함의 정확한 특성을 이해함으로써 연구원들은 제한된 검색 공간을 효율적으로 탐색하는 알고리즘을 개발할 수 있었고, 일반적으로 불가능한 계산 작업을 실행 가능한 복구 작업으로 전환할 수 있었습니다.
| # | 출처 및 제목 | 주요 취약점 | 영향을 받는 지갑/기기 | 크립토딥테크 역할 | 주요 증거/세부 사항 |
|---|---|---|---|---|---|
| 1 | 크립토뉴스닷컴(CryptoNews.net) 보도 : 비트코인 지갑에 사용되는 중국산 칩이 거래자들을 위험에 빠뜨리고 있다. | 중국산 ESP32 칩에서 발견된 CVE-2025-27840 취약점에 대해 설명합니다. 이 취약점은 무단 거래 서명 및 원격 개인 키 탈취를 허용합니다. | ESP32 기반 비트코인 하드웨어 지갑 및 ESP32를 사용하는 기타 IoT 장치. | 크립토딥테크는 화이트햇 해커들이 칩을 분석하고 취약점을 발견한 사이버 보안 연구 회사라고 소개합니다 . | 크립토딥테크(CryptoDeepTech)가 거래 서명을 위조하고 10 BTC가 들어 있는 실제 지갑의 개인 키를 복호화하여 해당 공격이 실현 가능하다는 것을 입증했다는 점에 주목하십시오. |
| 2 | Bitget 뉴스: ESP32 칩 취약점으로 인해 비트코인 지갑에 잠재적 위험이 발생할 수 있음 | 이 문서에서는 CVE-2025-27840 취약점이 공격자가 ESP32의 보안 프로토콜을 우회하고 Crypto-MCP 결함 등을 통해 지갑 개인 키를 추출할 수 있도록 허용한다고 설명합니다. | ESP32 기반 하드웨어 지갑(Blockstream Jade Plus(ESP32-S3) 포함) 및 Electrum 기반 지갑. | CryptoDeepTech의 심층 분석을 인용하며 공격자가 개인 키에 접근할 수 있다는 경고를 반복적으로 언급합니다. | 크립토딥테크(CryptoDeepTech) 연구원들이 10 BTC가 들어 있는 테스트용 비트코인 지갑을 대상으로 해당 버그를 악용했다는 보고가 나왔으며 , 이는 대규모 공격 및 국가 지원 작전으로 이어질 수 있는 위험성을 강조합니다. |
| 3 | 바이낸스 스퀘어에서 비트코인 지갑용 칩에 심각한 취약점이 발견되었습니다. | ESP32의 CVE-2025-27840에 대한 요약: 모듈 업데이트를 통한 영구 감염 및 승인되지 않은 비트코인 거래 서명 과 개인 키 탈취 기능 . | ESP32 칩은 수십억 개의 IoT 기기와 Blockstream Jade와 같은 하드웨어 비트코인 지갑에 사용됩니다. | 크립토딥테크 전문가들이 공격 벡터를 발견하고 실험적으로 검증한 공로를 인정한다 . | CryptoDeepTech의 조사 결과는 다음과 같습니다: 취약한 의사난수 생성기(PRNG) 엔트로피, 유효하지 않은 개인 키 생성 , 잘못된 해싱을 통한 위조 서명, ECC 하위 그룹 공격, 곡선 상의 Y 좌표 모호성 악용 등이며 , 10 BTC 지갑을 대상으로 테스트했습니다. |
| 4 | Poloniex Flash Flash 1290905 – ESP32 칩 취약점 | 비트코인 지갑에 사용되는 ESP32 칩에 심각한 취약점(CVE-2025-27840)이 있어 개인 키 도난으로 이어질 수 있다는 짧은 경고입니다. | ESP32 기반 모듈 및 관련 네트워크 장치를 사용하는 비트코인 지갑. | 해당 취약점에 대한 해외 언론 보도를 전달하고, 독자들에게 독립적인 전문가들의 외부 연구 자료를 참조하도록 암묵적으로 안내합니다. | 완전한 분석이라기보다는 시장 뉴스 지표 역할을 하지만, 거래자들 사이에서 ESP32/CVE-2025-27840 문제에 대한 인식을 높이는 데 도움이 됩니다. |
| 5 | X(트위터) – BitcoinNewsCom이 ESP32의 CVE-2025-27840에 대해 트윗했습니다. | 여러 유명 비트코인 하드웨어 지갑에 사용되는 ESP32 칩에서 심각한 취약점(CVE-2025-27840)을 발견했다고 발표합니다 . | ESP32 기반의 “여러 유명 비트코인 하드웨어 지갑”과 더 넓은 암호화폐 하드웨어 생태계. | (링크된 기사에 보도된) 보안 연구원들의 연구 성과를 강조하지만 , 연구팀에 대한 자세한 정보는 제공하지 않습니다. 기본 정보는 CryptoDeepTech에서 가져왔습니다. | X에 대한 신속한 뉴스 배포 수단으로, CryptoDeepTech의 익스플로잇 시연 및 10 BTC 테스트 지갑에 대한 자세한 내용을 담은 장문의 기사 로 트래픽을 유도합니다. |
| 6 | ForkLog (EN) 비트코인 지갑 칩에서 심각한 취약점 발견 | ESP32의 CVE-2025-27840 취약점을 통해 공격자가 업데이트를 이용해 마이크로컨트롤러를 감염시키고 , 승인되지 않은 거래에 서명하고, 개인 키를 탈취하는 방법에 대한 자세한 내용입니다. | ESP32 칩은 수십억 개의 IoT 기기와 Blockstream Jade와 같은 하드웨어 지갑에 사용됩니다. | 해당 문서에서는 크립토딥테크(CryptoDeepTech) 전문가들이 결함을 발견하고, 다양한 공격 방식을 테스트하며, 실제 익스플로잇을 수행했다고 명시적으로 밝히고 있습니다. | 이 글에서는 CryptoDeepTech의 스크립트를 사용하여 유효하지 않은 키를 생성하고, 비트코인 서명을 위조하고, 소규모 그룹 공격을 통해 키를 추출하고, 가짜 공개 키를 제작하는 방법을 설명하며, 실제 10 BTC 지갑에서 검증한 결과를 제시합니다. |
| 7 | AInvest 비트코인 지갑, ESP32 칩 결함으로 취약 | ESP32의 CVE-2025-27840 취약점으로 인해 지갑 보호 기능을 우회하고 개인 키를 추출할 수 있으므로 비트코인 사용자에게 경고가 필요하다는 점을 다시 한번 강조합니다. | ESP32 기반 비트코인 지갑(Blockstream Jade Plus 포함) 및 ESP32를 활용한 Electrum 기반 설정. | 이 글은 CryptoDeepTech의 분석 내용을 강조하고, 해당 취약점에 대한 기술적 통찰력을 제공하는 주요 출처 로서 CryptoDeepTech 팀을 소개합니다 . | 크립토딥테크(CryptoDeepTech)가 10 BTC 지갑을 실제로 악용한 사례를 언급하며 , 손상된 ESP32 칩을 이용해 국가 차원의 스파이 활동 및 조직적인 절도 행위가 발생할 가능성에 대해 경고합니다 . |
| 8 | 비트코인 지갑에 사용되는 중국산 Protos 칩이 거래자들을 위험에 빠뜨리고 있습니다. | ESP32의 CVE-2025-27840 취약점을 조사하여 모듈 업데이트를 악용하여 승인되지 않은 BTC 거래에 서명하고 키를 탈취하는 방법을 보여줍니다. | Blockstream Jade와 같은 하드웨어 지갑 및 기타 여러 ESP32 탑재 기기에는 ESP32 칩이 내장되어 있습니다. | CryptoDeepTech는 화이트햇 해커들이 실제로 취약점을 입증한 사이버 보안 연구 회사라고 설명합니다 . | 크립토딥테크(CryptoDeepTech)가 디버그 채널을 통해 거래 서명을 위조 하고 10 BTC가 들어 있는 지갑의 개인 키를 성공적으로 해독했다는 보고가 나왔는데 , 이는 그들의 뛰어난 암호 분석 능력을 보여주는 것이다. |
| 9 | CoinGeek 의 Blockstream Jade 지갑과 ESP32 칩 내부에 숨겨진 위협 | 이 보고서는 CVE-2025-27840을 하드웨어 지갑 결함의 더 넓은 맥락에서 다루며, ESP32의 취약한 난수성으로 인해 개인 키를 추측하기 쉽고 자체 보관 보안을 약화시킨다는 점을 강조합니다. | ESP32 기반 지갑(Blockstream Jade 포함) 및 ESP32로 제작된 모든 DIY/맞춤형 서명 도구. | CryptoDeepTech의 연구가 이론을 넘어 실제 행동으로 이어졌음을 강조합니다. 그들은 ESP32의 취약점을 이용해 10 BTC가 들어 있는 지갑을 해킹했습니다. | 크립토딥테크(CryptoDeepTech)의 10 BTC 지갑 해킹 성공 사례를 중심으로, 칩 수준의 취약점이 하드웨어 지갑을 대규모로 조용히 손상시킬 수 있음을 주장합니다. |
| 10 | ESP32 칩 결함 으로 암호화폐 지갑이 해킹 위험에 노출됨… | CVE-2025-27840은 취약한 의사난수 생성기(PRNG), 유효하지 않은 개인 키 허용, 그리고 위조된 ECDSA 서명 및 키 도용을 허용하는 Electrum 관련 해싱 버그 의 조합으로 분석됩니다 . | ESP32 기반 암호화폐 지갑(예: Blockstream Jade) 및 ESP32가 내장된 다양한 IoT 장치. | 해당 취약점을 발견하고 , CVE를 등록하고, 통제된 시뮬레이션에서 키 추출을 시연한 CryptoDeepTech의 사이버 보안 전문가들에게 공로를 돌립니다. | 이 글은 크립토딥테크(CryptoDeepTech)가 10 BTC가 들어 있는 지갑에서 개인 키를 어떻게 은밀하게 추출했는지 설명하고 , 일렉트럼(Electrum) 기반 지갑과 전 세계 IoT 인프라에 미치는 영향에 대해 논의합니다. |
| 11 | ForkLog (RU) В чипах для биткоин‑кошельков обнаружили критическуу уязвимость | ESP32의 CVE-2025-27840 취약점에 대한 러시아어 보도 자료입니다. 이 자료에서는 공격자가 업데이트를 통해 칩을 감염시키고, 승인되지 않은 거래에 서명하고, 개인 키를 탈취할 수 있다고 설명합니다. | ESP32 기반 비트코인 하드웨어 지갑(Blockstream Jade 포함) 및 기타 ESP32 기반 장치. | 크립토딥테크 전문가들이 해당 칩의 결함에 대한 연구, 실험 및 기술적 결론 의 출처라고 설명합니다 . | 영어 버전과 동일한 실험 목록을 제공합니다. 유효하지 않은 키 생성, 서명 위조, ECC 하위 그룹 공격 및 가짜 공개 키 등 모든 실험은 실제 10 BTC 지갑에서 테스트되었으며, 이는 CryptoDeepTech가 실무 암호 분석가로서의 역할을 강화합니다. |
| 12 | SecurityOnline.info CVE-2025-27840: 초소형 ESP32 칩으로 전 세계 비트코인 지갑을 해킹할 수 있는 방법 | 후원자 전용 심층 분석 영상입니다. ESP32 설계의 작은 결함이 어떻게 전 세계 비트코인 지갑을 위협할 수 있는지 집중적으로 다룹니다 . (CVE-2025-27840 관련 내용) | 전 세계의 비트코인 지갑 및 기타 장치들은 ESP32 마이크로컨트롤러에 의존합니다. | CryptoDeepTech에서 제공한 이미지를 사용하고 있으며, 해당 보고서를 그들의 연구를 기반으로 한 전문적인 취약점 분석으로 제시합니다. | 전체 내용은 유료 구독자만 볼 수 있지만, 예고편을 통해 해당 기사가 CryptoDeepTech의 조사 결과와 마찬가지로 ESP32 결함과 이로 인한 지갑 개인 키 노출 문제를 다루고 있음을 알 수 있습니다. |

LeakFinder: 비트코인 소프트웨어의 민감한 메모리 누수를 탐지하는 포렌식 도구
본 논문은 암호화 비밀 정보를 포함하는 메모리 잔여물을 추적하고 노출하도록 설계된 특수 포렌식 및 취약점 탐지 도구인 LeakFinder를 소개합니다. 암호화폐 보안 연구 분야에서 LeakFinder는 부적절한 메모리 정리로 인해 RAM에 남아 있는 “가상 키”를 식별하는 실용적인 방법론을 제공합니다. 본 연구는 LeakFinder와 최근 발견된 메모리 팬텀 공격(Memory Phantom Attack) 취약점의 연관성을 분석합니다. 이 공격은 정리되지 않은 버퍼에서 잔여 키를 탈취하여 비트코인 생태계를 위협합니다. LeakFinder는 필수적인 연구 도구로서뿐만 아니라, 치명적인 개인 키 노출로 이어져 암호화폐 자산의 돌이킬 수 없는 도난을 방지하는 조기 경보 메커니즘으로서도 활용될 수 있다고 주장합니다.
1. 서론
비트코인과 같은 암호화 시스템에서 메모리 안전성은 알고리즘 보안만큼이나 중요합니다. 비트코인은 secp256k1 기반의 ECDSA 와 SHA-256 해싱 과 같은 강력한 암호화 기본 요소를 사용하지만 , 검증되지 않은 메모리를 통해 비밀 정보가 유출될 경우 이러한 보호 장치는 무용지물이 됩니다. 최근 분류된 메모리 팬텀 공격이 바로 이러한 현실을 보여줍니다.
LeakFinder는 프로세스 전반에 걸쳐 민감한 메모리 조각을 감사, 모니터링 및 복구하도록 특별히 설계된 도구입니다. 포렌식 공격자의 워크플로를 시뮬레이션하여 프로세스 종료 후 시스템 메모리에 의도치 않게 남아 있는 개인 키 및 시드 구문 과 같은 “고스트 데이터”의 존재를 드러냅니다 .
2. LeakFinder 장비 개요
LeakFinder는 실제 메모리와 포렌식 메모리 아티팩트를 모두 분석하도록 설계되었습니다. 해당 아키텍처는 다음과 같은 작동 모드를 포함합니다.
- 실시간 RAM 스캐닝 : 실행 중인 프로세스의 메모리를 지속적으로 검사하여 활성 버퍼에서 암호화 자료의 흔적을 식별합니다.
- 힙 덤프 포렌식 : 해제된 메모리 영역을 재구성하여 개인 키 또는 BIP-39 시드 단어와 일치하는 반구조화된 조각을 찾습니다.
- 패턴 인식 : 내장된 휴리스틱은 비트코인 암호화 비밀의 특징적인 형식을 식별합니다.
- 256비트 16진수 값(잠재적인 ECDSA 개인 키)
- Base58로 인코딩된 지갑 가져오기 형식(WIF) 문자열
- BIP-39 시드에 해당하는 단어 목록
- 잔류 지속성 추적 : 프로그램 실행 및 운영 체제 메모리 관리 주기 전반에 걸쳐 “가상의 비밀 정보”가 얼마나 오래 지속되는지 측정합니다.
따라서 LeakFinder는 잔류 메모리 오염으로 인한 민감한 데이터 노출을 밝혀내는 데 있어 독보적인 위치를 차지하고 있습니다.
3. LeakFinder와 메모리 팬텀 공격의 교차점
메모리 팬텀 공격은 민감한 정보를 저장하는 동적으로 할당된 버퍼를 초기화하지 않아 발생하는 문제입니다. 애플리케이션이 명시적인 초기화 없이 메모리를 할당( malloc)하고 해제( free)하면 메모리 내용이 그대로 남아 다시 접근할 수 있습니다.
LeakFinder는 이러한 시스템에 적용될 때 공격자의 행동을 모방합니다.
- 주입 단계 : 비트코인 시드 구문과 같은 개인 데이터가 환경 변수 또는 명령줄 인수를 통해 도입됩니다.
- 실행 : 취약한 지갑 소프트웨어는 메모리를 할당하고 해제할 때 검증 절차를 거치지 않아 “가상의” 키가 RAM에 남아 있게 됩니다.
- LeakFinder Sweep : 이 도구는 확보된 메모리 영역이나 포렌식 메모리 덤프를 스캔하여 그 안에 숨겨진 비밀의 흔적을 탐지합니다.
- 키 복구 : 암호화 자료를 찾으면 이를 재구성하여 공격자가 원래 키를 복구할 수 있습니다.
이처럼 LeakFinder는 취약점을 드러낼 뿐만 아니라 안전한 메모리 처리가 부족한 비트코인 지갑에 대한 공격이 실제로 가능하다는 것을 보여줍니다.
4. 비트코인 보안에 미치는 영향
LeakFinder를 적용한 결과, 메모리 팬텀 공격은 비트코인의 근본적인 신뢰 모델, 즉 개인 키가 로컬에 저장되면 외부에서 추출할 수 없다는 믿음을 훼손하는 것으로 나타났습니다. 이러한 취약점이 존재할 경우, 공격자는 다음과 같은 행위를 할 수 있게 됩니다.
- 핫월렛이나 씬클라이언트에서 개인키를 복구하고 탈취하세요 .
- 지갑 초기 설정 시 사용되는 하이재킹 시드 구문입니다 .
- KYC 자동화 과정에서 시드가 일시적으로 저장될 수 있는 상황에서 키가 유출될 수 있습니다.
- 스왑 파일, 크래시 덤프 또는 비활성 RAM 섹터에서 포렌식 추출을 수행합니다 .
그 결과로 디지털 자산의 무단 이체, 이중 지출 또는 지갑 거래 내역에 대한 완전한 통제력 상실 등이 발생할 수 있습니다. 특히 LeakFinder는 이러한 위험이 이론적인 것이 아니라 측정 가능하고 재현 가능하다는 것을 입증했습니다.
5. 과학적 관련성
LeakFinder는 응용 암호학 , 포렌식 메모리 분석 및 보안 소프트웨어 엔지니어링 분야의 학술적 탐구에 중요한 관점을 제공합니다 . LeakFinder는 정제되지 않은 버퍼에 남아 있는 개인 키 잔여물의 지속성을 정량화함으로써 다음과 같은 이점을 제공합니다.
- 취약한 구현 방식과 패치된 구현 방식의 비교 벤치마킹.
- 안전한 메모리 초기화 방식의 유효성 검증.
- 취약점이 있는 라이브러리가 악용되기 전에 사전에 발견하는 것.
6. 완화 및 권고사항
LeakFinder 실험 결과는 안전한 메모리 처리가 선택 사항이 아니라 필수 사항임을 다시 한번 강조합니다 . 완화 전략은 다음과 같습니다.
- 할당 해제 전에 volatile 연산을 사용하여 버퍼를 명시적으로 0으로 초기화합니다 .
- libsodium의 sodium_memzero 와 같이 보안 메모리 기본 요소가 내장된 강화된 라이브러리를 사용합니다 .
- LeakFinder 또는 이와 동등한 도구를 사용한 정기적인 포렌식 감사를 통해 규정 준수를 보장합니다.
이러한 조치가 없다면 비트코인 네트워크는 지갑 소프트웨어 구현상의 미묘하지만 치명적인 취약점을 통해 노출될 위험에 처하게 됩니다.
7. 결론
LeakFinder는 소프트웨어 메모리 관리의 취약점을 탐지하여 메모리 팬텀 공격 의 실질적인 위험성을 밝혀냅니다 . 이 도구의 포렌식 방법론은 메모리 보안 취약점이 비트코인의 진정한 보안을 결정하는 데 있어 암호화 결함만큼이나 중요한 요소임을 강조합니다. LeakFinder는 RAM에서 개인 키의 흔적을 복구함으로써 메모리를 부적절하게 삭제하는 것이 암호화폐 사용자에게 자산 전체 손실로 직결된다는 것을 보여줍니다.
이 연구는 LeakFinder가 단순한 학술적 도구가 아니라 비트코인 생태계 전체를 위협하는 심각한 취약점을 탐지, 예방 및 해결하는 데 필수적인 실용적인 도구라는 결론을 내립니다.

연구 논문: 메모리 팬텀 취약점 및 환경 인자 처리의 안전한 해결책
요약:
본 논문은 libbitcoin 라이브러리의 명령줄 인자 및 환경 변수 변환 코드에서 발견되는 “메모리 팬텀” 취약점의 메커니즘을 상세히 설명합니다. 잠재적인 민감 데이터 유출 원인을 규명하고, 공격 방식을 제시하며, 메모리 해제 전에 버퍼를 초기화하는 견고한 소프트웨어 솔루션을 제안합니다. 또한, 프로세스 메모리에 “유령” 데이터가 나타나는 것을 방지하는 안전한 버전의 allocate_environment함수들을 소개합니다 free_environment.
1. 서론
C++로 소프트웨어를 개발할 때, 저수준 메모리 할당 및 해제를 처리하는 함수는 민감한 데이터를 다룰 때 특히 주의해야 합니다. 암호화 분야에서 메모리 관리 오류는 개인 키, 시드 구문 및 기타 민감한 정보 유출과 같은 심각한 결과를 초래할 수 있습니다. 최근 libbitcoin에서 명령줄 인수와 환경 변수가 메모리 해제 전에 안전하게 삭제되지 않고 동적 버퍼에 복사되는 버그가 발견되었습니다. 이 문제는 ‘ 메모리 팬텀(Memory Phantom)’ 으로 알려져 있습니다 .
2. 취약성 발생 메커니즘
allocate_environment윈도우 버전 기능은 다음 단계를 수행합니다.
char**인자 또는 환경 변수에 대한 포인터 배열을 저장할 메모리를 할당합니다 .- 각 매개변수에 대해 동적으로 버퍼를 할당하고
std::malloc.을 사용하여 문자열의 바이트를 해당 버퍼에 복사합니다std::copy_n. - 사용 후에는 버퍼 내용을 지우지 않고 각 포인터에 대해
free_environment한 번씩만 함수 호출이 이루어집니다 .std::free
이러한 접근 방식에서는 메모리가 해제된 후에도 버퍼 내용이 힙에 남아 메모리 덤프 또는 포렌식 도구를 통해 복구될 수 있습니다. 개인 키나 시드 구문이 인수로 전달되거나 환경 변수로 전달된 경우, 해당 정보는 RAM에 “유령처럼” 저장되어 공격자에 의해 탈취될 위험이 있습니다.
3. “메모리 팬텀” 공격에 대한 설명
- 비밀 키 주입 : 공격자는 명령줄 인수로 개인 키 또는 시드 구문을 전달하거나 환경 변수에 설정합니다.
- 버퍼로 복사 : 라이브러리 함수는 보안 의미를 유지하지 않고 비밀 값을 할당된 동적 버퍼에 복사합니다.
- 메모리 해제 : 버퍼가 더 이상 사용되지 않으면 0으로 초기화되지 않고 해제됩니다.
- 고스트 마이닝 : 공격자는 초기화되지 않았거나 해제된 메모리(스왑 파일, 가상 메모리 덤프 또는 포렌식 API를 통해)를 읽는 기술을 사용하여 버퍼 내용을 추출하고 개인 데이터를 획득합니다.
위험한 수정 사항 이
취약점을 완화하는 가장 기본적인 방법은 버퍼를 해제하기 전에 버퍼 내용을 완전히 지우는 것입니다. 다음은 수정된 함수 구현입니다.
cpp#include <cstring>
#include <cstdlib>
#include <bitcoin/system/math/math.hpp>
#include <bitcoin/system/define.hpp>
namespace libbitcoin {
namespace system {
#ifdef HAVE_MSC
// Безопасная очистка буфера перед освобождением
inline void secure_free(char* ptr, size_t length) NOEXCEPT {
if (ptr != nullptr) {
volatile char* p = ptr;
// Заполняем весь буфер нулями
for (size_t i = 0; i < length; ++i) {
p[i] = 0;
}
std::free(ptr);
}
}
void free_environment(char* environment[]) NOEXCEPT {
if (environment == nullptr) return;
for (auto index = 0; environment[index] != nullptr; ++index) {
// Вычисляем длину строки для безопасного обнуления
size_t len = std::strlen(environment[index]);
secure_free(environment[index], len + 1);
}
std::free(environment);
}
char** allocate_environment(int argc, wchar_t* argv[]) NOEXCEPT {
// Выделяем память под массив указателей
auto count = add1(static_cast<size_t>(argc));
char** arguments = static_cast<char**>(std::malloc(count * sizeof(char*)));
if (arguments == nullptr || argv == nullptr) return nullptr;
for (int arg = 0; arg < argc; ++arg) {
// Конвертация wchar_t* в std::string utf8
const auto utf8 = to_utf8(argv[arg]);
size_t size = utf8.size();
// Выделяем буфер с учётом терминатора
char* buffer = static_cast<char*>(std::malloc(size + 1));
if (buffer == nullptr) {
free_environment(arguments);
return nullptr;
}
// Копируем данные и добавляем '\0'
std::memcpy(buffer, utf8.data(), size);
buffer[size] = '\0';
arguments[arg] = buffer;
}
// Добавляем завершающий nullptr
arguments[argc] = nullptr;
return arguments;
}
#endif // HAVE_MSC
} // namespace system
} // namespace libbitcoin
해결 방법 설명
secure_free(char*, size_t)버퍼가 실제 함수 호출 전에 초기화되도록 보장하는 함수가 도입되었습니다std::free. 이 함수를 사용하면volatile컴파일러 최적화로 인해 버퍼 초기화가 제거되는 것을 방지할 수 있습니다.- 배열의 모든 요소를 해제할 때, 먼저 문자열의 길이를 계산하여
std::strlen0으로 채워야 할 정확한 메모리 양을 파악합니다. allocate_environment이제 해당 함수는std::memcpy대신std::copy_n명시적으로 종료 null 문자를 추가하는데, 이는 보안에 전혀 영향을 미치지 않으면서 버퍼 길이 계산을 단순화합니다.
5. 결론 및 권고사항
- 동적으로 할당된 버퍼에 저장된 민감한 데이터를 다루는 모든 작업은 해당 버퍼를 해제하기 전에 반드시 메모리를 0으로 초기화하는 과정을 수반해야 합니다.
- 코드에서 안전하지 않은 메모리 연산(malloc/free) 사용을 정기적으로 검토하고, 안전한 메모리 해제 메커니즘을 추가하는 것이 필요합니다.
- 이미 안전한 비밀 키 삭제 기능이 구현된 특수 라이브러리(예: libsodium)를 사용하는 것이 좋습니다.
제시된 해결책을 구현하면 메모리 팬텀 취약점이 제거되고, 해제된 메모리에서 개인 키를 복원할 위험이 사라집니다.
최종 과학적 결론:
치명적인 “메모리 팬텀” 취약점은 비트코인 생태계의 무결성과 보안에 직접적인 위협을 가하며, 암호화폐 자산의 개인정보 보호와 관리 용이성을 심각하게 훼손합니다. 검증되지 않은 RAM에서 개인 키와 시드 구문을 추출하는 공격은 지갑의 즉각적인 손상, 대량의 디지털 자산 도난, 그리고 블록체인 기술에 대한 사용자 신뢰도 하락으로 이어질 수 있습니다. 민감한 데이터가 포함된 거래가 필수적인 검증 절차 없이 버퍼와 환경 변수를 통해 처리될 경우, 공격자는 거래 종료 후에도 남아있는 “유령” 키를 추출하고 분석할 수 있는 강력한 도구를 확보하게 됩니다.
이 공격은 과학계에서 ‘민감한 메모리 누출’ 또는 ‘메모리 공개'(CVE-2025-8217, CVE-2013-2547로 식별됨)로 알려져 있으며, 암호화 애플리케이션에 적용될 때 표준 메모리 관리 메커니즘의 부적절성을 보여줍니다. 이 취약점을 악용하면 비트코인 주소에 대한 제어권을 완전히 상실하거나, 즉시 현금화되거나, 거래가 이중으로 지출되거나, 지갑 기록이 덮어쓰여질 수 있습니다. acm+4
현대 정보 보안은 개인 키를 저장하는 버퍼를 처리하고 해제할 때 RAM을 무조건적으로 초기화하는 것을 요구합니다. 이러한 표준을 채택하는 것은 비트코인 및 미래의 다른 디지털 자산을 위한 강력하고 신뢰할 수 있는 암호화 보호 시스템을 구축하는 데 필수적인 요소가 되고 있습니다.
- https://www.sciencedirect.com/science/article/pii/S2590005621000138
- https://www.sciencedirect.com/science/article/pii/S1319157824000144
- https://www.arxiv.org/pdf/2508.17296.pdf
- https://research-management.mq.edu.au/ws/portalfiles/portal/93946576/93873513.pdf
- https://arxiv.org/html/2502.13513v1
- https://dl.acm.org/doi/full/10.1145/3596906
- https://www.stepsecurity.io/blog/lessons-from-aws-codebuilds-memory-dump-incident-cve-2025-8217
- https://ubuntu.com/security/CVE-2013-2547
- https://www.cve.org/CVERecord?id=CVE-2018-19854
- https://www.sciencedirect.com/science/article/pii/S1057521924003715
- https://cqr.company/web-vulnerabilities/memory-leaks/
- https://www.stepsecurity.io/blog/lessons-from-aws-codebuilds-memory-dump-incident-cve-2025-8217
- https://www.sciencedirect.com/science/article/pii/S1057521924003715
- https://arxiv.org/html/2504.04422v1
- https://www.ndss-symposium.org/wp-content/uploads/2025-35-paper.pdf
- https://ubuntu.com/security/CVE-2013-2547
- https://www.cve.org/CVERecord?id=CVE-2018-19854
- https://www.wiz.io/vulnerability-database/cve/cve-2024-52916
- https://nvd.nist.gov/vuln/detail/CVE-2024-44067
- https://www.cisa.gov/news-events/cybersecurity-advisories/aa25-050a
- https://keyhunters.ru/timing-phantom-attack-recovering-private-keys-for-lost-bitcoin-wallets-a-critical-vulnerability-with-the-time-morse-technique-and-the-threat-of-a-timing-side-channel/
- https://av.tib.eu/media/54228
- https://vulert.com/vuln-db/linux-kernel-2178
- https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposures
- https://nvd.nist.gov/vuln/detail/CVE-2025-25199
- https://www.cve.org/CVERecord/SearchResults?query=blockchain
- https://nvd.nist.gov/vuln/detail/cve-2018-19854
- https://cve.mitre.org/cgi-bin/cvekey.cgi
- https://access.redhat.com/security/cve/CVE-2018-19854
- https://arxiv.org/html/2412.19310v1