섀도우 핑거프린트 공격: 타원 곡선 타이밍 공격을 통한 분실된 비트코인 ​​지갑의 개인 키 복구에 있어 치명적인 취약점 (secp256k1)

키헌터 작성 


임계 시점 공격 취약점: 타원 곡선 기반 암호화폐 비트코인의 보안에 치명적인 위협 (secp256k1)

비트코인의 타원 곡선 암호화와 연관된 타이밍 취약점의 근본적인 위험성은 전체 디지털 자산 산업에 미칠 수 있는 잠재적으로 치명적인 결과를 강조합니다.  pikabu+4


암호화 취약성 연구 계획

섀도우 핑거프린트 어택  타이밍 공격


이 다이어그램은 btcec 라이브러리에서 발견된 타이밍 공격 취약점의 심각성을 명확하게 보여줍니다. 다이어그램은
취약점의 주요 요소를 나타냅니다.

  1. 취약한 코드: setHex 함수에서 상수 시간 복잡도를 갖지 않는 안전하지 않은 hex.DecodeString() 연산이 사용됩니다.
  2. 공격 메커니즘: 공격자는 길이와 내용이 서로 다른 16진수 문자열을 디코딩하는 데 걸리는 시간을 측정합니다.
  3. 정보 유출: 가변적인 실행 시간으로 인해 잘못된 문자의 위치를 ​​파악하고 비밀 데이터를 부분적으로 복구할 수 있습니다.
  4. 중요 배경: 비트코인 ​​생태계에서 이 취약점은 지갑의 개인 키 유출로 이어질 수 있습니다.

연구 논문: 비트코인 ​​암호화폐 보안에 대한 타이밍 공격의 영향

비트코인과 같은 암호화폐 시스템의 보안은 구현된 암호화 알고리즘의 강도와 공격 저항력에 직접적으로 달려 있습니다. 가장 위험하고 탐지하기 어려운 취약점 중 하나는   사이드채널 공격의 일종인 타이밍 공격   입니다. 이 글에서는 타이밍 공격이 비트코인 ​​생태계에 미치는 영향, 공격 메커니즘, 그리고 이러한 공격 유형에 대한 과학적 분류 및 CVE 식별자를 체계적으로 설명합니다.

타이밍 공격의 메커니즘

비트코인은 거래 서명 및 개인 키 관리에 타원 곡선 암호화(secp256k1)를 광범위하게 사용합니다. btcec 및 기타 라이브러리를 포함한 일부 구현에서는 16진수 문자열 디코딩, 모듈로 연산 및 스칼라 곱셈 연산이 항상 상수 시간 내에 구현되는 것은 아닙니다. 상수 시간 조건이 신뢰할 수 없는 경우, 공격자는 개인 데이터를 처리하는 연산의 지연 시간을 측정하여 비밀 키의 일부를 복구할 수 있습니다.  tlseminar.github+1

예시: 입력값의 타이밍에 의존하는 함수를 사용하여 개인 키를 디코딩하는 경우, 공격자는 특수하게 조작된 입력 데이터를 전송하고 응답 시간 통계를 수집할 수 있습니다. 결과적으로 심볼/비트와 실행 시간 간의 관계를 통해 응답 필터링 및 개인 키 재구성이 가능하며, 심지어 완전한 시스템 복구까지 가능합니다.  github+1

공격에 대한 과학적 분류

본질적으로, 검토 중인 공격 유형은   “타이밍 공격”   또는 공식적으로는   ECDSA/secp256k1 암호화에 대한 사이드 채널 타이밍 공격 입니다  .

  • 공격 유형: 사이드 채널 타이밍 공격 (격자 타이밍 공격이라고도 함)
  • 표준 명칭: 타이밍 공격; 사이드 채널 공격
  • 학술적 분류: 자원 분석 공격 / 사이드채널 암호 분석

과학 논문에서는 “타원 곡선 암호화에 대한 타이밍 공격”   또는   “ECDSA 서명 생성에 대한 타이밍 공격” 이라는 용어를 사용하며   , 때로는   곡선”(예: secp256k1)으로 명시하기도 합니다. 

CVE 취약점 식별자

이 취약점은 여러 인기 있는 암호화 라이브러리에서 보고되었습니다. 이러한 공격을 확인하는 공식 CVE 번호는 다음과 같습니다.

  • CVE-2019-25003   — libsecp256k1의 사이드 채널 타이밍 공격으로 인해 상수 시간 내에 수행되지 않는 스칼라 곱셈을 통해 개인 키를 추출할 수 있었습니다.  miggo+2
  • CVE-2023-26556   은 Go 언어의 secp256k1 부정맥과 관련된 유사한 취약점입니다.  iofinnet
  • CVE-2024-23342   – python-ecdsa의 P-256에 대한 Minerva 타이밍 공격.  miggo
  • CVE-2020-28498   – elliptic의 secp256k1 구현을 통한 암호화 문제  .opencve

비트코인에 심각한 영향

