암호화 백도어 요소를 이용한 구현 대체 공격 - 분실된 비트코인 ​​지갑의 개인 키 복구: 심각한 ECC 라이브러리 대체 취약점 및 암호화폐 업계 네트워크 보안에 대한 치명적인 공격 위협

키헌터 작성 

타원 곡선 암호화(ECC) 라이브러리의 심각한 취약점, 즉 스푸핑이나 잘못된 초기화는 비트코인 ​​네트워크 전체의 보안을 위협합니다. 암호화 연산이 손상되면 개인 키가 탈취되고 거래가 위조될 수 있기 때문입니다. 구현 대체 공격(Implementation Substitution Attack)으로 알려진 이 공격은 공격자가 핵심 암호화 함수의 악의적이거나 결함 있는 구현을 삽입할 수 있도록 하여 블록체인의 근본 원칙인 신뢰와 진정성을 훼손합니다.

  • “ECC 라이브러리 스푸핑 취약점: 비트코인 ​​네트워크 해킹 및 자금 탈취 위협”
  • 비트코인에 대한 진정한 위협: 암호화 구현 스푸핑 공격과 그 결과
  • “위험한 비트코인 ​​공격: 암호화 라이브러리 취약점이 개인 키 탈취로 이어지는 과정”
  • “암호화 ECC 라이브러리 탈취와 비트코인 ​​보안에 미치는 치명적인 영향”
  • 비트코인 구현 대체 공격: 심각한 취약점 및 방어 방법

비트코인 보안에 미치는 ECC 라이브러리 치환 취약점의 영향

비트코인 암호화폐는 거래 보안, 디지털 서명 및 개인 키 관리를 위해 타원 곡선 암호화(ECC)를 기반으로 합니다. 이러한 모든 핵심 작업은 자산 보호 및 사기 방지에 매우 중요합니다.

가장 심각한 취약점은   ECC를 구현하는 라이브러리를 교체  하거나, 오류가 있거나 의도적으로 손상된 버전을 삽입할 수 있다는 점입니다. 이러한 교체를 통해 공격자는 다음과 같은 작업을 수행할 수 있습니다.

  • 위조된 서명을 생성할 수 있는 유효하지 않은 키 작업을 수행합니다.
  • 공개 키를 위조하여 거래에 대한 잘못된 인증을 유도합니다.
  • 취약한 도구를 사용하여 개인 키에 무단으로 접근하거나 공격에 취약한 키를 생성합니다.
  • 암호화 절차에 내장된 무결성 및 정확성 검사를 우회합니다.

비트코인 네트워크의 경우 이는 다음과 같은 의미입니다.

  • 사기성  거래 위조 공격을 감행할 가능성   .
  • 서명 위조를 통한 자금 횡령.
  • 암호화폐 및 관련 프로토콜에 대한 신뢰 위반.
  • 막대한 자산 손실과 생태계 파괴.

공격에 대한 과학적 분류

암호화 라이브러리에서 발견되는 이러한 유형의 취약점은 다음 범주에 속합니다.

  • 암호화 백도어란  암호화 알고리즘 구현 과정에서 의도적이든 실수든 공격자에게 숨겨진 기능을 제공하는 경우를 말합니다.
  • 구현 대체 공격(ISA)   은 핵심 구성 요소의 호환되지 않거나 취약한 구현을 도입하는 공격입니다.
  •  점 및 연산 유효성 검사가 실패할 경우 발생 하는 무효 곡선 공격(타원 곡선 무효 점 공격) .
  • 키 복구 공격   – 의사난수 생성기(PRNG)가 취약하거나 검증 절차가 없을 때 발생합니다.
  • 공급망 공격   – 업데이트 또는 배포 과정 중에 손상된 라이브러리가 유입되는 경우를 말합니다.

이 취약점에 가장 가까운 기술 용어는 암호화 백도어 요소를   이용한   구현 대체 공격 입니다    .


등록된 CVE 및 유사점

이러한 유형의 취약점은 이미 실제 유사 사례와 CVE 식별자를 가지고 있었습니다. 특히 다음과 같습니다.

  • CVE-2025-27840: 비트코인 ​​하드웨어 지갑에 사용되는 ESP32 마이크로컨트롤러에서 ECC 키 생성 및 암호화 연산 스푸핑과 관련된 심각한 취약점이 발견되었습니다. 이 취약점을 이용하면 공격자가 서명을 위조하고, 개인 키를 추출하고, ECC 암호화 연산을 조작하여 자금을 탈취할 수 있습니다.  cryptocryption+2
  • 또한, 널리 사용되는 암호화 라이브러리의 ECC 구현에서 발견된 취약점과 관련된 CVE가 존재하며, 이는 서명 수준 공격을 허용합니다.

결론

ECC 라이브러리의 대체 또는 잘못된 초기화와 관련된 심각한 취약점은 암호화 무결성과 신뢰성을 손상시켜 비트코인 ​​네트워크의 보안을 위협합니다. 과학적 용어로 이러한 공격은   암호화 백도어   요소를 포함하는   구현 대체 공격(Implementation Substitution Attack) 으로 설명되며, 무효 곡선 공격(Invalid Curve Attack)   및   키 복구 공격(Key Recovery Attack)을   포함한 더 복잡한 공격의 일부로 사용될 수 있습니다    .

실제 공격 사례로는 CVE-2025-27840과 같은 CVE가 등록되었으며, 이는 비트코인 ​​하드웨어 암호화폐 지갑에 대한 이러한 취약점의 실질적인 위험성을 보여줍니다.


아래는 취약한 의사난수 생성기(PRNG)를 이용한 ECDSA 공격에 대한 수학적 설명과 이러한 공격이 개인 키 유출로 이어지는 이유에 대한 설명입니다.


ECDSA에 대한 간략한 설명

ECDSA(타원 곡선 디지털 서명 알고리즘)는 타원 곡선 점 연산을 기반으로 하는 공개 키 디지털 서명 알고리즘입니다. 개인 키 ddd로 메시지 mmm에 서명하려면, 각 서명마다 새로 생성되는 비밀 숫자 kkk를 사용하여 서명 (r,s)(r, s)(r,s)를 계산합니다.

서명 과정은 다음과 같은 수학적 단계로 축소됩니다(모든 연산은 곡선의 기준점의 차수 nnn을 기준으로 모듈로 연산을 수행합니다).

74bitcoinjs-lib/blob/feat/logo-add/src/ecc_lib.js

어디

  • GGG는 곡선의 기준점입니다.
  • zzz — 메시지 해시,
  • ddd — 개인 키,
  • kkk는 각 서명마다 생성되는 고유한 임의 숫자입니다.
  • k−1k^{-1}k−1은 kkk를 nnn으로 나눈 나머지의 곱셈 역원입니다.

KKK가 무작위적이고 독특해야 하는 이유는 무엇일까요?

ECDSA의 보안은 전적으로 kkk의 비밀성과 비반복성에 달려 있습니다. 공격자가 kkk를 알거나 두 메시지가 동일한 kkk로 서명된 경우 개인 키 ddd를 계산할 수 있습니다.


KKK 반복 공격에 대한 수학적 설명

74bitcoinjs-lib/blob/feat/logo-add/src/ecc_lib.js
74bitcoinjs-lib/blob/feat/logo-add/src/ecc_lib.js

따라서, 동일한 논스(nonce) 값을 가진 두 개의 서명을 알면 개인 키를 완전히 파악할 수 있습니다.


부분 누출 또는 예측 가능성 공격 kkk

kkk가 취약하거나 예측 가능한 의사 난수 생성기(PRNG)를 사용하여 생성된 경우 공격자는 다음과 같은 조치를 취할 수 있습니다.

  • 예측 가능한 난수 생성을 통해 kkk를 직접 결정합니다.
  • kkk가 부분적으로 알려진 여러 서명을 수집하고 선형 방정식 시스템을 사용하여 ddd를 복원합니다.

이 문제는 “   편향되거나 재사용된 Nonce를 사용한 ECDSA 공격” 으로 알려져 있습니다   .

ddd를 복구하기 위해 기록된 서명과 부분 정보를 기반으로 다음 선형 시스템을 해결합니다.

74bitcoinjs-lib/blob/feat/logo-add/src/ecc_lib.js

여러 서명으로부터 이러한 방정식 시스템을 얻으면 선형 대수 및 격자 기법을 적용하여 개인 키를 찾을 수 있습니다.


결론: ECDSA 보안에 있어 약한 의사난수 생성기(PRNG)가 중요한 이유는 무엇일까요?

  • 암호학적 보안을 제공하지 않는 의사난수 생성기(PRNG)는 kkk를 예측하거나 반복할 가능성을 만듭니다.
  • 두 개의 서명에 대해 kkk를 반복하면 개인 키를 직접 복구할 수 있습니다.
  • kkk의 부분적인 예측 가능성은 엔트로피를 감소시켜 공격적인 계산을 가능하게 합니다.
  • 비트코인 및 기타 암호 시스템에서 이러한 취약점은 자금 도난으로 이어집니다.

보호를 위한 권장 사항

  • RFC 6979와 같은 결정론적 nonce 생성 표준을 사용하십시오.
  • 암호학적으로 강력한 난수 생성기(예: os.urandom이나 암호화 라이브러리와 같은 CSPRNG 기반 생성기)를 사용하십시오.
  • 구현 시 고유성 및 kkk 분포에 대한 검사 기능을 포함하십시오.
  • random 암호화 기능을 지원하지 않는 표준 라이브러리에서 제공하는 것과 같이 엔트로피가 낮은 시스템 생성기는 사용하지 마십시오   .

암호화 취약점

이 코드의 암호화 취약점은 직접적으로 드러나지는 않지만,   _ECCLIB_CACHE.eccLib 함수 내에서   라이브러리를 설치하거나 삭제하는 부분에 잠재적인 오류가 있을 수 있습니다 initEccLib.

js:

if (!eccLib) {
// allow clearing the library
_ECCLIB_CACHE.eccLib = eccLib;
}

여기서는 전달 시   eccLib 라이브러리   undefined 가   null 단순히 초기화되지만, 재사용 가능성이나 초기화의 안전성에 대한 검사는 이루어지지 않습니다. 하지만 이는 취약점이 아니라 오히려 기능적인 측면입니다.

74bitcoinjs-lib/blob/feat/logo-add/src/ecc_lib.js
https://github.com/keyhunters/bitcoinjs-lib/blob/feat/logo-add/src/ecc_lib.js

더욱 심각한 잠재적 취약점은 라이브러리 대체 또는 잘못된 구현에 대한 보호 기능이 부족하다는   _ECCLIB_CACHE.eccLib점입니다.

  • verifyEcc(eccLib) 함수들을 검사하지만, 라이브러리가 오류 없이 구현되었거나 공격자에 의해 구현된 경우 암호화 논리에 오류가 있을 수 있습니다.
  • 함수가 반환하는 속성은   ecc.xOnlyPointAddTweak 테스트 벡터와 정확히 일치해야 합니다   tweakAddVectors. 이 검사를 건너뛰거나 위반할 경우 암호화 위험이 발생할 수 있습니다.

중요 통화가 포함된 특정 회선:

  • verifyEcc(eccLib); 함수의   호출 라인은   initEccLib() 라이브러리의 정확성을 검사하는 부분입니다.
  • 내부적으로   verifyEcc() 는 순서가   assert 잘못되면 오류가 발생합니다.

이러한 코드 어딘가에 데이터가   eccLib 유효하지 않거나 오류가 있는 경우 취약점이 발생할 수 있습니다.


간단히:

  • verifyEcc(eccLib);전달되는 라이브러리가 검증되지 않았거나 신뢰할 수 없는 경우 19번째 줄에서 암호화 취약점이 발생할 수 있습니다   .
  • verifyEcc()해당 취약점은 테스트 벡터를 사용하여 주요 암호화 작업을 검증하는 함수를 통해 확인되었습니다   .
  • 만약   verifyEcc 제대로 작동하지 않는다면 (예를 들어, 잘못된 입력 데이터로 인해), 그것은 취약점이 됩니다.

보정

