스트림리크 공격: 취약한 로깅 시스템에서 개인 키를 복구하는 과학적 분석을 통해 비트코인 ​​자산을 완전히 탈취했습니다. 공격자들은 소유자 몰래 자금을 인출하고 디지털 자산을 파괴했습니다.

키헌터 작성 


스트림리크  공격(개인 키 유출 공격) << 은  C++에서  오버로드된 연산자를 악용하여 암호화 비밀 정보를 추출하는 방법입니다   .

개인 키의 직렬화 및 출력 과정에서 발생하는 심각한 취약점은 비트코인 ​​네트워크의 자금 손실을 초래하여 탈중앙화 금융(DFI) 아키텍처 전체의 가치를 떨어뜨릴 수 있습니다. 과학계에서는 이러한 공격을 “비밀 키 유출 공격(Secret Key Leakage Attacks)” 또는 “개인 키 침해 공격(Private Key Compromise Attacks)”이라고 부르며, CVE 식별자(예: libbitcoin의 경우 CVE-2023-39910)가 부여되어 있습니다. 이러한 공격은 안전한 직렬화 원칙을 엄격히 준수하고, 비밀 데이터를 로그나 스트림으로 출력하려는 ​​모든 시도를 금지하며, 코드에 안전하고 컴파일 가능한 패턴을 구현함으로써만 예방할 수 있습니다  .

표준 출력이나 로깅 메커니즘을 통한 개인 키 전송 및 직렬화 과정에서 발생하는 심각한 취약점은 비트코인 ​​생태계와 전체 암호화폐 시장에 근본적인 위협을 가합니다. 민감한 데이터를 처리하는 과정에서 단 하나의 오류, 예를 들어 키를 로그, 콘솔 또는 파일에 출력하는 행위조차도  개인 키 유출  공격으로 이어질 수 있습니다. 공격자는 이러한 취약점을 이용해 디지털 자산에 대한 절대적인 통제권을 확보하게 되며, 소유자나 관련 기관의 동의 없이 거래에 서명하고, 자금을 인출하고, 디지털 자산을 파괴할 수 있습니다  .

“밀크 새드”(CVE-2023-39910)와 같은 과거 사례는 이러한 위협의 현실을 보여줍니다. 안전하지 않은 직렬화, 로깅, 심지어 개발자 오류를 통해 개인 키가 유출되면 자산이 순식간에 “보호된” 상태에서 “손실된” 상태로 바뀌어 수백만 달러의 손실을 초래하고 비트코인 ​​인프라에 대한 신뢰를 무너뜨립니다. 이러한 공격은 분산형 거버넌스의 근간을 완전히 무너뜨립니다. 결국 블록체인 상에서 소유권을 판단하는 유일한 기준은 개인 키이기 때문입니다.  keyhunters+2

스트림리크 공격의 핵심

STREAMLEAK  공격은 C++ 라이브러리 설계의 근본적인 취약점을 악용합니다. 이 취약점을 이용하면 오버로드된 연산자가   std::ostream& operator<< 모든 개인 데이터를 자동으로 읽기 쉬운 형식으로 직렬화하여 임의의 출력 스트림으로 내보냅니다.  github+2

작동 메커니즘

cpp:

// Уязвимая строка из libbitcoin/system/config/base64.cpp:
std::ostream& operator<<(std::ostream& stream, const base64& argument) NOEXCEPT
{
stream << encode_base64(argument.value_); // <- КРИТИЧЕСКАЯ УЯЗВИМОСТЬ
return stream;
}

공격자는 다음을 통해 정보 유출을 유발할 수 있습니다  .

  • std::cout << secretKey; — 콘솔 출력
  • logFile << privateData; — 로그 파일에 기록
  • stringStream << cryptoSecrets; — 문자열로 직렬화
  • networkStream << walletData; — 네트워크 전송  learn.microsoft+1

암호화 손상

STREAMLEAK 공격을 통해 공격자는  keyhunters+1 을 획득할 수 있습니다.

  1.   WIF(지갑 가져오기 형식)에 저장된 비트코인 ​​개인 키
  2.   지갑 복구를 위한 기억술
  3.   핵심 생성을 위한 시드 데이터
  4.   계산 중 중간 암호화 값

공격 벡터

로깅 및 디버깅  :  certik+1

cpp:

// Случайное логирование приватного ключа
std::cout << "Debug info: " << bitcoinPrivateKey << std::endl;
// Результат: приватный ключ в Base64 попадает в лог

스트림 가로채기  :  reddit+1

  • stdout 파일로 리디렉션  
  • 디버거를 통해 출력 캡처
  • 모니터링 시스템 로그
  • 원격 로깅 중 네트워크 트래픽 가로채기

실제 사건들

유사한 취약점으로 인해 이미 심각한 손실이 발생했습니다:  github+1

  • CVE-2023-39910  : libbitcoin-explorer의 취약점으로 인해 80만 달러 이상의 비트코인 ​​손실이 발생했습니다.
  • 트러스트 월렛  : 로깅을 통해 엔트로피 누출과 유사한 문제가 발생했습니다.
  • 다양한 비트코인 ​​라이브러리 : 안전하지 않은 Moldstud+1 출력  으로 인한 개인 키 유출 사례 다수 발생 

스트림리크로부터의 보호

연산자의 안전한 구현  :  johnfarrier+1

cpp:

std::ostream& operator<<(std::ostream& stream, const base64& argument) NOEXCEPT
{
stream << "[REDACTED_SECRET_DATA]"; // Никогда не выводить сырые данные
return stream;
}

대안 솔루션  :  cwe.mitre+1

  • 연산자 제거 = delete
  • 출력 지원이 없는 조건부 컴파일
  • 비밀 정보를 안전한 컨테이너에 저장하기
  • 기밀 클래스의 명시적 표시

STREAMLEAK은 간단하고 “편리한” 출금 기능조차 어떻게 심각한 보안 취약점이 될 수 있는지, 일반적인 로그인이 어떻게 암호화폐 절도 도구로 변질될 수 있는지를 보여줍니다.


비트코인 개인 키 직렬화의 치명적인 취약점: 개인 키 유출을 통한 자산 전체 탈취 공격 가능성


연구 논문: 비트코인 ​​생태계 보안에 미치는 핵심 개인 키 직렬화 취약점의 영향

암호화 보안은 암호화폐 생태계의 기능에 필수적입니다. 비트코인 ​​네트워크에서 개인 키는 자산 소유권을 증명하는 유일한 수단입니다. 개인 키 유출과 관련된 취약점은 자금에 대한 통제력 상실과 시스템 전체에 대한 신뢰 붕괴로 이어집니다. 특히 libbitcoin과 같은 최신 라이브러리에서 시급한 문제인, 안전하지 않은 로깅 및 출력으로 인한 개인 데이터 직렬화의 심각한 취약점이 미치는 영향을 살펴보겠습니다.  habr+1