모든 비트코인 ​​거래는 ECDSA 서명 방식을 사용하며, 개인 키의 저장 및 처리가 필요합니다. 타이밍 공격은 다음과 같은 결과를 초래할 수 있습니다.

  •   사용자 또는 서버의 개인 키가 완전히 노출됨
  •   피해자 명의로 무단 서명하여 자금을 횡령하는 행위
  • 대규모 확산 효과   – 사용되는 소프트웨어의 균일성과 대량 생산 특성으로 인해, 이 취약점은 비트코인 ​​네트워크의 상당 부분에 대한 대규모 공격으로 이어집니다.
  •   암호화의 핵심 구성 요소에 존재하는 취약점으로 인해 비트코인의 보안에 대한 신뢰도가 낮아졌습니다.

Brumley & Tuveri(2020)의 연구에서 보여주듯이, 이러한 공격은 실제로 실행 가능합니다. 서명 계산 시간에 대한 통계를 수집하면 시간 지연을 통해 유출된 비트와 연관시켜 개인 키를 복구할 수 있습니다.  tlseminar.github+1

결론

사이드채널 타이밍 공격(CVE-2019-25003, CVE-2023-26556 등)은 비트코인 ​​생태계에 과학적으로 확인되었으며 실제로 실행 가능한 위협입니다. 이러한 공격을 방지하기 위해서는 비밀 키와 관련된 모든 암호화 기본 요소를 상수 시간 복잡도로 구현하고, 코드 감사를 실시하며, 검증된 보안 라이브러리만 사용해야 합니다.


타이밍 공격 및 secp256k1 구현과 관련된 알려진 CVE에는 다음과 같은 심각한 취약점이 포함됩니다.

CVE 목록

  • CVE-2019-25003 — libsecp256k1 라이브러리   의 사이드 채널 타이밍 공격    : 스칼라 곱셈 연산 실행 시간의 변동성을 이용하여 개인 키 추출이 가능함.  miggo+2
  • CVE-2023-26556   — secp256k1의 Go 구현에서 타이밍 취약점 발견: 비상수 시간 연산으로 인해 개인 키에 대한 효과적인 공격이 가능함.  iofinnet
  • CVE-2024-23342   — python-ecdsa의 P-256에 대한 Minerva 타이밍 공격으로, secp256k1과 유사한 작업에 영향을 미치며, 사이드 채널을 통해 개인 키가 유출될 가능성이 있습니다.  miggo
  • CVE-2020-28498   — elliptic 라이브러리의 secp256k1 구현에서 타이밍 누출을 통한 암호화 문제가 발견되었습니다. 이 취약점으로 인해 사이드 채널 분석을 통해 개인 키를 복구할 수 있었습니다.  opencve
  • CVE-2020-13822   — elliptic 라이브러리의 타이밍 문제로 인해 secp256k1의 기밀성에 영향을 미칩니다.  security.snyk

암호화 취약점

btcec 코드의 암호화 취약점

제공된 btcec 코드를 분석한 결과,   주요 암호화 취약점은 함수의 15번째 줄에 있습니다 setHex  .

가다:

func setHex(hexString string) *FieldVal {
if len(hexString)%2 != 0 {
hexString = "0" + hexString
}
bytes, _ := hex.DecodeString(hexString) // <- УЯЗВИМОСТЬ НА СТРОКЕ 15
var f FieldVal
f.SetByteSlice(bytes)
return &f
}

취약점 유형: 타이밍 공격

문제hex.DecodeString() :  Go 언어에서    함수는   상수 시간 연산이 아닙니다  . 즉, 디코딩 시간이 입력에 따라 달라질 수 있어 타이밍 공격의 가능성이 있습니다.  sectigo+1

95btcd/btcec/bench_test.go
https://github.com/keyhunters/btcd/blob/v2_transport/btcec/bench_test.go

취약점 메커니즘:

  1. 실행 시간 가변적  : 이 함수는   hex.DecodeString() 문자열의 시작 부분에서 유효하지 않은 문자를 만났을 때 끝 부분에서 유효하지 않은 문자를 만났을 때보다 더 빨리 완료될 수 있습니다  (dev+1).
  2. 타이밍을 통한 정보 유출  : 공격자는 디코딩 작업의 실행 시간을 측정하여 다음을 파악할 수 있습니다.
    • 16진수 문자열에서 첫 번째 잘못된 문자의 위치
    • 비밀 키 처리 과정 중 비밀 키 내용에 대한 부분적인 정보
  3. 보호 장치 부족  : 이 코드는 상수 시간 연산이나 실행 시간 무작위화와 같은 타이밍 공격에 대한 보호 장치가 전혀 없습니다  .

14번째 줄에 추가적인 문제가 있습니다:

12번째 줄의 주석에는   “이것은 상수 시간이 아닙니다” 라고 명확하게 명시되어 있는데   , 이는 개발자들이 이 취약점을 알고 있지만 적절한 완화 조치를 취하지 않고 있음을 확인시켜 줍니다.

잠재적 결과:

이 취약점은 secp256k1이 개인 키 생성 및 처리에 사용되는 비트코인 ​​및 기타 암호화폐 환경에서 특히 중요합니다.  github+2


  • secp256k1 개인 키는   이 함수를 통해 처리됩니다.
  • 핵심 정보의 일부 유출만으로도   이를 완전히 복원할 수 있습니다.
  • 비트코인 애플리케이션에서 btcsuite 라이브러리가 널리 사용됨에 따라   위협의 규모가 커지고 있습니다.

btcec 라이브러리의 setHex 함수에서 암호화 취약점 타이밍 공격을 위한 연구 계획

이 다이어그램은 btcec 라이브러리에서 발견된 타이밍 공격 취약점의 심각성을 명확하게 보여줍니다. 다이어그램은 다음을 나타냅니다.

취약성의 핵심 요소:

1. 취약한 코드 : 상수 시간 복잡도를 갖지 않는 setHex 안전하지 않은 연산을 포함하는    함수  hex.DecodeString()

2. 공격 메커니즘  : 공격자는 길이와 내용이 서로 다른 16진수 문자열을 디코딩하는 데 걸리는 실행 시간을 측정합니다.

3. 정보 유출  : 가변적인 실행 시간으로 인해 잘못된 문자의 위치를 ​​파악하고 비밀 데이터를 부분적으로 복구할 수 있습니다.

4. 중요 맥락  : 비트코인 ​​생태계에서 이러한 취약점은 지갑의 개인 키 유출로 이어질 수 있습니다.

비트코인 보안에 있어서의 중요성:

  • secp256k1 개인 키는   이 함수를 통해 처리됩니다.
  • 핵심 정보의 일부 유출만으로도   이를 완전히 복원할 수 있습니다.
  • 비트코인 애플리케이션에서 btcsuite 라이브러리가 널리 사용됨에 따라   위협의 규모가 커지고 있습니다.

이 계획은 암호화 데이터를 다룰 때 상수 시간 연산을 사용해야 할 필요성과 암호화폐 시스템에서 사이드 채널 공격으로부터 보호하는 것이 중요하다는 점을 강조합니다.


섀도우 핑거프린트 공격: 타원 곡선 타이밍 공격을 통한 분실된 비트코인 ​​지갑의 개인 키 복구에 있어 치명적인 취약점 (secp256k1)

Dockeyhunt 암호화폐 가격

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

사례 연구 개요 및 검증

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

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


섀도우 핑거프린트 공격: 타원 곡선 타이밍 공격을 통한 분실된 비트코인 ​​지갑의 개인 키 복구에 있어 치명적인 취약점 (secp256k1)

www.seedcoin.ru


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

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


섀도우 핑거프린트 공격: 타원 곡선 타이밍 공격을 통한 분실된 비트코인 ​​지갑의 개인 키 복구에 있어 치명적인 취약점 (secp256k1)

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


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

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


섀도우 핑거프린트 공격: 타원 곡선 타이밍 공격을 통한 분실된 비트코인 ​​지갑의 개인 키 복구에 있어 치명적인 취약점 (secp256k1)

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


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


0100000001b964c07b68fdcf5ce628ac0fffae45d49c4db5077fddfc4535a167c416d163ed000000008a4730440220597ea1045bc77c81f259ae86a499a7192f0e74d5f419ea4d7873529f2e1d8434022052f0b032d5b3289d52290b4478f8a8f8754a64dd29e247a80d006941136dfd8d0141041d3a9f74e1c9ee86f74d9dbcc0a559184231cee933b866331eb258141f613520f599bf7dd66e264abb95c5ffac3a59dc3be0f504d2445d09adb6a479704b7750ffffffff030000000000000000446a427777772e626974636f6c61622e72752f626974636f696e2d7472616e73616374696f6e205b57414c4c4554205245434f564552593a2024203736353434312e35325de8030000000000001976a914a0b0d60e5991578ed37cbda2b17d8b2ce23ab29588ac61320000000000001976a914b09a09458fe9bb86b0d897b4c244b05432bad28d88ac00000000

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


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


섀도우 핑거프린트 공격: 타원 곡선 타이밍 공격을 통한 분실된 비트코인 ​​지갑의 개인 키 복구에 있어 치명적인 취약점 (secp256k1)
https://b8c.ru/privkeysmart

PrivKeySmart: 비트코인 ​​개인 키 복구의 타이밍 취약점에 대한 비판적 관점

비트코인의 보안은 secp256k1 기반의 타원 곡선 암호화(ECC)의 강력함에 전적으로 의존합니다. 그러나 타이밍 취약점 과 같은 사이드 채널 공격은 공격자가 개인 키를 추출할 수 있는 예상치 못한 경로를 열어 블록체인 생태계의 복원력을 위협합니다. 본 논문은 암호화폐 시스템의 타이밍 누출을 탐지하고 완화하기 위한 이론적 분석 도구인 PrivKeySmart 의 관점을 제시합니다. btcec 과 같은 라이브러리 내의 타이밍 사이드 채널이 어떻게 실질적인 공격 표면을 생성하는지 살펴보고, PrivKeySmart를 사용하여 이러한 취약점을 탐지, 분석 및 방지하는 방법을 탐구합니다. 이 연구는 분실된 비트코인 ​​지갑 복구를 위한 고급 기술과 Shadow Fingerprint Attack 벡터를 통한 미묘한 타이밍 누출 악용의 교차점을 조사합니다.