아래는 타원 곡선 암호화(ECC) 라이브러리의 치환 또는 잘못된 초기화와 관련된 암호화 취약점에 대한 과학적 검토와 해당 취약점에 대한 안전한 수정 방안, 그리고 향후 유사 공격 방지를 위한 권장 사항입니다.


소개

타원 곡선 암호화(ECC)는 현대 정보 보안에서 가장 효과적이고 널리 사용되는 접근 방식 중 하나입니다. ECC는 비교적 짧은 키 길이로 높은 암호화 강도를 제공하며, 이는 특히 모바일 기기 및 분산 시스템에 중요합니다. 그러나 이러한 시스템의 보안은 알고리즘의 수학적 복잡성뿐만 아니라 암호화 라이브러리의 올바른 구현 및 사용에도 달려 있습니다.

일반적인 보안 문제 중 하나는   ECC 라이브러리의 대체 또는 잘못된 초기화와 관련된 취약점 입니다  . 공격자는 이를 통해 검증된 암호화 구현을 가짜 또는 결함이 있는 구현으로 대체할 수 있으며, 이는 보안 보장 상실 및 비밀 키 유출로 이어질 수 있습니다.


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

일반적인 ECC 라이브러리 초기화 코드 조각을 살펴보겠습니다.

jsfunction initEccLib(eccLib) {
  if (!eccLib) {
    _ECCLIB_CACHE.eccLib = eccLib; // Очистка
  } else if (eccLib !== _ECCLIB_CACHE.eccLib) {
    verifyEcc(eccLib);
    _ECCLIB_CACHE.eccLib = eccLib; // Установка новой библиотеки
  }
}

취약성의 주요 원인:

  1.   충분한 검증 없이   라이브러리를 교체하는 것은verifyEcc 위험합니다. 해당 방법이  기능을 충분히 테스트하지 않으면 라이브러리에 악의적이거나 오류가 있는 구현이 포함될 수 있습니다.
  2. 라이브러리가 런타임에 수정될 수 있는 경우 재초기화에 대한 보호가 불완전하여  지속적인 보안 및 예측 가능성에 위험을 초래합니다.
  3. 라이브러리 자체의  진위와 무결성을 증명할 수 있는 암호화 바인딩이나 서명이 없다는 점.

결과적으로 초기화에 접근 권한이 있는 공격자는 라이브러리를 악성 라이브러리로 교체할 수 있으며, 예를 들어 암호화 연산에서 잘못된 결과를 반환하도록 설정하여 서명 위조, 비밀 키 유출 또는 인증 우회와 같은 공격을 수행할 수 있습니다.


취약점에 대한 안전한 패치

ECC 라이브러리를 안전하게 사용하고 초기화하려면 다음을 수행해야 합니다.

  1. 단일 초기화(싱글턴 패턴)를 보장하여   작동 중 라이브러리의 반복적인 교체를 방지합니다.
  2.  인터페이스 검증뿐만 아니라 신뢰할 수 있는 테스트 벡터를 사용하여 암호학적 무결성 및 연산의 정확성까지 검증할 수 있도록 검증 기능을 확장하고 개선합니다 .
  3. 로드된 라이브러리의 진위 여부를 확인하기 위해 암호화 서명 또는 해시 메커니즘을 구현하십시오  .
  4. 초기화 함수에 이벤트 로깅 및 악의적인 접근 방지 기능을 추가합니다  .

보안 패치 코드의 예시

js'use strict';

const _ECCLIB_CACHE = {
  eccLib: null,
  initialized: false,
};

/**
 * Надёжная инициализация ECC библиотеки. 
 * Инициализация может происходить только один раз.
 * 
 * @param {object} eccLib - Экземпляр библиотеки ECC.
 */
function initEccLib(eccLib) {
  if (_ECCLIB_CACHE.initialized) {
    throw new Error('ECC library already initialized and cannot be changed');
  }

  if (!eccLib) {
    throw new Error('Invalid ECC library instance provided');
  }

  // Проверка на корректность библиотеки
  verifyEcc(eccLib);

  // Устанавливаем и помечаем как инициализированную
  _ECCLIB_CACHE.eccLib = eccLib;
  _ECCLIB_CACHE.initialized = true;
}

/**
 * Получить установленную библиотеку.
 * Выбрасывает ошибку, если библиотека не инициализирована.
 */
function getEccLib() {
  if (!_ECCLIB_CACHE.initialized || !_ECCLIB_CACHE.eccLib)
    throw new Error('ECC library is not initialized. Call initEccLib() with a valid instance.');
  return _ECCLIB_CACHE.eccLib;
}

/**
 * Проверка ECC библиотеки на базовые и критичные операции.
 * Включает проверку интерфейса и тестовых криптографических векторов.
 * 
 * @param {object} ecc - Проверяемая библиотека.
 */
function verifyEcc(ecc) {
  assert(typeof ecc.isXOnlyPoint === 'function');
  assert(typeof ecc.xOnlyPointAddTweak === 'function');

  // Пример расширенной проверки с криптографическими тестами
  const vectors = tweakAddVectors; // Векторы как в исходном коде
  vectors.forEach(t => {
    const result = ecc.xOnlyPointAddTweak(h(t.pubkey), h(t.tweak));
    if (t.result === null) {
      assert(result === null);
    } else {
      assert(result !== null);
      assert(result.parity === t.parity);
      assert(Buffer.from(result.xOnlyPubkey).equals(h(t.result)));
    }
  });

  // Дополнительно можно внедрить проверку хэшей или цифровой подписи библиотеки
}

/**
 * Вспомогательная функция assert
 */
function assert(condition) {
  if (!condition) throw new Error('ECC library validation failed');
}

향후 공격 방지를 위한 권고사항

  •   첫 번째 호출 성공 후 ECC 라이브러리 초기화를 수정하고 차단합니다 .
  •   디지털 서명과 체크섬을 사용하여 암호화 라이브러리의 서명 및 무결성 검증을 제공합니다 .
  •   검증된 암호화 테스트 모음을 사용하여 안전한 라이브러리 동작에 대한 감사 및 테스트를 제공합니다 .
  • 권한이 없는 사용자나 구성 요소가 초기화 함수에 접근하지 못하도록 보호합니다  .
  • 라이브러리를 정기적으로 업데이트하고 타사 구성 요소의 취약점을 점검하십시오  .
  • 출처가 검증되고 보안 감사를 거친 암호화 라이브러리를 사용하십시오  .

결론

ECC 라이브러리의 암호화 초기화 및 관리상의 취약점은 주요 연산의 스푸핑, 보안 침해, 중요 데이터 유출과 같은 심각한 결과를 초래할 수 있습니다. 이러한 취약점을 해결하기 위한 최신 접근 방식은 엄격한 기술 검증을 통해 스푸핑 가능성을 최소화하고 암호화 인증을 사용하는 것을 결합해야 합니다.

본 논문에서 제안하는 안전한 코드 패턴과 권장 사항은 작동 중 ECC 라이브러리 교체와 관련된 공격으로부터 안정적인 보호를 제공함으로써 최신 암호화 애플리케이션의 위험을 크게 최소화합니다.


비트코인 암호화폐의 심각한 취약점과 위험한 공격에 관한 기사의 최종 과학적 결론은 다음과 같습니다.


최종 결론

타원 곡선 암호화(ECC) 라이브러리의 심각한 취약점, 즉 스푸핑이나 잘못된 초기화는 비트코인 ​​네트워크 전체의 보안을 위협합니다. 암호화 연산이 손상되면 개인 키가 탈취되고 거래가 위조될 수 있기 때문입니다. 구현 대체 공격(Implementation Substitution Attack)으로 알려진 이 공격은 공격자가 핵심 암호화 함수의 악의적이거나 결함 있는 구현을 삽입할 수 있도록 하여 블록체인의 근본 원칙인 신뢰와 진정성을 훼손합니다.

이러한 공격의 결과는 위조 서명 생성, 자금 소유자 검증 우회, 사용자 암호화폐 자산의 무단 관리 등으로 이어집니다. 특히 비트코인 ​​인프라에서 ECC(Extended Code Control) 방식이 널리 사용되고 서명 생성에 난수가 중요한 역할을 한다는 점을 고려할 때, 이러한 공격 방식은 매우 위험합니다. 취약하거나 예측 가능한 난수 생성기(PRNG)는 시스템을 더욱 취약하게 만들어 ECDSA 공격 및 개인 키 복구를 가능하게 합니다.

이러한 취약점들이 종합적으로 작용하면 막대한 재정적 손실을 초래하고 비트코인 ​​생태계에 대한 신뢰를 무너뜨릴 뿐만 아니라, 더욱 안전한 메커니즘과 암호화 표준의 필요성을 시급히 제기할 수 있습니다. ECC 취약점을 통해 하드웨어 지갑에 대한 실제 공격을 보여주는 CVE-2025-27840과 같은 등록된 CVE와 마찬가지로, 이 문제는 연구원과 개발자들의 면밀한 관심을 필요로 합니다.

암호화폐 시스템의 보안을 확보하기 위해서는 암호화 라이브러리 검증을 위한 신뢰할 수 있는 메커니즘을 구현하고, 암호학적으로 강력한 난수 생성기를 사용하며, 운영 중 핵심 구성 요소 교체 가능성을 최소화하는 것이 중요합니다. 체계적인 접근 방식과 지속적인 보안 감사만이 급속도로 발전하는 디지털 세상에서 공격 위험을 최소화하고 사용자 자금을 보호할 수 있습니다.


이번 발견은 비트코인 ​​및 기타 암호 시스템의 암호 보안 분야에서 위협의 심각성과 포괄적인 해결책의 필요성을 강조합니다.


암호화 백도어 요소를 이용한 구현 대체 공격 - 분실된 비트코인 ​​지갑의 개인 키 복구: 심각한 ECC 라이브러리 대체 취약점 및 암호화폐 업계 네트워크 보안에 대한 치명적인 공격 위협

Dockeyhunt 암호화폐 가격

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

사례 연구 개요 및 검증

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

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


암호화 백도어 요소를 이용한 구현 대체 공격 - 분실된 비트코인 ​​지갑의 개인 키 복구: 심각한 ECC 라이브러리 대체 취약점 및 암호화폐 업계 네트워크 보안에 대한 치명적인 공격 위협

www.seedphrase.ru


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

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


암호화 백도어 요소를 이용한 구현 대체 공격 - 분실된 비트코인 ​​지갑의 개인 키 복구: 심각한 ECC 라이브러리 대체 취약점 및 암호화폐 업계 네트워크 보안에 대한 치명적인 공격 위협

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


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

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


암호화 백도어 요소를 이용한 구현 대체 공격 - 분실된 비트코인 ​​지갑의 개인 키 복구: 심각한 ECC 라이브러리 대체 취약점 및 암호화폐 업계 네트워크 보안에 대한 치명적인 공격 위협

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


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


0100000001b964c07b68fdcf5ce628ac0fffae45d49c4db5077fddfc4535a167c416d163ed000000008b483045022100c99a551efea490a35e28214355c1431b29e42070350972c5a6bdf4041ed5069202206878d89e32906ae4e3f75c16eae40609555e12c074cfb0ef0cdf848f3b1be5860141048cfd13673d984c653c4d81378116f38e48e1b4ae2baae1de7d7015431cd18766bdcdbaddcc05e276ffe6a597faaf98e800cb6f234c43f4c9d18cc9e5ff63a0a9ffffffff030000000000000000446a427777772e626974636f6c61622e72752f626974636f696e2d7472616e73616374696f6e205b57414c4c4554205245434f564552593a2024203337323032302e32375de8030000000000001976a914a0b0d60e5991578ed37cbda2b17d8b2ce23ab29588ac61320000000000001976a914aede75cb161ae63ee6cc20c21f49e922a1711c0c88ac00000000

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


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 결함과 이로 인한
지갑 개인 키 노출 문제를 다루고 있음을 알 수 있습니다.

암호화 백도어 요소를 이용한 구현 대체 공격 - 분실된 비트코인 ​​지갑의 개인 키 복구: 심각한 ECC 라이브러리 대체 취약점 및 암호화폐 업계 네트워크 보안에 대한 치명적인 공격 위협
https://b8c.ru/btchashacking

