콘솔 유출 공격: 공격자가 로그에서 개인 키를 복구하여 비트코인 ​​자금에 대한 완전한 제어권을 확보하는 조용한 유출 공격으로, 비트코인 ​​암호화폐의 근본 원칙을 훼손합니다.

키헌터 작성 


콘솔 유출 공격

‘콘솔 유출 공격’ 으로 명명된 이 공격은   매우 화려하고 재현성이 뛰어나며, 내부 데이터 출력 관리가 미흡한 대부분의 프로젝트에 극도로 위험합니다. 이 공격은 제어되지 않는 개인 키 직렬화기(‘연산자  operator<<‘)를 악용하는데, 이 연산자가 로그에 기록되거나 디버깅될 때마다 공격자 또는 로그 및 콘솔에 접근 권한이 있는 모든 사용자가 즉시 비밀 정보를 입수할 수 있게 됩니다.

키 공개 공격/개인 키 유출 공격(CVE-2023-39910)은 비트코인의 근본적인 보안 원칙을 훼손합니다. 만약 키가 대량으로 노출된다면, 이를 이용해 지갑을 완전히 장악하고, 자금을 탈취하며, 생태계의 보안 기반을 마비시킬 수 있습니다.  nvd.nist+2
취약점으로 인해 개인 데이터 직렬화 패턴이 복제되는 것은 최신 암호화 애플리케이션에서 매우 심각한 결함입니다. 안전한 개발은 항상 이러한 취약점을 식별, 제거 및 모니터링하는 과정을 포함합니다.

심각한 스트림 직렬화 취약점(키 유출 공격, CVE-2023-39910)은 개별 사용자뿐 아니라 전체 비트코인 ​​암호화폐 생태계에 근본적인 위협을 드러냈습니다. 표준 스트림이나 로그를 통한 개인 키의 무분별한 유출은 탈중앙화 신뢰의 근본 원칙을 훼손합니다. 즉, 이러한 데이터에 접근하는 사람은 누구나 피해자의 모든 비트코인 ​​자산에 대한 정당한 소유자가 되는 것입니다. 이 공격의 규모는 악의적인 행위뿐만 아니라 로깅, 디버깅 또는 중앙 집중식 로그 수집의 단순한 오류로도 발생할 수 있다는 점에서 더욱 심각합니다. 개인 키가 유일한 소유권 증명이라는 점을 고려할 때, 이러한 취약점은 전체 블록체인 보안 시스템의 치명적인 결함이 됩니다. 비트코인의 안정성과 신뢰를 유지하기 위해서는 엄격한 개인정보 보호 관행을 철저히 시행해야 합니다. 숨겨진 유출 경로를 제거하고, 개인 데이터의 자동 직렬화를 금지하며, 핵심 인프라 구성 요소를 정기적으로 감사하고 업데이트해야 합니다. 이러한 결함을 무시하면 필연적으로 새로운 대규모 공격, 신뢰 훼손, 그리고 미래 디지털 경제에서 막대한 자본 손실로 이어질 수 있습니다.  keyhunters+2


크리티컬 스트림 누출 취약점: 개인 키 유출 공격 및 비트코인 ​​보안에 대한 전 세계적인 위협


공격 시나리오

  • 숙련된 공격자는 겉보기에는 무해해 보이는 로그 라인(cpp)을 삽입합니다.std::cout << ek_private_obj;
  • 해당 클래스는 개인 키를 Base58 문자열로 출력하도록 구현되어 있으므로 비밀 키가 콘솔, 로그 또는 기타 출력 스트림에 즉시 나타납니다.
  • 로그 수집기 또는 서버 콘솔 사용자는 비밀 자료에 대한 완전한 접근 권한을 얻습니다. 피해자의 지갑을 복구하려면 출력에서 ​​”깔끔한” Base58 문자열을 저장하기만 하면 됩니다.

이것이 효과가 있는 이유는 무엇일까요?

  • 출금 담당자는 개인 키를 공개하기 전에 어떠한 확인이나 추가 인증도 요구하지 않습니다.
  • 실제 코드에서 이러한 연산자는 디버깅이나 임시 진단 목적으로 사용되는 경우가 많지만, 프로덕션 환경에서는 그대로 유지됩니다.
  • 대규모 인프라에서는 출력 스트림이 중앙에서 수집되므로 공격자는 시스템에 접근할 필요조차 없습니다. Base58 키는 공유 로그 서비스에서 추출할 수 있습니다.

효과

  • 단 한 번의 로그 기록으로 모든 개인 자료가 공개됩니다.
  • 이 취약점은 수천 배로 복제됩니다. 모든 라이브러리 통합자는 자신의 디버그 또는 로그 메시지로 인해 피해를 입을 위험이 있습니다.


“콘솔 리커(Konsole Leaker)는 사용자가 알아채지도 못하는 사이에 개인 키가 조용히 유출되는 현상입니다. 간단한 std::cout 키가 이렇게 큰 적이 될 줄 누가 알았겠습니까?”