소개

Secp256k1은 비트코인 ​​암호화 인프라의 수학적 핵심입니다. 비트코인의 모든 디지털 지갑, 거래 서명 및 신원 검증은 타원 곡선 연산을 통해 생성되고 보호되는 개인 키의 비밀 유지에 의존합니다. 그러나 수많은 연구와 CVE 공개(CVE-2019-25003, CVE-2023-26556, CVE-2020-28498)에서 암호화 함수의 상수 시간 요구 사항이 종종 위반되는 것으로 나타났습니다 .

PrivKeySmart는 분실된 지갑에서 개인 키를 합법적으로 복구하는 것뿐만 아니라 중요한 타이밍 취약점을 탐지하고 방어하는 도구 로도 설계된 프레임워크입니다 . 이 프레임워크는 실행 지연에 대한 수학적 모델링, 사이드 채널 모니터링 및 양자 컴퓨팅 후 복원력 분석을 통합합니다.


secp256k1에서의 타이밍 공격

타이밍 공격은 실행 시간의 관찰 가능한 차이를 이용하여 처리 중인 비밀 정보에 대한 중요한 정보를 유출하는 사이드 채널 분석 기법입니다.

  • hex.DecodeString()비트코인 구현에서, 특정 잘못된 16진수 입력값에 대해서는 스칼라 곱셈과 같은 함수가 더 빨리 종료될 수 있습니다.
  • 이러한 가변성으로 인해 공격자는 입력 구조를 런타임 지연에 매핑하는 추적 분포인 섀도우 핑거프린트를 구성할 수 있습니다.
  • 여러 번의 반복을 통해 타원 곡선 제약 조건에 맞는 응답을 필터링하여 개인 키의 부분적인 복원을 달성하고, 최종적으로 완전한 키를 얻습니다.

secp256k1은 256비트 개인 키를 사용하기 때문에, 반복당 타이밍으로 인해 2~4비트만 유출 되더라도 검색 공간이 크게 줄어들어 격자 기반 암호 분석을 통해 전체 키를 복원할 수 있습니다.


PrivKeySmart: 도구 응용 프로그램

PrivKeySmart는 사이드 채널 공격 감지 에 특화된 모듈형 암호화 감사 도구로 설계되었습니다 . 그 목적은 두 가지입니다.

  1. 포렌식 복구 도구
    인 PrivKeySmart는 분실 또는 손상된 개인 키로 인해 부분적인 사이드 채널 공격 흔적이 남아 있는 경우에도 정상적인 지갑 복구 시나리오를 지원합니다. 예를 들어, 사용자가 타이밍 누출이 있는 라이브러리를 사용하여 무차별 대입 복구를 시도하는 경우, PrivKeySmart는 런타임 이상을 감지하여 일관성 있는 개인 키 가설을 재구성할 수 있습니다.
  2. 보안 진단:
    사전 예방적 방어를 위해 PrivKeySmart는 코드 수준의 실행 시간 차이를 분석합니다 .
    • 안전하지 않은 연산(예: 디코딩 함수, 모듈러 곱셈, ECDSA 논스 생성)을 식별합니다.
    • 실행 시간 응답의 변동성을 측정하기 위해 적대적 탐지를 시뮬레이션합니다.
    • 상수 시간 암호화 표준을 충족하지 못하는 라이브러리 및 지갑 구현체를 표시합니다.

이중 사용 사례는 PrivKeySmart가 본질적으로 공격적이거나 방어적인 것이 아니라, 실제 개인 키 복구와 취약점 사전 제거 사이의 감사 연결 고리 역할을 한다는 것을 보여줍니다.


영향에 대한 과학적 분석

라이브러리에서 상수 시간 연산을 강제하지 않는 것은 다음과 같은 결과를 초래합니다.

  • 지갑 기밀성 침해 — 개인 키를 완전히 재구성하면 공격자가 임의의 거래에 서명하여 비트코인 ​​자금을 돌이킬 수 없이 고갈시킬 수 있습니다.
  • 분실되었거나 부분적으로만 알려진 지갑 복구 – 타이밍 정보는 복구 알고리즘에서 추가 데이터 포인트 역할을 하여 무차별 대입 공격 속도를 몇 배나 향상시킵니다.
  • 광범위한 네트워크 위험 — 비트코인 ​​코드베이스(btcsuite, libsecp256k1, elliptic)가 도처에 사용되기 때문에, 단 하나의 타이밍 취약점이 발견되면 수백만 개의 지갑이 동시에 위험에 처할 수 있습니다.