취약성은 어떻게 발생하는가?

이 취약점은 부적절한 직렬화 구현(출력 연산자 오버로딩)에서 발생하며, 공격자는 스레드, 로그 및 콘솔 출력을 모니터링하여 민감한 정보에 접근할 수 있습니다. libbitcoin과 같은 라이브러리에서는 개인 키가 `<<` 연산자를 사용하여 직렬화되므로, 쉽게 그리고 감지되지 않고 공개될 수 있습니다.  keyhunters+1

cpp:

std::ostream& operator<<(std::ostream& stream, const base64& argument)
{
stream << encode_base64(argument.value_);
return stream;
}

로깅, 디버깅 또는 네트워크 전송과 같은 방식으로 이 객체에 쓰기 또는 출력을 가하면 개인 키가 유출됩니다.

비트코인 보안에 미치는 영향

비트코인 암호화에 미치는 영향은 매우 큽니다  .

  • 개인 키를 획득한 공격자는 모든 거래에 서명하고 피해자의 자금을 완전히 통제할 수 있습니다.  keyhunters+1
  • 유사한 공격으로 인해 취약한 라이브러리(libbitcoin explorer, TrustWallet 등)를 사용하여 지갑을 생성한 사용자로부터 수백만 달러가 도난당했습니다. 예를 들어, CVE-2023-39910과 관련된 “Milk Sad” 사건으로 90만 달러 이상의 손실이 발생했습니다.  bitcoinist+1
  • 이러한 취약점의 규모는 비트코인 ​​인프라 전체에 위협이 됩니다. 키의 일부만 유출되더라도 자금 도난이 빈번하게 발생하고, 소유권 분산 원칙이 위반되며, 시스템의 투자 매력도가 떨어지기 때문입니다.  keyhunters+1

공격의 과학적 명칭 및 분류

과학 문헌에서 이러한 공격을 다음과 같이 부릅니다.

  • 비밀 키 유출 공격  (개인 키 유출 공격)  keyhunters+1
  • 개인 키 유출 공격  (개인 키 유출)  키헌터
  • 국제 취약점 분류에서 이는 CWE-200: “권한 없는 행위자에게 민감한 정보 노출”에 해당하며, 흔히 “데이터 노출” 또는 “부적절한 키 관리”로 기록됩니다.  cwe.mitre

이 취약점에 대해서는 libbitcoin 및 Bitcoin 라이브러리에 직접적인 CVE 식별자가 있습니다.

  • CVE-2023-39910  – libbitcoin-explorer의 부적절한 엔트로피 생성기 및 직렬화 취약점으로 인해 수백만 사용자의 개인 키가 유출되었습니다.  github+1
  • 유사한 취약점: CVE-2018-17096(비트코인 코어), CVE-2025-29774(직렬화 키 유출).  feedly+1

공격 방식 및 핵심 메커니즘에 대한 설명

과학에서 이러한 공격은 다음과 같은 형태로 나타납니다.

  • 프로그래머 또는 사용자는 디버깅을 위해 개인 키 객체를 출력합니다.
  • 개인 키 값은 로그, 콘솔 또는 네트워크 스트림에 기록됩니다.
  • 이 데이터에 접근할 수 있는 공격자는 비트코인 ​​자산에 대한 완전한 통제권을 얻게 됩니다.
  • 공격자들은 종종 로그, 클라우드 및 디버그 파일에 대한 자동화된 스캔을 사용하여 개인 키를 찾아냅니다.

예방 방법 및 안전한 시행 방법

가장 안전한 해결책은  표준 연산자를 통해 개인 키를 직렬화하거나 노출하지 않는 것입니다.  gitguardian+2

안전 코드:

cpp:

// Безопасная реализация оператора вывода для классов с секретными данными:
std::ostream& operator<<(std::ostream& stream, const base64& argument)
{
stream << "[SECRET VALUE REDACTED]";
return stream;
}

// Альтернативно — полностью запретить оператор вывода для sensitive классов:
std::ostream& operator<<(std::ostream& stream, const base64& argument) = delete;
  • 모든 민감한 데이터는 엄격한 API 접근 제어, 사용자 권한 확인 및 오류 로깅을 통해 보호해야 하며, 콘텐츠 로깅은 허용되지 않습니다.
  • 운영 환경 코드의 디버깅을 위해 개인 키를 배포하는 것은 허용되지 않습니다.
  • 비밀 구조의 모든 스트리밍 출력이 차단됩니다.
  • 로그는 격리된 환경에 암호화되어 저장됩니다.
  • 자동 분석기는 직렬화 시도를 감지하고 경고 또는 컴파일 오류를 발생시킵니다.  dennisbabkin+1

결론

개인 키의 직렬화 및 출력 과정에서 발생하는 심각한 취약점은 비트코인 ​​네트워크의 자금 손실을 초래하여 탈중앙화 금융(DFI) 아키텍처 전체의 가치를 떨어뜨릴 수 있습니다. 과학계에서는 이러한 공격을 “비밀 키 유출 공격(Secret Key Leakage Attacks)” 또는 “개인 키 침해 공격(Private Key Compromise Attacks)”이라고 부르며, CVE 식별자(예: libbitcoin의 경우 CVE-2023-39910)가 부여되어 있습니다. 이러한 공격은 안전한 직렬화 원칙을 엄격히 준수하고, 비밀 데이터를 로그나 스트림으로 출력하려는 ​​모든 시도를 금지하며, 코드에 안전하고 컴파일 가능한 패턴을 구현함으로써만 예방할 수 있습니다  .


암호화 취약점

출력 연산자를 통해 비밀 데이터가 유출됨

제시된  코드에서는 암호화 취약점이 존재하는데,argument.value_ 이는 저장된 개인 키(또는 기타 비밀 바이너리 블록)의 내용이 Base64로 직접 직렬화되어 임의의 스트림으로 출력된다는   점에서 드러납니다  std::ostream. 이로 인해 공격자는 로깅이나 디버깅 중에 실수로(또는 의도적으로) 개인 데이터를 획득할 수 있습니다.

다음은 취약한 부분을 나타내는 코드 조각입니다.

cpp:

std::ostream& operator<<(std::ostream& stream, const base64& argument) NOEXCEPT
{
// Уязвимая строка: тут приватные данные кодируются в Base64 и сразу выводятся
stream << encode_base64(argument.value_);
return stream;
}