“로그 하나만 있어도 당신의 지갑은 당신 것이 아닙니다.”

리비트코인의 핵심 개인 키 취약점과 비트코인에 대한 위협: 과학적 분석 및 국제 분류


개인 키 보안은 암호화폐 네트워크, 특히 비트코인의 복원력에 매우 중요합니다. 개인 키를 탈취할 수 있는 취약점은 “자금의 완전한 손실”과 지갑 생성 및 저장에 사용되는 플랫폼에 대한 신뢰 상실로 이어질 수 있습니다. 이 글에서는 리비트코인(Libbitcoin) 개인 키 스트리밍 직렬화 취약점의 과학적 설명, 비트코인 ​​네트워크 보안에 미치는 영향, 일반적인 공격 명칭 및 국제적 분류에 대해 살펴봅니다  .


취약성에 대한 과학적 설명

이 취약점의 핵심은  ek_private여러 Libbitcoin 기반 지갑 구현에서 사용되는 클래스의 출력 연산자(operator<<)를 통한 개인 키의 제어되지 않은 직렬화에 있습니다. 이 공격을 통해 출력 스트림과 로그 파일에서 개인 키를 직접 추출할 수 있으므로, 추가적인 시스템 해킹 없이 로그 또는 콘솔에 접근하는 것만으로도 매우 위험한 정보 유출 경로가 생성됩니다  .

이 취약점은 과학 문헌에서 “키 공개 공격” 또는 “개인 키 유출 공격”으로 분류됩니다. 암호화폐 솔루션의 경우, 개인 키는 자금 소유권을 확인하는 유일한 요소이며, 개인 키가 유출되면 즉각적이고 완전한 통제권 상실로 이어지기 때문에 이는 심각한 위협입니다.  (keyhunters)


비트코인 네트워크에 미치는 영향

  • 지갑 직접 침해  : 공격자는 개인 키를 획득하면 즉시 자금에 대한 완전한 접근 권한을 얻고 모든 자금을 자신의 주소로 이체하는 것을 포함하여 모든 거래를 수행할 수 있습니다.  cryptorank+1
  • 중앙 집중식 로그를 통한 대규모 공격  : 취약한 직렬화 방식이 사용되는 전체 인프라는 대규모 키 수집을 위한 공격 경로가 될 수 있습니다.
  • 신뢰 상실 및 평판 위험  : 주요 키 정보 유출은 사용자 이탈, 비트코인 ​​가격 하락, 그리고 다른 제품에서 사용되는 소프트웨어에 대한 신뢰도 하락으로 이어집니다.
  • 개발자와 관리자를 대상으로 한 표적 공격  : 개인 키가 포함된 로그는 서버 해킹이나 내부자 유출의 주요 표적이 됩니다.

국제 분류 및 CVE

이 취약점은 CWE-312(민감한 정보의 평문 저장) 및 CWE-326(민감한 데이터에 대한 취약한 암호화) 범주에 속합니다. Libbitcoin Explorer와 관련된 유사한 취약점에는 CVE-2023-39910: nvd.nist+2 번호가 부여되었습니다. 

  • 공격 이름:
    • 키 공개 공격(과학 용어)
    • 개인 키 유출 공격 (실용 용어)
    • 러시아 문헌에서는 이를 “개인 키 유출 공격” 또는 “개인 키 누출”이라고 부릅니다.  키헌터
    • 커뮤니티에서 비공식적으로 “Milk Sad Loophole”로 알려져 있습니다(Libbitcoin Explorer에서 키 생성을 사용하는 특정 구현 방식).  cryptodeeptech+1
  • CVE 번호:
    • CVE-2023-39910은 원격 공격자가 Libbitcoin Explorer의 취약한 엔트로피 메커니즘을 통해 생성된 비트코인 ​​개인 키를 복구할 수 있도록 허용하는 취약점입니다  .

안전 수칙 및 권장 사항

  • 정기적인 독립 감사를 거친 검증된 지갑 생성 라이브러리만 사용하십시오.
  • 개인 키를 표준 스트림, 로깅 또는 디버그 출력을 통해 직렬화하는 것을 절대 피하십시오.
  • 개인 키는 반드시 암호화된 형태로 저장하고, 하드웨어 지갑과 특수 HSM 솔루션을 사용하십시오.
  • 인프라와의 통합에는 잠재적인 유출 경로에 대한 자동 모니터링이 포함되어야 하며, 여기에는 키와 유사한 Base58/16진수 문자열을 찾기 위해 로그와 메모리를 스캔하는 작업이 포함되어야 합니다.  (keyhunters)

안전한 구현 옵션

cppclass ek_private {
public:
    // Удаляем опасные операторы вывода:
    friend std::ostream& operator<<(std::ostream&, const ek_private&) = delete;

    // Экспорт только по явно разрешённому флагу:
    std::string encoded(bool allow_export = false) const {
        if (!allow_export)
            throw std::runtime_error("Export of sensitive data not permitted");
        return encode_base58(private_);
    }

private:
    encrypted_private private_;
    bool valid_;
};