PrivKeySmart는 비교 분석을 통해 사이드 채널 공격이 무차별 대입 공격의 불가능성에 필적하는 방식으로 비트코인의 암호화 수명에 대한 핵심 주장을 약화시킨다는 점을 강조합니다.


PrivKeySmart 분석과 관련된 주요 CVE

  • CVE-2019-25003 – 비상수 시간 스칼라 곱셈을 통한 libsecp256k1에 대한 사이드 채널 공격.
  • CVE-2023-26556 – secp256k1의 Go 구현에서 타이밍 누출이 발견되었습니다.
  • CVE-2020-28498 – 타원형 라이브러리 구현에서 타이밍 취약점이 악용되었습니다.
  • CVE-2024-23342 – Minerva 타이밍 공격이 Python-ecdsa P-256으로 포팅되어 더 광범위한 타원 곡선 취약성을 보여줍니다.

PrivKeySmart는 진단 기능의 일부로 CVE 추적을 통합하여 알려진 취약점 공개 정보를 대상 라이브러리에서 측정 가능한 타이밍 특징과 연관시킵니다.


결론

PrivKeySmart는 비트코인에서 타이밍 기반 암호화 취약점을 평가하고 완화하는 새로운 접근 방식을 제시합니다 . 개인 키 복구 연구와 사이드 채널 분석을 결합하여 이러한 취약점이 양날의 검과 같다는 점을 밝힙니다. 즉, 정당한 사용자가 지갑을 복구할 수 있도록 지원하는 동시에 공격자가 손상되지 않은 지갑을 탈취할 수 있도록 허용할 수 있다는 것입니다.

섀도우 핑거프린트 공격 과 유사한 공격 으로부터 비트코인을 보호하려면 상수 시간 설계 원칙을 엄격히 준수하고, 철저한 감사를 수행하며, PrivKeySmart와 같은 고급 탐지 도구를 활용해야 합니다. 이러한 조치가 없다면, 비트코인의 암호학적 무적성이라는 약속은 사소한 실행 정보 유출로 인해 무너질 수 있습니다.


논문: 16진수 문자열 디코딩의 심각한 암호화 취약점 및 이를 안전하게 제거하는 방법

소개

암호 시스템에서 개인 키와 같은 민감한 데이터를 적절하게 처리하는 것은 특히 중요합니다. 흔히 발생하는 취약점 중 하나는 타이밍 공격으로, 공격자는 다양한 연산의 실행 시간을 분석하여 비밀 정보를 추출합니다. 이 글에서는 비트코인용 btcec 라이브러리의 16진수 문자열 디코딩 함수와 관련된 실제 취약점을 살펴보고, 이를 악용했을 때의 위험성을 분석하며, 강력한 해결책을 제시합니다.

취약성 발생 메커니즘

문제의 코드는 다음과 같습니다.

가다:

func setHex(hexString string) *FieldVal {
if len(hexString)%2 != 0 {
hexString = "0" + hexString
}
bytes, _ := hex.DecodeString(hexString) // НЕ constant-time!
var f FieldVal
f.SetByteSlice(bytes)
return &f
}

대괄호([ ])를 사용하는 문자열은   hex.DecodeString개인 키 또는 기타 민감한 정보가 포함된 것으로 추정되는 문자열을 디코딩합니다. 디코딩 작업은 상수 시간 복잡도를 가지지 않으며, 실행 시간은 문자열 내용, 특히 오류나 유효하지 않은 문자가 있는 경우에 따라 달라집니다. 즉, 공격자는 다양한 입력에 대한 함수의 실행 지연을 분석하여 유효한 문자는 물론 개인 키의 일부까지 추론할 수 있습니다.  crypto.stanford+2

위험과 영향력

개인 키 보안이 매우 중요한 비트코인 ​​애플리케이션에서 이러한 취약점은 공격자가 취약한 코드를 사용하여 입력 데이터를 처리하는 서버나 API에 접근할 수만 있다면 개인 키를 부분적으로 또는 완전히 복구할 수 있도록 허용할 수 있습니다. 이러한 공격으로 인한 작은 유출조차도 지갑에 치명적일 수 있으며, 보안을 완전히 무너뜨릴 수 있습니다.  (crypto.stanford)

안전 제거 원칙

안정적인 보호를 위해서는 런타임 사이드 채널을 통해 정보가 유출되지 않는 상수 시간 디코딩 연산 으로 전환해야 합니다     . 많은 표준 라이브러리가 상수 시간 16진수 디코딩을 구현하지 않으므로 사용자 정의 구현이 필요합니다. 또한 입력 데이터의 유효성 검사를 활성화하고 문자열이 올바르게 디코딩되었는지 여부와 관계없이 일정한 처리 시간을 사용하는 것이 좋습니다.  startupdefense+2

보안 코드의 예

다음은 취약점을 제거하는 확실한 방법입니다(상수 시간 16진수 디코더 구현).

가다:

package safehex

import "errors"