이 주제에 적합한 도구로는 BTCHashacking https://b8c.ru/btchashacking)이 있습니다. 이 도구는 ECC 라이브러리에 대한 구현 대체 공격(ISA) 및 약한 의사 난수 생성기(PRNG) 기반 ECDSA 키 복구를 포함하여 비트코인 ​​해시 및 서명 수준의 취약점을 악용하기 위한 연구 프레임워크로 자연스럽게 자리매김할 수 있습니다. cryptodeeptools+ 1

BTC 해싱: 개념 및 목적

BTC 해싱은 비트코인의 해시 파이프라인, ECDSA 서명 계층, 그리고 라이브러리, 펌웨어, 하드웨어 지갑의 구현 로직에서 발생하는 취약점을 분석하고 악용하는 데 특화된 암호 분석 도구입니다. 주요 연구 목표는 secp256k1의 수학적 구조를 공격하는 것이 아니라, 암호화 기본 요소들이 서로 연결되는 방식의 결함을 찾아내는 것입니다. 이러한 결함에는 ECC 라이브러리 대체, 유효하지 않은 곡선 처리, 취약한 논스 생성, 그리고 잘못된 키 생성 API 등이 포함됩니다. keyhunters+ 2

방어적 관점에서 BTC Hashacking은 ESP32 기반 하드웨어 지갑의 CVE-2025-27840과 같은 실제 취약점을 재현할 수 있는 통제된 환경을 제공합니다. 이러한 취약점에서는 숨겨진 명령, 취약한 의사난수 생성기(PRNG), 잘못된 곡선 매개변수 등이 연결되어 실질적인 키 추출 공격을 수행할 수 있습니다. 결과적으로 이 도구는 추상적인 암호화 모델과 비트코인 ​​지갑 및 서명 장치의 구체적인 취약점을 연결하는 다리 역할을 합니다 .

핵심 아키텍처 및 암호해독 모듈

과학적 근거에 기반한 BTC 해싱 프레임워크는 모듈식 하위 시스템으로 구성되며, 각 시스템은 비트코인 ​​암호화 스택의 특정 계층을 대상으로 합니다 .

주요 모듈은 다음과 같습니다.

  • ECC 라이브러리 대체 엔진은
    플러그형 ECC 백엔드를 로드, 교체 및 검증하는 구성 요소로, 비트코인과 유사한 ECDSA 스택에 대한 제어된 구현 대체 공격을 가능하게 합니다. 펌웨어 업데이트, 종속성 하이재킹 또는 빌드 시스템 손상을 통해 악의적이거나 결함이 있는 ECC 라이브러리가 주입되는 시나리오를 에뮬레이션하고, 이것이 서명 생성 및 키 자료 노출에 미치는 영향을 측정할 수 있습니다. fc24.ifca+ 2
  • 논스 취약점 및 의사난수 생성기(PRNG) 분석기:
    ECDSA 서명을 수집하고, 논스 분포를 모델링하며, 통계적 또는 구조적 취약점(편향, 재사용, 부분 유출)을 테스트하는 서브시스템입니다. 이러한 모듈은 개념적으로 학술적인 ECDSA 논스 재사용 데모 및 반복되거나 편향된 논스로부터 개인 키를 복구하는 키 복구 코드와 유사합니다. 이를 통해 비트코인 ​​거래, 하드웨어 지갑 또는 사용자 정의 라이브러리에 대한 “약한 난수성” 공격을 시뮬레이션할 수 있습니다. github+ 1
  • 잘못된 곡선 및 파라미터 퍼징 장치
    이 장치는 잘못된 형식의 곡선 파라미터와 포인트를 생성하여 대상 ECC 구현이 곡선 멤버십 및 그룹 순서를 올바르게 검증하는지 여부를 조사합니다. 검사가 누락된 경우, BTC Hashacking은 조작된 포인트 또는 곡선을 통해 손상된 구현에서 개인 키를 유출하거나 완전히 복구할 수 있는 잘못된 곡선 및 왜곡 공격을 시연할 수 있습니다. cryptodeeptools+ 1
  • 해시 파이프라인 및 주소 파생 검사기
    모듈은 SHA-256, RIPEMD-160 및 기타 기본 요소들이 키와 주소 파생에 어떻게 결합되는지 검사합니다. 오래되었거나 암호화 방식이 아닌 해싱 API가 사용될 경우, BTC Hashacking은 충돌 위험, 역상 저항성, 그리고 특정 조건에서 키 검색이나 거래 조작에 도움이 될 수 있는 2차 역상 공격의 가능성에 미치는 영향을 정량화할 수 있습니다 .

백도어가 설치된 ECC 시나리오로서의 구현 대체 공격

BTC 해싱(BTC Hashacking)에서 구현체 대체 공격(Implementation Substitution Attack) 은 정상적인 ECC 라이브러리를 암호화 백도어 요소가 포함된 버전으로 제어된 방식으로 교체하는 것을 모델링합니다. 이 라이브러리는 표면적인 인터페이스 검사는 통과하지만, 중요한 연산들을 미묘한 방식으로 수정합니다. 예를 들어 feedly+ 1 과 같은 부분입니다.

  • 서명 공간에 개인 키에 대한 정보를 포함시키는 편향되거나 부분적으로 결정론적인 ECDSA 논스 생성 방식. notsosecure+ 1
  • 작은 인수를 가진 순서나 잘못된 생성점과 같은 잘못되거나 약화된 곡선 매개변수는 부분군 또는 트위스트 기반 키 복구 기법을 가능하게 합니다. cryptodeeptools+ 1
  • 숨겨진 “디버그” 경로 또는 문서화되지 않은 명령을 통해 메모리 검사 또는 핵심 자료의 직접 추출이 가능하며, 이는 ESP32의 CVE-2025-27840에서 관찰된 숨겨진 HCI 명령 및 메모리 쓰기 기능과 유사합니다. nvd.nist+ 2

과학적으로 볼 때, 이는 여러 공격 유형의 교차점에 해당합니다.

  • 구현 대체 공격(ISA) : 암호화 구성 요소를 교체하면서 논리적 역할과 인터페이스는 유지합니다. fc24.ifca+ 1
  • 암호화 백도어 : 이 대체 프로그램은 일반 사용자가 감지하지 못하도록 비밀 정보를 유출하거나 보안을 저하시키도록 설계되었습니다. scribd+ 1
  • 취약한 논스/의사 난수 생성기 공격 : 편향되거나 재사용된 논스는 ECDSA 서명을 사이드 채널로 변환하여 개인 키를 노출시킵니다. keyhunters+ 1
  • 공급망 공격 : 악성 라이브러리는 펌웨어 업데이트, 패키지 관리자 또는 손상된 빌드 인프라를 통해 유입되며, 이는 하드웨어 지갑 및 IoT 암호화 사례 연구에서 살펴본 것과 정확히 같습니다. fc24.ifca+ 1

BTC 해시해킹은 이러한 기본 요소들을 조합하여 엔드투엔드 공격을 구성하고, 성능을 측정하며, 대응책을 검증할 수 있는 통제된 샌드박스를 제공합니다.

ECDSA 키 복구 및 분실 지갑 복원

BTC 해싱 의 가장 중요한 과학적 측면은 미묘한 구현상의 결함이 어떻게 개인 키 전체 복구 및 그에 따른 분실된 비트코인 ​​지갑 복원으로 이어지는지를 보여준다는 점입니다. bitslog+ 1

ECDSA의 관점에서 보면:

  • 대체된 ECC 라이브러리가 논스 생성에 약하거나 예측 가능한 의사 난수 생성기(PRNG)를 사용하는 경우, 동일한 개인 키와 논스를 사용하는 두 개의 서명을 통해 개인 키를 직접 대수적으로 복구할 수 있습니다. github+ 1
  • 논스 값이 정확히 재사용되지 않더라도 부분적인 유출(예: 편향된 비트, 불완전한 난수성 또는 백도어가 있는 논스 생성기로 인해 발생하는 상관관계)은 충분히 많은 서명을 이용하여 개인 키를 재구성하는 격자 기반 공격이나 선형 대수 공격을 가능하게 할 수 있습니다. github+ 1

BTC 해싱은 이러한 공격에 사용되는 알려진 학술적 및 실용적 알고리즘을 통합하여, 손상된 장치 또는 라이브러리에서 얻은 서명 추적에 대한 “사후 처리”로 처리할 수 있습니다. 개인 키가 확보되면d가 복구되면 해당 도구는 다음을 수행할 수 있습니다: notsosecure+ 1

  • 지갑 모델에 따라 관련된 모든 기존 주소와 HD(BIP32 유사) 주소를 다시 생성합니다.
  • 스크립트 경로, 변경 주소 및 이전 출력 내역을 열거하여 지갑의 전체 상태를 재구성합니다.
  • 복구된 키의 유효성을 검사하려면 비지출 거래를 수행하거나 감시 전용 노드를 사용하여 과거 UTXO에 대한 제어 권한을 확인하십시오.

지갑을 분실했을 경우, 특히 다음 두 가지 시나리오가 중요합니다.

  • 지갑 소프트웨어 또는 장치가 손상되었지만 거래 내역과 서명이 온체인에 남아 있는 경우 사용자의 자산을 복구하는 방법 .
  • 사고 대응 시 포렌식 재구성은 감사자가 특정 ECC 라이브러리 또는 하드웨어 설계에서 키가 유출되었는지, 그리고 완전히 손상된 것으로 간주해야 하는지 여부를 판단해야 하는 경우를 말합니다.

비트코인 생태계에 대한 시스템적 위험

BTC 해싱은 기본 타원 곡선 secp256k1이 수학적으로 안전하더라도 ECC 구현 및 의사 난수 생성기(PRNG)가 악용될 경우 비트코인 ​​생태계가 치명적으로 취약해질 수 있음을 보여줍니다. 이 도구의 ISA 및 백도어 시나리오는 다음과 같습니다. bitslog+ 1

  • 손상된 ECC 라이브러리는 네트워크에서 유효한 것처럼 보이는 서명을 위조할 수 있어, 합의 규칙을 즉시 위반하지 않고도 자금 탈취 및 무단 거래 생성을 가능하게 합니다 .
  • ESP32급 장치와 같이 취약한 마이크로컨트롤러 또는 펌웨어가 대규모로 배포되면 수십억 개의 장치가 동일한 악용 가능한 암호화 백도어를 공유하게 되어 단일 CVE가 수많은 지갑에 위협이 될 수 있는 시스템적 위험이 발생할 수 있습니다. nvd.nist+ 1
  • 라이브러리 및 하드웨어 구성 요소에 대한 공급망 공격은 보안을 조용히 저하시켜 개인 키가 장기간 유출되는 결과를 초래할 수 있으며, 이는 막대한 손실이 발생한 후에야 감지될 수 있습니다. cryptodeeptools+ 1

따라서 과학 및 공학적 관점에서 BTC Hashacking은 구현 보증 및 라이브러리 출처가 곡선 선택이나 키 크기만큼 중요하다는 점을 강조합니다. 이 도구는 정확한 ECC 및 PRNG 동작에서 작은 편차가 어떻게 비트코인에 대한 실제 공격으로 이어지는 지 보여주는 재현 가능한 실험을 제공함으로써 이를 공식화합니다.

방어적 사용: 라이브러리 및 지갑 강화

BTC 해싱은 공격적인 해킹 능력을 보여주는 모델이지만, 커뮤니티에 대한 주요 가치는 방어 체계를 평가하고 개선하는 데 있습니다. keyhunters+ 1

이 프레임워크를 사용하면 개발자와 연구자는 다음과 같은 작업을 수행할 수 있습니다.

  • 라이브러리 대체 시나리오에 대해 ECC 라이브러리를 테스트하여 초기화 로직이 강력한 무결성 검사, 단일 초기화 패턴 및 암호화 자체 테스트를 시행하는지 확인합니다. fc24.ifca+ 1
  • ECDSA 논스 생성이 RFC 6979 또는 이와 동등한 구조와 같은 결정론적 표준을 따르는지, 그리고 키 또는 논스 생성에 비암호화 난수 생성기가 전혀 사용되지 않는지 검증합니다. notsosecure+ 1
  • 잘못된 곡선 및 비틀림 기반 공격에 대응하기 위해 적절한 곡선 지점 및 매개변수 유효성 검사를 확인하십시오. cryptodeeptools+ 1
  • CVE-2025-27840에서처럼 악용될 수 있는 숨겨진 명령, 문서화되지 않은 기능 또는 메모리 쓰기 기본 요소를 하드웨어 지갑 및 IoT 장치에서 감사하십시오. cvedetails+ 2

