-
Bitcoin
$97,056.1391
3.32% -
Ethereum
$1,828.2096
3.57% -
Tether USDt
$1.0000
0.02% -
XRP
$2.1355
1.98% -
BNB
$604.7795
1.47% -
Solana
$146.7970
3.06% -
USDC
$1.0000
0.01% -
Dogecoin
$0.1723
4.12% -
Cardano
$0.6727
3.79% -
TRON
$0.2474
1.39% -
Sui
$3.3655
4.05% -
Chainlink
$13.7494
3.33% -
Avalanche
$19.5298
0.17% -
Stellar
$0.2608
2.74% -
UNUS SED LEO
$8.6906
-0.31% -
Shiba Inu
$0.0...01283
3.32% -
Toncoin
$3.0171
0.82% -
Hedera
$0.1762
3.26% -
Bitcoin Cash
$365.2710
3.17% -
Hyperliquid
$21.2478
6.40% -
Litecoin
$90.3649
10.53% -
Polkadot
$3.9604
2.27% -
Dai
$1.0001
0.01% -
Monero
$282.6702
-2.09% -
Bitget Token
$4.2990
0.33% -
Ethena USDe
$1.0003
0.02% -
Pi
$0.5827
0.28% -
Pepe
$0.0...08169
6.16% -
Bittensor
$364.3323
1.57% -
OKB
$50.9016
0.84%
재창조 공격이란 무엇입니까?
재창조 공격은 완료되기 전에 기능을 반복적으로 호출하여 자금을 배수함으로써 스마트 계약 취약점을 이용합니다. 이를 방지하려면 CEI (Checks-Effects-Interaction) 패턴이 필요하므로 외부 호출 전에 상태 업데이트가 발생하도록합니다.
2025/03/10 20:10