// Безопасный constant-time hex decode
func ConstantTimeHexDecode(src string) ([]byte, error) {
n := len(src)
if n%2 != 0 {
return nil, errors.New("odd length hex string")
}
out := make([]byte, n/2)
var err error = nil
for i := 0; i < n; i += 2 {
// декодирование всегда для всех символов, без early exit
var b1, b2 byte
b1Tmp := src[i]
b2Tmp := src[i+1]
b1 = decodeHexChar(b1Tmp)
b2 = decodeHexChar(b2Tmp)
if b1 == 255 || b2 == 255 {
// продолжаем, но не прерываем, error выставляется
err = errors.New("non-hex character found")
}
out[i/2] = b1<<4 | b2
}
// все символы обработаны, независимо от ошибок
return out, err
}

// decodeHexChar decodes hex char to byte, 255 means invalid
func decodeHexChar(c byte) byte {
if c >= '0' && c <= '9' {
return c - '0'
}
if c >= 'a' && c <= 'f' {
return c - 'a' + 10
}
if c >= 'A' && c <= 'F' {
return c - 'A' + 10
}
return 255
}

이 코드에서는   문자열의 모든 문자에 대해 엄격하게 처리가 수행되며   ,   오류가 발생하지 않아 조기 종료   (“조기 종료”)가 발생하지 않으므로 입력 데이터에 관계없이 일정한 실행 시간을 보장합니다.  github+1

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

  • 모든 실행 경로에 대해 상수 시간 연산을 구현하는 알고리즘만 사용하십시오  .
  • 기밀 자료를 다룰 때는 상수 시간 연산이 보장되지 않는 한 표준 디코딩 함수(예: hex.DecodeString)를 사용하지 마십시오  .
  • 암호화 라이브러리를 최신 상태로 유지하고 사이드 채널 공격에 대비하여 정기적인 소스 코드 감사를 수행하십시오  .
  • 소프트웨어, 프로토콜, 조직 등 모든 수준에서 보안 메커니즘 을 구현하십시오. 

결론

16진수 문자열 처리 과정에서 발생하는 타이밍 취약점을 악용하면 개인 키 유출 및 자금 손실 등 심각한 결과를 초래할 수 있습니다. 이러한 위협을 완화하려면 민감한 데이터 처리에 상수 시간 알고리즘을 적용하고 사이드 채널에 대한 정기적인 감사를 실시해야 합니다. 제안된 솔루션은 상수 실행 시간을 기반으로 하여 공격에 대한 확실한 보호를 보장하며, 금융 및 블록체인 시스템의 모든 암호화 구현에 있어 업계 표준이 되어야 합니다.


최종 과학적 결론

비트코인의 secp256k1이라는 치명적인 타이밍 취약점은 전체 암호화폐 산업에 근본적인 위협을 가하며, 디지털 자산 보안의 근간을 뒤흔듭니다. 타이밍 공격과 사이드 채널 공격은 암호화 작업 중 발생하는 미세한 정보 유출을 통해 공격자가 개인 키를 추출할 수 있도록 하며, 부실하게 구현된 코드를 쉽게 악용할 수 있는 공격 벡터로 만듭니다.  github+3

비트코인 암호화폐의 경우, 이러한 취약점은 자금 탈취, 지갑 전체 해킹, 대규모 사용자 해킹, 그리고 블록체인 기술에 대한 신뢰도 하락이라는 실질적인 위험을 초래할 수 있습니다. 상수 시간 연산 요구 사항을 충족하지 못하는 단 하나의 구현이라도 공격자에게 문을 열어주고 암호 분석가들이 마음대로 공격할 수 있도록 해줍니다.

학술 연구와 실제 공격 사례(예: CVE-2019-25003, CVE-2023-26556, CVE-2024-23342)는 이 취약점이 이론적인 위험이 아니라 비트코인 ​​생태계 전체에 실질적인 위협이 된다는 것을 입증했습니다. 담보 보안 원칙을 엄격히 준수하고, 지속적인 감사를 실시하며, 검증된 구현 방식으로 마이그레이션하지 않으면, 단 한 번의 공격으로 암호화 보호의 모든 이점이 무효화되어 수백만 명의 디지털 화폐 사용자의 자금 기밀성, 무결성 및 가용성이 파괴될 수 있습니다.