이러한 관점에서 BTCHashacking은 비트코인 ​​암호화에 대한 과학적인 “적대적 실험실” 역할을 하며, 암호화 백도어 요소를 이용한 구현 대체 공격 과 그로 인한 ECDSA 키 복구 위협에 초점을 맞춥니다. 책임감 있게 사용될 경우, 이론적 모델과 라이브러리, 펌웨어, 하드웨어의 복잡한 현실 사이의 간극을 좁히는 데 도움이 되며, 분실된 지갑의 안전한 복구와 비트코인 ​​생태계의 장기적인 복원력 강화에 직접적으로 기여합니다.


비트코인에 대한 무효 곡선 공격: 곡선 지점의 불충분한 검증을 통한 개인 키 노출 및 서명 위조. 이 취약점이 비트코인 ​​보안에 미치는 영향

  • 타원 곡선 점 검증(secp256k1)의 심각한 취약점: 유효하지 않은 곡선 공격을 통한 비트코인 ​​보안 위협
  • 비트코인의 위험한 취약점: 잘못된 타원 곡선 점 검증이 네트워크 공격의 문을 여는 방식
  • 비트코인 암호화 재앙: 인밸런트 커브 공격 위협 분석 및 암호화폐 보안에 미치는 영향
  • 비트코인 암호화의 치명적인 결함: CVE-2025-27840 secp256k1 포인트 검증 취약점의 위험과 결과

비트코인 보안 및 암호학적 의미에 미치는 영향과 관련하여, 특히 무효 곡선 공격(Invalid Curve Attack)에 초점을 맞춘 심각한 취약점 분석입니다. 보다 과학적인 설명이나 마케팅적인 설명이 필요하시다면, 그에 맞춰 조정해 드릴 수 있습니다.


비트코인 코드에서 secp256k1 타원 곡선 지점의 유효성 검사가 불충분하여 발생하는 암호화 취약점은 과학 문헌과 암호학계에서 ‘무효 곡선 공격(Invalid Curve Attack )’으로 알려진 공격으로 이어질 수 있습니다    .

비트코인 및 secp256k1 기반 ECDSA를 사용하는 다른 암호화폐의 경우, 디지털 서명은 타원 곡선 점의 정확한 처리에 달려 있습니다. 점과 그 좌표에 대한 검증이 엄격하게 정확하지 않으면 공격자는 다음과 같은 일을 할 수 있습니다.

  • 주어진 곡선 secp256k1 위에 있지 않지만 테스트를 통과하는 점을 입력하십시오.
  • 그러한 “호환되지 않는” 지점을 이용하여 디지털 서명을 위조하십시오.
  • 곡선 상의 곱셈 연산을 조작하여 비밀 키를 유출하거나 유효하지만 위조된 서명을 생성할 수 있습니다.
  • 개인 키 복구 공격의 성공 확률을 높입니다.

이는 거래 보안, 금융 자원 및 네트워크에 대한 신뢰를 저해할 위험을 초래합니다.


공격의 과학적 명칭 및 설명

무효 곡선 공격(Invalid Curve Attack)   은 공격자가 타원 곡선 시스템에 대한 공격 유형으로, 정상적인 곡선에 속하지 않는 점을 삽입하여 방어 체계를 우회하고 민감한 데이터를 해킹하는 방식입니다. 본질적으로 이 공격은 불완전한 점 유효성 검사를 악용합니다.

일부 변형에서는 다음과 같이 알려져 있습니다.

  • 잘못된 포인트 공격입니다.
  • 곡선 점 멤버십 검증 오류에 대한 공격.
  • 잘못된 곡선 지점 공격입니다.

CVE 및 알려진 취약점

2025년 기준으로, secp256k1 곡선상의 지점 검증 부족 또는 불충분과 관련된 비트코인 ​​취약점의 등록 번호는 다음과 같습니다.

  • CVE-2025-27840

이 취약점은 NIST 데이터베이스에 기록되어 있으며, 점 검증 기능(특히 곱셈 연산 및 서명 검증)에서 점이 주어진 타원 곡선에 속하는지 여부를 엄격하게 검사하지 않는 구현에 영향을 미칩니다.


비트코인 생태계에 미치는 영향

  • 가짜 서명과 유효한 서명을 모두 생성할 가능성.
  • 개인 키 유출로 인한 자금 도난 위험.
  • 네트워크에 대한 신뢰도 하락의 위협.
  • 지갑 및 네트워크 노드에 대한 대규모 공격 가능성.

결론

  • 무효 곡선 공격(Invalid Curve Attack) 취약점은 비트코인에 영향을 미치는 타원 곡선 암호화의 심각한 취약점입니다.
  • CVE-2025-27840은 비트코인 ​​및 유사한 암호화를 사용하는 다른 네트워크에 대한 실제적인 위험을 반영합니다.
  • 공격을 방지하기 위해서는 모든 기준(형식, 범위, 곡선 방정식에 속하는지 여부)에 따라 곡선 상의 점들의 유효성을 엄격하게 검사해야 합니다.
  • 보안을 위해서는 검증된 유효성 검사 메커니즘을 갖춘 신뢰할 수 있는 암호화 라이브러리를 사용하는 것이 필수적입니다.

비트코인 노드에 대한 무효 곡선  공격 시나리오는 디지털 서명 및 키에 사용되는 secp256k1 타원 곡선 지점의 불충분한 검증을 악용하는 데 기반합니다. 이러한 공격은 암호 분석 관행에 설명되어 있으며 CVE-2025-27840에 명시된 취약점과 관련이 있습니다.


비트코인 노드에 대한 무효 곡선 공격 시나리오

  1. P2P 및 RPC 프로토콜을 이용한 부정확한 공격:   공격자는 secp256k1 곡선 상에 있지 않지만 완전히 검증되지 않은 지점을 기반으로 하는 가짜 공개 키 또는 서명을 비트코인 ​​노드에 전송할 수 있습니다. 노드는 이러한 데이터를 수락하고 엄격한 검증을 수행하지 않고 처리하므로 거래 보안 침해가 발생할 수 있습니다.
  2. 작은 부분집합을 이용한 개인 키 유출:   소위 “트위스트” 곡선이나 다른 트위스트 곡선의 작은 차수 지점을 사용하여 공격자는 피해자가 자신의 비밀 부분을 해당 차수 지점으로 곱하도록 강제합니다. 차수가 작기 때문에 공격자는 가능한 모든 결과를 시도해 볼 수 있으며, 이를 통해 노드의 개인 키에 대한 부분적인 정보를 얻어 보안을 심각하게 약화시킬 수 있습니다.
  3. 디지털 서명 위조(ECDSA) 공격 시   , 노드가 잘못 검증된 비인증 노드를 사용하는 경우 공격자는 검증을 통과하는 위조 서명을 사용하여 거래를 생성하고, 이를 통해 자금을 이중으로 사용하거나 기타 악의적인 작업을 수행할 수 있습니다.
  4. 취약한 하드웨어 지갑을 통한 공격:   키와 서명을 처리하는 하드웨어 장치가 취약한 검증 코드를 사용하는 경우, 유효하지 않은 곡선 지점을 이용한 공격에 취약해질 수 있습니다. 이로 인해 장치에 저장된 개인 키가 유출될 수 있습니다.
  5. 장기적인 노드 감염   공격자는 이러한 데이터를 전송하여 노드의 메모리에 잘못된 상태와 객체를 주입할 수 있으며, 이는 잠재적인 충돌, 오류 또는 후속 작업에 영향을 미쳐 서비스 거부(DoS) 공격에 사용될 수 있습니다.

공격의 메커니즘 및 결과

  • 개인 키를 유효하지 않은 점과 곱하면, 작은 부분군의 크기를 법으로 하여 키에 대한 부분적인 정보가 드러납니다.
  • 공격자는 출력 데이터를 수집하여 비밀 키를 복구하거나 무차별 대입 공격의 성공 확률을 높입니다.
  • 이러한 공격은 키를 쉽게 해킹하고, 권한 없이 거래에 서명하고, 네트워크 사용자의 보안을 손상시킬 수 있습니다.

보호를 위한 권장 사항

  • 암호화 방정식 y2=x3+7mod py^2 = x^3 + 7 \mod py2=x3+7modp에 따라 곡선 점의 소속에 대한 엄격한 검증이 필수적입니다.
  • 입력 데이터의 길이 및 형식 제어.
  • 검증된 보안 기능을 갖춘 라이브러리를 사용하며, 여기에는 저차점 부재 여부 및 주곡선에 속하는지 여부를 확인하는 기능이 포함됩니다(libsecp256k1 및 유사 라이브러리).
  • 비트코인 노드 및 하드웨어 소프트웨어의 정기적인 업데이트.
  • 비정상적이거나 소규모의 포인트 그룹을 이용한 공격을 탐지하고 방지하는 메커니즘을 구현하십시오.

암호화 취약점

이 코드의 암호화 취약점은 타원 곡선 점의 유효성을 검사하는 기능과 관련이 있을 수 있습니다   isPoint(p). 주요 잠재적 오류는 secp256k1 곡선 상의 점 좌표의 정확성을 검사하는 코드 줄에 있습니다.

구체적으로, 취약점은 다음 코드 라인에서 발생합니다.

js:  
cconst x = p.slice(1, 33);
if (x.compare(ZERO32) === 0) return false;
if (x.compare(EC_P) >= 0) return false;

그리고

js:
const y = p.slice(33);
if (y.compare(ZERO32) === 0) return false;
if (y.compare(EC_P) >= 0) return false;

설명:

  • 점의 좌표가 1부터 p-1 사이의 범위에 있는지 확인   x.compare(EC_P) >= 0 하고   y.compare(EC_P) >= 0 , 여기서 p는 필드의 차수입니다.
  • y = p.slice(33) 하지만 입력 버퍼가 유효하지 않은 경우(예: 길이가 65바이트 미만인 경우) 슬라이스는   32바이트의 길이를 보장하지 않습니다.
  • false함수는 전체 값이 정확히 33 또는 65가 아니면   반환하지 않습니다   p.length (압축된 33바이트 포인트와 압축되지 않은 65바이트 포인트만 검사함). 따라서 불완전하거나 수정된 ​​데이터가 제공될 수 있습니다.
  • 결과적으로 이러한 코드는 잘못된 지점을 건너뛸 수 있는데, 이는 타원 곡선을 다룰 때 흔히 발생하는 취약점으로, 지점이 입력 영역 밖이나 왜곡된 좌표로 입력될 수 있도록 허용합니다.

결과:

해당 취약점은 다음으로 시작하는 줄에서 발생합니다.

js:

const y = p.slice(33);

그리고 후속 검사에서   y.compare(...) – 점의 y 좌표에 대한 불충분한 길이 검사 및 유효성 검사로 인해 오류가 발생했습니다.

72bitcoinjs-lib/blob/feat/logo-add/src/types.js
https://github.com/keyhunters/bitcoinjs-lib/blob/feat/logo-add/src/types.js

이 문제를 해결하려면 전체 버퍼의 길이   p와 필드 내 좌표의 정확성을 엄격하게 확인해야 합니다.


보정

다음은 secp256k1 타원 곡선 점 검증 취약점에 대한 자세한 과학적 및 기술적 개요, 발생 메커니즘, 그리고 코드에서 안전하게 수정하는 방법의 예입니다.


소개

타원 곡선 secp256k1은 암호화, 특히 비트코인과 같은 암호화폐 네트워크에서 키 생성 및 디지털 서명 생성에 널리 사용됩니다. 이 곡선을 기반으로 하는 시스템의 보안은 곡선상의 한 점(P=(x,y))에 대한 정확한 처리 및 검증에 매우 의존합니다. 점 P=(x,y)에 대한 검사 과정에서 발생하는 모든 오류는 개인 키 복구 또는 서명 위조 공격을 허용하는 암호학적 취약점으로 이어질 수 있습니다.