핵심 사항 :
- 재창조 공격은 스마트 계약의 취약성을 공격하여 초기 통화가 완료되기 전에 기능을 반복적으로 호출하거나 자금을 배출하거나 다른 악의적 인 조치를 유발합니다.
- 핵심 취약점은 상태 업데이트가 완료되기 전에 재입국을 방지하기 위해 적절한 점검이 부족한 상태입니다.
- 예방에는 CEI (Checks-Effects-Interaction) 패턴을 사용하여 모든 외부 통화가 완료된 후에 만 계약 상태를 수정하는 것이 포함됩니다.
- 재창조 취약점을 이해하는 것은 안전하고 안정적인 스마트 계약을 개발하는 데 중요합니다.
재창조 공격이란 무엇입니까?
재창조 공격은 이더 리움과 같은 블록 체인 플랫폼에서 스마트 계약을 대상으로하는 악용 유형입니다. 초기 통화가 완전히 실행되기 전에 악성 계약이 대상 계약 내에서 함수를 반복적으로 호출 할 수있는 취약점을 활용합니다. 이를 통해 공격자는 계약의 상태를 조작하고 자금을 배수하거나 다른 원치 않는 행동을 유발할 수 있습니다. 핵심 문제는 스마트 계약 내에서 외부 통화의 비동기 특성에서 비롯됩니다.
재창조 공격은 어떻게 작동합니까?
withdraw
기능과의 현명한 계약을 상상해보십시오. 사용자는이 기능을 호출하여 자금을 인출합니다. 계약이 재창조를 제대로 처리하지 않으면 계약이 withdraw
기능을 반영하기 위해 내부 상태를 업데이트하기 전에 악성 계약이 인출 기능 실행 내에서 withdraw
기능을 다시 호출 할 수 있습니다. 이것은 계약이 고갈 될 때까지 공격자가 반복적으로 자금을 인출하는 루프를 만듭니다.
취약점 : 상태 업데이트 부족
재 신석 취약점의 근본 원인은 스마트 계약 내에서 운영 순서에 있습니다. 이상적으로, 계약은 먼저 철수가 허용되는지 확인한 다음 인출을 수행 한 다음 마지막으로 내부 상태를 업데이트해야합니다. 그러나 철수가 완전히 처리되기 전에 상태 업데이트가 발생하면 악의적 인 행위자는이 격차를 악용하여 기능을 반복적으로 호출 할 수 있습니다.
Checks-Effects-Interactions (CEI) 패턴
재창조 공격을 방지하는 가장 효과적인 방법은 CEI (Checks-Effects-Interaction) 패턴을 따르는 것입니다. 이 패턴은 운영 순서를 지시합니다.
- 점검 : 함수의 모든 조건이 충족되었는지 확인하십시오. 여기에는 충분한 균형, 승인 등이 포함됩니다.
- 효과 : 계약의 내부 상태를 수정하십시오. 여기에는 잔액 업데이트, 토큰 전송 등이 포함됩니다.
- 상호 작용 : 자금 발송 또는 다른 계약과의 상호 작용을 포함하여 외부 전화를합니다.
상태가 업데이트 된 후 외부 통화를 배치함으로써 공격자는 최초 통화가 완료되기 전에 함수를 다시 입력하고 상태를 조작 할 수 없습니다.
실제 예 : 재창조 방지
단순화 된 withdraw
기능을 고려해 봅시다.
취약한 코드 :
function withdraw(uint amount) public { require(balances[msg.sender] >= amount); balances[msg.sender] -= amount; send(msg.sender, amount); //External call before state update. }
보안 코드 (CEI 사용) :
function withdraw(uint amount) public { require(balances[msg.sender] >= amount); uint amountToSend = amount; //Store amount locally balances[msg.sender] -= amountToSend; //State update before external call send(msg.sender, amountToSend); }
보안 버전은 외부 send
통화를하기 전에 잔액을 업데이트하여 재입국을 방지합니다. 이것은 단순화 된 예입니다. 실제로보다 강력한 기술이 필요할 수 있습니다.
다른 완화 전략
CEI 패턴 외에 다른 전략은 재창조 위험을 완화하는 데 도움이 될 수 있습니다. 여기에는 다음이 포함됩니다.
- Reentrancy Guard 사용 : 함수가 호출 될 때 true로 설정된 부울 변수를 사용하여 완료된 후에 만 재설정됩니다. 가드가 진실한 동안 다시 입력하려는 시도는 차단됩니다.
- 라이브러리 및 외부 통화를 신중하게 사용 : 외부 통화를 최소화하고 계약 내에서 사용되는 외부 라이브러리를 철저히 감사합니다.
자주 묻는 질문 (FAQ)
Q : 모든 스마트 계약이 재창조 공격에 취약합니까?
A : 아니요. 기능 논리에서 취약점을 가진 스마트 계약 만, 특히 CEI 패턴을 따르거나 다른 적절한 보호 장치를 사용하지 않는 사람들은 민감합니다.
Q : 스마트 계약에서 재창조 취약점을 어떻게 감지 할 수 있습니까?
A : 재창조 취약점을 감지하는 데 숙련 된 전문가의 공식 검증 도구, 수동 코드 검토 및 보안 감사가 필수적입니다. 정적 분석 도구는 잠재적 인 문제를 식별하는 데 도움이 될 수 있습니다.
Q : 성공적인 재창조 공격의 결과는 무엇입니까?
A : 성공적인 재창조 공격은 자금 손실, 계약 상태 조작 및 스마트 계약의 의도 된 기능 중단으로 이어질 수 있습니다. 공격자는 통제권을 얻고 모든 자산의 계약을 배출 할 수 있습니다.
Q : 재창조 공격을 자동으로 방지하는 도구가 있습니까?
A : 완전한 예방을 보장하는 단일 도구는 없지만 일부 도구는 잠재적 인 취약점을 감지하기위한 정적 분석을 제공합니다. 그러나 수동 코드 검토 및 보안 감사는 포괄적 인 보호를 위해서는 여전히 중요합니다. CEI 패턴과 같은 확립 된 모범 사례에 따라 가장 중요합니다.
Q : 재창조 공격은 얼마나 흔합니까?
A : 재창조 공격은 다른 취약성만큼 널리 퍼지지는 않았지만 역사적으로 재정적 손실이 발생했습니다. 그들은 스마트 계약 개발에서 강력한 보안 관행의 중요성을 강조합니다. 2016 년 DAO 해킹은 이러한 유형의 공격의 치명적인 영향의 대표적인 예입니다.
Q : 배포 후 재창조 취약점을 수정할 수 있습니까?
A : 배치 후 재창조 취약점을 수정하는 것은 어려우며 종종 새로운 계약 배포가 필요합니다. 계약의 심각성과 성격에 따라 신중하게 계획된 업그레이드가 가능할 수 있습니다. 그러나이를 위해서는 수정이 새로운 취약점을 도입하지 않도록 광범위한 테스트가 필요합니다.
부인 성명:info@kdj.com
제공된 정보는 거래 조언이 아닙니다. kdj.com은 이 기사에 제공된 정보를 기반으로 이루어진 투자에 대해 어떠한 책임도 지지 않습니다. 암호화폐는 변동성이 매우 높으므로 철저한 조사 후 신중하게 투자하는 것이 좋습니다!
본 웹사이트에 사용된 내용이 귀하의 저작권을 침해한다고 판단되는 경우, 즉시 당사(info@kdj.com)로 연락주시면 즉시 삭제하도록 하겠습니다.
- Movement Labs는 진행중인 논쟁과 대중 조사 속에서 공식적으로 Rushi Manche를 종료합니다.
- 2025-05-07 22:30:13
- 미국 대통령 도널드 트럼프가 지원하는 세계 리버티 파이낸티 (WLFI)가 발사 한 미국 달러 안정인 USD1은 전 세계 7 번째로 큰 안정된 스타블 레코 인이되었습니다.
- 2025-05-07 22:30:13
- Jovita Idar Quarter, 32nd Mint Directors Conference에서 최고의 순환 코인 또는 코인 시리즈 카테고리 우승
- 2025-05-07 22:25:13
- 트럼프 코인 : 공식 트럼프 토큰이 등장하여 차트를 습격하여 시장을 목표로했습니다.
- 2025-05-07 22:25:13
- Ruvi Ai는 방금 레이스 지갑에 비트 코인을 추가하여 큰 발전을 이루었고 이제 다른 별이 떠오르고 있습니다.
- 2025-05-07 22:20:14
- Hougan은 4 개의 주요 와이어 하우스가 모두 Bitcoin ETF 액세스를 연말까지 접근 할 수 있다고 믿고 기록 유입 단계를 설정합니다.
- 2025-05-07 22:20:14
관련 지식

분산 된 교환은 어떻게 작동합니까? 중앙 집중식 교환보다 안전합니까?
2025-05-07 05:28:17
분산 교환 소개 탈 중앙화 교환 (DEX)은 블록 체인 네트워크에서 작동하여 사용자가 중개자의 필요없이 암호 화폐를 서로 직접 교환 할 수 있습니다. 단일 기업이 관리하는 중앙 대상 거래소와 달리 DEXS는 스마트 계약을 활용하여 거래를 촉진하여 단일 당사자가 자금을 통제 할 수 없도록합니다. 이 구조는 사용자가 항상 자산에 대한 제어를 유지하기 때문에 보안 및 개인 정보를 향상시키는 것을 목표로합니다. 분산 된 교환은 어떻게 작동합니까? DEX의 핵심에는 스마트 계약 의 사용이 있으며,이 용어는 코드에 직접 작성된 용어와 자체 실행 계약입니다. 이 스마트 계약은 주문서를 관리하고 사전 정의 된 조건에 따라 거래를 실행합니다. ...

분산 된 오라클의 역할은 무엇입니까? 스마트 계약에 외부 데이터를 어떻게 제공합니까?
2025-05-06 20:56:18
분산 된 오라클은 블록 체인과 현실 세계 사이의 다리 역할을함으로써 블록 체인 및 스마트 계약의 세계에서 중요한 역할을합니다. 스마트 계약은 블록 체인에서 실행되는 자체 실행 프로그램이며 계약 조건을 자동으로 시행하도록 설계되었습니다. 그러나 이러한 계약은 종종 블록 체인 외부의 데이터가 효과적으로 기능하기 위해 필요합니다. 이곳에서 탈 중앙화 된 오라클은 블록 체인에 외부 데이터를 가져오고 확인하고 전달하여 스마트 계약이 실제 이벤트 및 데이터와 상호 작용할 수있게합니다. 분산 된 오라클이란 무엇입니까? 분산 된 Oracle은 블록 체인의 스마트 계약에 외부 데이터를 제공하는 시스템 또는 네트워크입니다. 단일 데이터 소스에 의...

분산 된 응용 분야의 특성은 무엇입니까? DAPP의 사용자 경험과 전통적인 앱의 차이점은 무엇입니까?
2025-05-06 23:35:45
일반적으로 DAPP로 알려진 분산 된 응용 프로그램은 cryptocurrency 생태계 내에서 중요한 혁신으로 부상했습니다. 이러한 응용 프로그램은 블록 체인 기술에서 작동하여 기존 응용 프로그램과 구별되는 다양한 고유 한 기능을 제공합니다. 이 기사에서는 DAPP의 주요 특성을 탐색하고 사용자 경험이 기존 앱의 특성과 어떻게 다른지 조사 할 것입니다. 분산 된 응용 분야의 특성 DAPP는 기본 인프라 역할을하는 블록 체인 기술을 기반으로합니다 . 이는 중앙 서버에 의존하는 대신 DAPPS가 분산 노드 네트워크에서 작동 함을 의미합니다. 이 탈 중앙화 된 특성은 단일 엔터티가 응용 프로그램을 제어하여 보안을 강화하고 데이터 유출...

분산 된 정체성은 어떻게 작동합니까? 개인 정보 및 데이터 소유권 문제를 어떻게 해결합니까?
2025-05-07 01:35:39
종종 그와 마찬가지로, 종종 저조한 분산 된 정체성은 블록 체인 기술을 활용하여 사용자에게 향상된 개인 정보 및 데이터 소유권을 제공하는 신원 관리에 대한 혁신적인 접근 방식입니다. 개인 데이터가 단일 엔터티에 의해 제어되는 기존 중앙 집중식 시스템과 달리, 분산 된 정체성은 개인이 자신의 데이터를 소유하고 제어 할 수있게합니다. 이 기사에서는 Cryptocurrency 생태계 내에서 탈 중앙화 신원이 어떻게 작동하는지, 그것이 개인 정보 및 데이터 소유권 문제를 해결하는 방법을 살펴볼 것입니다. 분산 된 정체성의 기본 분산 된 정체성은 개인이 자신의 개인 데이터를 완전히 통제 할 수있는 자기 주권 정체성의 원칙에 따라 작동합니...

탈 중앙화가 합의 메커니즘이 필요한 이유는 무엇입니까? POW와 POS의 장점과 단점은 무엇입니까?
2025-05-06 20:07:38
cryptocurrency 공간에서의 탈 중앙화는 중앙 당국으로부터의 전력과 통제의 분포를 말합니다. 이 개념은 많은 블록 체인 네트워크의 정신에 기본이되는데, 이는 검열, 조작 및 단일 고장 지점에 저항하는 시스템을 만드는 것을 목표로합니다. 그러나 탈 중앙화는 자체 도전 과제를 가져옵니다. 가장 중요한 것은 합의 메커니즘의 필요성입니다. 컨센서스 메커니즘은 분산 된 네트워크에서는 이질적인 노드가 블록 체인의 상태에 동의 할 수 있기 때문에 필수적입니다. 중앙 권한이 거래의 유효성과 기록 된 순서를 지시하지 않으면 네트워크의 모든 참가자가 자신이보고있는 데이터를 신뢰할 수 있도록 방법이 있어야합니다. 여기에서 컨센서스 메커니즘...

분산 금융이란 무엇입니까? Defi는 기존 금융 서비스 모델을 어떻게 변경합니까?
2025-05-07 01:22:09
일반적으로 Defi 로 알려진 분산 된 금융은 블록 체인 기술을 활용하여 은행이나 중개와 같은 전통적인 중개자없이 개방적이고 투명하며 운영되는 금융 시스템을 만들어 금융 부문의 혁신적인 변화를 나타냅니다. 핵심적으로 Defi는 인터넷 연결을 가진 사람이 금융 서비스에 액세스 할 수 있도록함으로써 금융을 민주화하는 것을 목표로하여 전통적인 금융에 존재하는 진입 장벽을 줄입니다. Defi의 핵심 원칙 Defi의 기초는 전통적인 금융과 구별되는 몇 가지 주요 원칙에 달려 있습니다. 탈 중앙화 는 가장 근본적인 것이므로 단일 엔티티가 네트워크를 제어 할 수 없음을 의미합니다. 대신, 트랜잭션 및 서비스는 스마트 계약을 실행하는 컴퓨터 ...

분산 된 교환은 어떻게 작동합니까? 중앙 집중식 교환보다 안전합니까?
2025-05-07 05:28:17
분산 교환 소개 탈 중앙화 교환 (DEX)은 블록 체인 네트워크에서 작동하여 사용자가 중개자의 필요없이 암호 화폐를 서로 직접 교환 할 수 있습니다. 단일 기업이 관리하는 중앙 대상 거래소와 달리 DEXS는 스마트 계약을 활용하여 거래를 촉진하여 단일 당사자가 자금을 통제 할 수 없도록합니다. 이 구조는 사용자가 항상 자산에 대한 제어를 유지하기 때문에 보안 및 개인 정보를 향상시키는 것을 목표로합니다. 분산 된 교환은 어떻게 작동합니까? DEX의 핵심에는 스마트 계약 의 사용이 있으며,이 용어는 코드에 직접 작성된 용어와 자체 실행 계약입니다. 이 스마트 계약은 주문서를 관리하고 사전 정의 된 조건에 따라 거래를 실행합니다. ...

분산 된 오라클의 역할은 무엇입니까? 스마트 계약에 외부 데이터를 어떻게 제공합니까?
2025-05-06 20:56:18
분산 된 오라클은 블록 체인과 현실 세계 사이의 다리 역할을함으로써 블록 체인 및 스마트 계약의 세계에서 중요한 역할을합니다. 스마트 계약은 블록 체인에서 실행되는 자체 실행 프로그램이며 계약 조건을 자동으로 시행하도록 설계되었습니다. 그러나 이러한 계약은 종종 블록 체인 외부의 데이터가 효과적으로 기능하기 위해 필요합니다. 이곳에서 탈 중앙화 된 오라클은 블록 체인에 외부 데이터를 가져오고 확인하고 전달하여 스마트 계약이 실제 이벤트 및 데이터와 상호 작용할 수있게합니다. 분산 된 오라클이란 무엇입니까? 분산 된 Oracle은 블록 체인의 스마트 계약에 외부 데이터를 제공하는 시스템 또는 네트워크입니다. 단일 데이터 소스에 의...

분산 된 응용 분야의 특성은 무엇입니까? DAPP의 사용자 경험과 전통적인 앱의 차이점은 무엇입니까?
2025-05-06 23:35:45
일반적으로 DAPP로 알려진 분산 된 응용 프로그램은 cryptocurrency 생태계 내에서 중요한 혁신으로 부상했습니다. 이러한 응용 프로그램은 블록 체인 기술에서 작동하여 기존 응용 프로그램과 구별되는 다양한 고유 한 기능을 제공합니다. 이 기사에서는 DAPP의 주요 특성을 탐색하고 사용자 경험이 기존 앱의 특성과 어떻게 다른지 조사 할 것입니다. 분산 된 응용 분야의 특성 DAPP는 기본 인프라 역할을하는 블록 체인 기술을 기반으로합니다 . 이는 중앙 서버에 의존하는 대신 DAPPS가 분산 노드 네트워크에서 작동 함을 의미합니다. 이 탈 중앙화 된 특성은 단일 엔터티가 응용 프로그램을 제어하여 보안을 강화하고 데이터 유출...

분산 된 정체성은 어떻게 작동합니까? 개인 정보 및 데이터 소유권 문제를 어떻게 해결합니까?
2025-05-07 01:35:39
종종 그와 마찬가지로, 종종 저조한 분산 된 정체성은 블록 체인 기술을 활용하여 사용자에게 향상된 개인 정보 및 데이터 소유권을 제공하는 신원 관리에 대한 혁신적인 접근 방식입니다. 개인 데이터가 단일 엔터티에 의해 제어되는 기존 중앙 집중식 시스템과 달리, 분산 된 정체성은 개인이 자신의 데이터를 소유하고 제어 할 수있게합니다. 이 기사에서는 Cryptocurrency 생태계 내에서 탈 중앙화 신원이 어떻게 작동하는지, 그것이 개인 정보 및 데이터 소유권 문제를 해결하는 방법을 살펴볼 것입니다. 분산 된 정체성의 기본 분산 된 정체성은 개인이 자신의 개인 데이터를 완전히 통제 할 수있는 자기 주권 정체성의 원칙에 따라 작동합니...

탈 중앙화가 합의 메커니즘이 필요한 이유는 무엇입니까? POW와 POS의 장점과 단점은 무엇입니까?
2025-05-06 20:07:38
cryptocurrency 공간에서의 탈 중앙화는 중앙 당국으로부터의 전력과 통제의 분포를 말합니다. 이 개념은 많은 블록 체인 네트워크의 정신에 기본이되는데, 이는 검열, 조작 및 단일 고장 지점에 저항하는 시스템을 만드는 것을 목표로합니다. 그러나 탈 중앙화는 자체 도전 과제를 가져옵니다. 가장 중요한 것은 합의 메커니즘의 필요성입니다. 컨센서스 메커니즘은 분산 된 네트워크에서는 이질적인 노드가 블록 체인의 상태에 동의 할 수 있기 때문에 필수적입니다. 중앙 권한이 거래의 유효성과 기록 된 순서를 지시하지 않으면 네트워크의 모든 참가자가 자신이보고있는 데이터를 신뢰할 수 있도록 방법이 있어야합니다. 여기에서 컨센서스 메커니즘...

분산 금융이란 무엇입니까? Defi는 기존 금융 서비스 모델을 어떻게 변경합니까?
2025-05-07 01:22:09
일반적으로 Defi 로 알려진 분산 된 금융은 블록 체인 기술을 활용하여 은행이나 중개와 같은 전통적인 중개자없이 개방적이고 투명하며 운영되는 금융 시스템을 만들어 금융 부문의 혁신적인 변화를 나타냅니다. 핵심적으로 Defi는 인터넷 연결을 가진 사람이 금융 서비스에 액세스 할 수 있도록함으로써 금융을 민주화하는 것을 목표로하여 전통적인 금융에 존재하는 진입 장벽을 줄입니다. Defi의 핵심 원칙 Defi의 기초는 전통적인 금융과 구별되는 몇 가지 주요 원칙에 달려 있습니다. 탈 중앙화 는 가장 근본적인 것이므로 단일 엔티티가 네트워크를 제어 할 수 없음을 의미합니다. 대신, 트랜잭션 및 서비스는 스마트 계약을 실행하는 컴퓨터 ...
모든 기사 보기