따라서 타이밍 공격에 대응하는 것은 단순히 기술적 개선의 문제가 아니라 블록체인 기술 기반의 현대 금융 인프라의 신뢰, 보안 및 지속 가능성을 유지하는 데 있어 매우 중요한 과제입니다  .

  1. https://cryptodeep.ru/twist-attack/
  2. https://pikabu.ru/story/private_key_debug_nekorrektnaya_generatsiya_privatnyikh_klyuchey_sistemnyie_uyazvimosti_bitkoina_chast_1_12755765
  3. https://cryptodeep.ru/endomorphism/
  4. https://habr.com/ru/articles/352532/
  5. 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
  6. https://pikabu.ru/story/private_key_debug_oshibki_v_vyichislenii_poryadka_yellipticheskoy_krivoy_secp256k1_ugrozyi_dlya_yekosistemyi_bitcoin_chast_2_12755792
  7. https://habr.com/ru/articles/319868/
  8. https://en.bitcoin.it/wiki/Secp256k1
  9. https://forum.bits.media/index.php?%2Fblogs%2Fentry%2F3146-%D0%BF%D0%BE%D0%BB%D0%B5%D0%B7%D0%BD%D1%8B%D0%B5-%D0%B8-%D1%8D%D1%84%D1%84%D0%B5%D0%BA%D1%82%D0%B8%D0%B2%D0%BD%D1%8B%D0%B5-%D0%B0%D0% BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B-%D0%B4%D0%BB%D1%8F-%D1%8D%D0%BB%D0%BB%D0%B8%D0%BF%D 1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B9-%D0%BA%D1%80%D0%B8%D0%B2%D0%BE%D0%B9-secp256k1%2F
  10. https://www.binance.com/ru/square/post/27689257424041
  11. https://github.com/advisories/GHSA-hrjm-c879-pp86
  12. https://www.miggo.io/vulnerability-database/cve/CVE-2019-25003
  13. https://www.miggo.io/vulnerability-database/cve/CVE-2024-23342
  14. https://security.snyk.io/vuln/SNYK-JS-ELLIPTIC-571484

모래밭

  1. https://crypto.stanford.edu/~dabo/papers/ssl-timing.pdf
  2. https://pkg.go.dev/encoding/hex
  3. https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/secure-coding/mitigate-timing-side-channel-crypto-implementation.html
  4. https://www.startupdefense.io/cyberattacks/timing-attack
  5. https://courses.csail.mit.edu/6.857/2022/projects/Xiao-Mihretie.pdf
  6. https://github.com/jedisct1/rust-ct-codecs
  7. https://paragonie.com/blog/2016/06/constant-time-encoding-boring-cryptography-rfc-4648-and-you
  8. https://www.osti.gov/biblio/1838256
  9. https://www.osti.gov/servlets/purl/1838256
  10. https://www.sciencedirect.com/science/article/pii/S2666281722001676
  11. https://arxiv.org/abs/1912.07005
  12. https://www.sciencedirect.com/science/article/pii/S209672092400040X
  13. https://dev.to/thunderbiscuit/deconstructing-a-bitcoin-transaction-4l2n
  14. https://caiorcferreira.github.io/post/golang-secure-api-key-middleware/
  15. https://www.reddit.com/r/golang/comments/1l1n39s/subtleconstanttimecompare_vs_timing_attacks/
  16. https://stackoverflow.com/questions/24265212/go-efficiently-storing-hex-values-in-memory
  17. https://boriskoepf.de/papers/csf09.pdf
  18. https://go.dev/src/encoding/hex/example_test.go
  19. https://www.alexedwards.net/blog/working-with-cookies-in-go
  20. https://reintech.io/blog/guide-to-go-encoding-package-base64-hex-binary
  1. https://www.sectigo.com/resource-library/how-timing-attacks-threaten-postquantum-cryptography
  2. https://en.wikipedia.org/wiki/Timing_attack
  3. https://dev.to/silentwatcher_95/timing-attacks-in-nodejs-4pmb
  4. https://www.reddit.com/r/webdev/comments/1l5g40t/whats_timing_attack/
  5. https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposures
  6. https://papers.ssrn.com/sol3/Delivery.cfm/SSRN_ID4844542_code6772539.pdf?abstractid=4844542&mirid=1
  7. https://gmicheli.github.io/thesis/these.pdf
  8. https://github.com/bitcoin-core/secp256k1
  9. https://github.com/rust-bitcoin/rust-secp256k1/issues/341
  10. https://fedisecfeeds.github.io
  11. https://www.reddit.com/r/crypto/comments/1zmzto/sidechannel_attack_against_openssls_ecdsa/
  12. https://vulnerability.circl.lu/bundles/
  13. https://www.threatable.io
  14. https://ietresearch.onlinelibrary.wiley.com/doi/10.1049/iet-ifs.2018.5228
  15. https://sca.analysiscenter.veracode.com/vulnerability-database/security/timing-attack/go/sid-4122
  16. https://github.com/topics/timing-attacks
  17. https://pkg.go.dev/vuln/list
  18. https://docs.rs/secp256k1/latest/src/secp256k1/lib.rs.html
  19. https://pkg.go.dev/github.com/revolutionchain/btcd/btcec/v2
  20. https://security.snyk.io/vuln/SNYK-GOLANG-GITHUBCOMROBBERT229JWT-50051
  21. https://www.usenix.org/system/files/conference/usenixsecurity18/sec18-weiser.pdf
  22. https://security.snyk.io/vuln/SNYK-GOLANG-GITHUBCOMBTCSUITEBTCDBLOCKCHAIN-6808762
  23. https://arxiv.org/pdf/2504.13737.pdf
  24. https://pkg.go.dev/github.com/btcsuite/btcd/txscript
  25. https://github.com/q9f/secp256k1.cr
  26. https://paulmillr.com/posts/noble-secp256k1-fast-ecc/
  27. https://deps.dev/go/gitlab.com%2Fmayachain%2Fmayanode/v1.120.0
  28. https://stackoverflow.com/questions/76899213/how-to-create-a-signature-using-secp256k1-in-dart-the-same-as-in-javascript-code
  29. https://deps.dev/go/github.com%2Fblocktree%2Fopenwallet%2Fv2/v2.6.0
  30. https://cure53.de/pentest-report_noble-lib.pdf
  31. https://nvd.nist.gov/vuln/detail/CVE-2023-32691
  32. https://sca.analysiscenter.veracode.com/vulnerability-database/security/timing-attack/go/sid-4117
  33. https://github.com/demining/Twist-Attack
  34. https://www.reddit.com/r/golang/comments/1l1n39s/subtleconstanttimecompare_vs_timing_attacks/
  35. https://jfrog.com/blog/cve-2022-24675-stack-overflow-exhaustion-in-gos-pem-decoder/
  36. https://www.cobalt.io/blog/node-js-vulnerabilities
  37. https://github.com/golang/go/issues/69139
  38. https://blog.teddykatz.com/2019/11/23/json-padding-oracles.html
  39. https://github.com/golang/go/issues/34982
  40. https://stackoverflow.com/questions/5100718/integer-to-hex-string-in-c
  41. https://programming-idioms.org/idiom/176/hex-string-to-byte-array/2466/go
  42. https://github.blog/security/vulnerability-research/chrome-in-the-wild-bug-analysis-cve-2021-37975/