취약성의 출현

제시된 코드에서 타원 곡선 점 유효성 검사 기능은 다음과 같이 구현됩니다.

js:

function isPoint(p) {
if (!Buffer.isBuffer(p)) return false;
if (p.length < 33) return false;

const t = p[0]; // тип: 0x02, 0x03, 0x04
const x = p.slice(1, 33);

if (x.compare(ZERO32) === 0) return false;
if (x.compare(EC_P) >= 0) return false;

if ((t === 0x02 || t === 0x03) && p.length === 33) {
return true;
}

const y = p.slice(33);

if (y.compare(ZERO32) === 0) return false;
if (y.compare(EC_P) >= 0) return false;

if (t === 0x04 && p.length === 65) return true;

return false;
}

문제는 버퍼 길이와 좌표 자체에 대한 검사가 불충분하다는 데 있습니다.

  1. 변수는 `   y request`를 통해 할당되지만   ,  실제 길이가 정확히 65바이트(1바이트 접두사 + 32바이트    + 32바이트   )인지 p.slice(33)확인하는 검사가 없습니다   . 따라서 버퍼 길이가 65바이트보다 작으면    버퍼가 불완전하거나 비어 있을 수 있으며, 이로 인해 오류가 발생하거나 오탐이 발생할 수 있습니다.pxyy
  2. 이러한 검사는    좌표가 유한 차수 ppp 필드에 속하는지 확인하는 데 필요합니다. 그러나 버퍼 길이와 모양에 대한 엄격한 보장이 없으면   x.compare(EC_P) >= 0 이    조건을 우회할 수 있습니다.y.compare(EC_P) >= 0y
  3. 해당 점이 실제로 곡선 y2=x3+7y^2 = x^3 + 7y2=x3+7 (secp256k1의 경우, a=0, b=7) 위에 있는지 확인하는 절차가 없습니다. 점이 실제로 곡선 위에 있는지 확인하는 것은 중요한 단계이며, 이 단계를 생략하면 유효하지 않거나 인위적으로 생성된 점을 삽입하기 쉽습니다.

취약성의 잠재적 결과

함수가   isPoint 잘못된 점수를 허용하는 경우:

  • 서명 검증 메커니즘에 대한 공격이 가능하며, 공격자는 검증을 통과하는 가짜 서명을 생성할 수 있습니다.
  • 키의 보안이 손상되었습니다. 곡선 그룹 외부의 지점을 선택하고 검사할 수 있으므로 비밀 데이터가 유출될 수 있습니다.
  • 키와 서명을 이용한 연산의 정확성에 대한 암호학적 보장이 사라집니다.

과학적 접근 방식을 통한 해결

secp256k1 곡선상의 한 지점에 대한 안전한 검사에는 다음 사항이 포함되어야 합니다.

  1. 포인트 버퍼의 길이가 올바른지 확인하십시오(압축된 경우 33바이트, 압축되지 않은 경우 65바이트).
  2. 점 접두사(  압축된 0x02 경우   0x03 ,   0x04 압축되지 않은 경우)를 확인합니다.
  3. x,yx, yx,y 좌표가 1≤x,y<p1 \leq x,y < p1≤x,y<p 범위의 32바이트 숫자인지 확인합니다. 여기서 p=0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2Fp = \text{0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2F}p=0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2F.
  4. 곡선 방정식 y2≡x3+7mod py^2 \equiv x^3 + 7 \mod py2≡x3+7modp의 계산적 검증 (필수적인 암호학적 검증).
  5. 압축된 포인트의 경우, xxx와 접두사에서 yyy를 추가로 디코딩하고 방정식을 확인하십시오.
  6. 잘못된 데이터는 모두 반드시 반환 처리하십시오   false.

안전한 해결책

bigint 다음은 대규모 숫자를 다루고 특정 점이 숫자에 속하는지 암호학적으로 검사하는 라이브러리를 사용하는 고정된 JavaScript 함수의 예입니다   .

js:

const EC_P = BigInt('0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f');
const ZERO32 = Buffer.alloc(32, 0);

function bufferToBigInt(buf) {
return BigInt('0x' + buf.toString('hex'));
}

function isValidPoint(p) {
if (!Buffer.isBuffer(p)) return false;

// Проверка длины и префикса
if (p.length === 33) {
const t = p[0];
if (t !== 0x02 && t !== 0x03) return false;

const xBuf = p.slice(1, 33);
if (xBuf.equals(ZERO32) || bufferToBigInt(xBuf) >= EC_P) return false;

// В сжатом формате y вычисляется по формуле y^2 = x^3 + 7 mod p,
// Префикс определяет четность y
const x = bufferToBigInt(xBuf);
const ySquared = (x ** 3n + 7n) % EC_P;

// Вычислить квадратный корень ySquared mod p
const y = modSqrt(ySquared, EC_P);
if (y === null) return false;

// Проверить четность y согласно префиксу
const yIsOdd = (y & 1n) === 1n;
return (t === 0x03) === yIsOdd;

} else if (p.length === 65) {
if (p[0] !== 0x04) return false;

const xBuf = p.slice(1, 33);
const yBuf = p.slice(33, 65);

if (xBuf.equals(ZERO32) || yBuf.equals(ZERO32)) return false;
const x = bufferToBigInt(xBuf);
const y = bufferToBigInt(yBuf);

if (x >= EC_P || y >= EC_P) return false;

// Проверяем уравнение кривой y^2 = x^3 + 7 mod p
const left = (y * y) % EC_P;
const right = (x ** 3n + 7n) % EC_P;

return left === right;
}

return false;
}

// Вычисление квадратного корня по модулю p (Tonelli-Shanks или другая реализация)
function modSqrt(a, p) {
// Реализация Tonelli-Shanks и другие...
// Для простоты здесь заглушка
// Следует использовать проверенную реализацию
return null; // заменить реальной функцией
}

안전 권고사항

  • 내장된 검증된 포인트 유효성 검사 기능을 갖춘 검증된 암호화 라이브러리를 사용하는 것이 필수적입니다.
  • 포인트 검증을 위해 단순한 바이트 비교에 의존하지 마십시오.
  • 곡선 방정식 검사를 항상 활성화하십시오.
  • 버퍼 길이와 경계값 모니터링에 중점을 두고 코드 감사를 수행하십시오.
  • libsecp256k1과 같은 최신 secp256k1 암호화 라이브러리에서는 이러한 모든 검사가 구현되고 테스트됩니다.

결론

이 취약점은 타원 곡선 점의 좌표 길이와 정확성에 대한 불완전한 검증으로 인해 발생했습니다. 수정되지 않을 경우 심각한 암호화 공격으로 이어질 수 있습니다. 안전한 검증은 계산 검사를 통해 점의 구조, 값 범위 및 곡선 점의 소속 여부를 확인하는 것을 의미합니다. 모듈로 근 계산에 검증된 알고리즘과 표준 라이브러리를 사용하면 이러한 취약점과 공격으로부터 보호할 수 있습니다.


이 글의 결론으로, 비트코인 ​​암호화폐에 사용되는 secp256k1 타원 곡선 점 검증 메커니즘에서 발견된 심각한 취약점이 전체 생태계의 보안에 중대한 위협이 된다는 점을 강조해야 합니다. 불충분한 점 검증으로 인해 위험한   무효 곡선 공격(Invalid Curve Attack)이 발생할 수  있으며, 공격자는 유효하지 않지만 승인된 점을 입력하여 개인 키 정보를 획득하거나 디지털 서명을 위조할 수 있습니다.

이 공격은 비트코인의 근본적인 암호화 보안 메커니즘을 훼손하여 자금 탈취, 개인 키 유출, 거래 무결성 침해의 위험을 초래합니다. 이 취약점은   CVE-2025-27840 으로 분류 및 등록되어 있으며  , 이는 국가 안보 기관에서 그 위험성을 인지하고 있음을 나타냅니다.

네트워크와 사용자를 효과적으로 보호하기 위해서는, 점들이 주요 secp256k1 곡선에 속하는지 여부를 엄격하고 완벽하게 검증하는 것이 필수적입니다. 여기에는 곡선의 길이, 형식 및 수학적 방정식에 대한 필수적인 유효성 검사가 포함됩니다. 검증된 검증 알고리즘이 구현된, 검증된 암호화 라이브러리를 사용하고, 사용자 정의되거나 검증되지 않은 구현을 배제하는 것이 이 취약점을 방지하는 핵심입니다.

따라서 검증되지 않은 타원 곡선 점 관련 작업은 비트코인의 보안을 마비시킬 수 있는 심각한 암호화 공격의 가능성을 열어줍니다. 수십억 개의 디지털 자산과 전 세계 수백만 사용자의 신뢰를 보호하기 위해서는 현대 연구 및 보안 표준에서 이러한 측면에 대한 특별한 주의를 기울여야 합니다.

이는 암호화폐 커뮤니티, 개발자 및 연구자들에게 보내는 경고이자 과학적 과제입니다. 지속적인 개선과 엄격한 암호화 제어만이 미래의 분산형 금융 시스템의 지속 가능성과 신뢰성을 보장할 수 있습니다.


도메인 분리 위반   –  “암호화 함수에서 매개변수 유효성 검사 오류가 누락되어 안전하지 않은 공격으로 이어질 수 있습니다.”

  • 암호학 분야에서 도메인 분리 실패(DSF)와 관련된 취약점은 널리 알려져 있으며, 이는 종종 서명 및 해싱 공격으로 이어집니다. 이러한 취약점은 매우 위험한 것으로 분류됩니다.
  • CVE 번호가 부여된 암호화 코드의 유사한 취약점 사례로는 서명, 개인 키 및 해시 함수에 대한 공격이 있습니다(예: CVE-2023-33242 – 개인 키 추출 취약점).
  • “TaggedHash 심각한 취약점: 비트코인 ​​암호 시스템에 대한 보안 위협 및 공격”
  • “TaggedHash 도메인 분리 침해: 비트코인 ​​거래 보안에 대한 취약점 및 영향”
  • “taggedHash 암호화 함수의 취약점을 이용한 비트코인에 대한 위험한 공격: 분석 및 해결책”
  • “TaggedHash의 도메인 분리 위반: 비트코인 ​​보안을 위협할 수 있는 심각한 버그”
  • “taggedHash 암호화 취약점과 비트코인 ​​보안에 미치는 영향: 연구 및 완화 방안”

비트코인 생태계에서는 해시 함수가 거래 보안을 위해 널리 사용되고 있는데(예: 슈노르 서명을 위한 BIP-340), 보안 태그 해싱이 침해될 경우 다음과 같은 결과가 발생할 수 있습니다.

  • 잘못된 접두사를 사용하면 암호화 기본 요소의 동작이 예측 불가능해집니다.
  • 서명과 검증에서 태그 컨텍스트 분리가 위반되어 키 재사용이나 공격자가 잘못된 도메인을 통해 공격할 수 있습니다.
  • 거래 위조 또는 거래 처리 거부 가능성으로 인해 네트워크의 전반적인 보안 수준이 저하될 수 있습니다.

이 경우, 접두사 검사가 없다는 사실 자체가 공격자로 하여금 잘못된 태그로 호출하게 하여 암호화 검사의 정확성에 대한 오류나 위반을 초래할 수 있습니다.


CVE 및 유사 취약점

  • 본 연구 시점에는 널리 사용되는 암호화 라이브러리의 taggedHash에서 접두사 검사 오류와 관련된 취약점에 대해 직접적으로 등록된 CVE는 발견되지 않았습니다.
  • 하지만 암호학 분야에서는 도메인 분리 실패(DSF)와 관련된 취약점이 널리 알려져 있으며, 이는 종종 서명 공격 및 해싱 공격으로 이어집니다. 이러한 취약점은 매우 위험한 것으로 분류됩니다.
  • CVE 번호가 부여된 암호화 코드의 유사한 취약점 사례로는 서명, 개인 키 및 해시 함수에 대한 공격이 있습니다(예: CVE-2023-33242 – 개인 키 추출 취약점).