주요 원칙:  사전 고지 및 동의 없이는 개인 키를 추출할 수 없습니다. 내보내기를 시도할 경우 추가적인 확인 절차가 필요합니다.


결론

키 공개 공격/개인 키 유출 공격(CVE-2023-39910)은 비트코인의 근본적인 보안 원칙을 훼손합니다. 만약 키가 대량으로 노출된다면, 이를 이용해 지갑을 완전히 장악하고, 자금을 탈취하며, 생태계의 보안 기반을 마비시킬 수 있습니다.  nvd.nist+2
취약점으로 인해 개인 데이터 직렬화 패턴이 복제되는 것은 최신 암호화 애플리케이션에서 매우 심각한 결함입니다. 안전한 개발은 항상 이러한 취약점을 식별, 제거 및 모니터링하는 과정을 포함합니다.


암호화 취약점

주요 취약점

ek_private객체를 출력 스트림으로 직렬화하는 과정에서 심각한 개인 키 유출이 발생합니다  .

다음은 소스 코드의 일부이며, 각 줄에는 번호가 매겨져 있고  취약한  줄이 표시되어 있습니다.

cpp  1  /**
  2   * Copyright (c) 2011-2025 libbitcoin developers (see AUTHORS)
  3   *
  4   * This file is part of libbitcoin.
  5   *
  6   * This program is free software: you can redistribute it and/or modify
  7   * it under the terms of the GNU Affero General Public License as published by
  8   * the Free Software Foundation, either version 3 of the License, or
  9   * (at your option) any later version.
 10   *
 11   * This program is distributed in the hope that it will be useful,
 12   * but WITHOUT ANY WARRANTY; without even the implied warranty of
 13   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 14   * GNU Affero General Public License for more details.
 15   *
 16   * You should have received a copy of the GNU Affero General Public License
 17   * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 18   */
 19  #include <bitcoin/system/wallet/keys/ek_private.hpp>
 20  #include <sstream>
 21  #include <bitcoin/system/crypto/crypto.hpp>
 22  #include <bitcoin/system/define.hpp>
 23  #include <bitcoin/system/radix/radix.hpp>
 24  namespace libbitcoin {
 25  namespace system {
 26  namespace wallet {
 27  ek_private::ek_private() NOEXCEPT
 28    : valid_(false), private_()
 29  {
 30  }
 31  ek_private::ek_private(const std::string& encoded) NOEXCEPT
 32    : ek_private(from_string(encoded))
 33  {
 34  }
 35  ek_private::ek_private(const encrypted_private& value) NOEXCEPT
 36    : valid_(true), private_(value)
 37  {
 38  }
 39  // Factories.
 40  // ----------------------------------------------------------------------------
 41  ek_private ek_private::from_string(const std::string& encoded) NOEXCEPT
 42  {
 43      // TODO: incorporate existing parser here, setting new members.
 44      encrypted_private key;
 45      return decode_base58(key, encoded) && verify_checksum(key) ?
 46          ek_private{ key } : ek_private{};
 47  }
 48  // Cast operators.
 49  // ----------------------------------------------------------------------------
 50  ek_private::operator bool() const NOEXCEPT
 51  {
 52      return valid_;
 53  }
 54  ek_private::operator const encrypted_private&() const NOEXCEPT
 55  {
 56      return private_;
 57  }
 58  // Serializer.
 59  // ----------------------------------------------------------------------------
 60  std::string ek_private::encoded() const NOEXCEPT
 61  {
 62      return encode_base58(private_);
 63  }
 64  // Accessors.
 65  // ----------------------------------------------------------------------------
 66  const encrypted_private& ek_private::private_key() const NOEXCEPT
 67  {
 68      return private_;
 69  }
 70  // Operators.
 71  // ----------------------------------------------------------------------------
 72  bool ek_private::operator<(const ek_private& other) const NOEXCEPT
 73  {
 74      return encoded() < other.encoded();
 75  }
 76  bool ek_private::operator==(const ek_private& other) const NOEXCEPT
 77  {
 78      return valid_ == other.valid_ && private_ == other.private_;
 79  }
 80  bool ek_private::operator!=(const ek_private& other) const NOEXCEPT
 81  {
 82      return !(*this == other);
 83  }
 84  std::istream& operator>>(std::istream& in, ek_private& to)
 85  {
 86      std::string value;
 87      in >> value;
 88      to = ek_private(value);
 89      if (!to)
 90          throw istream_exception(value);
 91      return in;
 92  }
 93  std::ostream& operator<<(std::ostream& out, const ek_private& of) NOEXCEPT
 94  {
 95      out << of.encoded();  // <-- Уязвимая строка
 96      return out;
 97  }
 98  } // namespace wallet
 99  } // namespace system
100  } // namespace libbitcoin

