키헌터 작성
하드코딩된 비밀번호는 비트코인 개인 키에 대한 중요한 공격 벡터입니다: 분석 및 예방 . 암호학적 재앙: 비밀번호 하드코딩이 비트코인 생태계에서 개인 키 유출로 이어지는 방식 . 하드코딩된 비밀번호를 이용한 비트코인 무차별 대입 공격: 특성, 결과 및 보안 .
하드코딩된 암호 취약점이 비트코인 암호화폐의 보안에 미치는 영향, 비트코인의 과학적 명칭, 그리고 발생 가능한 CVE에 대한 정보를 밝히는 방법.
하드코딩된 비밀번호의 치명적인 취약점이 비트코인 보안에 미치는 영향: 공격에 대한 과학적 분석 및 분류
소개
암호학 및 디지털 화폐 보안에서 개인 키나 비밀번호 유출을 허용하는 취약점은 심각한 위험 요소입니다. 그러한 취약점 중 하나는 하드코딩된 비밀번호입니다. 개인 키 보안이 자금 운용에 직접적인 영향을 미치는 비트코인의 경우, 이러한 취약점은 심각한 결과를 초래할 수 있습니다.
취약점이 비트코인 암호화폐 공격에 미치는 영향
지갑 비밀번호나 개인 키 접근 권한이 하드코딩된 경우, 공격자는 다음과 같은 작업을 수행할 수 있습니다.
- 소스 코드나 바이너리 파일을 구할 수 있다면 비밀번호를 알아내는 것은 쉽습니다.
- 지갑 접근 인증 메커니즘을 우회하세요.
- 거래 서명에 필요한 개인 키를 받으세요.
- 비트코인 계좌에서 무단으로 자금을 관리하세요.
- 모든 소프트웨어 복사본에 동일한 비밀번호를 사용하는 대량 공격은 특히 사용자 수가 많은 서비스에 매우 위험합니다.
따라서 이러한 취약점은 과학 용어로 무차별 대입 공격(Brute Force Attack)이라고 불리는 공격 유형으로 이어지며 , 특히 하드코딩 된 비밀번호를 공격하는 하드코딩 비밀번호 공격(Hardcoded Password Attack) 이라는 특수한 경우가 발생합니다 . 이 경우 비밀번호 자체가 보호되지 않아 취약점이 됩니다.
공격의 과학적 명칭
- 주요 공격 방식: 무차별 대입 공격 – 보호된 데이터에 접근하기 위한 올바른 암호를 찾기 위해 체계적으로 암호를 추측하는 공격.
- 특수한 형태로는 하드코딩된 암호 공격이 있는데 , 프로그램 코드에 고정된 암호가 포함되어 있어 암호를 추측할 필요 없이 공격하기가 더 쉽습니다.
이러한 유형의 공격은 소프트웨어에서 비밀 정보를 저장하거나 관리하는 데 있어 보안 관행이 미흡하여 발생하는 취약점을 말합니다.
이 취약점에 대한 CVE 번호는 다음과 같습니다.
현재로서는 “비트코인 지갑 설정에 하드코딩된 비밀번호”라는 특정 취약점에는 고유한 CVE가 할당되지 않았습니다. CVE는 악용 방법이 명확하게 식별된 특정 소프트웨어 취약점에 할당되기 때문입니다.
하지만 다음과 같은 암호 하드코딩 취약점에 대한 기밀 CVE가 존재합니다.
- CVE-2023-XXXX – 암호화폐 시스템에서 하드코딩된 암호의 예시 (각 라이브러리 또는 프로그램에 대한 구체적인 내용은 추가 설명이 필요합니다).
- CVE(Common Vulnerabilities and Exposures) 데이터베이스에는 라이브러리와 서비스 모두에서 발견될 수 있는 하드코딩된 암호를 포함한 비밀 정보의 부적절한 관리와 관련된 취약점이 자주 나열됩니다.
보안상의 이유로 CVE에 ‘하드코딩된 암호’로 표시된 취약점에 대한 업데이트를 모니터링하고 업데이트 또는 패치를 적용하는 것이 좋습니다.
결론
하드코딩된 비밀번호는 비트코인 시스템의 개인 키 보안에 직접적인 위협이 되며, 공격자가 디지털 자산에 접근하기 쉽게 만듭니다. 과학적으로 이러한 취약점은 일반적으로 비밀 관리의 약점을 악용하는 무차별 대입 공격(하드코딩된 비밀번호 공격)의 특수한 경우로 설명됩니다. 고유한 CVE가 없다고 해서 위험성이 줄어드는 것은 아닙니다. 보호를 위해서는 최신 보안 비밀 관리 방법을 사용해야 하며, 소프트웨어에 하드코딩된 비밀번호를 사용하는 것은 반드시 피해야 합니다.
신뢰할 수 있는 비밀 보호 체계 구현, 외부 설정 사용 및 비밀 저장소 활용은 효과적인 공격 가능성을 제거하고 비트코인 기반 암호화 서비스의 보안을 크게 향상시킵니다.
관심 있으시면 암호화폐 분야에서 유사한 공격에 대한 실제 CVE 사례를 찾아보는 데 도움을 드릴 수 있습니다. 암호화폐 지갑 코드에 하드코딩된 비밀번호는 공격자가 비트코인 암호화폐의 개인 키를 획득하고 자금을 완전히 장악하는 것을 용이하게 하는 심각한 취약점을 만듭니다. 과학적으로 이 취약점은 무차별 대입 공격 (Brute Force Attack) 유형에 속하며 , 공격자가 코드에 정적으로 작성된 비밀번호를 사용하는 특수한 경우인 하드코딩 비밀번호 공격(Hardcoded Password Attack)입니다 . 이러한 공격을 통해 공격자는 비밀번호를 알고 있거나 소스 코드에서 찾을 수 있다면 추측할 필요 없이 지갑에 쉽게 접근할 수 있습니다.
현재로서는 이 특정 취약점에는 별도의 CVE 번호가 부여되지 않았습니다. CVE는 악용 방법이 잘 알려진 취약점에만 할당되기 때문입니다. 하지만 암호 시스템을 포함한 소프트웨어에서 하드코딩된 암호 취약점과 관련된 CVE는 많으므로, ‘하드코딩된 암호’ 또는 ‘지갑 취약점’과 같은 키워드를 사용하여 CVE 데이터베이스의 업데이트를 정기적으로 확인하는 것이 좋습니다.
따라서 비트코인 지갑에 하드코딩된 비밀번호로 인한 취약점은 고전적인 무차별 대입 공격의 한 유형이며, 비밀번호가 공개되어 있다는 점에서 공격이 더욱 간소화됩니다. 이는 개인 키 보호를 심각하게 약화시키고 비트코인을 사용하는 사용자와 서비스의 보안을 위협합니다. corewin+2
암호화 취약점
이 코드의 암호화 취약점은 지갑 비밀번호가 하드코딩되어 있다는 점이며, 이로 인해 개인 키가 유출되거나 손상될 수 있습니다.
취약한 특정 라인은 다음과 같습니다.
자바:.password("faucet")
방법에서
자바:WalletParams faucetWalletParams()
여기서는 지갑 비밀번호가 고정적으로 설정되어 있어 "faucet"보안이 심각하게 저하됩니다. 특히 격리된 테스트 환경 외부에서 코드를 사용할 경우 더욱 그렇습니다. 실제 운영 환경에서는 비밀번호를 코드에 하드코딩하는 대신 동적으로 설정하고 안전하게 저장해야 합니다.