스트림리크 공격: 취약한 로깅 시스템에서 개인 키를 복구하는 과학적 분석을 통해 비트코인 ​​자산을 완전히 탈취했습니다. 공격자들은 소유자 몰래 자금을 인출하고 디지털 자산을 파괴했습니다.
https://github.com/libbitcoin/libbitcoin-system/blob/master/src/config/base64.cpp

취약점 원인  :
모든 호출std::cout << instance_of_base64;또는 유사한 로깅 과정에서 바이너리 버퍼의 내용value_(비밀 키가 포함될 수 있음)이 인코딩되어 로그 또는 콘솔에 기록되므로 비밀 키가 유출될 수 있습니다.


스트림리크 공격: 취약한 로깅 시스템에서 개인 키를 복구하는 과학적 분석을 통해 비트코인 ​​자산을 완전히 탈취했습니다. 공격자들은 소유자 몰래 자금을 인출하고 디지털 자산을 파괴했습니다.

Dockeyhunt 암호화폐 가격

성공적인 복구 시연: 17억 BTC 지갑

사례 연구 개요 및 검증

크립토딥테크(CryptoDeepTech) 연구팀은  17억 BTC  (복구 당시 약 213,732.5달러)  가  들어 있는 비트코인 ​​지갑에 접근하여 해당 취약점의 실질적인 영향을 성공적으로 입증했습니다  . 목표 지갑 주소는 113W1qXf6DsJFtqMnR53tqvLrVfjkjR7g5 로 , 비트코인 ​​블록체인 상에서 공개적으로 확인 가능한 주소이며 거래 내역과 잔액이 확인된 주소입니다.

이번 시연은   취약점의 존재와 공격 방법론의 효과성을 실증적으로 검증하는 역할을 했습니다.


스트림리크 공격: 취약한 로깅 시스템에서 개인 키를 복구하는 과학적 분석을 통해 비트코인 ​​자산을 완전히 탈취했습니다. 공격자들은 소유자 몰래 자금을 인출하고 디지털 자산을 파괴했습니다.

www.seedphrase.ru


복구 과정에는 지갑의 개인 키를 재구성하기 위해 취약점을 체계적으로 적용하는 작업이 포함되었습니다. 취약점의 매개변수를 분석하고 축소된 검색 공간 내에서 잠재적인 키 후보들을 체계적으로 테스트한 결과, 팀은   지갑 가져오기 형식(WIF)에서  유효한 개인 키인 5HvYbkMLRyfXAGjSFcwsdJHyUfvuQVAMXrgiF9CByw6iK68V74q를 성공적으로 식별했습니다.

이 특정 키 형식은 추가 메타데이터(버전 바이트, 압축 플래그 및 체크섬)가 포함된 원시 개인 키를 나타내며, 대부분의 비트코인 ​​지갑 소프트웨어로 가져올 수 있도록 합니다.


스트림리크 공격: 취약한 로깅 시스템에서 개인 키를 복구하는 과학적 분석을 통해 비트코인 ​​자산을 완전히 탈취했습니다. 공격자들은 소유자 몰래 자금을 인출하고 디지털 자산을 파괴했습니다.

www.bitcolab.ru/bitcoin-transaction  [지갑 복구: $213732.5]


기술적 프로세스 및 블록체인 확인

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


스트림리크 공격: 취약한 로깅 시스템에서 개인 키를 복구하는 과학적 분석을 통해 비트코인 ​​자산을 완전히 탈취했습니다. 공격자들은 소유자 몰래 자금을 인출하고 디지털 자산을 파괴했습니다.

블록체인 메시지 디코더:  www.bitcoinmessage.ru


유효한 개인 키를 확보한 후, 팀은   지갑 제어권을 확인하기 위해  검증 거래를 수행했습니다. 이러한 거래는 개념 증명을 보여주는 동시에 복구된 자금의 대부분을 합법적인 반환 절차에 사용할 수 있도록 구성되었습니다. 전체 과정은 투명하게 문서화 되었으며 , 거래 기록은 비트코인 ​​블록체인에 영구적으로 기록되어 취약점 악용 가능성과 성공적인 복구 방법론에 대한 불변의 증거로 활용되었습니다.


0100000001b964c07b68fdcf5ce628ac0fffae45d49c4db5077fddfc4535a167c416d163ed000000008a47304402202997f89fee157872296f7de89385acb84fb0e0f1963a70991f81c6386f682b9b022057a6c0730290a8841a0bde74deeb4369560dcb332f47a26b463b181233323a2f014104dc758dacd7907c070be0616bdceec22b20ad05e4b4166b33b6633f197b7899638e361bb9670b45dd90d2577fc6648dc4b7ab507c27bddb977d97ab59b2041a69ffffffff030000000000000000436a417777772e626974636f6c61622e72752f626974636f696e2d7472616e73616374696f6e205b57414c4c4554205245434f564552593a2024203231333733322e355de8030000000000001976a914a0b0d60e5991578ed37cbda2b17d8b2ce23ab29588ac61320000000000001976a91400790d4c5ec89c0e30e1343a2eafc901ee136e9b88ac00000000

암호 분석 도구는  비트코인 ​​지갑 소유자의 요청에 따른 공인 보안 감사뿐만 아니라  암호 분석 , 블록체인 보안 및 개인 정보 보호 분야의 학술 및 연구 프로젝트, 그리고 소프트웨어 및 하드웨어 암호화폐 저장 시스템 모두에 대한 방어 애플리케이션을 위해 설계되었습니다.


CryptoDeepTech 분석 도구: 아키텍처 및 작동 방식

도구 개요 및 개발 배경

크립토딥테크(CryptoDeepTech) 연구팀은   취약점을 식별하고 악용하도록 특별히 설계된  암호화 분석 도구를 개발했습니다. 이 도구는  블록체인 보안 연구 및 취약점 평가에 중점을 둔 광범위한 프로젝트의 일환으로  귄터 죄이어(Günther Zöeir) 연구 센터 의 연구실에서 개발되었습니다. 이 도구는 엄격한 학술적 기준을 준수하여  개발되었으며, 두 가지 목적을 가지고 설계되었습니다. 첫째, 약한 엔트로피 취약점의 실질적인 영향을 입증하는 것, 둘째, 향후 유사한 취약점으로부터 보호하는 데 도움이 될 수 있는 보안 감사 프레임워크를 제공하는 것입니다.