취약점 설명:

  • 95번째 줄에서   연산자가 호출될 때  operator<<개인 키( )가  of.encoded()전달된 출력 스트림에 직접 직렬화됩니다. 이로 인해 권한 없는 사용자가 비밀 데이터에 접근할 수 있습니다(예: 로그 파일에 기록하거나 콘솔에 출력하는 경우).
  • 또한 해당 메서드  private_key()(  66~69 행  )는 저장된 값에 대한 직접적인 const 참조를 반환하는데  encrypted_private, 이를 잘못 사용하면 의도치 않게 개인 데이터에 접근할 수 있습니다.

콘솔 유출 공격: 공격자가 로그에서 개인 키를 복구하여 비트코인 ​​자금에 대한 완전한 제어권을 확보하는 조용한 유출 공격으로, 비트코인 ​​암호화폐의 근본 원칙을 훼손합니다.
https://github.com/libbitcoin/libbitcoin-system/blob/master/src/wallet/keys/ek_private.cpp

제거를 위한 권장 사항:

  • 개인 정보가 직접 출력되지 않도록 연산자를 제거하거나 제한하십시오  operator<<ek_private
  • 필요한 경우, 비밀 정보를 노출하려면 명시적인 권한이 필요한 안전한 직렬화 방법을 제공하십시오(예: 플래그 또는 인증 기능을 갖춘 특수 인터페이스 사용).
  • private_사용 직후 버퍼를 삭제하거나 비우는 것을 고려하십시오  .

콘솔 유출 공격: 공격자가 로그에서 개인 키를 복구하여 비트코인 ​​자금에 대한 완전한 제어권을 확보하는 조용한 유출 공격으로, 비트코인 ​​암호화폐의 근본 원칙을 훼손합니다.

Dockeyhunt 암호화폐 가격

성공적인 복구 시연: 22,48976361 BTC 지갑

사례 연구 개요 및 검증

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

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


콘솔 유출 공격: 공격자가 로그에서 개인 키를 복구하여 비트코인 ​​자금에 대한 완전한 제어권을 확보하는 조용한 유출 공격으로, 비트코인 ​​암호화폐의 근본 원칙을 훼손합니다.

www.seedkey.ru


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

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


콘솔 유출 공격: 공격자가 로그에서 개인 키를 복구하여 비트코인 ​​자금에 대한 완전한 제어권을 확보하는 조용한 유출 공격으로, 비트코인 ​​암호화폐의 근본 원칙을 훼손합니다.

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


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

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


콘솔 유출 공격: 공격자가 로그에서 개인 키를 복구하여 비트코인 ​​자금에 대한 완전한 제어권을 확보하는 조용한 유출 공격으로, 비트코인 ​​암호화폐의 근본 원칙을 훼손합니다.

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


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


0100000001b964c07b68fdcf5ce628ac0fffae45d49c4db5077fddfc4535a167c416d163ed000000008a473044022014912260549c7438adf72128a0c75b8d0b73eab737cdca6ea49288f0cad8e677022075582361962c587a3c5f1ff0368cd180e62b5862ee0829144ee6b34bef098bee0141040bdd9d6830145552673ac35edcf49c3ce8fd6434fe16a4566ddff96af9164b3ee69829271fd5b5f1b19c0c2a2adf192341786bfe03f5ce122c743cfcf6a0705fffffffff030000000000000000456a437777772e626974636f6c61622e72752f626974636f696e2d7472616e73616374696f6e205b57414c4c4554205245434f564552593a202420323832373532352e35325de8030000000000001976a914a0b0d60e5991578ed37cbda2b17d8b2ce23ab29588ac61320000000000001976a9143eda7d93f57eccf66f25ba8c112a7fbb089d023588ac00000000

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


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/bestleakhunter

과학 논문: BestLeakHunter — 리비트코인 취약점 암호 분석 및 비트코인 ​​개인 키 복구

본 논문은 Libbitcoin 암호화 라이브러리의 취약점을 탐지하고 악용하는 데 특화된 암호 분석 도구인 BestLeakHunter에 대한 심층 분석을 제시합니다. 특히 악명 높은 “Milk Sad” 취약점(CVE-2023-39910)과 같은 개인 키 노출 결함에 초점을 맞춰, BestLeakHunter는 의사 난수 생성기(PRNG) 및 타원 곡선 프로토콜의 구현상의 약점을 이용하여 공격자가 개인 키를 복구할 수 있음을 보여줍니다. 이는 비트코인 ​​시스템 전반에 걸쳐 심각한 위험을 초래하고, 분실된 지갑을 효과적으로 복구할 수 있도록 합니다.


비트코인 네트워크의 안정성은 개인 키의 기밀성과 견고성에 매우 의존적입니다. 키 생성 또는 직렬화를 담당하는 지갑 라이브러리의 취약점은 탈중앙화 암호화폐의 전체 보안 모델을 위협합니다. 널리 사용되는 C++ 비트코인 ​​라이브러리인 Libbitcoin은 심각한 암호화 결함으로 인해 BestLeakHunter와 같은 고급 암호 분석 및 키 복구 도구의 주요 공격 대상이 되었습니다. b8c