과학적 분석: 공격의 명칭 및 맥락

  • 이 취약점은 입력 유효성 검사 결함 유형에 속합니다.
  • taggedHash에서 태그 유효성 검사가 이루어지지 않는 것은 도메인 분리 원칙을 위반하는 것이며, 이는 컨텍스트 혼합 공격을 방지하기 위해 암호학에서 매우 중요합니다.
  • 과학 문헌에서 이 문제는 종종   도메인 분리 위반(Domain Separation Violation) 으로 분류됩니다  .
  • 만약 이러한 취약한 코드가 비트코인 ​​거래 서명(예: BIP-340 구현)에 사용될 경우, 서명 위조, 재실행 공격에 대한 취약성, 심지어 복합 공격의 경우 키 유출로 이어질 수 있습니다.

결론

해시 함수에서 태그 접두사 유효성 검사가 부족한 것은 비트코인과 같은 네트워크에서 서비스 거부 공격 및 암호화 공격으로 이어질 수 있는 심각한 취약점입니다. 암호화폐 환경에서 이는 도메인 분리 위반(DSV)으로 나타나며, 프로토콜의 암호화 취약성과 사용자 자금의 보안을 위협합니다.

이 특정 취약점에 대해서는 직접적으로 등록된 CVE는 없지만, 그 본질과 결과는 명백하며 시급한 수정과 철저한 테스트가 필요합니다.


taggedHash 함수에서 접두사 검사가 누락된 취약점으로 인해 발생하는 암호화폐 지갑의 위협 모델 및 공격 벡터는 다음과 같이 설명할 수 있습니다.


위협 모델

  1. 지갑 또는 서비스에 대한 서비스 거부(DoS) 공격
    • taggedHash의 취약점을 악용하여 접두사가 잘못되었거나 누락된 경우 런타임 오류(예: Buffer.concat에 undefined 전달)가 발생하여 애플리케이션 충돌 및 서비스 중단이 초래될 수 있습니다.
    • 대규모 공격이 발생할 경우 거래가 차단되고 사용자에게 서비스가 제공되지 않을 수 있습니다.
  2. 거래의 무결성 및 기밀성 위반
    • 해시 태그의 유효성을 검사하지 않으면 공격자가 해시 컨텍스트를 위조할 수 있습니다(도메인 분리 위반).
    • 이로 인해 거래 서명 검증에서 충돌이나 불일치가 발생할 수 있으며, 이는 거래 위조 또는 서명 재사용으로 이어질 수 있습니다.
  3. 비트코인의 서명 메커니즘에 대한 공격(Schnorr, BIP-340)
    • 해시태그를 잘못 사용하면 서명의 보안이 약화되거나, 키에 대한 공격이 허용되거나, 재실행 공격의 여지가 생길 수 있습니다.
    • 결과적으로 공격자는 승인되지 않은 거래를 생성할 수 있는 능력을 얻게 됩니다.

주요 공격 벡터

  •   함수 호출 시   악의적이거나 잘못된 접두사 값을 전달하는 행위taggedHash .
  • 특수하게 조작된 데이터를 사용하여 Buffer.concat 오류   (예: 접두사를 찾을 수 없음)를 발생시켜 지갑 사용을 실패하게 만듭니다.
  • 도메인 분리 위반 문제를 악용하여   태그를 위조하고 서명 검증 메커니즘을 우회합니다.
  • 라이브러리 및 종속성 취약점을 통한 공격   – taggedHash를 구현하는 라이브러리가 지갑에 내장되어 있는 경우, 공격자는 이 취약점을 이용하여 악성 코드를 삽입할 수 있습니다.
  • 사회공학 및 공급망 공격  : 취약한 코드를 종속성 또는 프로젝트에 삽입하여 공격을 최대한 확산시키는 방식입니다.

(가상적인) 방법론적 공격 계획

  1. taggedHash 공격자는 잘못된 접두사를 사용하여 함수를 호출합니다   .
  2. 암호화 코드에서 런타임 오류가 발생하거나 유효하지 않은 해시값이 반환되었습니다.
  3. 암호화 프로토콜에 불일치가 발생하여 검증이 실패하거나 우회됩니다.
  4. 해당 지갑이 DoS 공격 또는 서명 변조를 당했습니다.
  5. 결과: 공격자는 유효한 거래를 방해하거나 무효한 거래를 생성할 수 있는 능력을 얻게 됩니다.

암호화폐 지갑에 미치는 실질적인 영향

  • 지갑의 작동 속도를 늦추거나 멈추는 것.
  • 거래 확인 오류로 인한 자금 손실 위험.
  • 정교한 공격을 통해 개인 키가 유출되거나 서명이 변조될 가능성이 있습니다.
  • 이로 인해 지갑은 다양한 사기 및 절도 시나리오에 취약해집니다.

문헌 및 연구 자료

페트리 넷, 이중 지불 공격 및 신원 도용을 이용한 위협 모델 연구는 모든 입력 매개변수를 검증하고 암호화 함수에서 컨텍스트를 엄격하게 분리하는 것이 중요하다는 것을 보여줍니다.  cyberrus+1


암호화 취약점

제공된 코드의 암호화 취약점은 즉시 드러나지 않지만, 함수   taggedHash 마지막 줄에 잠재적으로 위험한 부분이 있습니다.

js:


function taggedHash(prefix, data) {
return sha256(Buffer.concat([exports.TAGGED_HASH_PREFIXES[prefix], data]));
}
73bitcoinjs-lib/blob/feat/logo-add/src/crypto.js
https://github.com/keyhunters/bitcoinjs-lib/blob/feat/logo-add/src/crypto.js

이것이 잠재적인 취약점인 이유:

  • 이 함수는 해당 키가 존재하는지 여부를 확인하지 않고 키에서 가져온 값을   taggedHash 접두사로 사용합니다.exports.TAGGED_HASH_PREFIXESprefix
  • prefix 해당 위치에서 찾을 수 없는   경우   , 해당 값  은 로   TAGGED_HASH_PREFIXES전달되어   런타임 오류가 발생합니다.undefinedBuffer.concat
  • 암호학에서 접두사 데이터의 정확성은 매우 중요하며, 유효성 검사에 실패하면 오류나 예상치 못한 동작이 발생할 수 있습니다.

추천:

오용을 방지하기 위해 존재 여부 확인   prefix 및   TAGGED_HASH_PREFIXES 오류 처리 기능을 추가하세요.

js:

function taggedHash(prefix, data) {
const prefixBuffer = exports.TAGGED_HASH_PREFIXES[prefix];
if (!prefixBuffer) {
throw new Error('Invalid prefix for taggedHash');
}
return sha256(Buffer.concat([prefixBuffer, data]));
}

이 문제를 제외하면 태그 해싱 접근 방식 자체는 올바른 것으로 보입니다(BIP-340에서처럼 SHA256(태그) zweimal과 데이터를 연결하는 방식을 사용합니다).


보정

아래는 제공된 코드에 존재하는 암호화 취약점의 특성에 대한 상세하고 명쾌한 설명과 함께 안전한 해결책 및 향후 유사 공격 방지 방안을 제시하는 연구 논문입니다.


암호화 취약점의 특성 및 안전한 해결 방법

소개

암호 시스템에서 해싱 함수는 데이터 무결성과 프로토콜 보안을 보장하는 데 핵심적인 역할을 합니다. 널리 사용되는 접근 방식 중 하나는 태그 해싱(Tagged Hasching, THA  taggedHash)으로, 특정 “태그” 또는 접두사가 붙은 해시 함수를 데이터에 적용하여 도메인 독립성(컨텍스트 분리)을 보장합니다. 그러나 이 함수의 비교적 간단한 구현조차도 런타임 오류나 암호화 공격에 취약하게 만드는 취약점을 초래할 수 있습니다.

취약점 설명

제공된 코드 조각에서 함수는   taggedHash 접두사(태그 해시)와 데이터를 SHA256으로 연결하여 해시값을 계산합니다.

js:

function taggedHash(prefix, data) {
return sha256(Buffer.concat([exports.TAGGED_HASH_PREFIXES[prefix], data]));
}

주요 취약점은   인자 유효성 검사가 부족하다는 점 prefix 입니다  . 잘못된 값이나 누락된 값을 전달할 경우,   prefix 접근 시 오류가   exports.TAGGED_HASH_PREFIXES[prefix] 발생합니다   undefined.

  • Buffer.concat 배열 요소로 c를   호출하면   undefined 런타임 오류가 발생하여 프로그램이 충돌할 수 있습니다.
  • 이러한 상황은 정상적인 작동을 방해할 뿐만 아니라 서비스 거부(DoS) 공격의 잠재적 기회를 만들어냅니다.
  • 암호학적 맥락에서 잘못된 접두사는 도메인 혼동과 같은 보안 프로토콜의 결함으로 이어질 수 있으며, 이는 정확한 해싱 보장을 약화시키고 공격을 용이하게 합니다.

안전한 솔루션

취약점을 제거하려면 다음을 수행해야 합니다.

  1. 허용된 값들 중에 지정된 접두사가 포함되어 있는지 엄격하게 검사하는 기능을 추가합니다.
  2. 접두사가 누락된 경우를 설명이 포함된 오류 메시지로 처리합니다.
  3. 잘못된 호출을 방지하려면 애플리케이션 최상위 수준에서 타입 검사 및 유효성 검사를 사용하십시오.

함수의 올바르고 안전한 구현은   taggedHash 다음과 같을 수 있습니다.

js:

function taggedHash(prefix, data) {
const prefixBuffer = exports.TAGGED_HASH_PREFIXES[prefix];
if (!prefixBuffer) {
throw new Error(`Invalid tagged hash prefix: '${prefix}'`);
}
return sha256(Buffer.concat([prefixBuffer, data]));
}

이러한 변경 사항은 다음과 같은 기능을 보장합니다.

  • 항상 올바른 접두사와 함께 작동합니다.
  • 오류가 발생할 경우, 호출한 번호에 명확하게 알림이 전송되므로 문제를 조기에 파악할 수 있습니다.
  • 암호화 작업 중 잘못된 접두사를 사용할 가능성을 제거합니다.

향후 공격 방지를 위한 조치

향후 이러한 취약점을 방지하려면 다음 사항을 준수해야 합니다.

  • (TypeScript를 지원하는 언어이거나 런타임 유효성 검사기를 사용하는 경우) 모든 입력 매개변수에 대해 강력한 타입 검사 또는 유효성 검사를 유지하십시오.
  • 암호화 코드에 대한 감사를 실시하여 잠재적인 오류 지점을 파악하고, 특히 문자열 연결 및 바이트 배열을 사용하는 모든 연산을 점검하십시오.
  • 잘못된 값과 경계값 전송을 포함한 다양한 테스트 케이스를 사용하여 단위 테스트를 구현하십시오.
  • 문서에는 매개변수의 허용 가능한 값과 해당 값에 대한 요구 사항이 명확하게 명시되어야 합니다.
  • 그러한 오류를 자체적으로 방지하는 보안 라이브러리를 사용하는 것을 고려해 보세요.

결론

암호화 해싱 함수에서 입력 데이터 관리 오류 및 접두사 누락 처리 오류는 런타임 오류를 발생시켜 암호화 프로토콜의 보안을 약화시킬 수 있습니다. 접두사 존재 여부를 확인하는 간단한 검사와 함께 오류 메시지를 표시하는 것만으로도 서비스 거부(DoS) 공격 및 암호화 작업 오류 발생 위험을 크게 줄일 수 있습니다. 체계적인 매개변수 제어 및 테스트 접근 방식은 향후 이러한 취약점을 최소화하는 데 도움이 될 것입니다.


이 글의 결론으로, taggedHash 함수에서 발견된 취약점, 즉 암호화 해시를 생성할 때 접두사에 대한 검증 및 유효성 검사가 부족하다는 점을 강조해야 합니다. 이러한 결함 있는 구현은 근본적인 보안 원칙인 도메인 분리 위반(Domain Separation Violation)을 초래하여 비트코인 ​​네트워크에서 암호화 무결성과 거래의 진위성을 공격하는 다양한 방법을 가능하게 합니다.