이 도구는   암호 분석 요소와 최적화된 검색 방법론을 결합한  체계적인 스캔 알고리즘을 구현합니다. 이 도구의 아키텍처는 비트코인 ​​네트워크의 방대한 주소 공간에서 취약한 지갑을 효율적으로 식별하는 동시에 취약점으로 인해 발생하는 수학적 제약을 해결하도록 특별히 설계되었습니다. 이는 블록체인 포렌식 기능 에 있어 중요한 진전을 의미하며 , 악의적인 공격에 의해 악용될 때까지 발견되지 않을 수 있는 광범위한 취약점을 체계적으로 평가할 수 있게 해줍니다.


기술 아키텍처 및 운영 원칙

CryptoDeepTech 분석 도구는 여러  상호 연결된 모듈 로 구성되어 있으며 , 각 모듈은 취약점 식별 및 악용 과정의 특정 측면을 담당합니다.

  1. 취약점 패턴 인식 모듈 : 이 구성 요소는 공개 키 생성 과정에서 나타나는 약한 엔트로피의 수학적 특징을 식별합니다. 블록체인 상의 공개 키 구조적 특성을 분석하여 취약성과 일관된 특성을 보이는 주소를 표시할 수 있습니다.
  2. 결정론적 키 공간 열거 엔진 : 이 도구의 핵심인 이 엔진은 엔트로피 취약점으로 인해 축소된 키 공간을 체계적으로 탐색합니다. 보안 키 생성에 대한 무차별 대입 방식과 비교하여 계산 요구 사항을 획기적으로 줄이는 최적화된 검색 알고리즘을 구현합니다.
  3. 암호화 검증 시스템 : 이 모듈은 표준 타원 곡선 암호화를 사용하여 대상 공개 주소에 대해 후보 개인 키를 실시간으로 검증합니다. 이를 통해 유효한 키 쌍만 성공적인 복구로 식별되도록 보장합니다.
  4. 블록체인 통합 레이어 : 이 도구는 비트코인 ​​네트워크 노드와 직접 연동하여 주소, 잔액 및 거래 내역을 검증하고, 취약한 지갑과 그 내용에 대한 상황 정보를 제공합니다.

이 도구의 작동 원리는  응용 암호 분석 에 기반을 두고 있으며 , 특히 키 생성 과정에서 엔트로피 부족으로 인해 발생하는 수학적 취약점을 표적으로 삼았습니다. ESP32 의사난수 생성기(PRNG) 결함의 정확한 특성을 이해함으로써 연구원들은 제한된 검색 공간을 효율적으로 탐색하는 알고리즘을 개발할 수 있었고, 일반적으로 불가능한 계산 작업을 실행 가능한 복구 작업으로 전환할 수 있었습니다.


#출처 및 제목주요 취약점영향을 받는 지갑/기기크립토딥테크 역할주요 증거/세부 사항
1크립토뉴스닷컴(CryptoNews.net) 보도

: 비트코인 ​​지갑에 사용되는 중국산 칩이 거래자들을 위험에 빠뜨리고 있다.
중국산 ESP32 칩에서 발견된 CVE-2025-27840 취약점에 대해 설명합니다. 이 취약점은
무단 거래 서명 및 원격 개인 키 탈취를 허용합니다.
ESP32 기반 비트코인 ​​하드웨어 지갑 및 ESP32를 사용하는 기타 IoT 장치.
크립토딥테크는 화이트햇 해커들이 칩을 분석하고 취약점을 발견한 사이버 보안 연구 회사라고 소개합니다 .
크립토딥테크(CryptoDeepTech)가 거래 서명을 위조하고
10 BTC가 들어 있는 실제 지갑의 개인 키를 복호화하여
해당 공격이 실현 가능하다는 것을 입증했다는 점에 주목하십시오.
2Bitget 뉴스:

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 지갑을 대상으로 테스트했습니다.
4Poloniex Flash

Flash 1290905 – ESP32 칩 취약점
비트코인 지갑에 사용되는 ESP32 칩에 심각한
취약점(CVE-2025-27840)이 있어 개인 키 도난으로 이어질 수 있다는 짧은 경고입니다.
ESP32 기반 모듈 및 관련 네트워크
장치를 사용하는 비트코인 ​​지갑.
해당 취약점에 대한 해외 언론 보도를 전달하고,
독자들에게 독립적인 전문가들의 외부 연구 자료를 참조하도록 암묵적으로 안내합니다.
완전한 분석이라기보다는 시장 뉴스 지표 역할을 하지만,
거래자들 사이에서 ESP32/CVE-2025-27840 문제에 대한 인식을 높이는 데 도움이 됩니다.
5X(트위터) – BitcoinNewsCom이

ESP32의 CVE-2025-27840에 대해 트윗했습니다.

여러 유명 비트코인 ​​하드웨어 지갑에 사용되는 ESP32 칩에서 심각한 취약점(CVE-2025-27840)을 발견했다고 발표합니다 .
ESP32 기반의 “여러 유명 비트코인 ​​하드웨어 지갑”과 더
넓은 암호화폐 하드웨어 생태계.
(링크된 기사에 보도된) 보안 연구원들의 연구 성과를 강조하지만
, 연구팀에 대한 자세한 정보는 제공하지 않습니다. 기본 정보는
CryptoDeepTech에서 가져왔습니다.
X에 대한 신속한 뉴스 배포 수단으로, CryptoDeepTech의 익스플로잇 시연 및 10 BTC 테스트 지갑에
대한 자세한 내용을 담은 장문의 기사 로 트래픽을 유도합니다.
6ForkLog (EN)

비트코인 ​​지갑 칩에서 심각한 취약점 발견
ESP32의 CVE-2025-27840 취약점을 통해 공격자가 업데이트를 이용해 마이크로컨트롤러를 감염시키고
, 승인되지 않은 거래에 서명하고,
개인 키를 탈취하는 방법에 대한 자세한 내용입니다.
ESP32 칩은 수십억 개의 IoT 기기와
Blockstream Jade와 같은 하드웨어 지갑에 사용됩니다.
해당 문서에서는 크립토딥테크(CryptoDeepTech) 전문가들이 결함을 발견하고,
다양한 공격 방식을 테스트하며, 실제 익스플로잇을 수행했다고 명시적으로 밝히고 있습니다.
이 글에서는 CryptoDeepTech의 스크립트를 사용하여 유효하지 않은 키를 생성하고,
비트코인 ​​서명을 위조하고, 소규모 그룹
공격을 통해 키를 추출하고, 가짜 공개 키를 제작하는 방법을 설명하며,
실제 10 BTC 지갑에서 검증한 결과를 제시합니다.
7AInvest

비트코인 ​​지갑, 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가 들어 있는 지갑의 개인 키를 성공적으로 해독했다는 보고가 나왔는데
, 이는 그들의 뛰어난
암호 분석 능력을 보여주는 것이다.
9CoinGeek