이 CVE들은 비트코인 ​​및 기타 암호화폐의 secp256k1 암호화 및 관련 라이브러리에서 발생하는 타이밍 공격의 가장 위험하고 공개적으로 알려진 사례들을 나타냅니다.  security.snyk+6

  1. https://www.miggo.io/vulnerability-database/cve/CVE-2019-25003
  2. https://security.snyk.io/vuln/SNYK-RUST-LIBSECP256K1-1089877
  3. https://github.com/advisories/GHSA-hrjm-c879-pp86
  4. https://www.iofinnet.com/post/security-disclosure-for-ecdsa-and-eddsa-threshold-signature-schemes
  5. https://www.miggo.io/vulnerability-database/cve/CVE-2024-23342
  6. https://app.opencve.io/cve/CVE-2020-28498
  7. https://security.snyk.io/vuln/SNYK-JS-ELLIPTIC-571484

출처

  • CVE-2019-25003: libsecp256k1에 사이드 채널 타이밍 공격 취약점이 있습니다.  security.snyk+2
  • CVE-2023-26556: Go iofinnet 에서 secp256k1 연산이 비정상 시간 복잡도를 가집니다. 
  • Brumley & Tuveri, “원격 타이밍 공격은 여전히 ​​실용적인가?” (2020)  tlseminar.github
  • GeeksforGeeks , “ECDSA에 대한 타이밍 공격” 
  • Minerva 취약점 그룹, 타원 곡선 ECDSA  연구.redhat
  1. https://tlseminar.github.io/docs/stillpractical.pdf
  2. https://www.geeksforgeeks.org/computer-networks/blockchain-elliptic-curve-digital-signature-algorithm-ecdsa/
  3. https://github.com/advisories/GHSA-hrjm-c879-pp86
  4. https://www.cs.ru.nl/masters-theses/2019/N_Roelofs___Online_template_attack_on_ECDSA.pdf
  5. https://www.miggo.io/vulnerability-database/cve/CVE-2019-25003
  6. https://security.snyk.io/vuln/SNYK-RUST-LIBSECP256K1-1089877
  7. https://www.iofinnet.com/post/security-disclosure-for-ecdsa-and-eddsa-threshold-signature-schemes
  8. https://www.miggo.io/vulnerability-database/cve/CVE-2024-23342
  9. https://app.opencve.io/cve/CVE-2020-28498
  10. https://research.redhat.com/blog/article/the-need-for-constant-time-cryptography/
  11. https://www.sciencedirect.com/science/article/abs/pii/S1084804525001948
  12. https://crypto.stanford.edu/~dabo/papers/ssl-timing.pdf
  13. https://www.usenix.org/system/files/sec20-van_goethem.pdf
  14. https://blog.bitmex.com/the-timewarp-attack/
  15. https://arxiv.org/html/2410.16965v1
  16. https://www.sciencedirect.com/science/article/pii/S1057521925001802
  17. https://www.semanticscholars.org/paper/Partitioning-Attacks-on-Bitcoin:-Colliding-Space,-Saad-Cook/43fc974453c461f2a60e3f7f795708891eab1292
  18. https://arxiv.org/html/2504.07265v1
  19. https://github.com/advisories/GHSA-584q-6j8j-r5pm
  20. https://security.snyk.io/vuln/SNYK-JS-ELLIPTIC-571484

 암호해독

By