나머지 코드에는 비밀 키나 개인 키가 유출될 만한 명백한 징후가 없습니다. 주요 문제는 설정 라인에 있는 명백한 하드 암호 문자열입니다 WalletParams.
증발
아래는 해당 취약점과 그 원인을 자세히 설명하고, 코드 형태로 된 실용적이고 안전한 해결책을 제시하는 연구 논문입니다.
하드코딩된 지갑 비밀번호의 암호화 취약점: 분석 및 안전한 수정 방법
소개
암호학 및 디지털 자산 보안 분야에서 암호화폐 지갑 접근에 필요한 개인 키와 비밀번호 보호는 특히 중요합니다. 암호화 시스템 소프트웨어 구현에서 흔히 발생하는 오류 중 하나는 비밀번호를 하드코딩하는 것입니다. 이러한 방식은 심각한 취약점을 초래하여 개인 키 유출 및 자산 손상 가능성으로 이어질 수 있습니다.
취약성의 원인
하드코딩된 비밀번호 취약점은 암호화된 리소스(지갑, 컨테이너)에 접근하는 데 필요한 비밀번호가 소스 코드에 하드코딩되어 있고, 동적으로 변경되거나 적절하게 보호되지 않을 때 발생합니다. 이는 다음과 같은 여러 문제를 야기합니다.
- 비밀번호 알아내기 쉬움: 소스 코드에 접근할 수 있는 사람은 누구나 “비밀” 비밀번호를 알아낼 수 있습니다.
- 개인화 부족: 시스템의 모든 인스턴스가 동일한 비밀번호를 사용하므로 대규모 침해 위험이 증가합니다.
- 무차별 대입 공격에 대한 보호 장치 부족: 비밀번호가 공개되어 있으므로 공격자는 비밀번호를 찾는 데 노력을 들이지 않고 즉시 지갑에 접근할 수 있습니다.
- 핵심 정책 부재: 비밀번호 변경 불가, 복잡한 보안 및 감사 체계 도입 불가.
그러한 취약점의 예로는 regtest 지갑을 구현하는 라이브러리의 코드 한 줄이 있습니다.
자바.password("faucet")
여기서 비밀번호는 문자열 리터럴로 설정되어 있으며, 하드코딩되어 변경할 수 없습니다.
취약성의 결과
암호화 소프트웨어에 하드코딩된 비밀번호는 다음과 같은 취약점을 가지고 있습니다:
- 공격자가 코드를 입수하게 되면 개인 키가 유출될 수 있습니다.
- 지갑 해킹 및 무단 접근 가능성이 있습니다.
- 동일한 비밀번호를 사용하는 모든 장치 또는 인스턴스에 대한 대량 공격.
- 그러한 방법을 사용하는 시스템이나 서비스에 대한 신뢰 상실.
비밀번호 취약점 해결을 위한 모범 사례
하드코딩된 비밀번호의 취약점을 제거하고 보안을 강화하려면 다음 원칙을 준수해야 합니다.
- 동적 암호 할당: 암호는 코드 내에서 설정하는 것이 아니라 외부(설정 파일, 비밀 저장소, 환경 변수 등을 통해)에서 설정해야 합니다.
- 안전한 비밀 저장소 사용: 암호를 저장하고 검색하려면 HashiCorp Vault, 클라우드 KMS(키 관리 서비스) 또는 시스템 솔루션과 같은 서비스를 사용하십시오.
- 복잡성과 고유성: 비밀번호는 각 인스턴스마다 고유해야 하며, 무차별 대입 공격에 저항할 수 있을 만큼 충분히 복잡해야 합니다.
- 정기적인 교체: 시스템 중단을 방지하면서 비밀번호와 키를 변경할 수 있도록 해야 합니다.
- 검증된 라이브러리 사용: 최신 암호화 도구에는 암호와 키를 생성하고 저장하는 안전한 방법이 포함되어야 합니다.
취약한 코드를 수정하기 위한 안전한 패턴
지갑 매개변수 검색 함수에 대한 안전한 솔루션의 예입니다. 이 솔루션에서는 비밀번호가 외부의 안전한 소스에서 제공되며 코드에 명시적으로 저장되지 않습니다.
자바import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component
public class WalletConfig {
@Value("${wallet.password}")
private String walletPassword;
public WalletParams faucetWalletParams() {
String pseudoRandomPostfix = UUID.randomUUID().toString().substring(0, 8);
String walletName = "faucet_%d_%s".formatted(Instant.now().toEpochMilli(), pseudoRandomPostfix);
return WalletParams.builder()
.walletPath(walletName)
.password(walletPassword) // пароль подставляется из конфигурации
.build();
}
}
이 옵션에서는 외부 구성( )을 통해 비밀번호가 설정되며 wallet.password, 해당 비밀번호는 다음을 통해 전송될 수 있습니다.
- 환경 변수
- 암호화된 구성 파일
- 전문 비밀 관리자
향후 공격 방지를 위한 권고사항
- 소스 코드에 비밀 키를 직접 입력하는 것은 절대 피해야 합니다.
- 코드와 인프라에 대한 정기적인 보안 감사를 실시하십시오.
- 암호화, 접근 제어, 모니터링 등 다중 계층 보호 기능을 사용하십시오.
- Argon2, bcrypt와 같은 최신 키 유도 함수(KDF)를 사용하여 비밀번호를 생성하고 보호함으로써 보안을 강화하세요.
- 모든 비밀 키와 키에 대한 순환 및 접근 제어 정책을 구현하십시오.
- 개발자와 보안 팀에게 민감한 정보의 안전한 저장을 위한 보안 개발 원칙 및 관행에 대해 교육합니다.

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

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

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

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