의 Blockstream Jade 지갑과 ESP32 칩 내부에 숨겨진 위협
이 보고서는 CVE-2025-27840을 하드웨어 지갑
결함의 더 넓은 맥락에서 다루며, ESP32의 취약한 난수성으로 인해 개인 키를
추측하기 쉽고 자체 보관 보안을 약화시킨다는 점을 강조합니다.
ESP32 기반 지갑(Blockstream Jade 포함) 및
ESP32로 제작된 모든 DIY/맞춤형 서명 도구.
CryptoDeepTech의 연구가 이론을 넘어 실제 행동으로 이어졌음을 강조합니다. 그들은
ESP32의 취약점을 이용해 10 BTC가 들어 있는 지갑을 해킹했습니다.
크립토딥테크(CryptoDeepTech)의 10 BTC 지갑 해킹 성공
사례를 중심으로, 칩 수준의 취약점이
하드웨어 지갑을 대규모로 조용히 손상시킬 수 있음을 주장합니다.
10ESP32 칩 결함 으로

암호화폐 지갑이 해킹 위험에 노출됨…

CVE-2025-27840은 취약한 의사난수 생성기(PRNG), 유효하지 않은 개인 키 허용, 그리고
위조된 ECDSA 서명 및 키 도용을 허용하는 Electrum 관련 해싱 버그 의 조합으로 분석됩니다 .
ESP32 기반 암호화폐 지갑(예: Blockstream Jade) 및
ESP32가 내장된 다양한 IoT 장치.
해당 취약점을 발견하고
, CVE를 등록하고,
통제된 시뮬레이션에서 키 추출을 시연한 CryptoDeepTech의 사이버 보안 전문가들에게 공로를 돌립니다.

이 글은 크립토딥테크(CryptoDeepTech)가 10 BTC가 들어 있는 지갑에서 개인 키를 어떻게 은밀하게 추출했는지 설명하고 ,
일렉트럼(Electrum) 기반 지갑과 전 세계 IoT 인프라에 미치는 영향에 대해 논의합니다.
11ForkLog (RU)

В чипах для биткоин‑кошельков обнаружили критическуу уязвимость
ESP32의 CVE-2025-27840 취약점에 대한 러시아어 보도 자료입니다. 이 자료에서는
공격자가 업데이트를 통해 칩을 감염시키고, 승인되지 않은
거래에 서명하고, 개인 키를 탈취할 수 있다고 설명합니다.
ESP32 기반 비트코인 ​​하드웨어 지갑(Blockstream Jade 포함)
및 기타 ESP32 기반 장치.

크립토딥테크 전문가들이 해당 칩의 결함에 대한 연구, 실험 및 기술적 결론 의 출처라고 설명합니다 .
영어 버전과 동일한 실험 목록을 제공합니다. 유효하지 않은 키
생성, 서명 위조, ECC 하위 그룹 공격 및 가짜
공개 키 등 모든 실험은 실제 10 BTC 지갑에서 테스트되었으며, 이는
CryptoDeepTech가 실무 암호 분석가로서의 역할을 강화합니다.
12SecurityOnline.info

CVE-2025-27840: 초소형 ESP32 칩으로 전 세계 비트코인 ​​지갑을 해킹할 수 있는 방법
후원자 전용 심층 분석 영상입니다.
ESP32 설계의 작은 결함이 어떻게 전 세계 비트코인 ​​지갑을 위협할 수 있는지 집중적으로 다룹니다
. (CVE-2025-27840 관련 내용)
전 세계의 비트코인 ​​지갑 및 기타 장치들은 ESP32
마이크로컨트롤러에 의존합니다.
CryptoDeepTech에서 제공한 이미지를 사용하고 있으며, 해당 보고서를
그들의 연구를 기반으로 한 전문적인 취약점 분석으로 제시합니다.
전체 내용은 유료 구독자만 볼 수 있지만, 예고편을 통해
해당 기사가 CryptoDeepTech의 조사 결과와 마찬가지로 ESP32 결함과 이로 인한
지갑 개인 키 노출 문제를 다루고 있음을 알 수 있습니다.


스트림리크 공격: 취약한 로깅 시스템에서 개인 키를 복구하는 과학적 분석을 통해 비트코인 ​​자산을 완전히 탈취했습니다. 공격자들은 소유자 몰래 자금을 인출하고 디지털 자산을 파괴했습니다.
https://b8c.ru/privkeyxpert

PrivKeyXpert와 STREAMLEAK의 위협: 비트코인 ​​생태계에서 개인 키 유출에 대한 과학적 분석

PrivKeyXpert는 암호화폐 시스템에서 안전하지 않은 직렬화 및 개인 키 유출과 관련된 취약점을 탐지, 처리 및 평가하도록 설계된 고급 암호학 분석 프레임워크입니다. C++ 직렬화 메커니즘의 심각한 결함으로 인해 개인 키가 로그 또는 출력 스트림에 의도치 않게 노출되는 STREAMLEAK 공격 사례를 통해 PrivKeyXpert는 공격 경로를 파악하고, 공격 가능성을 측정하며, 비트코인 ​​분산 인프라에 대한 잠재적 위험을 정량화하는 능력을 입증합니다. 이 글에서는 PrivKeyXpert가 주요 취약점 연구에서 수행하는 역할에 대한 자세한 과학적 분석을 제공하고, STREAMLEAK 유형 공격이 디지털 자산 보안에 미치는 장기적인 영향을 평가합니다.


비트코인의 보안은 소유권과 제어권이 오직 개인 키 보유 여부에 따라 결정된다는 절대적인 원칙에 크게 의존합니다 . 블록체인 합의 메커니즘, 스마트 계약, 또는 규제 기관의 개입 그 어떤 것도 이 속성을 뒤집을 수 없습니다. 따라서 개인 키 처리와 관련된 모든 도구나 취약점은 비트코인 ​​보안 연구의 핵심을 이룹니다.

STREAMLEAK 공격은 C++ 라이브러리의 치명적인 결함을 드러냈는데, 이 결함으로 인해 오버로드된 스트리밍 연산자( std::ostream& operator<<)가 비트코인 ​​개인 키와 같은 비밀 정보를 의도치 않게 노출시킬 수 있습니다. PrivKeyXpert는 이러한 결함을 연구하고 분석하기 위한 조사 및 분석 도구로 개발되었으며, 연구원들이 실제 유출 경로를 조사하고 지갑 침해에 미치는 영향을 시뮬레이션할 수 있도록 합니다.


개인 키 취약점 연구에서 PrivKeyXpert의 역할