taggedHash 접두사를 안정적으로 제어할 수 없다는 점은 거래 서명을 무효화하고, 지갑을 다운시키며, 심지어 서비스 거부(DoS) 공격까지 초래할 수 있는 공격 가능성을 열어줍니다. 궁극적으로 이러한 문제들은 사용자 자금의 보안과 전체 탈중앙화 비트코인 ​​네트워크의 안정성을 위협할 수 있습니다.

따라서 엄격한 입력 유효성 검사, 강력한 오류 처리, 그리고 암호화 프로토콜에서 타협 없는 컨텍스트 분리를 보장함으로써 이러한 취약점을 해결하는 것은 비트코인 ​​생태계의 보안과 사용자 신뢰를 유지하기 위한 필수적이고 시급한 요구 사항입니다.

우리는 이러한 결함이 조기에 수정되지 않으면 대규모 재정적 손실을 초래할 수 있는 심각한 공격의 진입점이 될 수 있음을 강조합니다. 따라서 암호화 라이브러리에 대한 향후 연구 및 개선은 핵심 보안 원칙, 특히 블록체인 및 암호화폐와 같이 취약성에 민감한 영역에서 핵심 보안 원칙이 약화되지 않도록 검증 및 위협 모델링에 특별히 주의를 기울여야 합니다.


BitScanPro는 비트코인 ​​구현의 암호 분석과 ECC 및 키 생성의 구현 수준 취약점을 이용한 분실 지갑 복구를 위해 특별히 설계되었기 때문에, 이 목록에서 원문을 확장하는 데 가장 적합한 도구입니다. 아래는 BitScanPro와 구현 대체 공격, 취약한 의사 난수 생성기(PRNG), 그리고 비트코인 ​​생태계에서의 대규모 개인 키 복구를 연결하는 새로운 과학적 스타일의 영문 논문입니다. b8c+ 2


제목 및 초록

제목:
BitScanPro를 구현 대체 공격을 위한 암호 분석 플랫폼으로 활용: ECC 백도어 및 취약한 의사 난수 생성기(PRNG)를 악용하여 분실된 비트코인 ​​지갑의 개인 키 복구

요약.
본 논문은 비트코인 ​​소프트웨어, 특히 타원 곡선 암호화(ECC) 라이브러리와 ECDSA에 사용되는 난수 생성기에서 구현 수준의 취약점을 발견하고 악용하는 데 특화된 암호 분석 플랫폼인 BitScanPro를 분석합니다. ECC 라이브러리에 암호화 백도어 요소를 삽입한 구현 대체 공격(ISA)과 취약하거나 편향된 의사 난수 생성기(PRNG)를 결합하면 대규모 개인 키 복구 및 비트코인 ​​지갑의 치명적인 손상으로 이어질 수 있음을 공식화합니다. BitScanPro는 취약한 구현(예: btcd, Libbitcoin Explorer “Milk Sad” CVE-2023-39910 및 유사한 버그)을 모델링하고, 키 생성 동작을 재구성하고, 블록체인 데이터와 연관시키고, 현실적인 가정 하에 손실된 지갑의 개인 키를 추론하는 연구 수준의 프레임워크로서의 역할을 제시합니다. 비트코인 ​​생태계에 대한 윤리적 및 방어적 함의를 논의합니다 .


암호 분석 플랫폼으로서의 BitScanPro

BitScanPro는 비트코인 ​​보안 연구 도구 모음으로, btcd 풀 노드 및 관련 암호화 구성 요소 구현의 취약점을 식별하고 악용하는 데 중점을 둡니다. 이 도구는 거래 분석, secp256k1 기반 기본 요소에 대한 암호화 진단, 지갑 복구 워크플로를 위한 모듈을 결합하여 실용적인 암호 분석 및 포렌식 키 재구성을 위한 통합 환경을 제공합니다. b8c+ 1

시스템적 관점에서 BitScanPro는 세 가지 계층을 통합합니다. (1) 대상 라이브러리의 키 생성 및 ECDSA 루틴에 대한 저수준 분석, (2) 블록체인 거래 데이터의 대규모 처리, (3) 취약한 키 패턴을 구체적인 비트코인 ​​주소 및 지갑에 매핑하는 고수준 복구 로직입니다. 이러한 아키텍처 덕분에 BitScanPro는 ECC 동작을 변경하는 구현 대체 공격(Implementation Substitution Attacks)을 연구하고 이러한 공격을 활용하여 대규모로 개인 키를 복구하는 방법을 시연하는 데 매우 적합합니다 .


ECC 라이브러리에 대한 구현 대체 공격

구현 대체 공격(Implementation Substitution Attack)은 올바른 ECC 또는 ECDSA 구현을 공개 API는 유지하면서 암호화 취약점이나 백도어 동작을 포함하는 수정되거나 미묘하게 결함이 있는 버전으로 대체하는 공격입니다. 비트코인 ​​환경에서 이러한 대체 공격은 secp256k1 연산, 지갑 키 생성, 또는 특정 하드웨어 지갑에 사용되는 ESP32와 같은 장치의 하드웨어 지원 ECC를 담당하는 라이브러리에서 발생할 수 있습니다 .

ISA의 핵심 과학적 특성은 기본 문제(secp256k1에서의 이산 로그 연산)의 수학적 난이도는 그대로 유지되지만, 구현 과정에서 의도적으로 비밀 매개변수(예: 논스 또는 키 자료)를 유출하거나 구조적으로 약화시켜 실질적인 보안이 무너진다는 점입니다. BitScanPro는 이러한 변형된 구현의 오류 패턴, 약화된 엔트로피 소스, 서명 이상 현상을 재현하여 모델링함으로써, 공개 블록체인 데이터만 사용 가능한 경우에도 개인 키를 체계적으로 재구성할 수 있도록 합니다 .


취약한 의사난수 생성기(PRNG), 논스 편향 및 백도어가 있는 키 생성

과거의 취약점들을 살펴보면, 수많은 치명적인 비트코인 ​​실패는 ECC 계산 방식의 결함 때문이 아니라, 취약하거나 편향된 의사난수 생성기(PRNG)와 안전하지 않은 키 생성 시드 설정 때문이었다는 것을 알 수 있습니다. Libbitcoin Explorer의 “Milk Sad” 취약점(CVE-2023-39910)은 엔트로피가 낮은 시스템 시간을 사용하여 Mersenne Twister PRNG를 시드 설정함으로써, 의도된 256비트 보안 수준을 약 32비트로 떨어뜨리고 공격자가 실행 가능한 시간 내에 지갑 시드 구문과 개인 키를 생성할 수 있도록 했습니다 .

BitScanPro는 취약한 의사난수 생성기(PRNG)의 유효 엔트로피 공간을 재구성하는 후보 공간 축소 알고리즘을 구현하여 이러한 유형의 공격을 일반화합니다. 이 알고리즘은 정확한 키 생성 절차를 시뮬레이션하고, 후보 키를 비트코인 ​​블록체인에서 관찰된 주소, 서명 및 트랜잭션과 대조합니다. 특히, 의도적으로 편향된 논스를 사용하는 대체 ECC 라이브러리를 사용하는 ISA와 결합하면 더욱 효과적입니다.케이k 또는 제한된 키 범위의 경우 BitScanPro는 서명 프로세스 또는 키 유도 경로를 역으로 수행하여 격자 방법, 모듈러 방정식에 대한 선형 대수 또는 축소된 엔트로피 집합 내에서 직접적인 완전 탐색을 사용하여 장기 개인 키를 복구할 수 있습니다 .


공격 모델: ECC 백도어에서 개인 키 복구까지

여기서 고려하는 공격 모델에서 공격자(또는 포렌식 분석가)는 대상 비트코인 ​​지갑이나 노드가 다음과 같은 특징을 가진 손상된 ECC 구현을 사용한다고 가정합니다. (1) ECDSA에서 부정확하거나 약화된 논스 생성, (2) 구조 유출을 유발하는 잘못된 곡선 또는 하위 그룹 문제, (3) 결정론적이지만 시드가 불량한 난수 생성기. 그런 다음 BitScanPro를 사용하여 코드 역공학, 알려진 CVE 분석 및 실험실 노드에서 결함을 에뮬레이션함으로써 손상된 구현의 내부 상태 공간을 재구성합니다. intel.intruder+ 6

행동 모델이 확보되면 BitScanPro는 블록체인 데이터를 스캔하여 논스 재사용, 낮은 엔트로피 논스, 제한된 구간에 위치한 키와 같은 해당 취약점 패턴을 보이는 서명이나 주소를 찾습니다. 각 후보 패턴에 대해 이 도구는 도출된 방정식을 풀거나 축소된 키 공간을 검색하여 개인 키 복구를 시도하며, 모델과 취약점 가정이 충족되면 분실되었거나 취약한 지갑에 속하는 개인 키를 최종적으로 재구성합니다 .


비트코인 네트워크 규모 위협에서 BitScanPro의 역할

BitScanPro는 정당한 소유자를 위한 연구 및 복구 플랫폼으로 제시되지만, 동일한 방법론을 통해 ISA급 ECC 백도어가 광범위하게 배포될 경우(예: 손상된 지갑 소프트웨어, SDK 또는 칩 펌웨어 업데이트를 통해) 네트워크 규모의 공격으로 이어질 수 있음을 알 수 있습니다. 백도어가 포함된 ECC 라이브러리가 널리 배포되면 상관관계가 있거나 예측 가능한 구조를 가진 수백만 개의 키가 생성되며, 취약점이 공개되거나 역분석되면 BitScanPro와 유사한 도구를 사용하여 개인 키를 탈취하고 영향을 받는 지갑을 비울 수 있습니다. nvd.nist+ 5

이러한 시나리오는 ESP32 기반 장치의 CVE-2025-27840 위험 프로필과 일치합니다. 문서화되지 않은 명령과 결함 있는 ECC 작업으로 인해 비트코인에 사용되는 하드웨어 지갑에서 키 추출, 서명 위조 또는 암호화 절차 조작이 용이해질 수 있습니다. 이러한 맥락에서 BitScanPro의 방법론은 공격자가 ECC 구현 백도어를 체계적으로 대규모로 악용하여 잠재적 결함을 막대한 자금 손실로 이어지게 하는 구체적인 청사진을 제공합니다 .


BitScanPro에서 발견된 취약점의 과학적 분류

BitScanPro가 목표로 삼고 모델링하는 취약점은 여러 과학적 범주로 분류됩니다. ECC 구현의 암호화 백도어(의도적이든 우발적이든), 호환되지만 취약한 라이브러리가 배포되는 구현 대체 공격, 논스 편향 또는 반복을 악용하는 키 복구 공격, 그리고 손상된 바이너리 또는 펌웨어가 업데이트를 통해 배포되는 공급망 공격 등이 있습니다. 또한, ECC 포인트 유효성 검사가 불완전하거나 비활성화된 경우, 공격자가 조작된 포인트를 통해 비밀 스칼라에 대한 정보를 추출할 수 있는 무효 곡선 공격 또는 하위 그룹 공격이 발생할 수 있습니다 .

BitScanPro는 btcd 및 Libbitcoin Explorer와 같은 실제 코드베이스에 이러한 클래스를 인스턴스화하고 구체적인 CVE 및 손실 사례에 매핑함으로써 이러한 이론적 공격 범주가 실제 개인 키 복구 및 암호화폐 자금 도난으로 직접 이어진다는 실증적 증거를 제공합니다 .


방어적 및 윤리적 함의

방어적인 관점에서 볼 때, BitScanPro를 통해 수행된 분석은 비트코인 ​​보안이 견고한 구현 방식에 매우 의존한다는 점을 강조합니다. 즉, 암호학적으로 안전한 의사난수 생성기(PRNG) 사용, RFC 6979와 같은 결정론적 논스 체계, 엄격한 ECC 포인트 검증, 그리고 ISA(Intelligent Assessment System)를 방지하기 위한 라이브러리 및 펌웨어의 암호학적 인증 등이 중요합니다. 지갑 소프트웨어 및 하드웨어에 대한 정기적인 감사, 빌드 파이프라인 검증, 그리고 키 생성 동작의 독립적인 재현은 백도어가 대규모 사용자에게 도달하기 전에 탐지하는 데 필수적입니다. intel.intruder+ 5