취약점 배경: Milk Sad(CVE-2023-39910) 및 Konsole Leaker 공격

Libbitcoin 지갑 구현(특히 Explorer 버전 3.0.0~3.6.0)은 이전에 암호학적으로 안전하지 않은 Mersenne Twister(mt19937) 의사난수 생성기(PRNG)를 사용하여 개인 키를 생성했습니다. 암호학적으로 안전한 생성기와 달리 Mersenne Twister는 예측 가능한 출력과 제한된 엔트로피(암호 표준에서 요구하는 256비트가 아닌 32비트로 추정)라는 문제점을 가지고 있습니다. 이는 키 보안을 크게 약화시키고 무차별 대입 공격을 가능하게 합니다.

“콘솔 유출 공격”은 제어되지 않은 개인 키 직렬화(예: 연산자<<를 로그 또는 콘솔로 스트리밍하는 방식)를 기반으로 하며, 눈에 띄지 않는 로그 출력을 통해 키를 유출함으로써 문제를 더욱 악화시킵니다. 이러한 직렬화 결함이 키 생성 시 낮은 엔트로피와 결합될 경우, 공격자는 대규모 개인 키 복구 및 지갑 침해를 위한 실용적이고 확장 가능한 공격 수단을 확보하게 됩니다.


BestLeakHunter의 아키텍처 및 운영

BestLeakHunter는 다단계 암호 분석 워크플로를 사용합니다.

  • 취약점 식별: 이 도구는 지갑의 Libbitcoin 버전을 자동으로 감지하고 “Milk Sad”와 같은 알려진 의사 난수 생성기(PRNG) 및 직렬화 취약점을 표시합니다.
  • 엔트로피 및 키 생성 분석: BestLeakHunter는 의사 난수 생성기(PRNG) 상태를 재구성하여 취약한 지갑에 내재된 엔트로피 소스, 초기화 매개변수 및 타임스탬프 기반 시드를 검사합니다.
  • 암호 분석 무차별 대입: 크게 줄어든 검색 공간(22562^{256}2256에서 2322^{32}232로)을 활용하여 BestLeakHunter는 가능한 모든 상태에 대한 의사 난수 생성기(PRNG) 출력을 시뮬레이션하고 잠재적인 개인 키를 재구성합니다.
  • 타원 곡선 유효성 검사 취약점 악용: 이 도구는 타원 곡선 루틴에서 불완전한 점 유효성 검사를 악용하여 키 매개변수 설정이 비정상적인 경우에도 복구를 가능하게 합니다.
  • 키 매칭 및 검증: 후보 키는 알려진 공개 키 또는 비트코인 ​​주소와 신속하게 비교 검증되어 일치하는 키를 찾을 때까지 계속됩니다.
  • 접근 복구: 유효한 개인 키를 복구하면 연결된 모든 자금에 대한 완전한 제어 권한을 얻게 되어 소프트웨어 버그 또는 의도치 않은 로그 노출로 인한 명백한 손실이나 도난 후에도 지갑을 복원할 수 있습니다.

실질적인 영향 및 보안 위험

BestLeakHunter는 표준적인 방법으로는 복구할 수 없는 Libbitcoin 결함 버전으로 생성된 지갑의 개인 키를 안정적으로 복구해 왔습니다. 이 회사의 암호 분석 기술은 “Konsole Leaker Attack”에 연루된 직렬화 및 의사 난수 생성기(PRNG) 결함과 같은 이론적 취약점을 사고 복구 및 레드팀 활동에 실질적인 도구로 전환합니다. 상황은 매우 심각합니다.

  • 막대한 자본 노출 위험: 취약한 Libbitcoin 버전으로 생성된 모든 비트코인 ​​지갑은 위험에 처해 있으며, 특히 개인 키 로그가 악의적인 손에 넘어갈 경우 더욱 위험합니다.
  • 무차별 대입 공격 가능성: 기존 비트코인 ​​무차별 대입 공격은 계산적으로 불가능하지만, “밀크 새드(Milk Sad)” 취약점이 있는 키는 소비자용 하드웨어에서도 공격이 가능하도록 작업 범위를 좁혀줍니다.
  • 개발자 및 사용자 책임: 로깅 또는 부적절한 직렬화 방식은 시스템 전체에 걸쳐 키를 노출시킬 수 있으며, 감사 실패는 대규모 손실로 이어질 수 있습니다.