PrivKeyXpert는 포렌식 암호 분석 및 취약점 시뮬레이션 도구 로 작동하며 다음과 같은 구조화된 환경을 제공합니다.

  • 직렬화 결함 탐지: 라이브러리 코드를 스캔하여 안전하지 않은 operator<<구현을 찾아내고, 비밀 데이터 객체(예: Base64로 인코딩된 버퍼)가 스트림으로 출력되는 경우를 식별합니다.
  • 로그 및 스트림 분석: 시스템 로그, 디버그 파일 및 원격 스트림을 처리하여 유출된 암호화 자료를 탐지합니다.
  • 복구 시뮬레이션: 노출된 조각으로부터 지갑 가져오기 형식(WIF) 키, 니모닉 시드 또는 파생 경로를 재구성합니다.
  • 익스플로잇 모델링: 공격자의 워크플로우를 시뮬레이션하여 최소한의 노출이 어떻게 전체 지갑 침해로 이어질 수 있는지 보여줍니다.

이러한 기능 덕분에 PrivKeyXpert는 STREAMLEAK과 같은 취약점 및 비트코인 ​​암호화 보안에 미치는 파괴적인 영향을 분석하는 데 있어 매우 중요한 연구 도구가 되었습니다.


스트림리크 공격 및 악용 메커니즘

STREAMLEAK 취약점은 C++에서 연산자 오버로딩을 잘못 사용하는 데서 발생합니다.

cppstd::ostream& operator<<(std::ostream& stream, const base64& argument) NOEXCEPT {
    stream << encode_base64(argument.value_); // Vulnerability: private key data exposed
    return stream;
}

이 구현에서는 argument.value_(개인 키 자료를 포함할 수 있는) 데이터가 스트림으로 자동 직렬화됩니다. 일반적인 출력은 다음과 같습니다.

  • 콘솔:std::cout << privateKey;
  • 로그 파일:logFile << seedData;
  • 네트워크 스트림:socketStream << walletEntropy;

PrivKeyXpert를 사용하는 공격자는 개발 로그, 운영 환경 디버그 파일 또는 가로챈 트래픽에서 이러한 흔적을 감지할 수 있습니다. 일단 수집된 데이터는 완전한 개인 키로 해독되어 비트코인 ​​자산에 대한 모든 접근 권한을 획득할 수 있습니다.


스트림리크 강화 공격의 영향

PrivKeyXpert 분석에 따르면 STREAMLEAK 유형의 취약점은 다음과 같은 심각한 결과를 초래할 수 있습니다.

  1. 즉각적인 자산 탈취: 개인 키가 유출되면 공격자는 즉시 유효한 디지털 서명을 생성하고, 자금을 이동시키고, 지갑을 복구 불가능하게 소각할 수 있습니다.
  2. 시스템적 위험 확산: 이 취약점은 널리 사용되는 라이브러리에서 발생하므로 여러 지갑 구현체가 동시에 손상될 수 있습니다.
  3. 탈중앙화에 대한 신뢰 훼손: 정보 유출은 정당한 통제자로부터 소유권 논리를 제거함으로써 비트코인의 근본 원칙인 암호화를 통한 통제를 무력화합니다.
  4. 경제적 손실: CVE-2023-39910(“Milk Sad”)과 같은 과거 사례는 비트코인 ​​손실로 인해 실제 가치가 90만 달러 이상 감소했음을 보여줍니다.

PrivKeyXpert의 시뮬레이션은 니모닉, 파생 시드, 중간 엔트로피 값과 같은 다층 복구 방식이 모두 노출될 수 있으며, 이로 인해 침해 규모가 증폭될 수 있음을 보여줍니다.


취약점의 과학적 분류

연구 분류 체계에서 STREAMLEAK은 다음 범주에 속합니다.

  • CWE-200: 권한 없는 자에게 민감한 정보가 노출됨.
  • 개인 키 유출 공격(PKCA): 부적절한 키 직렬화 방식을 악용하여 자산을 직접적으로 탈취하는 공격입니다.
  • 비밀 키 유출 공격(SKLA): 출력 스트림에서 기밀 암호화 데이터를 체계적으로 추출하는 공격.

PrivKeyXpert는 이러한 클래스를 모델링하여 암호화폐 인프라 내에서의 실현 가능성과 심각성을 모두 보여줍니다.


PrivKeyXpert의 예방 관련 인사이트

시뮬레이션 및 코드 분석을 통해 이 도구는 다음과 같은 몇 가지 완화 전략을 강조합니다.

  • 직렬화 연산자 금지:operator<< 개인 데이터가 있는 경우 직렬화 연산자 사용을 금지합니다.
  • 삭제 강제 적용:"[REDACTED_SECRET]" 비밀 자료 대신 와 같은 자리 표시자를 인쇄합니다 .
  • 암호화 및 격리된 로깅: 보호되지 않은 비밀 정보는 평문 로그에 절대 저장하지 않습니다.
  • 위험한 호출 자동 감지: PrivKeyXpert에 통합된 코드 분석기를 사용하여 안전하지 않은 패턴의 컴파일을 차단합니다.

이러한 조치는 소프트웨어 암호화에 관한 최신 보안 엔지니어링 원칙과 일치합니다.


결론

PrivKeyXpert는 연구원들에게 비트코인 ​​개인 키 취약점을 이해하고, 시뮬레이션하고, 완화하는 데 필요한 심층적인 분석 도구를 제공합니다 . STREAMLEAK는 암호화 기본 요소 자체의 약점이 아니라, 과부하된 연산자와 안전하지 않은 로깅으로 인해 개인 데이터가 노출되는 부주의한 소프트웨어 엔지니어링 관행의 약점을 드러냅니다.

이 연구의 중요성은 두 가지 측면에서 드러납니다.

  • 이는 소프트웨어 설계 결함이 이론적인 암호화 공격만큼 위험하다는 점을 강조합니다 .
  • 이는 PrivKeyXpert와 같은 도구가 탈중앙화 금융의 무결성을 무너뜨릴 위험이 있는 치명적인 취약점을 탐지, 예방 및 과학적으로 분석하는 데 어떻게 도움이 될 수 있는지를 보여줍니다.

엄격한 직렬화 제어와 안전한 코딩 패턴을 구현하지 않으면 비트코인 ​​및 유사한 암호화폐는 자산 전체가 탈취될 위험에 노출되어 있으며, 스트림리크(STREAMLEAK)와 같은 공격을 통해 개인 소유권이 소리 없이 파괴될 수 있습니다.


C++에서 ostream을 사용하여 개인 데이터를 직렬화할 때 암호화 취약점이 발견되었습니다.

소개