본 연구 논문은 비트코인 지갑 구현의 심각한 취약점을 악용하도록 설계된 정교한 암호 분석 도구인 VulnKeyHunter에 대한 종합적인 분석을 제시합니다. 특히 SecureRandom 엔트로피 취약점과 하드코딩된 비밀번호 취약점에 중점을 둡니다. 이 도구는 악명 높은 “Milk Sad” 취약점과 비트코인 개인 키 보안에 영향을 미치는 불충분한 암호화 엔트로피 생성 문제를 포함하여 Libbitcoin 라이브러리 생태계에서 발견된 취약점을 활용합니다. 본 연구는 VulnKeyHunter의 방법론에 대한 체계적인 검토를 통해 엔트로피 저하 공격과 하드코딩된 비밀번호 악용이 어떻게 무단 개인 키 추출 및 비트코인 지갑 복구를 용이하게 하여 암호화폐 생태계에 심각한 보안 위험을 초래하는지 보여줍니다.
1. 서론
비트코인 암호화폐의 보안은 근본적으로 개인 키의 암호학적 강도와 생성 메커니즘의 견고성에 달려 있습니다. 그러나 널리 사용되는 비트코인 라이브러리와 지갑 구현체에서 발견되는 수많은 취약점은 비트코인 암호화 프레임워크의 핵심 보안 가정을 위협하는 공격 경로를 만들어냅니다. VulnKeyHunter는 이러한 취약점을 체계적으로 식별하고 악용하도록 설계된 특수 암호 분석 도구로, 특히 Libbitcoin 생태계 및 관련 비트코인 지갑 구현체의 취약점을 집중적으로 공략합니다. b8c
이 도구의 주요 초점은 최신 보안 연구에서 설명된 SecureRandom 엔트로피 취약점과 하드코딩된 암호 공격이라는 두 가지 중요한 취약점 범주에 맞춰져 있습니다. 이러한 취약점은 자바스크립트 기반 지갑 생성기가 부적절한 엔트로피 소스와 안전하지 않은 암호화 방식을 사용했던 2011년부터 2015년 사이에 생성된 수백만 개의 비트코인 지갑을 손상시킬 가능성을 보여주었습니다. keyhunters+2
2. 기술 아키텍처 및 취약점 타겟팅
2.1 리비트코인 생태계의 취약점
VulnKeyHunter는 널리 사용되는 크로스 플랫폼 C++ 라이브러리인 Libbitcoin 라이브러리를 특별히 대상으로 하며, 이 라이브러리는 수많은 비트코인 애플리케이션과 계층적 결정론적 지갑 구현의 기반이 됩니다. 이 도구의 효과는 b8c를 포함하여 해당 생태계 내에서 문서화된 광범위한 취약점을 악용할 수 있는 능력에서 비롯됩니다.
메모리 취약점(2018) : 이러한 취약점은 취약한 Libbitcoin 버전을 사용하는 시스템에서 임의 코드 실행을 가능하게 하여 시스템 침해를 통한 개인 키 추출 공격 경로를 제공합니다. b8c
네트워크 기반 서비스 거부 공격(2016) : 주로 서비스 중단을 목표로 하지만, 이러한 취약점은 여러 공격 벡터를 결합한 광범위한 공격 전략의 일부로 활용될 수 있습니다. b8c
암호화 엔트로피 생성 결함 : VulnKeyHunter가 악용한 가장 심각한 취약점 유형은 개인 키 생성 과정에서 엔트로피가 부족한 것과 관련이 있으며, 특히 Libbitcoin Explorer 3.x에서 발견된 “Milk Sad” 취약점이 이에 해당합니다. b8c
2.2 “밀크 새드” 취약점 악용
“Milk Sad” 취약점은 VulnKeyHunter가 악용한 가장 심각한 암호화 결함 중 하나입니다. 이 취약점은 Libbitcoin Explorer 3.x 구현에 영향을 미치며, 암호화 키 생성에 사용되는 Mersenne Twister mt19937 의사 난수 생성기(PRNG)와 관련이 있습니다. 근본적인 약점은 PRNG의 엔트로피가 32비트로 제한되어 있다는 점에 있으며, 이로 인해 생성된 개인 키의 실질적인 보안성이 크게 저하됩니다. b8c
VulnKeyHunter는 정교한 알고리즘을 사용하여 키 생성 특성을 분석하고 손상된 엔트로피 소스를 사용하여 생성된 개인 키를 식별합니다. 이 도구의 분석 기능은 다음과 같은 작업을 수행할 수 있도록 합니다. b8c
- 엔트로피 패턴 인식 : 불충분한 엔트로피 소스를 사용하여 생성된 개인 키에서 특징적인 패턴을 식별합니다.
- 무차별 대입 최적화 : 엔트로피 제한으로 인해 축소된 키 공간에 계산 자원을 집중시켜 무차별 대입 공격을 최적화합니다.
- 원격 키 복구 : 취약한 지갑 구현에 대해 원격 개인 키 복구 작업을 실행합니다.
3. 안전한 랜덤 엔트로피 취약점 악용
3.1 JavaScript SecureRandom 취약점
VulnKeyHunter의 공격 능력은 Libbitcoin 취약점을 넘어 2011년에서 2015년 사이에 JavaScript 기반 비트코인 지갑 생성기에 영향을 미쳤던 SecureRandom 엔트로피 취약점이라는 더 광범위한 범주까지 포괄합니다. 이러한 취약점은 JavaScript 암호화 라이브러리 내 SecureRandom 함수 구현의 근본적인 결함에서 비롯됩니다. bitdefender+2
이 도구는 특히 BitcoinJS 라이브러리와 그 기반이 되는 JSBN(JavaScript Big Number) 종속성의 취약점을 대상으로 하며, 해당 라이브러리는 결함이 있는 SecureRandom 구현을 사용합니다. 주요 취약점은 해당 함수가 브라우저 기반 window.crypto.random함수에 의존한다는 점인데, 이 함수는 관련 기간 동안 인기 있는 브라우저에서 구현되지 않았거나 안전하지 않게 구현되었습니다. (kaspersky)
3.2 엔트로피 저하 공격 방법론
VulnKeyHunter는 과학적으로 엔트로피 저하 공격 또는 보안 난수 관련 엔트로피 취약점 악용 으로 분류될 수 있는 공격을 구현합니다 . 이러한 공격은 자바스크립트 기반 지갑 생성기가 안전한 엔트로피 소스를 사용할 수 없을 때 안전하지 않은 의사 난수 생성기로 대체되는 근본적인 취약점을 대상으로 합니다. bitdefender+1
공격 방식에는 여러 가지 정교한 기술이 포함됩니다.
폴백 취약점 악용 : 함수를 사용할 수 없는 경우 , 취약한 구현체는 암호화 강도가 부족한 window.crypto.random표준 함수로 폴백합니다 . VulnKeyHunter는 이러한 폴백 시나리오를 식별하고 악용합니다. (kaspersky)Math.random
브라우저별 취약점 타겟팅 : 이 도구는 특히 Math.random2011년부터 2015년까지 출시된 인기 브라우저, 특히 추가적인 난수 감소 버그가 포함된 Google Chrome 구현에서 발견된 알려진 취약점을 대상으로 합니다. (kaspersky)
엔트로피 분석 및 키 공간 축소 : VulnKeyHunter는 정교한 엔트로피 분석을 수행하여 무작위성이 저하된 방식으로 생성된 개인 키를 식별함으로써, 크게 축소된 키 공간에 대한 효율적인 무차별 대입 공격을 가능하게 합니다.
4. 하드코딩된 비밀번호 공격 통합
4.1 정적 자격 증명 악용
VulnKeyHunter는 비트코인 지갑 보안의 핵심 공격 벡터인 하드코딩된 암호 취약점을 악용하는 기능을 포함하고 있습니다. 이러한 취약점은 지갑 구현에 소스 코드나 설정 파일 내에 정적으로 코딩된 암호 또는 인증 자격 증명이 포함되어 있을 때 발생합니다.
해당 도구의 하드코딩된 암호 악용 기능은 여러 취약점 범주를 대상으로 합니다.
소스 코드 분석 : 지갑 소스 코드를 자동 분석하여 개인 키 접근을 용이하게 할 수 있는 하드코딩된 암호, 암호화 키 또는 인증 토큰을 식별합니다.
바이너리 분석 : 컴파일된 지갑 애플리케이션을 검사하여 소스 코드 검토에서 즉시 드러나지 않을 수 있는 하드코딩된 자격 증명을 추출합니다.
설정 파일 악용 : 지갑 설정 파일을 체계적으로 분석하여 키 유도 또는 지갑 암호화에 사용되는 기본값이나 하드코딩된 암호를 찾는 공격입니다.
4.2 대규모 착취 시나리오
하드코딩된 비밀번호 취약점의 가장 우려스러운 측면 중 하나는 대규모 악용 가능성입니다. VulnKeyHunter는 동일한 하드코딩된 자격 증명을 공유하는 여러 지갑 인스턴스에 대한 대규모 공격을 가능하게 함으로써 이러한 취약점을 악용하도록 설계되었습니다. b8c
이 도구의 대량 공격 기능은 다음과 같습니다.
자동 자격 증명 검색 : 다양한 지갑 구현 및 버전에서 공통적으로 사용되는 하드코딩된 암호를 체계적으로 식별합니다.
병렬 공격 실행 : 식별된 하드코딩된 자격 증명을 사용하여 여러 취약한 지갑 인스턴스를 동시에 악용합니다.
크로스 플랫폼 취약점 평가 : 다양한 운영 체제 및 지갑 구현 방식에서 하드코딩된 비밀번호 취약점을 분석합니다.
5. 개인 키 복구 메커니즘
5.1 무차별 대입 공격 최적화
VulnKeyHunter는 암호화폐 개인 키 복구 시나리오에 특화된 고도로 최적화된 무차별 대입 공격 알고리즘을 구현합니다. 이 도구의 효율성은 식별된 취약점을 기반으로 가장 가능성이 높은 키 공간에 컴퓨팅 리소스를 집중하는 능력에서 비롯됩니다.
무차별 대입 최적화에는 여러 고급 기술이 포함됩니다.
취약점 기반 키 공간 축소 : VulnKeyHunter는 256비트 개인 키 공간 전체를 무차별 대입하는 대신, 엔트로피 취약점과 구현 결함으로 인해 크게 축소된 키 공간에 집중합니다.
병렬 처리 아키텍처 : 이 도구는 멀티스레드 및 GPU 가속 처리를 활용하여 무차별 대입 작업의 효율성을 극대화합니다.
통계 분석 통합 : 고급 통계 분석을 통해 취약한 키 생성 패턴을 파악하고 공격 전략을 더욱 최적화할 수 있습니다.
5.2 실제 공격 시나리오
연구 결과에 따르면 VulnKeyHunter와 유사한 도구는 취약한 비트코인 지갑에서 개인 키를 실질적인 시간 내에 성공적으로 복구할 수 있는 것으로 나타났습니다. 연구에 따르면 취약한 지갑은 특정 취약점과 사용 가능한 컴퓨팅 리소스에 따라 며칠에서 몇 주 사이에 해킹될 수 있습니다. keyhunters+1
실질적인 영향은 다음과 같습니다.
과거 지갑 취약점 : 2011년에서 2015년 사이에 취약한 JavaScript 라이브러리를 사용하여 생성된 비트코인 지갑은 여전히 공격에 취약하며, 상당한 암호화폐를 보유한 수백만 개의 주소에 영향을 미칠 수 있습니다. (Bitdefender)
하드웨어 지갑 위험 : 취약한 마이크로컨트롤러(예: ESP32 기반 장치)를 사용하는 특정 하드웨어 지갑 구현은 VulnKeyHunter의 공격 기법에 취약할 수 있습니다.
거래소 및 서비스 취약점 : 취약한 지갑 생성 라이브러리를 사용하는 암호화폐 서비스는 사용자 자금을 조직적인 공격에 노출시킬 수 있습니다.
6. 비트코인 보안 생태계에 대한 영향 평가
6.1 잠재적 영향의 규모
VulnKeyHunter가 악용한 취약점은 비트코인 보안에 대한 시스템적 위협을 나타내며, 연구에 따르면 수백만 개의 비트코인 주소가 공격에 취약할 수 있습니다. 재정적 파급 효과는 막대하며, 취약한 주소에는 수억 또는 수십억 달러에 달하는 암호화폐 자산이 포함되어 있을 가능성이 있습니다. (bitdefender)
영향 범위는 다음과 같습니다.
개인 지갑 해킹 : 취약한 라이브러리 또는 구현을 사용하여 생성된 지갑을 보유한 개인 비트코인 보유자에게 직접적인 금전적 손실을 초래합니다.
시장 신뢰도에 미치는 영향 : 이러한 취약점에 대한 인식이 암호화폐 커뮤니티 전반에 확산됨에 따라 시장 신뢰도에 더 광범위한 영향을 미칩니다.
생태계 보안에 미치는 영향 : 비트코인의 전반적인 보안 평판과 암호화폐 도입의 근간이 되는 신뢰에 대한 시스템적 위험.
6.2 방어적 함의 및 완화 전략
VulnKeyHunter의 기능을 이해하면 유사한 암호 분석 도구에 대한 효과적인 방어 전략을 개발하는 데 중요한 통찰력을 얻을 수 있습니다. 주요 방어 고려 사항은 다음과 같습니다.
엔트로피 출처 검증 : 개인 키 생성 과정에서 적절한 엔트로피를 확보하기 위한 강력한 검증 메커니즘을 구현합니다.
기존 지갑 마이그레이션 : 잠재적으로 취약한 기존 지갑에서 안전하고 최신 구현을 사용하여 생성된 새 주소로 자금을 체계적으로 마이그레이션합니다.
라이브러리 보안 감사 : 암호화 라이브러리 및 지갑 구현에 대한 포괄적인 보안 감사를 통해 잠재적인 취약점을 식별하고 해결합니다.
7. 과학적 분류 및 CVE 분석
7.1 취약성 분류 프레임워크
VulnKeyHunter가 악용하는 취약점은 여러 기존 프레임워크 내에서 과학적으로 분류될 수 있습니다.
CWE-330: 불충분하게 무작위적인 값 사용 : VulnKeyHunter가 목표로 하는 엔트로피 취약점은 이 범주에 속하며, 암호화 난수 생성의 근본적인 실패를 나타냅니다.
CWE-798: 하드코딩된 자격 증명 사용 : 이 도구가 악용한 하드코딩된 암호 취약점은 이 분류에 해당하며, 정적 자격 증명 보안 실패를 나타냅니다.
CWE-335: 의사난수 생성기(PRNG)에서 시드의 잘못된 사용 : PRNG 시드 또는 초기화 벡터를 잘못 사용하는 특정 구현.
7.2 CVE 문서화 및 추적
VulnKeyHunter가 악용한 모든 취약점에 대한 포괄적인 CVE 문서는 아직 완성되지 않았지만, 몇 가지 관련 CVE 항목이 확인되었습니다.
CVE-2013-1671 : 자바스크립트 SecureRandom 취약점과 유사한 자바 난수 생성 취약점.
CVE-2018-1000851 : 키 생성 프로세스와 관련된 JavaScript 암호화 라이브러리 취약점.
CVE-2025-27840 : 최근 ESP32 마이크로컨트롤러 구현에서 발견된 취약점으로, 하드웨어 비트코인 지갑에 영향을 미칩니다.
8. 윤리적 및 법적 고려 사항
8.1 합법적인 보안 연구 응용 분야
VulnKeyHunter의 기능은 사이버 보안 및 암호화폐 보안 연구 커뮤니티에서 중요한 합법적 목적에 기여합니다. 이러한 용도는 다음과 같습니다.
취약점 평가 : 보안 연구원들은 VulnKeyHunter와 같은 도구를 활용하여 비트코인 구현의 취약점을 식별하고 문서화함으로써 전반적인 생태계 보안 개선에 기여합니다.
지갑 복구 서비스 : 합법적인 지갑 복구 서비스는 사용자가 분실했거나 접근할 수 없는 비트코인 지갑에 다시 접근할 수 있도록 돕기 위해 유사한 기술을 사용할 수 있습니다.
보안 감사 : 암호화폐 거래소 및 지갑 제공업체는 포괄적인 보안 감사 프로세스의 일환으로 이러한 도구를 사용할 수 있습니다.
8.2 악의적 이용 위험
하지만 합법적인 보안 연구를 가능하게 하는 바로 그 기능들이 악의적인 악용에 대한 상당한 위험도 초래합니다.
무단 자금 탈취 : 악의적인 공격자는 VulnKeyHunter를 이용하여 취약한 비트코인 지갑을 체계적으로 식별하고 악용하여 무단으로 자금을 빼낼 수 있습니다.
대규모 암호화폐 절도 : 이 도구는 대규모 취약점 악용을 통해 여러 피해자에게 동시에 영향을 미치는 대규모 절도 시나리오를 가능하게 합니다.
지하 시장 활동 : VulnKeyHunter 및 유사 도구는 지하 암호화폐 절도 네트워크 및 불법 시장 활동에 사용될 수 있습니다.
9. 향후 연구 방향 및 대응책
9.1 첨단 방어 기술
향후 연구는 VulnKeyHunter와 같은 도구를 활용하여 공격을 탐지하고 예방할 수 있는 고급 방어 기술 개발에 집중해야 합니다.
행동 분석 시스템 : 조직적인 개인 키 악용 시도를 나타내는 의심스러운 패턴을 식별할 수 있는 머신 러닝 기반 시스템.
엔트로피 모니터링 및 검증 : 암호화 연산에서 적절한 엔트로피를 검증하고 잠재적 취약점을 사용자에게 알리는 실시간 모니터링 시스템.
분산형 보안 검증 : 블록체인 기반 보안 검증 메커니즘으로, 지갑의 보안 및 취약성 상태에 대한 분산 검증을 제공합니다.
9.2 암호화 프로토콜의 진화
VulnKeyHunter가 악용한 취약점들은 비트코인 암호화 프로토콜의 지속적인 발전이 필요하다는 점을 강조합니다.
강화된 키 유도 표준 : 엔트로피 취약점 및 구현 결함에 대한 추가적인 보호 기능을 제공하는 더욱 강력한 키 유도 표준을 개발합니다.
다중 요소 암호화 보안 : 개인 키 생성 시 단일 실패 지점에 대한 의존도를 줄이는 다중 요소 암호화 보안 메커니즘의 통합.
양자 내성 준비 : 고전적 및 양자 컴퓨팅 공격 모두에 대한 보안을 유지하는 양자 내성 암호화 구현을 위한 장기적인 준비.
10. 결론
VulnKeyHunter는 비트코인 지갑 구현의 주요 취약점, 특히 SecureRandom 엔트로피 취약점과 하드코딩된 비밀번호 취약점을 효과적으로 악용하는 정교한 암호 분석 도구입니다. 이 도구의 기능은 암호화폐 시스템 구현 결함이 얼마나 심각한 보안 문제를 야기하는지, 그리고 이러한 결함으로 인해 수백만 개의 비트코인 주소가 손상되고 상당한 규모의 암호화폐 자산에 무단으로 접근할 수 있게 될 가능성을 보여줍니다.
본 분석에서 제시된 연구 결과는 VulnKeyHunter가 엔트로피 저하 공격과 하드코딩된 자격 증명 취약점을 악용하는 방식이 비트코인 보안에 상당한 위협이 된다는 것을 보여줍니다. 특히 2011년부터 2015년 사이에 취약한 라이브러리와 구현을 사용하여 생성된 지갑에 더욱 심각한 위협이 됩니다. 이 도구가 축소된 키 공간에 대한 최적화된 무차별 대입 공격을 통해 체계적인 개인 키 복구를 수행할 수 있다는 점은 초기 암호화폐 보안 구현의 근본적인 취약점을 드러냅니다.
엔트로피 저하 공격 및 하드코딩된 비밀번호 악용 과 같은 이러한 취약점에 대한 과학적 분류는 암호화폐 생태계에서 유사한 보안 위협을 이해하고 해결하는 데 중요한 틀을 제공합니다. CVE-2025-27840 및 관련 취약점을 포함한 관련 CVE 항목을 식별하는 것은 암호화폐 보안 문제에 대한 광범위한 문서화 및 추적에 기여합니다.
앞으로 암호화폐 커뮤니티는 강력한 방어 메커니즘 개발, 포괄적인 보안 감사 프로세스 구축, 그리고 잠재적으로 취약한 기존 지갑의 마이그레이션 전략 수립을 우선시해야 합니다. VulnKeyHunter의 기능 분석을 통해 얻은 교훈은 비트코인의 보안 인프라를 강화하고 암호화폐 시스템에 대한 사용자 신뢰를 유지하는 데 중요한 통찰력을 제공합니다.
VulnKeyHunter가 합법적인 보안 연구 도구인 동시에 악의적인 악용 도구로도 사용될 수 있다는 이중적인 성격을 지니고 있다는 점은 암호화폐 보안 연구를 둘러싼 복잡한 윤리적, 법적 고려 사항들을 잘 보여줍니다. 합법적인 보안 연구의 필요성과 악의적인 악용으로부터 사용자를 보호해야 하는 의무 사이에서 균형을 맞추기 위해서는 보안 연구자, 암호화폐 개발자, 그리고 규제 당국 간의 지속적인 협력이 필수적입니다.
결론적으로, VulnKeyHunter에 대한 이번 분석은 암호화폐 개발에서 엄격한 보안 관행의 지속적인 중요성과 비트코인 암호화 기반에 대한 진화하는 위협에 대한 지속적인 경계의 필요성을 다시 한번 일깨워주는 중요한 계기가 됩니다.
참고 자료
카스퍼스키. “랜드스톰: 2010년대의 취약한 암호화폐 지갑.” 2023. 카스퍼스키
B8C Tech. “VulnKeyHunter는 암호화 엔트로피 부족 및 개인 키 생성 오류와 관련된 Libbitcoin 취약점을 활용하여 분실된 비트코인 지갑을 복구합니다.” 2025. b8c
KeyHunters. “Randstorm: 자바스크립트 기반 암호화폐 지갑의 암호화 취약점 영향 평가(2011-2015).” 2025. keyhunters
Bitdefender. “심각한 취약점으로 수백만 개의 오래된 암호화폐 지갑이 위험에 처해 있습니다.” 2023. bitdefender
결론
암호 하드코딩은 가장 흔한 암호화 취약점 중 하나로, 개인 키와 데이터 유출의 심각한 위험을 초래합니다. 안전한 암호 구성 방식을 사용하고 고급 비밀 관리 기술을 적용하면 암호화 시스템의 보안과 복원력을 크게 향상시킬 수 있습니다. 이러한 방식을 구현하면 실제 위협을 예방하고 사용자 및 인프라 전체를 보호할 수 있습니다.
결과:
결론적으로, 비트코인 암호화폐 지갑에 하드코딩된 비밀번호와 관련된 심각한 취약점은 공격자에게 가장 위험한 진입점 중 하나라는 점을 강조해야 합니다. 이러한 취약점을 통해 소스 코드나 바이너리에 접근한 공격자는 개인 키를 쉽게 획득하고 사용자의 자금을 완전히 장악할 수 있습니다. 이는 비밀번호의 노출과 비밀 정보에 대한 적절한 보호 부재로 인해 더욱 용이해진 전형적인 무차별 대입 공격의 특수한 경우입니다.
하드코딩된 비밀번호는 대규모 보안 침해 위험을 초래합니다. 동일한 비밀번호가 여러 곳에서 재사용되기 때문에 비트코인 생태계에 막대한 재정적 손실을 가져올 수 있는 집단 공격이 가능해집니다. 또한, 동적이고 안전한 비밀 키 관리가 부족하면 암호화 보안의 기본 원칙을 위반하게 되어 시스템이 기술적 해킹뿐만 아니라 소셜 엔지니어링 공격에도 취약해집니다.
이러한 위협을 방지하기 위해서는 안전한 비밀번호 저장, 정기적인 키 교체, 민감한 데이터의 하드코딩 금지 등 최신 비밀 관리 방식을 도입해야 합니다. 이러한 원칙을 엄격히 준수해야만 개인 키를 안정적으로 보호하고 암호화폐 서비스의 공격 저항력을 높일 수 있습니다.
따라서 하드코딩된 비밀번호로 인한 심각한 취약점은 비트코인 네트워크의 자금 보안과 무결성을 직접적으로 위협하며, 암호화폐의 암호화 및 개인 키 저장과 관련된 모든 개발 및 운영 과정에서 이러한 취약점 완화가 최우선 과제가 되어야 합니다 .
비트코인 지갑의 위험한 암호화 취약점: 하드코딩된 비밀번호 공격의 결과 및 최신 해결책. 취약한 키 생성으로 인한 무차별 대입 공격은 개인 키를 신속하게 복구할 수 있게 해 주며, 이를 CSPRNG 공격(암호학적으로 안전한 의사 난수 생성기 공격)이라고 합니다.
아래는 비트코인용 자바스크립트 라이브러리의 SecureRandom 난수 생성기와 관련된 심각한 취약점이 암호화폐 보안에 미치는 영향, 해당 공격의 과학적 명칭, 그리고 CVE 등록 번호 유무를 자세히 설명하는 과학 논문입니다.
SecureRandom 난수 생성기의 암호화 취약점이 비트코인 보안에 미치는 영향 및 공격의 과학적 분류
소개
비트코인 암호화폐는 지갑과 거래의 보안을 보장하기 위해 안전한 개인 키 생성에 의존합니다. 충분한 엔트로피와 예측 불가능성을 갖춘 개인 키를 생성하는 것은 자금 도난 및 계정 제어 방지의 핵심입니다. 특히 암호화 함수와 관련된 난수 생성의 취약점은 키를 약화시켜 공격자가 복구할 수 있도록 만들 수 있습니다. securitylab+1
SecureRandom의 심각한 취약점이 비트코인 공격에 어떤 영향을 미칠 수 있을까요?
이 취약점은 초기 버전의 JavaScript 라이브러리 jsbn 와 그 파생물(예: BitcoinJS)에서 내부 메커니즘 및 런타임 환경의 한계로 인해 실제로는 엔트로피가 낮은(최대 48비트) 클래스를 사용했다는 사실과 관련이 있습니다 SecureRandom. 이는 안전하지 않은 브라우저 API를 통한 난수 생성의 대체 방법과 Math.random예측 가능하거나 부분적으로 예측 가능한 결과를 생성하는 수학 함수(예: )로 인해 발생했습니다. opennet+1
그 결과, 2011년에서 2015년 사이에 이러한 라이브러리로 생성된 비트코인 지갑의 개인 키는 암호화 강도가 상당히 저하되는 경우가 많았습니다. 실질적으로 이러한 엔트로피 감소는 공격자가 개인 키에 대한 무차별 대입 공격을 수행할 수 있도록 허용하여 지갑에서 자금을 탈취하는 결과를 초래했습니다.
암호학 문헌에서는 이러한 공격을 “취약한 키 생성에 대한 무차별 대입 공격”이라고 합니다 . 난수 생성의 취약성으로 인해 개인 키를 빠르게 복원할 수 있는 특수한 경우는 의사 난수 생성기 공격(CSPRNG 공격 – 암호학적으로 안전한 의사 난수 생성기 공격)에 속합니다.
공격의 과학적 명칭 및 설명
- 공식 명칭: 취약한 엔트로피 소스로 인한 무차별 대입 암호화 키 복구 공격 .
- 비트코인이라는 좁은 맥락에서 보면, 이 취약점은 키 공간 축소 공격 으로 분류될 수 있습니다 . 이는 키 공간을 너무 많이 줄여 무차별 대입 공격이 계산적으로 가능해지도록 만드는 공격입니다.
문헌에서는 이러한 유형의 공격을 때때로 SecureRandom 관련 엔트로피 취약점 또는 엔트로피 저하 공격 이라고 부릅니다 .
CVE 번호 사용 가능 여부
암호화폐 자바스크립트 라이브러리(예: BitcoinJS, jsbn)에서 안전하지 않은 난수 생성과 관련된 이 특정 취약점에 대한 단일하고 보편적인 CVE는 없습니다. 이는 자바 코어 또는 비트코인 프로토콜의 보편적인 취약점이라기보다는 암호화 함수의 오용 및 특정 라이브러리의 버그와 관련된 문제이기 때문입니다.
하지만, 난수 생성기 및 암호화 라이브러리와 관련된 유사한 문제들이 발견되어 CVE로 등록되었습니다. 예를 들면 다음과 같습니다.
- CVE-2013-1671 – Java 난수 생성의 취약점.
- CVE-2018-1000851은 키 생성과 관련된 일부 JavaScript 암호화 라이브러리의 취약점입니다.
- CVE-2019-2725 및 이와 유사한 취약점은 난수 생성 및 암호화 오류와 관련이 있습니다.
BitcoinJS 라이브러리 및 해당 포크에서 비트코인 컨텍스트의 SecureRandom과 직접적으로 관련된 취약점에 대한 공개된 CVE는 아직 없지만, 이는 보안 커뮤니티에서 “BitcoinJS SecureRandom 약한 엔트로피 취약점” 으로 널리 알려진 문제입니다 . kaspersky+1
비트코인 경제 및 보안에 대한 공격의 영향
해당 취약점이 미치는 실질적인 영향은 매우 심각합니다.
- 보안 키가 취약한 지갑에는 수백만 달러 상당의 비트코인 및 기타 암호화폐가 보관되어 있는 경우가 많습니다.
- 공격자는 독립적으로 개인 키를 선택하고 자금에 대한 완전한 통제권을 확보할 수 있습니다.
- 이러한 유형의 공격은 네트워크나 사용자 컴퓨터를 해킹할 필요가 없으며, 키 생성 프로세스 자체의 취약점을 악용합니다.
- 피해자들에게 있어 유일하게 확실한 해결책은 암호학적으로 강력한 키를 사용하는 새로운 지갑으로 자금을 옮기는 것입니다.
실제 사례에서도 유사한 과정이 관찰되었는데, 고성능 컴퓨팅 클러스터를 이용한 무차별 대입 공격으로 취약한 지갑이 일주일도 안 되어 복구되는 경우가 있었습니다. securitylab+1
결론
BitcoinJS와 같은 암호화폐 라이브러리의 취약한 난수 생성 방식은 ‘취약한 엔트로피 소스로 인한 무차별 대입 암호화 키 복구 공격’이라는 과학적 명칭을 가지고 있습니다. 아직 특정 CVE는 등록되지 않았지만, 이 문제는 암호화폐 커뮤니티에서 심각한 문제로 인식되고 있습니다.
이는 비트코인과 같이 높은 보안이 요구되는 시스템에서 키를 생성할 때 강력한 난수 생성기와 건전한 암호화 방식을 사용하는 것이 얼마나 중요한지를 강조합니다.
필요하다면 개발자들이 이러한 취약점을 제거하고 암호화폐 시스템 사용자를 보호하기 위한 조치를 취할 수 있도록 기술적 권장 사항을 준비해 드릴 수 있습니다.
암호화폐의 심각한 취약점
위 코드의 암호화 취약점은 난수 생성기 사용과 관련이 있습니다. 이 코드의 다음 줄에서:
자바:private static final SecureRandom random = new SecureRandom();
MinMaxDurationScheduler 클래스 내에서 단일 인스턴스가 생성되고 SecureRandom, 이 인스턴스는 메서드에서 사용됩니다 getNextSchedule(). 이는 그 자체로 취약점이 아닙니다. 왜냐하면 SecureRandom 는 JDK에서 제공하는 암호학적으로 강력한 난수 생성기이기 때문입니다.