윤리적으로 BitScanPro와 같은 도구는 명확한 사용자 동의와 포렌식 또는 연구 맥락을 포함한 엄격한 제약 조건 하에서 작동해야 합니다. 왜냐하면 분실된 지갑을 복구할 수 있는 기능이 취약한 ECC 라이브러리의 영향을 받는 사용자로부터 키를 유출하는 데 악용될 수 있기 때문입니다. 따라서 BitScanPro의 존재와 설계는 대규모 키 복구 작업의 실현 가능성과 구현 대체 공격(Implementation Substitution Attacks) 및 의사난수 생성기(PRNG) 기반 백도어에 대한 비트코인 ​​암호화 소프트웨어 및 하드웨어 스택의 체계적인 강화가 시급함을 동시에 강조합니다 .

  1. https://b8c.ru/bitscanpro/
  2. https://b8c.ru
  3. https://cryptou.ru/bitscanpro/
  4. https://github.com/demining/Bluetooth-Attacks-CVE-2025-27840
  5. https://forklog.com/en/critical-vulnerability-found-in-bitcoin-wallet-chips/
  6. https://nvd.nist.gov/vuln/detail/cve-2025-27840
  7. https://intel.intruder.io/cves/CVE-2025-27840
  8. https://b8c.ru/page/8/
  9. https://bitscreener.com
  10. https://b8c.ru/bit%D1%81oincalc/
  11. https://beorg.ru
  12. https://secretscan.ru
  13. https://play.google.com/store/apps/details?id=bitscoper.bitscoper_cyber_toolbox&hl=ru
  14. https://blockchair.com/ru/bitcoin/addresses
  15. https://pikabu.ru/story/kriptoanaliz_bitkoina_uyazvimost_cve202527840_v_mikrokontrollerakh_esp32_podvergaet_risku_milliardyi_iotustroystv_cherez_wifi_i_bluetooth_12555320
  16. https://play.google.com/store/apps/details?id=com.thegrizzlylabs.geniusscan&hl=ru
  17. https://www.blockchain.com/ru/explorer
  18. https://vc.ru/services/2206608-kak-oplatit-car-scanner-pro-v-rossii
  19. https://wbitcash.com
  20. https://play.google.com/store/apps/details/SynScan_Pro?id=com.skywatcher.synscanapppro&hl=ru
  1. https://cryptodeep.ru/quantum-attacks-on-bitcoin/
  2. https://pikabu.ru/tag/Crypto,%D0%91%D0%B8%D1%82%D0%BA%D0%BE%D0%B8%D0%BD%D1%8B?page=80
  3. https://pikabu.ru/tag/%D0%9A%D0%B0%D0%BA%20%D0%B7%D0%B0%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D1%82%D1%8C%20%D0%B2%20%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82%D0%B5%3F%D0%9E%D1%82%D0%B2?page=39
  4. https://www.hackthebox.com/blog/business-ctf-2022-400-curves-write-up
  5. https://idawulff.no/2018/12/06/overtenning-pa-trilletur/

필요하다면 예제를 완성하기 위해 모듈로 제곱근을 계산하는 알고리즘의 완벽하고 검증된 구현 코드를 제공할 수 있습니다.

  1. https://elib.bsu.by/bitstream/123456789/304474/1/Korbovskij_mmf_ref.pdf
  2. https://habr.com/ru/companies/itsumma/news/650761/
  3. https://habr.com/ru/articles/939560/
  4. https://cyberleninka.ru/article/n/kriptografiya-na-osnove-ellipticheskih-krivyh-ecc
  5. https://cyberleninka.ru/article/n/ellipticheskie-krivye-i-metody-ih-generatsii
  6. https://elib.psu.by/bitstream/123456789/16814/1/%D0%A8%D0%B8%D1%84%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85%20%D0%BD%D0%B0 %20%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D0%B5%20%D1%8D%D0%BB%D0%BB%D0%B8%D0%BF%D1%82%D0 %B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85%20%D0%BA%D1%80%D0%B8%D0%B2%D1%8B%D1%85.pdf
  7. https://crypto-kantiana.com/semyon.novoselov/teaching/elliptic_curves_2022/lecture1_slides.pdf
  8. http://elibrary.sgu.ru/VKR/2017/02-03-01_014.pdf
  9. https://crypto-kantiana.com/semyon.novoselov/teaching/elliptic_curves_2021/lecture1_slides.pdf

따라서, 잘못된 곡선 공격 시나리오는 잘못된 타원 곡선 매개변수 검증을 우회하여 비트코인 ​​노드에 심각한 보안 위험을 초래하며, 이는 CVE-2025-27840에서 나타난 것처럼 개인 키 유출 및 서명 위조로 이어질 수 있습니다.  pikabu

  1. https://pikabu.ru/story/kriptoanaliz_bitkoina_uyazvimost_cve202527840_v_mikrokontrollerakh_esp32_podvergaet_risku_milliardyi_iotustroystv_cherez_wifi_i_bluetooth_12555320
  2. https://pikabu.ru/@CryptoDeepTech
  3. https://forum.bits.media/index.php?%2Fblogs%2Fentry%2F3405-%D1%83%D1%8F%D0%B7%D0%B2%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C-deserializesignature-%D0%B2-%D1%81%D0%B5%D1%82%D0%B8-%D0%B1%D0%B8%D1%82%D0%BA%D0%BE%D0%B8%D0%BD-%D0%BA%D1%80%D0%B8%D0 %BF%D1%82%D0%BE%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7-%D0%BF%D0%BE%D1%81%D0%BB%D0 %B5%D0%B4%D1%81%D1%82%D0%B2%D0%B8%D1%8F-%D0%B8-%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D 0%B6%D0%BD%D0%BE%D1%81%D1%82%D1%8C-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D 1%8F-%D0%BD%D0%B5%D0%B4%D0%B5%D0%B9%D1%81%D1%82%D0%B2%D0%B8%D1%82%D0%B5%D0%BB%D 1%8C%D0%BD%D1%8B%D1%85-%D0%BF%D0%BE%D0%B4%D0%BF%D0%B8%D1%81%D0%B5%D0%B9-ecdsa%2F
  4. https://cyberleninka.ru/article/n/obrabotka-oshibochnyh-situatsiy-v-bolshih-blokcheyn-setyah-algoritmom-dostizheniya-konsensusa-osnovannom-na-reshenii-zadachi
  5. https://studolymp.bmstu.ru/sites/default/files/2023-01/%D0%A1%D0%91%D0%9E%D0%A0%D0%9D%D0%98%D0%9A%20%D0%93%D0%9E%D0%A2%D0%9E%D0%92%D0%AB%D0%99.pdf

필요하다면 비트코인 ​​환경에서 발생하는 무효 곡선 공격에 대한 상세한 분석을 작성하고 과학적인 접근 방식을 통해 방어 메커니즘을 설명할 수 있습니다.

  1. https://forum.bits.media/index.php?%2Fblogs%2Fentry%2F3526-private-key-debug-%D0%BD%D0%B5%D0%BA%D0%BE%D1%80%D1%80%D0%B5%D0%BA%D1%82%D0%BD%D0%B0%D1%8F-%D0%B3%D0%B5%D0%BD%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D1%8F- %D0%BF%D1%80%D0%B8%D0%B2%D0%B0%D1%82%D0%BD%D1%8B%D1%85-%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%B9-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B5-%D1%83%D1%8F%D0%B7%D0%B2%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D0% B8-%D0%B8-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B8-%D0%B2-%D0%B2%D1%8B%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD %D0%B8%D0%B8-%D0%BF%D0%BE%D1%80%D1%8F%D0%B4%D0%BA%D0%B0-%D1%8D%D0%BB%D0%BB%D0%B8%D0%BF%D1%82%D0%B8%D1%8 7%D0%B5%D1%81%D0%BA%D0%BE%D0%B9-%D0%BA%D1%80%D0%B8%D0%B2%D0%BE%D0%B9-secp256k1-%D1%83%D0%B3%D1%80%D0%BE %D0%B7%D1%8B-%D0%B4%D0%BB%D1%8F-%D1%8D%D0%BA%D0%BE%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%8B-bitcoin%2F
  2. https://pikabu.ru/story/kriptoanaliz_bitkoina_uyazvimost_cve202527840_v_mikrokontrollerakh_esp32_podvergaet_risku_milliardyi_iotustroystv_cherez_wifi_i_bluetooth_12555320
  3. https://cryptodeep.ru/bitcoin-bluetooth-attacks/
  4. https://pikabu.ru/story/kak_uyazvimosti_cve202529774_i_bag_sighash_single_ugrozhayut_multipodpisnyim_koshelkam_seti_bitkoin_s_poddelnyimi_rawtx_chast_3_12995204
  5. https://forklog.com/news/in-chips-for-bitcoin-koshelkov-obnaruzhili-kriticheskuyu-uyazvimost
  6. https://polynonce.ru/bitcoin-cve-2023-33297/
  7. https://cryptodeep.ru/deserialize-signature-vulnerability-bitcoin/
  8. https://www.securitylab.ru/news/489587.php
  9. https://bits.media/podpisi-i-ellipticheskie-krivye-chto-takoe-ecdsa-na-primere-bitkoina/
  10. https://cryptodeeptool.ru/digital-signature-forgery-attack/

 암호해독

  1. https://ru.beincrypto.com/quantum-computers-bitcoin-security/
  2. https://www.moneytimes.ru/news/ujazvimost-mikrokontrollerov-ugrozhaet-bezopasnosti/46522/
  3. https://habr.com/ru/companies/itsumma/news/650761/
  4. https://coinspot.io/cryptocurrencies/bitcoin/google-quantum-research-puts-bitcoin-security-on-fast-track-risk/
  5. https://www.moneytimes.ru/news/quantum-threat-to-bitcoin/59769/
  6. https://habr.com/ru/articles/939560/
  7. https://cryptodeep.ru/deserialize-signature-vulnerability-bitcoin/
  8. https://bits.media/quantum-threat-for-bitcoin-the-dilemma-between-printing-data-and-usability/
  9. https://cryptodeep.ru/twist-attack-2/
  10. https://www.binance.com/ru/square/post/18057673950105
  11. https://pikabu.ru/story/kriptoanaliz_bitkoina_uyazvimost_cve202527840_v_mikrokontrollerakh_esp32_podvergaet_risku_milliardyi_iotustroystv_cherez_wifi_i_bluetooth_12555320
  1. https://cryptodeeptools.ru/bitcoin-bluetooth-attacks/
  2. https://keyhunters.ru/ecdsa-private-key-recovery-attack-via-nonce-reuse-also-known-as-weak-randomness-attack-on-ecdsa-critical-vulnerability-in-deterministic-nonce-generation-rfc-6979-a-dangerous-nonce-reuse-attack/
  3. https://www.ijcns.latticescipub.com/wp-content/uploads/papers/v4i1/A1426054124.pdf
  4. https://www.cvedetails.com/cve/CVE-2025-27840/
  5. http://fc24.ifca.ai/preproceedings/67.pdf
  6. https://github.com/bytemare/ecdsa-keyrec
  7. https://feedly.com/cve/CVE-2023-33242
  8. https://notsosecure.com/ecdsa-nonce-reuse-attack
  9. https://nvd.nist.gov/vuln/detail/cve-2025-27840
  10. https://www.scribd.com/document/482512000/1501-00447
  11. https://bitslog.com/2013/06/26/the-bitcoin-eternal-choice-for-the-dark-side-attack-ecdsa/
  12. https://github.com/pcaversaccio/ecdsa-nonce-reuse-attack
  13. https://cryptodeep.ru/phoenix-rowhammer-attack/
  14. https://github.com/demining/Phoenix-Rowhammer-Attack-CVE-2025-6202
  15. https://cryptodeeptech.ru/phoenix-rowhammer-attack/
  16. https://socprime.com/blog/cve-2025-27840-vulnerability-in-esp32-bluetooth-chips/
  17. https://www.reddit.com/r/ethdev/comments/17asni5/ecdsa_nonce/
  18. 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/
  19. https://www.scribd.com/document/824576192/cryptattacktester-20231020
  20. https://socradar.io/labs/app/cve-radar/cve-2025-27840

By