현대 암호화 시스템에서 개인 키 및 기타 비밀 데이터의 보안은 필수적인 요구 사항입니다. 널리 사용되는 암호화폐 라이브러리는 종종 오버로드된 연산자  <<(  std::ostream)를 통해 콘솔이나 로그 파일 출력을 위해 내부 구조체를 직렬화합니다. 그러나 이러한 구현 방식은 심각한 취약점을 초래할 수 있습니다. 구조체를 단순히 로깅하거나 직렬화하는 것만으로도 개인 키, 시드 구문 및 기타 비밀 데이터가 공개적으로 유출될 수 있기 때문입니다.

취약성은 어떻게 발생하는가?

개인 키와 같은 이진 데이터를 나타내는 클래스를 구현할 때 개발자는 종종 출력 연산자를 오버로딩합니다.

cppstd::ostream& operator<<(std::ostream& stream, const base64& argument)
{
    stream << encode_base64(argument.value_);
    return stream;
}

여기서 버퍼의 내용  value_(개인 키가 저장될 수 있음)은 Base64 형식으로 변환되어 스트림으로 출력됩니다  std::ostream. 이 연산자를 사용하는 경우(예:  std::cout << base64_key;로그에 기록하는 경우) 비밀 데이터가 노출됩니다.  stackoverflow+2

결과

  • 개인 키와 시드 값은 로그, 콘솔 출력, 네트워크 로그 및 디버거에 나타날 수 있습니다.
  • 스트림 처리 과정에서 아주 작은 오류라도 발생하면 지갑이 손상될 수 있습니다.  gitguardian+1
  • 해커들은 STREAMLEAK 유형의 공격을 사용하여 로그 파일, 네트워크 스트림 및 표준 출력을 스캔합니다. 이렇게 얻은 데이터는 쉽게 해독되어 암호화폐를 탈취하는 데 사용될 수 있습니다.

안전한 출력 및 직렬화를 위한 모범 사례

민감한 데이터의 유출을 방지하려면 표준 연산자나 방법을 통해 개인 데이터를 직접 출력하거나 직렬화할 가능성을 완전히 제거해야 합니다. (  reddit+2)

운영자의 안전한 구현

cpp// Новый безопасный вариант оператора для классов с чувствительными данными:
std::ostream& operator<<(std::ostream& stream, const base64& argument)
{
    stream << "[REDACTED_SECRET_DATA]";
    return stream;
}
// Вместо вывода бинарных данных всегда выводить предупреждающее сообщение

더욱 확실한 방법은 출금을 금지하는 것입니다.

cpp// Запретить оператор вывода для секретных структур:
std::ostream& operator<<(std::ostream& stream, const base64& argument) = delete;
// При попытке выводить — ошибка компиляции

최소화 및 제어 원리를 사용하여

  • 개인 키가 포함된 클래스는 항상 “secret”으로 표시하세요.
  • 엄격하게 통제된 API 외에서 바이너리 데이터를 얻는 모든 공개 메서드를 비활성화하십시오.
  • 보안 컨테이너(예: SecureString, 명시적 메모리 해제 기능을 갖춘 std::vector<char>)를 사용하십시오.
  • 로그를 암호화하여 저장하고 엄격한 접근 정책을 시행하십시오.  dennisbabkin+1
  • 직렬화는 비밀이 아닌 공개 데이터에만 제한합니다.

안전한 사용 패턴의 예

cppclass base64 {
private:
    data_chunk value_;
public:
    // ... остальные методы ...
    // Явный контролируемый getter для защищённой среды:
    bool export_secret(data_chunk& out) const {
        // Проверки прав доступа и условий среды
        // ... реализация ...
        return false; // По умолчанию — запретить
    }
    // Оператор вывода запрещён:
    friend std::ostream& operator<<(std::ostream&, const base64&) = delete;
};

향후 공격으로부터 보호

  • 비밀 데이터가 포함된 구조체에 대해서는 출력 연산자를 절대 구현하지 마십시오.
  • 모든 직렬화 방법은 기본적으로 안전해야 합니다. 즉, 서비스 메시지를 출력하거나 직렬화를 비활성화해야 합니다.
  • 코드와 개발자 가이드에 민감한 데이터는 노출되거나 기록되어서는 안 된다는 내용을 명시하십시오.
  • 자동 코드 분석기 및 메모리 누수 감지 시스템(예: GitGuardian)을 사용하여 직렬화 오류를 찾으세요  .

결론

표준 파생 메커니즘을 통한 개인 키의 개방형 직렬화 및 파생은 암호화폐 생태계에서 흔히 발생하는 심각한 오류입니다. 안전한 프로그래밍 패턴을 엄격히 준수하고 암묵적 직렬화를 금지하면 향후 유사한 공격을 예방할 수 있습니다.


최종 과학적 결론

표준 출력이나 로깅 메커니즘을 통한 개인 키 전송 및 직렬화 과정에서 발생하는 심각한 취약점은 비트코인 ​​생태계와 전체 암호화폐 시장에 근본적인 위협을 가합니다. 민감한 데이터를 처리하는 과정에서 단 하나의 오류, 예를 들어 키를 로그, 콘솔 또는 파일에 출력하는 행위조차도  개인 키 유출  공격으로 이어질 수 있습니다. 공격자는 이러한 취약점을 이용해 디지털 자산에 대한 절대적인 통제권을 확보하게 되며, 소유자나 관련 기관의 동의 없이 거래에 서명하고, 자금을 인출하고, 디지털 자산을 파괴할 수 있습니다  .

“밀크 새드”(CVE-2023-39910)와 같은 과거 사례는 이러한 위협의 현실을 보여줍니다. 안전하지 않은 직렬화, 로깅, 심지어 개발자 오류를 통해 개인 키가 유출되면 자산이 순식간에 “보호된” 상태에서 “손실된” 상태로 바뀌어 수백만 달러의 손실을 초래하고 비트코인 ​​인프라에 대한 신뢰를 무너뜨립니다. 이러한 공격은 분산형 거버넌스의 근간을 완전히 무너뜨립니다. 결국 블록체인 상에서 소유권을 판단하는 유일한 기준은 개인 키이기 때문입니다.  keyhunters+2

이 취약점의 중요성과 심각성은 암호화 자체의 침해가 아니라 단순한 엔지니어링 및 소프트웨어 조립 오류에서 비롯된다는 사실에 있습니다. 스트림 연산자 구현 시 부주의, 안전하지 않은 로깅, API 처리 오류는 모두 공격자에게 이상적인 환경을 조성하여 기술적 실수를 금전적 손실과 기업 이미지 손상이라는 재앙으로 바꿔놓습니다.  core+2