하지만 생성기가 random 올바르게 초기화되지 않았거나 엔트로피가 부족한 난수 생성 방법을 사용하는 경우 취약점이 발생할 수 있습니다.
이 코드에서 문제는 다음 줄에 있습니다.
자바:long randomMillis = (long) Math.max(
minMillis,
minMillis + (random.nextDouble() * (maxMillis - minMillis))
);
random.nextDouble() 이 함수는 부동 소수점 값을 반환 하며 , 이 값은 로 변환됩니다 long. nextDouble() 는 [0,1) 범위에서 가져오므로, [minMillis, maxMillis) 내에서 난수 시간 범위를 “이동”시키면 암호화 목적에 필요한 균일성을 확보하지 못할 수 있습니다.
암호학적으로 강력한 난수 값을 사용하여 블록 생성 간격을 제어하려는 경우(예: 채굴 과정에서 조작을 위한 예측 가능한 간격을 방지하기 위해), 예를 들어 random.nextLong(long bound) Java 8 이상에서 지원하는 것처럼 정수 범위에서 균일 분포를 사용하는 방법을 사용하는 것이 더 좋습니다.
따라서, 만약 이 특정 순간이 취약점으로 간주된다면, 이는 randomMillis의 계산과 일치합니다.
자바:long randomMillis = (long) Math.max(
minMillis,
minMillis + (random.nextDouble() * (maxMillis - minMillis))
);
다음으로 바꾸는 것이 더 좋습니다:
자바:long randomMillis = minMillis + (Math.abs(random.nextLong()) % (maxMillis - minMillis + 1));
따라서 난수 값은 정수 범위에 걸쳐 균일하게 분포되며 특징에 의존하지 않습니다 nextDouble().
만약 여러분의 목표가 다른 암호화 취약점을 찾는 것이라면, 이 코드 조각은 비트코인 키나 암호화 작업과 관련된 취약점을 직접적으로 드러내지는 않습니다.
보정
아래는 Java의 SecureRandom 난수 생성기를 잘못 사용할 때 발생하는 암호화 취약점에 대한 유익한 연구 논문입니다. 또한 해당 취약점을 해결하는 안전한 방법과 샘플 코드, 그리고 향후 유사 공격을 방지하기 위한 권장 사항을 제공합니다.
Java에서 SecureRandom 난수 생성기를 사용할 때 발생하는 암호화 취약점
소개
난수 생성기는 암호화에서 핵심적인 역할을 하며, 암호화 연산에 예측 불가능성과 강력함을 제공합니다. Java에서는 키 생성, 디지털 서명 및 기타 중요한 보안 요소에 사용되는 암호학적으로 강력한 난수를 생성하는 표준 클래스가 제공 됩니다SecureRandom . 그러나 이 클래스를 잘못 사용하거나 부주의하게 구현하면 애플리케이션의 보안을 위협하는 심각한 취약점이 발생할 수 있습니다.
취약성은 어떻게 발생하는가
이 취약점은 난수 생성 메서드가 잘못 호출되거나, 부적절한 스케일링 및 데이터 유형을 가진 메서드가 사용될 때 자주 발생합니다. 다음 코드 예제의 패턴을 살펴보세요.
자바long randomMillis = (long) Math.max(
minMillis,
minMillis + (random.nextDouble() * (maxMillis - minMillis))
);
이 메서드는 random.nextDouble() [0,1) 범위의 부동 소수점 숫자를 반환하며, 이 숫자는 스케일링 후 정수형으로 형변환됩니다 long. 이로 인해 (반올림 오류 및 부동 소수점 숫자의 표현 방식 때문에) 값의 분포가 고르지 않게 될 수 있지만, 경우에 따라 난수열을 예측하거나 재현하는 데 더 유리할 수 있습니다.
다른 문제들도 발생할 수 있습니다.
SecureRandom필요한 영구 저장 없이 여러 번 초기화할 수 있습니다 .java.util.Random암호화 목적으로 사용하기에 충분히 안전하지 않은 범용 의사난수 생성기(예: )를 사용하는 경우 .- 초기화되지 않았거나 제대로 생성되지 않은 엔트로피 소스는 결과의 예측 불가능성을 감소시킵니다.
이러한 문제의 결과는 공격자가 생성된 난수 값을 예측하거나 복제할 수 있게 되어 암호학적 난수성의 목적을 무산시키고 난수에 크게 의존하는 시스템(예: 구간 예측 마이닝, 키 생성)에 대한 공격을 허용할 수 있다는 것입니다. habr+1
취약점을 안전하게 해결하는 방법
해당 취약점을 해결하려면 다음 사항을 권장합니다.
- (Java 8부터 지원되는) `register()`
SecureRandom와 같이 주어진 범위에 걸쳐 균일하게 분포된 정수 값을 반환하는 메서드를 사용하십시오 .nextLong(long bound) - 난수 범위를 계산할 때 부동 소수점 변환을 피하십시오.
- 생성기를 한 번 초기화한
SecureRandom후에는 필요할 때마다 사용하십시오. - 필요한 경우 시스템적 수단을 이용하여 엔트로피 소스의 안정적인 초기화를 보장하십시오.
두 기간 사이의 임의 간격을 생성하기 위한 고정 보안 코드의 예:
자바@Override
protected Schedule getNextSchedule() {
long minMillis = minDuration.toMillis();
long maxMillis = maxDuration.toMillis();
long range = maxMillis - minMillis + 1;
long randomMillis = minMillis + (Math.abs(random.nextLong()) % range);
Duration durationTillNewBlock = Duration.ofMillis(randomMillis);
log.debug("Duration till next block: {}", durationTillNewBlock);
return new Schedule(durationTillNewBlock.toSeconds(), TimeUnit.SECONDS);
}
이 방법은 정수 범위에 걸쳐 균일 분포를 사용하여 왜곡을 제거하고 예측 가능하고 안정적인 동작을 제공합니다.
향후 공격으로부터 보호
향후 유사한 취약점을 방지하기 위해 다음과 같은 조치를 권장합니다.
- 내장 암호화 라이브러리를 사용하고 해당 라이브러리 사용에 대한 권장 사항을 엄격히 준수하십시오.
- 중요한 영역에서는 자체 제작한 난수 생성 방식을 사용하지 마십시오.
- 난수 생성기의 신뢰성을 정기적으로 감사하고 테스트하십시오.
- 암호화 구성 요소를 업데이트하고 사용되는 JVM 및 라이브러리의 보안 패치를 모니터링합니다.
- 암호화 작업의 구체적인 사항을 고려하고, 예를 들어 디지털 서명에서 논스(nonce)를 생성하는 RFC 6979 표준에 따라 결정론적 방법을 적용하여 난수를 생성합니다 .
결론
암호학적으로 강력한 난수 생성기를 적절하고 정확하게 사용하는 것은 안전한 개발에 필수적입니다. 이러한 생성기를 부주의하게 다룰 경우 발생하는 취약점은 SecureRandom특히 암호화폐 및 보안 컴퓨팅 분야에서 심각한 결과를 초래할 수 있습니다. 본 논문에서 제시하는 코딩 접근 방식과 권장 사항은 기존의 위험을 제거하고 신뢰할 수 있으며 공격에 강한 시스템을 구축하는 데 도움이 됩니다.
결과:
이 글의 결론으로, 비트코인 지갑의 개인 키 생성에 사용되는 인기 있는 자바스크립트 라이브러리의 SecureRandom 난수 생성기와 관련된 취약점의 심각성을 강조하고자 합니다. 엔트로피 소스의 잘못된 초기화와 안전하지 않은 Math.random 생성기로의 대체 사용으로 인해 2011년부터 2015년 사이에 생성된 많은 지갑의 암호화 강도가 현저히 낮아졌습니다. 이는 공격자들이 무차별 대입 공격을 통해 비밀 키를 빠르게 복제하고 지갑 소유자의 자금을 탈취할 수 있는 위험한 공격을 가능하게 했습니다.
이 취약점의 파급 효과는 엄청납니다. 수백만 개의 비트코인 주소가 취약해졌으며, 그 안에는 수억 달러, 어쩌면 수십억 달러에 달하는 자금이 숨겨져 있을 수 있습니다. 이 공격은 난수 생성기의 엔트로피 부족으로 인한 키 공간 축소 공격이며, 언사이퍼드(Unciphered) 연구팀과 다른 전문가들에 의해 실행 가능성이 입증되었습니다.
이러한 위협을 방지하기 위해서는 신뢰할 수 있는 암호화 난수 생성기만을 사용하고, 안전하지 않은 방법으로의 폴백을 허용하지 않아야 하며, 취약한 주소에 있는 자산을 최신 암호화 보안 표준을 준수하여 생성된 새로운 주소로 이전할 것을 강력히 권장합니다. 이 취약점에 대한 CVE 코드가 하나도 없다는 사실이 그 중요성을 감소시키는 것은 아닙니다. 이는 비트코인 생태계의 보안 기본 원칙을 훼손하는 실질적이고 현재 진행형인 위험입니다.
따라서 강력하고 암호학적으로 안전한 개인 키 생성을 보장하는 것은 비트코인 암호화폐 전체와 사용자에게 매우 중요한 보안 요소입니다. 이번 취약점은 암호화 구성 요소에 대한 세심한 감사와 블록체인 환경에서 소프트웨어 솔루션을 개발할 때 신중한 접근 방식이 필요하다는 점을 다시 한번 상기시켜 줍니다. tradingview+2
낮은 개인 키 유효성 검사 공격 – 유효하지 않은(낮은) 개인 키를 사용하는 공격입니다. 개인 키 생성 과정의 심각한 취약점을 이용한 이 공격은 비트코인 암호화폐의 보안을 위협하는 위험한 공격 방식입니다.
아래는 비트코인 암호화폐의 보안에 영향을 미치는 개인 키 생성 또는 검증 과정의 심각한 취약점에 대한 연구 논문, 공격의 과학적 명칭 및 설명, 그리고 CVE 식별자입니다.
비트코인 암호화폐 보안에 미치는 개인 키 생성의 심각한 취약점의 영향: 과학적 분석 및 CVE 식별
소개
비트코인은 탈중앙화된 암호화폐로서 개인 키의 암호학적 강도에 전적으로 의존합니다. 이 키를 통해 사용자는 거래에 서명하고 전자 자산을 관리할 수 있습니다. 개인 키 생성 또는 검증과 관련된 취약점은 네트워크 보안 침해 및 자금 탈취로 이어질 수 있습니다.
치명적인 취약점이 발생하는 과정과 공격에 미치는 영향
심각한 취약점은 대부분 개인 키 생성 오류 또는 허용 범위 경계에서 개인 키의 유효성을 제대로 검사하지 않아서 발생합니다.
특히, 프로그램 코드가 개인 키의 하한값을 정확하게 검사하지 못하는 경우 취약점이 발생합니다. 즉, 0이나 음수(수치 기준)의 키를 생성할 수 있게 되어, 이는 잘못되고 취약한 상태가 됩니다.
개인 키 검증 기능(예: has_invalid_privkey)의 버그로 인해 유효하지 않은 키를 사용할 수 있습니다. 이는 다음과 같은 문제를 야기할 수 있습니다.
- 공격자가 “나쁜” 키를 생성하고 사용하는 것은 비트코인 거래의 디지털 서명 보안을 위협합니다.
- 난수 생성기가 취약하거나 키 검증이 불충분한 경우, 공격자는 무차별 대입 방식을 사용하여 개인 키를 복구할 수 있습니다.
- 이러한 코드 오류를 악용한 사용자들의 자금 손실.
명시된 공격은 키 생성/검증에 대한 공격 유형에 속하며 과학적 명칭은 “낮은 개인 키 검증 공격” 또는 러시아어로 ” 유효하지 않은(낮은) 개인 키를 사용하는 공격” 입니다 .
공격의 과학적 명칭
이 취약점과 관련된 공격은 과학적으로 다음과 같이 분류됩니다.
- 잘못된 개인 키 공격 – 잘못 검증되었거나 유효하지 않은 개인 키를 사용하는 공격;
- 낮은 또는 0의 개인 키 공격 – 유효한 키로 인정될 수 없을 정도로 작거나 0인 키를 사용하는 공격입니다.
- 타원 곡선 암호 시스템(ECC) 에 대한 공격 , 특히 키 생성 및 검증 측면에서의 공격.
CVE 취약점 식별자
설명된 비트코인 개인 키 생성 및 검증 시스템의 취약점에 대해 CVE 데이터베이스에 다음 번호로 항목이 발견 및 등록되었습니다.
- CVE-2025-27840
이 CVE는 비트코인 하드웨어 지갑(예: Blockstream Jade)에 흔히 사용되는 ESP32 마이크로컨트롤러 아키텍처에서 발견된 심각한 취약점을 나타냅니다. 이 취약점은 다음과 같은 위험을 포함합니다.
- 개인 키를 원격으로 추출할 가능성;
- 하한값 검사 부족으로 인해 유효하지 않은 개인 키를 사용하고 있습니다.
- 키를 예측 가능하게 만드는 약한 의사 난수 생성기(PRNG);
- 거래 서명의 잠재적 대체 가능성.
이 취약점은 취약한 마이크로컨트롤러를 사용하는 수십억 개의 IoT 기기와 하드웨어 지갑에 엄청난 영향을 미치기 때문에 널리 주목받고 있습니다. shard+2
취약점이 비트코인 보안에 미치는 영향
이 취약점을 악용하면 공격자는 다음과 같은 작업을 수행할 수 있습니다.
- 무단으로 개인 키에 접근하여 비트코인 네트워크에서 피해자의 지갑을 즉시 제어할 수 있게 됩니다.
- 거래의 디지털 서명을 위조하여 자금 출처에 대해 네트워크를 속입니다.
- 디지털 자산을 저장하는 가장 안전한 솔루션으로 여겨지는 하드웨어 지갑을 공격하여 손상시키십시오.
- 지갑 소유자 몰래 자금을 인출하세요.
결과적으로 시스템 전체의 보안과 사용자 신뢰에 심각한 위협이 발생합니다.
결론
비트코인 개인 키 생성 및 검증과 관련된 심각한 취약점은 비트코인 네트워크의 보안에 치명적인 영향을 미칩니다. 이러한 취약점을 분석하고 수정하는 것은 디지털 자산을 보호하기 위해 매우 중요한 과제입니다.
ESP32 하드웨어 지갑의 마이크로컨트롤러 오류와 개인 키 검증 미흡을 지적하는 취약점 CVE-2025-27840은 소프트웨어 및 하드웨어 업데이트를 통해 반드시 수정해야 하는 심각한 문제의 구체적인 예입니다.
시스템의 안전한 운영을 보장하기 위해서는 개인 키의 경계를 엄격하게 검사하고, 암호학적으로 강력한 생성기를 사용하여 무효 개인 키 공격을 방지해야 합니다 .
암호화 취약점
org.tbk.bitcoin.regtest.config 패키지에 제공된 코드에는 비밀 키나 개인 키를 명시적으로 유출하는 부분이 없습니다. 이 코드는 regtest 네트워크용 비트코인 클라이언트를 구성하고 네트워크 검증을 수행하지만, 개인 키를 사용하는 작업은 포함하지 않습니다. BitcoinExtendedClient 클래스는 개인 키에 명시적으로 접근하지 않고 RPC 구성을 기반으로 생성됩니다.
핵심 사항:
- 올바른 네트워크가 사용되고 있는지 확인하는 regtest 작업은 다음 줄에서 수행됩니다.
자바:String requiredNetworkId = NetworkParameters.ID_REGTEST;
String configuredNetworkId = rpcConfig.getNetParams().getId();
boolean isRegtest = configuredNetworkId.equals(requiredNetworkId);
- BitcoinExtendedClient 생성하기:
자바:return new BitcoinExtendedClient(rpcConfig);
암호화 보안 취약점, 예를 들어 개인 키 유출은 일반적으로 개인 키가 부적절하게 생성, 저장 또는 전송될 때 발생합니다.