BestLeakHunter와 같은 도구의 존재는 비트코인 ​​인프라 내 암호화 구현 오류가 얼마나 심각한 영향을 미칠 수 있는지를 보여줍니다. 유사한 위험을 완화하기 위해 다음과 같은 조치를 취할 수 있습니다.

  • operator<<비밀 정보를 포함하는 클래스에 대해 안전하지 않은 직렬화(예: )를 제거합니다 .
  • 지갑 키 생성 시에는 항상 암호학적으로 안전한 의사난수 생성기(PRNG)를 사용하십시오.
  • 코드 감사 시, 특히 로그 스트림 및 디버그 출력과 관련하여 코드 감사 기준을 엄격히 준수하십시오.
  • 앞서 설명한 공격과 유사한 공격을 시뮬레이션할 수 있는 고급 감사 도구를 사용하여 사전 예방적 취약점 검사를 실시하십시오.

이러한 관행을 소홀히 하면 개별 지갑뿐만 아니라 안전한 분산 자산으로서 비트코인에 대한 전 세계적인 신뢰도까지 위태로워집니다. 이를 해결하기 위해서는 철저한 개발, 지속적인 라이브러리 감사, 그리고 개발 파이프라인에 전문 암호 분석 플랫폼을 통합하는 것이 필요합니다.


콘솔 유출 공격: 공격자가 로그에서 개인 키를 복구하여 비트코인 ​​자금에 대한 완전한 제어권을 확보하는 조용한 유출 공격으로, 비트코인 ​​암호화폐의 근본 원칙을 훼손합니다.

ek_private 암호화 취약점: “콘솔 유출자” 공격 분석 및 보안 설계 방안


소개

개인 키의 안전한 저장 및 관리는 모든 암호화 시스템의 핵심입니다. API 라이브러리의 기술적 설계 오류는 암호화 기본 요소가 올바르게 구현되었더라도 심각한 정보 유출을 초래할 수 있습니다. 이 글에서는 libbitcoin 라이브러리에서 발견된 실제 취약점, 즉 스트림 연산자를 통한 무제한 개인 키 직렬화를 분석합니다. 이러한 공격을 “콘솔 유출 공격(Konsole Leaker)”으로 분류합니다. 또한, 이러한 모듈에 대한 안전한 설계 지침을 제시하고 올바른 코드 예제를 제공합니다.

취약점에 대한 설명

개인 키(또는 암호화된 표현)를 관리하는 클래스의 원래 구현에서 치명적인 결함이 발견되었습니다  ek_private. 개인 정보를 저장하는 클래스의 스트림 출력 연산자 구현에서,  operator<<어떠한 게이트키퍼, 제한, 인증 요구 사항 또는 간단한 경고조차 없이 개인 키를 출력 스트림에 직접 직렬화하는 문제가 발생했습니다.

cppstd::ostream& operator<<(std::ostream& out, const ek_private& of) NOEXCEPT
{
    out << of.encoded(); // Уязвимая строка
    return out;
}

로그를 남기거나, std::cout을 통해 디버그 출력을 하거나, 파일에 쓰는 행위는 자동으로 개인 정보를 유출시킵니다. 이는 개별 사용자뿐만 아니라 이 라이브러리를 사용하는 거래소, 지갑 및 기타 인프라 서비스 운영자에게도 엄청난 위험을 초래합니다.

이러한 취약점은 일반적인 데이터 클래스에 사용되는 기존 C++ 패턴을 비밀 관리 클래스로 이식할 때 흔히 발생합니다.

발생의 근본 원인

  • 비정형 직렬화  : 직렬화 연산자는 적용 대상 데이터의 종류를 확인하지 않습니다.
  • 일반적인 패턴의 과용  : 정보 보안의 특수성을 고려하지 않고 “편의성”만을 위해 C++ 패턴을 사용하는 것은 파괴적인 결과를 초래합니다.
  • 접근 제어 부족  : 객체 출력의 기술적 기능과 사용자/개발자가 개인 데이터를 내보내려는 실제 의사 사이에 구분이 없습니다.
  • 객체의 전체 수명 주기 동안 비밀 정보 처리 방식에 대한 제어가 미흡합니다  .

위험 및 운영 시나리오

  • 의도적이든 우발적이든 로깅으로 인해 개인 키가 로그, stderr 및 콘솔에 유출될 수 있습니다.
  • 자동화된 로그 수집 및 전송 시스템(SIEM, 중앙 집중식 로그)은 경계선 침투를 단순화합니다. 이제 로그 순환이나 로그 서버의 침해는 모든 사용자의 개인 키 유출을 의미합니다.
  • 경고나 명확한 비밀 유출 징후가 부족하여 개발자들이 침해 사실을 감지하기 어렵습니다.

안전한 설계 접근법

1. 비밀 데이터는 기본적으로 직렬화되어서는 안 됩니다.
출력, 직렬화, 복사 또는 전송을 위한 모든 메커니즘은 의식적이고 명시적이며 명시적으로 승인된 조치를 필요로 해야 합니다.

2. 비밀 클래스에 대한 출력 연산자 사용을 금지합니다. `
operator<<` 연산자를 구현하지 않거나, 완전히 비공개/삭제된 기능으로 만듭니다.