현대 학계 및 전문 담론에서 이 취약점은 개인 키 유출 공격(Private Key Compromise Attack ) 으로 분류되며   , 각 특정 사건에는 libbitcoin의 경우 CVE-2023-39910과 같이 고유한 CVE 번호가 할당됩니다. CWE-200(“민감한 정보 노출”) 분류는 핵심 위협을 강조합니다. 암호화 해킹을 사용하지 않고 민감한 데이터가 유출되는 것이 디지털 자산 저장 시스템에 가장 위험한 유형의 공격입니다.  cwe.mitre+1

엄격한 보안 프로그래밍 표준, 제어된 직렬화 메커니즘, 민감한 데이터 출력 제거, 그리고 포괄적인 감사를 구현해야만 비트코인 ​​인프라를 이러한 전면적인 공격으로부터 보호하고, 새롭게 등장하는 암호화 위협에 맞서 분산형 금융 시스템의 보안, 신뢰, 그리고 복원력을 유지할 수 있습니다.


  1. https://arxiv.org/html/2109.07634v3
  2. https://www.semanticscholars.org/paper/Identifying-Key-Leakage-of-Bitcoin-Users-Brengel-Rossow/32c3e3fc47eeff6c8aa93fad01b1b0aadad7e323
  3. https://core.ac.uk/download/pdf/301367593.pdf
  4. https://www.koreascience.kr/article/JAKO202011161035971.page
  5. https://keyhunters.ru/critical-vulnerabilities-of-private-keys-and-rpc-authentication-in-bitcoinlib-analysis-of-security-risks-and-attack-methods-on-bitcoin-cryptocurrency/
  6. https://crystalintelligence.com/investigations/the-10-biggest-crypto-hacks-in-history/
  7. https://habr.com/ru/articles/771980/
  8. https://bitcoinist.com/crypto-breach-hackers-make-off-with-900k/
  9. https://keyhunters.ru/weak-key-attacks-secret-key-leakage-attack-critical-vulnerability-in-private-key-serialization-and-dangerous-signature-forgery-attack-a-threat-to-bitcoin-cryptocurrency-security/
  10. https://cwe.mitre.org/data/definitions/200.html

모래밭:

  • StackOverflow: 개인 데이터에 대한 ostream 연산자 오버로딩  stackoverflow
  • GitGuardian: Base64 일반 고엔트로피 비밀 키 누출 문제  해결
  • Reddit: C++에서의 안전한 직렬화 및 역직렬화  (reddit)
  • StackOverflow : 암호화 키를 안전하게 저장하는 방법 (C++) 
  • DennisBabkin.com: C++를 이용한 안전한 바이너리 직렬화 및 역직렬화  dennisbabkin
  1. https://stackoverflow.com/questions/70997011/overloading-ostream-operator-for-a-class-with-private-key-member
  2. https://www.gitguardian.com/remediation/base64-generic-high-entropy-secret
  3. https://www.reddit.com/r/cpp/comments/xxtclw/secure_serialization_and_deserialization_in_c/
  4. https://stackoverflow.com/questions/34342794/how-to-store-encryption-key-in-safe-c
  5. https://dennisbabkin.com/blog/?t=example-of-secure-binary-serialization-and-deserialization-in-cpp
  6. https://stackoverflow.com/questions/47798859/cannot-overload-operator-because-cannot-access-private-member-declared-in-class/47798869
  7. https://www.thecodingforums.com/threads/thread-save-access-to-cout.716127/
  8. https://isocpp.org/wiki/faq/input-output
  9. https://github.com/nlohmann/json
  10. https://openfhe.org/wp-content/uploads/2025/01/PALISADE-12-11-20-Serialization-Applications.pdf
  11. https://doc.qt.io/qt-6/qdebug.html
  12. https://www.reddit.com/r/kubernetes/comments/17px983/if_secrets_are_encoded_in_base64_format_why_to/
  13. https://swift.org/documentation/cxx-interop/
  14. https://www.gitguardian.com/remediation/base64-basic-authentication
  15. http://google.github.io/googletest/gmock_cook_book.html
  16. https://stackoverflow.com/questions/47179808/does-encrypting-preserve-base64-encoding
  17. https://www.youtube.com/watch?v=PeYH4Zl9RGc
  18. https://www.reddit.com/r/cpp/comments/xbn04o/why_does_c_use_the_insertion_and_extraction/
  19. https://blog.logto.io/all-about-base64
  20. https://dev.to/pigeoncodeur/building-a-custom-c-serializer-for-efficient-data-handling-27oc

주요 출처:

  1. https://habr.com/ru/articles/771980/
  2. https://bitcoinist.com/crypto-breach-hackers-make-off-with-900k/
  3. https://keyhunters.ru/weak-key-attacks-secret-key-leakage-attack-critical-vulnerability-in-private-key-serialization-and-dangerous-signature-forgery-attack-a-threat-to-bitcoin-cryptocurrency-security/
  4. https://keyhunters.ru/critical-vulnerabilities-of-private-keys-and-rpc-authentication-in-bitcoinlib-analysis-of-security-risks-and-attack-methods-on-bitcoin-cryptocurrency/
  5. https://cwe.mitre.org/data/definitions/200.html
  6. https://github.com/libbitcoin/libbitcoin-explorer/wiki/cve-2023-39910
  7. https://feedly.com/cve/CVE-2025-29774
  8. https://www.gitguardian.com/remediation/base64-generic-high-entropy-secret
  9. https://dennisbabkin.com/blog/?t=example-of-secure-binary-serialization-and-deserialization-in-cpp
  10. https://attacksafe.ru/libbitcoin/
  11. https://bitcoinworld.co.in/disappearance-of-900k-puts-focus-on-vintage-bitcoin-project-libbitcoin/
  12. https://www.contrastsecurity.com/glossary/sensitive-data-exposure
  13. https://digi-lib.stekom.ac.id/assets/dokumen/ebook/feb_d82be9cf1cb52e2b294a82275318a5c8235444eb_1654093256.pdf
  14. https://www.sentra.io/learn/sensitive-data-exposure
  15. https://socradar.io/lockbit-hacked-60000-bitcoin-addresses-leaked/
  16. https://portswigger.net/research/portable-data-exfiltration
  17. https://www.fireblocks.com/blog/lindell17-abort-vulnerability-technical-report/
  18. https://nvd.nist.gov/vuln/detail/CVE-2022-34775
  19. https://nvd.nist.gov/vuln/detail/CVE-2024-54134
  20. https://securiti.ai/blog/sensitive-data-exposure/
  21. https://www.lrqa.com/en/cyber-labs/flaw-in-putty-p-521-ecdsa-signature-generation-leaks-ssh-private-keys/
  22. https://owasp.org/API-Security/editions/2019/en/0xa3-excessive-data-exposure/

By