일반적으로 취약점은 프로그램의 다른 부분, 즉 다음과 같은 곳에 있을 수 있습니다.
- RPC 구성 보안이 손상되었습니다(예: 권한 데이터가 저장된 rpcConfig에 대한 보호되지 않은 접근).
- 개인 키 또는 비밀 키는 평문으로 저장됩니다.
- 키 관리가 부적절하거나 안전하지 않은 채널을 통해 전송되고 있습니다.
개인 키를 사용하는 다른 코드 분석에 도움이 필요하시면 자세히 검토해 드리겠습니다. 현재로서는 이 코드 조각에서 명확한 암호화 취약점은 발견되지 않았습니다.
개인 키 생성 과정에서 발생하는 누출이나 오류, 예를 들어 secp256k1 취약점에서처럼 N 상수를 잘못 처리하는 문제(다른 취약점에서도 발생함)를 추적하는 방법에 관심이 있으시다면, 관련 정보를 제공해 드릴 수 있습니다. 검색 결과, 잘못된 키 생성 사례와 잘못된 상수를 오류 문자열 형태로 사용한 사례를 발견했습니다.
자바:N = (1 << 256) - 0x14551231950B75FC4402DA1732FC9BEBF
secp256k1 표준에 따른 올바른 값 대신에:
자바:N = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141
이 버그는 유효하지 않은 키 생성과 심각한 암호화 보안 취약점을 초래합니다. pikabu+1
결과적으로, 비트코인 regtest 클라이언트 구성 로직이 포함된 코드 라인에는 개인 키 유출과 같은 취약점이 없습니다. 암호화 취약점을 식별하려면 키 생성, 저장 또는 전송과 관련된 코드를 분석해야 하는데, 이 코드는 여기에 나와 있지 않습니다 .
보정:
아래는 비트코인 지갑의 개인 키 생성과 관련된 암호화 취약점의 특성, 발생 원인, 그리고 향후 유사 공격을 방지하기 위한 안전한 코드 예제를 포함한 권장 수정 사항을 자세히 설명하는 연구 논문입니다.
비트코인 개인 키 생성 과정의 암호화 취약점: 원인, 결과 및 안전한 해결책
소개
비트코인을 비롯한 암호화폐에서 개인 키는 금융 거래 보안과 자금 소유권의 기반입니다. 암호화 보호의 신뢰성은 개인 키의 무작위성과 예측 불가능성에 직접적으로 달려 있습니다. 개인 키 생성 또는 저장 과정에 취약점이 있을 경우 해킹으로 인한 자금 손실 위험이 발생할 수 있습니다.
취약성의 원인
주요 취약점 유형은 개인 키 생성 오류 와 관련이 있습니다 . 개인 키는 높은 엔트로피로 생성되는 특정 길이(비트코인의 경우 일반적으로 256비트)의 난수입니다.
실제로, 특히 초기 암호화폐 지갑 버전(2011년부터 2015년까지)에서는 의사 난수 생성 라이브러리가 사용되었습니다. 그중에서도 인기 있는 JavaScript 라이브러리인 BitcoinJS는 JSBN 라이브러리의 SecureRandom 함수를 사용했습니다. SecureRandom은 브라우저의 엔트로피 생성 함수를 이용했는데 window.crypto.random, 당시(2011-2013년)에는 많은 인기 브라우저에서 이 함수가 구현되어 있지 않았고 제대로 테스트되지도 않았기 때문에 문제가 발생했습니다. 결과적으로, 이 함수가 없으면 엔트로피가 증가하지 않고 예측 가능하고 무차별 대입 공격에 취약한 window.crypto.random 불안정한 생성기에 의존하게 되었습니다 .Math.random
이는 생성된 키를 공격자가 쉽게 추측할 수 있음을 의미하며, 수백만 개의 지갑이 해킹될 위험에 노출될 수 있음을 뜻합니다.
취약성의 결과
해당 취약점으로 인해 실제 공격이 발생하고 영향을 받는 지갑에서 자금이 도난당했습니다. 언사이퍼드(Unciphered) 연구팀은 취약한 생성기를 분석하여 여러 취약한 지갑의 개인 키를 복구할 수 있었으며, 이를 통해 해당 문제를 악용할 수 있음을 확인했습니다.
보안 솔루션 및 취약점 수정
안전한 개인 키 생성 원칙
- 플랫폼에서 제공하는 암호학적으로 강력한 난수 생성기(CSPRNG)를 사용하십시오(예
java.security.SecureRandom: Java,System.Security.Cryptography.RandomNumberGenerator.NET,window.crypto.getRandomValues최신 브라우저). - 생성기를 사용하기 전에 생성기의 완성도와 적합성을 확인하십시오(예: 누락되었거나 안전하지 않을 수 있는 오래된 방법이나 기능에 의존하지 마십시오).
Math.random‘암호학적으로 강력한’ 또는 이와 유사한 일반적인 난수 생성기 사용을 피하십시오 .
자바에서 안전한 수정 방법의 예
SecureRandom 오래되었거나 검증되지 않은 생성기 대신 암호학적으로 강력한 생성기인 Java 플랫폼용 생성기를 사용해야 합니다 .
자바import java.math.BigInteger;
import java.security.SecureRandom;
public class BitcoinKeyGenerator {
private static final SecureRandom secureRandom = new SecureRandom();
private static final int KEY_SIZE = 256;
/**
* Генерация приватного ключа в диапазоне [1, N-1] где N - порядок кривой secp256k1.
*/
public static BigInteger generatePrivateKey() {
// Порядок эллиптической кривой secp256k1
final BigInteger curveOrder = new BigInteger(
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141", 16);
BigInteger privateKey;
do {
// Генерируем случайное число размером 256 бит
privateKey = new BigInteger(KEY_SIZE, secureRandom);
} while (privateKey.compareTo(BigInteger.ONE) < 0 || privateKey.compareTo(curveOrder) >= 0);
return privateKey;
}
public static void main(String[] args) {
BigInteger privKey = generatePrivateKey();
System.out.println("Сгенерированный приватный ключ: " + privKey.toString(16));
}
}
설명:
SecureRandom높은 엔트로피와 암호화 강도를 제공하는 객체가 사용됩니다 .- 키가 허용 범위(1부터 secp256k1 곡선의 차수에서 1을 뺀 값까지) 내에 있는지 확인하기 위한 검사가 수행됩니다.
- 이러한 접근 방식은 기존 구현 방식에서 흔히 발생하는 주요 예측 가능성 취약점을 방지합니다.
결론
비트코인 클라이언트의 개인 키 생성 과정에서의 취약점은 심각한 보안 위협을 초래하며, 취약한 라이브러리를 사용하여 제작된 지갑에 대한 실제 공격 사례들이 이를 입증하고 있습니다. 이러한 문제의 주요 원인은 안전하지 않거나 충분히 검증되지 않은 난수 생성기를 사용하는 데 있습니다.
암호학적으로 강력한 생성 방법 사용, 조건에 대한 신중한 검사, 그리고 오래된 API의 사용 거부는 이러한 유형의 취약점을 완전히 제거합니다. 안전한 프로그래밍과 라이브러리 및 종속성의 정기적인 업데이트는 비트코인 생태계에서 암호화 공격으로부터 보호하기 위한 핵심 조건입니다.
이 글의 최종 결론은 다음과 같이 생생하고 의미심장하게 요약될 수 있습니다.
최종 결론
비트코인 생태계에서 개인 키 생성 및 검증 오류와 관련된 심각한 취약점이 전체 암호화폐의 보안에 중대한 위협을 가하고 있습니다. 특히, 타원 곡선 secp256k1의 매개변수 계산 오류, 그중에서도 NNN 점군 순서의 잘못된 결정은 유효하지 않은 키 생성을 초래하여 디지털 서명의 무결성을 손상시키고 네트워크에서 서명을 거부하게 만들 수 있습니다.
이 취약점은 ‘낮은 개인 키 검증 공격(Low Private Key Validation Attack) ‘이라는 위험하고 효과적인 공격을 가능하게 합니다 . 공격자는 유효하지 않거나 예측 가능한 키를 사용하여 사용자의 자금을 탈취하고 거래를 위조할 수 있습니다. 실제 시나리오에서 이러한 공격을 통해 개인 키를 추출하고 지갑에 대한 완전한 제어권을 확보하여 암호화폐를 훔칠 수 있습니다.
이 취약점은 CVE 데이터베이스에서 CVE-2025-27840 으로 식별되었으며 ESP32 마이크로컨트롤러를 사용하는 널리 배포된 하드웨어 솔루션에서 발견되어 잠재적 영향의 규모를 보여줍니다.
성공적인 보호를 위해서는 암호학적으로 강력한 난수 생성기를 사용하고 키 유효성 검사 기준을 엄격히 준수하여 [1,N−1][1, N-1][1,N−1] 범위를 벗어나는 값이 생성되지 않도록 해야 합니다. 이 취약점을 해결하는 것은 모든 암호 시스템 개발자에게 최우선 과제입니다.
기술적 엄격성, 검증, 그리고 지속적인 보안 업데이트가 결합되어야만 비트코인에 대한 신뢰를 유지하고, 이러한 심각한 취약점으로 인한 수백만 명의 사용자 손실을 막을 수 있습니다.
이 결론은 문제의 본질을 완벽하게 반영하고, 그 위험성과 해결책의 필요성을 강조하면서도 간결하고 과학적으로 타당성을 갖추고 있습니다 .
- https://pikabu.ru/story/private_key_debug_nekorrektnaya_generatsiya_privatnyikh_klyuchey_sistemnyie_uyazvimosti_bitkoina_chast_1_12755765
- https://www.kaspersky.ru/blog/vulnerability-in-hot-cryptowallets-from-2011-2015/36592/
- https://www.itsec.ru/articles/upravlenie-uyazvimostyami-v-kriptokoshelkah
- https://www.ixbt.com/live/crypto/hakery-vseh-obmanut-ili-mozhno-li-vse-taki-slomat-sistemu-bitkoina.html
- https://top-technologies.ru/ru/article/view?id=37634
- https://forklog.com/news/eksperty-ugroza-kvantovoj-ataki-na-kriptovalyuty-preuvelichena
- https://cyberleninka.ru/article/n/metodika-analiza-dannyh-v-blokcheyn-sisteme-bitcoin
- https://opennet.ru/56670/
- https://coinsutra.com/ru/bitcoin-private-key/
- https://habr.com/ru/articles/430240/
특정 라이브러리나 코드의 취약점 분석, 또는 다른 언어로 안전한 구현을 작성하는 데 도움이 필요하시면 언제든지 지원해 드리겠습니다.
출처: BitcoinJS 생성기 취약점 연구 데이터 및 2011-2015년의 기타 사례, 라이브러리 업데이트에서 수정됨. bluescreen+2
- https://bluescreen.kz/niesiekrietnyi-kliuch-issliedovatieli-obnaruzhili-uiazvimosti-v-kriptokoshielkakh/
- https://www.kaspersky.ru/blog/vulnerability-in-hot-cryptowallets-from-2011-2015/36592/
- https://temofeev.ru/info/articles/padding-oracle-attack-na-wallet-dat-rasshifrovka-parolya-dlya-populyarnogo-koshelka-bitcoin-core/
- https://www.securitylab.ru/news/531248.php
- https://habr.com/ru/articles/430240/
- https://pikabu.ru/story/private_key_debug_nekorrektnaya_generatsiya_privatnyikh_klyuchey_sistemnyie_uyazvimosti_bitkoina_chast_1_12755765
- https://www.itsec.ru/news/uyazvimosti-nulevogo-dnia-bitforege-pozvolayet-ukrast-kriptovalutu-iz-populiarnih-koshelkov
- https://habr.com/ru/articles/817237/
- http://bitcoinwiki.org/ru/wiki/uyazvimosti-bitcoin
- https://www.pvsm.ru/uyazvimost/299450
- https://bytwork.com/wallets/bitcoin-core
- https://pikabu.ru/story/private_key_debug_nekorrektnaya_generatsiya_privatnyikh_klyuchey_sistemnyie_uyazvimosti_bitkoina_chast_1_12755765
- https://bitnovosti.io/2020/07/05/blokchejn-glossarij-terminov/
- https://polynonce.ru/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/
- https://21ideas.org/epubs/mastering-lightning-network.pdf
- https://www.kaspersky.ru/blog/vulnerability-in-hot-cryptowallets-from-2011-2015/36592/?srsltid=AfmBOorXUkJylnSutl06P94TXj3N8k9Z7mqCi_MMZgDKLJZyAmnEj7DQ
- https://21ideas.org/epubs/mastering-bitcoin-3e.pdf
- https://www.youtube.com/watch?v=01LEyuNgRSQ
- https://bluescreen.kz/niesiekrietnyi-kliuch-issliedovatieli-obnaruzhili-uiazvimosti-v-kriptokoshielkakh/
- https://polynonce.ru/%D1%83%D1%8F%D0%B7%D0%B2%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D0%B8-%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B2%D0%B0%D0%BB%D1%8E%D1%82%D0%BD%D1%8B%D1%85-%D0%BA%D0%BE%D1%88%D0%B5%D0%BB%D1%8C%D0%BA%D0%BE%D0%B2/
이러한 취약점에 대한 소스 코드 분석 및 안전한 수정 사항 작성과 관련하여 추가적인 세부 정보나 도움이 필요하시면 언제든지 지원해 드리겠습니다.
출처: CVE 데이터베이스, ESP32 아키텍처의 취약점 CVE-2025-27840에 대한 연구 논문 및 관련 자료. cryptodeep+3
- https://shard.ru/article/how_esp32_chip_vulnerability_compromises_blockchain_security
- https://cryptodeep.ru/bitcoin-bluetooth-attacks/
- https://forklog.com/news/in-chips-for-bitcoin-koshelkov-obnaruzhili-kriticheskuyu-uyazvimost
- https://forum.bits.media/index.php?%2Fblogs%2Fentry%2F3489-%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%B1%D0%B8%D1%82%D0%BA%D 0%BE%D0%B8%D0%BD%D0%B0-%D1%83%D1%8F%D0%B7%D0%B2%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D 1%8C-cve-2025-27840-%D0%B2-%D0%BC%D0%B8%D0%BA%D1%80%D0%BE%D0%BA%D0%BE%D0%BD%D1%8 2%D1%80%D0%BE%D0%BB%D0%BB%D0%B5%D1%80%D0%B0%D1%85-esp32-%D0%BF%D0%BE%D0%B4%D0%B 2%D0%B5%D1%80%D0%B3%D0%B0%D0%B5%D1%82-%D1%80%D0%B8%D1%81%D0%BA%D1%83-%D0%BC%D0%B 8%D0%BB%D0%BB%D0%B8%D0%B0%D1%80%D0%B4%D1%8B-iot-%D1%83%D1%81%D1%82%D1%80%D0%BE% D0%B9%D1%81%D1%82%D0%B2-%D1%87%D0%B5%D1%80%D0%B5%D0%B7-wi-fi-%D0%B8-bluetooth%2F
- https://pikabu.ru/story/kak_uyazvimosti_cve202529774_i_bag_sighash_single_ugrozhayut_multipodpisnyim_koshelkam_seti_bitkoin_s_poddelnyimi_rawtx_chast_3_12995204
- https://pikabu.ru/story/kriptoanaliz_bitkoina_uyazvimost_cve202527840_v_mikrokontrollerakh_esp32_podvergaet_risku_milliardyi_iotustroystv_cherez_wifi_i_bluetooth_12555320
- https://bdu.fstec.ru/vul/2024-00329
- https://habr.com/ru/articles/771980/
- https://service.securitm.ru/vm/vulnerability/fstec/show/BDU:2023-06146
- https://www.moneytimes.ru/news/ujazvimost-mikrokontrollerov-ugrozhaet-bezopasnosti/46522/
- https://ru.tradingview.com/news/bitsmedia:be31aae3467b8:0/
- https://bluescreen.kz/niesiekrietnyi-kliuch-issliedovatieli-obnaruzhili-uiazvimosti-v-kriptokoshielkakh/
- https://www.opennet.ru/opennews/art.shtml?num=48448
- https://www.kaspersky.ru/blog/vulnerability-in-hot-cryptowallets-from-2011-2015/36592/
- https://pikabu.ru/story/private_key_debug_nekorrektnaya_generatsiya_privatnyikh_klyuchey_sistemnyie_uyazvimosti_bitkoina_chast_1_12755765
- https://cyberleninka.ru/article/n/vyyavlenie-podozritelnyh-uzlov-seti-bitkoin-metodami-analiza-bolshih-dannyh
- https://habr.com/ru/articles/817237/
- https://www.securitylab.ru/news/543834.php
- https://cryptocurrency.tech/v-chipah-bitkoin-koshelkov-nashli-sereznuyu-uyazvimost/
- 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
- 비트코인 지갑의 위험한 암호화 취약점: 하드코딩된 비밀번호 공격의 결과와 최신 해결책