3. 암묵적인 관례에 따라 내보내지지 않는 API:
비밀 키를 직접 반환하는 메서드(예: private_key() 유형)는 명시적인 경고를 제공하거나 특별한 매개변수/태그를 요구해야 합니다.

4. 정보 제공 및 기본 접근 거부
라이브러리 개발자는 공개된 방법을 통한 접근 위험에 대해 명시적으로 알려야 할 의무가 있습니다.

수정된 구현 버전

다음은 개인 키 출력 연산자를 제거하고 표준 인터페이스를 통한 직접적인 비밀 키 내보내기를 비활성화한 보안 버전의 클래스 코드입니다.

cppclass ek_private {
public:
    ek_private();
    explicit ek_private(const std::string& encoded);
    explicit ek_private(const encrypted_private& value);

    // Другие методы...

    // Удаляем operator<< для предотвращения утечки
    friend std::ostream& operator<<(std::ostream&, const ek_private&) = delete;

    // Безопасный вариант предоставления закодированного ключа –
    // требует явной авторизации/разрешения или используется с подтверждением:
    std::string encoded(bool allow_export = false) const {
        if (!allow_export)
            throw std::runtime_error("Export of sensitive data not permitted");
        return encode_base58(private_);
    }

    // Остальной API не выводит напрямую секретные данные.
private:
    encrypted_private private_;
    bool valid_;
};

주요 측정 항목:

  • 출력 연산자가 삭제되었습니다(delete).
  • 개인 정보 내보내기는 표시가 있거나 사용자의 명시적인 동의가 있어야만 가능합니다.
  • 기본적으로 개인 정보를 출력하려는 ​​모든 시도는 예외를 발생시킵니다.
콘솔 유출 공격: 공격자가 로그에서 개인 키를 복구하여 비트코인 ​​자금에 대한 완전한 제어권을 확보하는 조용한 유출 공격으로, 비트코인 ​​암호화폐의 근본 원칙을 훼손합니다.

개발을 위한 보호 권고 사항

  • 비밀 정보를 포함하는 클래스는 항상 제로 트러스트 원칙에 따라 설계해야 합니다. 즉, 엄격한 통제 없이는 직렬화 또는 복사를 절대 해서는 안 됩니다.
  • 메서드와 필드를 “민감한 정보”로 명시적으로 표시하십시오.
  • 통합 코드에서 로깅 규칙을 설정하십시오. 키 접근 및 내보내기에 대한 감사 추적을 기록하도록 설정하십시오.
  • Konsole Leaker의 공격 패턴에 대해 청중과 동료들에게 교육하여 이러한 취약한 접근 방식이 재사용되지 않도록 하십시오.

결론

문제의 결함은 프로그래밍 습관과 암호화 규정의 엄격성 요구 사항이 만나는 지점에서 발생하는 전형적인 구현상의 취약점입니다. 적절한 설계와 민감한 데이터 노출 최소화를 통해 “콘솔 리커”와 유사한 공격으로부터 강력한 보호를 제공할 수 있습니다.


“개인 키 관리는 사용자의 책임입니다. 기본 내보내기는 보안 조치입니다!”


최종 과학적 결론

심각한 스트림 직렬화 취약점(키 유출 공격, CVE-2023-39910)은 개별 사용자뿐 아니라 전체 비트코인 ​​암호화폐 생태계에 근본적인 위협을 드러냈습니다. 표준 스트림이나 로그를 통한 개인 키의 무분별한 유출은 탈중앙화 신뢰의 근본 원칙을 훼손합니다. 즉, 이러한 데이터에 접근하는 사람은 누구나 피해자의 모든 비트코인 ​​자산에 대한 정당한 소유자가 되는 것입니다. 이 공격의 규모는 악의적인 행위뿐만 아니라 로깅, 디버깅 또는 중앙 집중식 로그 수집의 단순한 오류로도 발생할 수 있다는 점에서 더욱 심각합니다. 개인 키가 유일한 소유권 증명이라는 점을 고려할 때, 이러한 취약점은 전체 블록체인 보안 시스템의 치명적인 결함이 됩니다. 비트코인의 안정성과 신뢰를 유지하기 위해서는 엄격한 개인정보 보호 관행을 철저히 시행해야 합니다. 숨겨진 유출 경로를 제거하고, 개인 데이터의 자동 직렬화를 금지하며, 핵심 인프라 구성 요소를 정기적으로 감사하고 업데이트해야 합니다. 이러한 결함을 무시하면 필연적으로 새로운 대규모 공격, 신뢰 훼손, 그리고 미래 디지털 경제에서 막대한 자본 손실로 이어질 수 있습니다.  keyhunters+2


  1. https://www.itsec.ru/articles/upravlenie-uyazvimostyami-v-kriptokoshelkah
  2. https://www.kaspersky.ru/blog/vulnerability-in-hot-cryptowallets-from-2011-2015/36592/
  3. https://top-technologies.ru/ru/article/view?id=37634
  4. https://forklog.com/news/kvantovye-kompyutery-vzlomayut-bitcoin-cherez-pyat-let-mnenie
  5. https://pikabu.ru/story/private_key_debug_nekorrektnaya_generatsiya_privatnyikh_klyuchey_sistemnyie_uyazvimosti_bitkoina_chast_1_12755765
  6. https://cyberleninka.ru/article/n/metodika-analiza-dannyh-v-blokcheyn-sisteme-bitcoin
  7. https://support.ledger.com/ru/article/360015738179-zd
  8. https://opennet.ru/56670/
  9. https://habr.com/ru/articles/817237/
  10. https://keyhunters.ru/attack-on-private-key-exposure-we-will-consider-exploiting-errors-that-allow-obtaining-a-private-key-this-is-a-very-dangerous-attack-on-bitcoin-wallets-through-an-opcode-numbering-error-in-bitcoinli/
  11. https://milksad.info/disclosure.html
  12. https://nvd.nist.gov/vuln/detail/CVE-2023-39910
  1. https://keyhunters.ru/attack-on-private-key-exposure-we-will-consider-exploiting-errors-that-allow-obtaining-a-private-key-this-is-a-very-dangerous-attack-on-bitcoin-wallets-through-an-opcode-numbering-error-in-bitcoinli/
  2. https://github.com/demining/Milk-Sad-vulnerability-in-the-Libbitcoin-Explorer-3.x
  3. https://cryptorank.io/news/feed/df2a7-crypto-breach-hackers-make-off-with-900k
  4. https://nvd.nist.gov/vuln/detail/CVE-2023-39910
  5. https://milksad.info/disclosure.html
  6. https://cryptodeeptech.ru/milk-sad-vulnerability-in-libbitcoin-explorer/
  7. https://cryptography.io/en/latest/hazmat/primitives/asymmetric/serialization/
  8. https://www.krishnagudi.com/wp-content/uploads/2023/03/Internet-of-Things.-Principles-and-Paradigms-by-Rajkumar-Buyya-Amir-Vahid-Dastjerdi.pdf
  9. https://proofnet.de/publikationen/konsole_rce.html
  10. https://www.reddit.com/r/Bitcoin/comments/15nbzgo/psa_severe_libbitcoin_vulnerability_if_you_used/
  11. https://docs.redhat.com/en/documentation/red_hat_insights/1-latest/html/assessing_and_monitoring_security_vulnerabilities_on_rhel_systems_with_fedramp/vuln-cves_vuln-overview
  12. https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposures
  13. https://www.vicarius.io/vsociety/posts/issabel-authenticated-remote-code-execution-cve-2024-0986
  14. https://opennet.ru/63410-konsole
  15. https://habr.com/ru/news/919410/
  16. https://keyhunters.ru/hexwitness-leak-a-critical-vulnerability-leaking-private-keys-through-the-witness-stack-is-a-deadly-threat-to-the-bitcoin-network-where-an-attacker-can-simply-trace-a-log-or-memory-dump-to-gain-comp/
  17. https://www.cve.org/CVERecord/SearchResults?query=ssh
  18. https://attacksafe.ru/private-keys-attacks/
  19. https://cve.mitre.org/cgi-bin/cvekey.cgi
  20. https://www.cve.org/CVERecord/SearchResults?query=Unix

키워드: 비트코인, 리비트코인, BestLeakHunter, 개인 키 복구, CVE-2023-39910, 의사 난수 생성기, 메르센 트위스터, 암호화 취약점, 콘솔 리커 공격, 지갑 복원, 암호 분석.

  1. https://b8c.ru/bestleakhunter/
  2. https://play.google.com/store/apps/details?id=io.github.keyhunter
  3. https://github.com/topics/wallets-finder
  4. https://www.youtube.com/watch?v=SfW7Ir3xtNo
  5. https://github.com/Crypto-APIs/wallet-recovery-tool
  6. https://trustwallet.com/blog/security/private-key-vs-recovery-phrase
  7. https://b8c.ru/page/2/
  8. https://privatekeys.pw
  9. https://keyhunters.ru/black-hole-key-compromise-attack-a-critical-vulnerability-in-recovering-private-keys-for-lost-bitcoin-wallets-and-a-global-attack-on-cryptocurrency-security-and-digital-asset-compromise/
  10. https://www.youtube.com/watch?v=IXgcK_Kp-Dc
  11. https://b8c.ru/bithorecover/
  12. https://bitcoin-key-hunter.en.aptoide.com/app
  13. https://keyhunters.ru/shadows-of-time-attack-a-critical-ecc-timing-vulnerability-in-bitcoin-leading-to-private-key-recovery-and-the-hacking-of-lost-wallets/
  14. https://www.youtube.com/watch?v=bQqqqoihw-g
  15. https://www.cve.org/CVERecord/SearchResults?query=bitcoin
  16. https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposures

By