-
bitcoin $103299.489104 USD
-2.75% -
ethereum $3438.818401 USD
-4.09% -
tether $0.999694 USD
-0.02% -
xrp $2.398080 USD
-5.09% -
bnb $962.992856 USD
-3.68% -
solana $154.795444 USD
-7.73% -
usd-coin $0.999881 USD
-0.02% -
tron $0.299080 USD
0.51% -
dogecoin $0.172414 USD
-4.61% -
cardano $0.559226 USD
-5.94% -
hyperliquid $39.224649 USD
-5.04% -
chainlink $15.394534 USD
-6.06% -
bitcoin-cash $506.933641 USD
-2.17% -
stellar $0.282786 USD
-5.75% -
unus-sed-leo $9.205805 USD
-0.38%
재진입 공격이란 무엇이며 스마트 계약 취약점을 어떻게 악용합니까?
Re-entrancy attacks exploit poorly ordered state changes in smart contracts, allowing hackers to recursively withdraw funds before balances update.
2025/11/12 19:59
스마트 계약의 재진입 공격 이해
1. 재진입 공격은 블록체인 플랫폼, 특히 이더리움 기반의 스마트 계약을 표적으로 삼는 중요한 보안 취약점입니다. 이 악용은 초기 실행이 완료되기 전에 악의적인 계약이 피해자 계약을 반복적으로 호출할 때 발생합니다. 공격자는 상태 변경 및 외부 호출이 실행되는 순서를 이용합니다.
2. 일반적인 시나리오에서 취약한 계약은 내부 잔액이나 상태를 업데이트하기 전에 외부 주소로 자금을 보냅니다. 공격자가 제어하는 수신 계약에는 피해자의 출금 또는 이체 기능에 대한 또 다른 호출을 자동으로 트리거하는 폴백 기능이 포함되어 있습니다. 상태가 아직 업데이트되지 않았기 때문에 시스템은 여전히 자금이 사용 가능하다고 믿고 반복적인 인출을 허용합니다.
3. 이 결함의 가장 악명 높은 사례 중 하나는 2016년 DAO 해킹으로, 재진입 공격을 통해 6천만 달러 상당의 Ether가 유출되었습니다. 분산형 자율 조직의 스마트 계약은 적절한 보호 장치 없이 반복적인 호출을 허용하여 막대한 금전적 손실을 초래하고 궁극적으로 논란의 여지가 있는 이더리움 블록체인의 하드 포크를 초래했습니다.
4. 이러한 공격은 외부 함수 호출이 신뢰할 수 없는 계약의 코드를 호출할 수 있다는 사실을 기반으로 합니다. 호출 계약이 외부 상호 작용 전에 상태 변경이 발생하는 '검사-효과-상호 작용' 패턴을 따르지 않으면 악용할 수 있는 창이 활짝 열립니다. 이 설계 원칙은 이제 안전한 스마트 계약 개발에 필수적인 것으로 간주됩니다.
5. 최신 개발 프레임워크와 감사 도구는 컴파일 또는 테스트 단계에서 이러한 취약점을 감지하도록 발전했습니다. Slither 및 MythX와 같은 정적 분석 도구는 제어 흐름을 매핑하고 안전하지 않은 외부 호출에 플래그를 지정하여 재진입에 취약한 기능을 식별할 수 있습니다.
착취의 일반적인 벡터
1. 기본 벡터에는 알 수 없는 주소에 대한 외부 호출을 수행하는 지불 기능을 이용하는 것이 포함됩니다. 이러한 기능이 Ether를 보내기 전에 잔액이나 플래그를 업데이트하지 못하면 재귀적 입력을 위한 구멍이 생성됩니다. 공격자는 대상 기능에 다시 들어가도록 특별히 설계된 악의적인 대체 논리를 사용하여 계약을 작성합니다.
2. 또 다른 방법은 탈중앙화금융(DeFi) 프로토콜의 플래시론을 이용해 피해를 증폭시키는 것이다. 공격자는 담보 없이 대량의 토큰을 빌려 계약 조건을 조작하고 단일 거래 내에서 재진입 루프를 실행합니다. 모든 일이 원자적으로 발생하기 때문에 대출금은 상환되고 이익은 그대로 유지됩니다.
3. 일부 변형은 동일한 계약 내의 여러 기능을 대상으로 합니다. 예를 들어 두 개의 개별 함수가 공유 상태에 액세스하지만 뮤텍스 잠금이나 재진입 가드를 사용하지 않는 경우 공격자는 실행 중에 두 함수 사이를 이동할 수 있습니다. 이러한 교차 기능 재진입은 개별 진입점에만 초점을 맞춘 단순한 보호를 우회합니다.
4. 라이브러리와 프록시 패턴으로 인해 복잡성이 더해집니다. 업그레이드 가능한 계약이 호출을 안전하지 않게 위임하거나 구현 전반에 걸쳐 재진입 가드를 적절하게 초기화하지 못하는 경우 레거시 취약점은 업데이트 후에도 지속될 수 있습니다. 따라서 철저한 회귀 테스트가 중요합니다.
5. 오라클과 외부 데이터 소스는 특정 시장 상황에서 재진입 행동을 유발하기 위해 간접적으로 조작될 수도 있습니다. 직접적인 벡터는 아니지만 자금 분배 논리와의 통합은 열악한 상태 관리와 결합될 때 공격 표면을 증가시킵니다.
재진입에 대한 방어 전략
1. 확인-효과-상호작용 패턴을 구현하면 모든 상태 수정이 외부 호출 전에 발생하도록 보장됩니다. 이는 공격자가 의존하는 경쟁 조건을 제거합니다. 개발자는 자산 전송을 처리하는 모든 기능에서 논리적 흐름 규율을 우선시해야 합니다.
2. OpenZeppelin의 ReentrancyGuard 와 같은 재진입 가드 수정자를 사용하면 이미 실행 중인 함수가 다시 입력되는 것을 방지하는 잠금 메커니즘이 도입됩니다. 이러한 잠금은 일반적으로 시작 시 설정되고 민감한 작업이 끝나면 지워지는 부울 플래그를 기반으로 합니다.
3. 외부 통화 중에 전달되는 가스를 제한하면 악의적인 폴백 기능이 추가 상호 작용을 수행하는 것을 차단할 수 있습니다. 가스를 2300개 단위(기본 로깅에만 충분한 양)로 제한함으로써 호출 계약은 복잡한 재진입 논리가 성공적으로 실행되는 것을 방지합니다.
4. 자동화된 도구와 수동 검토 프로세스를 모두 사용하는 정기 감사는 개발 중에 놓친 극단적 사례를 포착하는 데 도움이 됩니다. 동료 검토 및 공식 검증 방법은 특히 수백만 달러의 자산을 관리하는 고가치 DeFi 애플리케이션에 대해 보증 계층을 추가합니다.
5. 사용자 정의 하위 수준 함수를 작성하는 대신 잘 테스트된 라이브러리를 채택하면 미묘한 버그가 발생할 위험이 줄어듭니다. 신뢰할 수 있는 오픈 소스 구성 요소는 커뮤니티의 지속적인 조사를 거치므로 감독되기 쉬운 맞춤형 솔루션보다 더 안정적입니다.
자주 묻는 질문
재진입 공격에서 대체 기능은 어떤 역할을 합니까? 폴백 기능은 특정 기능을 지정하지 않고 컨트랙트가 Ether를 수신하면 자동으로 실행됩니다. 공격 시 이 함수에는 피해자 계약의 철회 방법을 즉시 다시 호출하여 상태 업데이트가 발생하기 전에 재귀를 가능하게 하는 악성 코드가 포함되어 있습니다.
이더리움이 아닌 블록체인에서도 재진입이 발생할 수 있나요? 예, 외부 호출 및 변경 가능한 상태로 스마트 계약을 지원하는 모든 블록체인은 잠재적으로 취약합니다. Binance Smart Chain, Polygon 및 Avalanche와 같은 네트워크는 개발자가 보안 조치를 새로운 환경에 적용하지 않고 계약을 포팅할 때 유사한 악용을 목격했습니다.
표준 양식 외에 다양한 재입국 유형이 있나요? 예, 변형에는 한 기능이 다른 기능을 통해 입력되는 교차 기능 재진입과 중간 상태 확인 없이 루프에서 수신자 배열이 지불되는 일괄 처리 공격이 포함됩니다. 각각에는 맞춤형 완화 전략이 필요합니다.
플래시론은 어떻게 재진입 공격을 가능하게 합니까? 플래시 대출을 사용하면 공격자는 단일 거래 내에서 일시적으로 큰 금액을 빌릴 수 있습니다. 이들은 이러한 자금을 사용하여 지불 조건 트리거와 같은 계약 동작에 영향을 미치고 대출금을 상환하기 전에 재진입 루프를 실행하여 도난당한 자산을 실패한 거래 범위 외부에 유지합니다.
부인 성명:info@kdj.com
제공된 정보는 거래 조언이 아닙니다. kdj.com은 이 기사에 제공된 정보를 기반으로 이루어진 투자에 대해 어떠한 책임도 지지 않습니다. 암호화폐는 변동성이 매우 높으므로 철저한 조사 후 신중하게 투자하는 것이 좋습니다!
본 웹사이트에 사용된 내용이 귀하의 저작권을 침해한다고 판단되는 경우, 즉시 당사(info@kdj.com)로 연락주시면 즉시 삭제하도록 하겠습니다.
- 암호화폐 코인 2025: BlockDAG가 희소성과 속도로 선두를 달리고 있습니다.
- 2025-11-13 07:25:01
- BlockDAG, Ethena 및 암호화폐: 2025년 전망 탐색
- 2025-11-13 07:25:01
- Uniswap의 UNI: 가격 예측, 회복 희망, 10달러 목표
- 2025-11-13 06:50:01
- 비트코인의 대규모 구매자 의심: 250억 달러 베팅이 무너지고 있습니까?
- 2025-11-13 07:10:02
- JPMorgan, 주가 및 JPM 코인: 월스트리트 파워 플레이
- 2025-11-13 07:30:01
- Raccoin: 코인 푸셔가 흔들리는 기계 광란 속에서 로그라이크를 만날 때
- 2025-11-13 06:50:01
관련 지식
투명 거래와 보호 거래의 차이점은 무엇입니까?
2025-11-10 17:59:40
암호화폐의 투명한 거래 이해 1. 투명한 거래는 Bitcoin, 이더리움 등 대부분의 퍼블릭 블록체인에서 표준적인 거래 형태입니다. 보낸 사람 주소, 받는 사람 주소, 거래 금액을 포함한 모든 세부 정보는 블록체인 원장에 액세스하는 모든 사람이 볼 수 있습니다. 2. ...
"암호화폐 에어드랍 농부"란 무엇이며 그들은 어떤 전략을 사용합니까?
2025-11-09 15:39:43
암호화폐 에어드롭 파머란 무엇인가요? 1. 암호화폐 에어드랍 농부는 에어드랍으로 알려진 무료 토큰 배포 자격을 얻기 위해 블록체인 프로젝트에 적극적으로 참여하는 개인입니다. 이러한 참가자는 종종 분산형 애플리케이션(dApp)에 참여하고, 지갑을 만들고, NFT를 발행하...
사용되지 않은 트랜잭션 출력(UTXO)은 무엇이며 Bitcoin은 이를 어떻게 사용합니까?
2025-11-12 01:40:17
사용되지 않은 트랜잭션 출력(UTXO)의 개념 이해 1. 일반적으로 UTXO라고 하는 사용되지 않은 거래 출력은 Bitcoin이 소유권을 기록하고 거래를 검증하는 방법의 기본 구성 요소입니다. 각 UTXO는 특정 주소로 전송되었지만 아직 사용되지 않은 개별 양의 bit...
여러 지갑과 체인에서 암호화폐 포트폴리오를 어떻게 추적합니까?
2025-11-12 16:19:42
암호화폐 생태계에서 탈중앙화 거래소의 진화 1. 분산형 거래소(DEX)는 중개자를 제거하고 스마트 계약을 통해 P2P 거래를 가능하게 함으로써 사용자가 디지털 자산을 거래하는 방식을 변화시켰습니다. 중앙 집중식 플랫폼과 달리 DEX는 Ethereum, Binance S...
암호화폐 보험 프로토콜은 어떻게 작동하나요?
2025-11-08 00:39:48
암호화폐 보험 프로토콜 이해 1. 암호화폐 보험 프로토콜은 디지털 자산 보유로 인해 발생하는 손실에 대해 재정적 보호를 제공함으로써 운영됩니다. 이러한 손실은 해킹, 스마트 계약 실패 또는 거래소 파산으로 인해 발생할 수 있습니다. 사용자는 분산형 거버넌스를 통해 관리...
토큰 구성성이란 무엇이며 왜 "DeFi 레고"라고 불리나요?
2025-11-09 06:39:59
탈중앙화 금융에서 Bitcoin의 역할 1. Bitcoin은 분산형 금융의 초석으로 남아 있으며, 블록체인 생태계 전반의 가치와 신뢰성에 대한 벤치마크 역할을 합니다. 고정된 공급량과 예측 가능한 발행 일정으로 인해 변동성이 큰 시장 상황에서 선호되는 가치 저장 수단이...
투명 거래와 보호 거래의 차이점은 무엇입니까?
2025-11-10 17:59:40
암호화폐의 투명한 거래 이해 1. 투명한 거래는 Bitcoin, 이더리움 등 대부분의 퍼블릭 블록체인에서 표준적인 거래 형태입니다. 보낸 사람 주소, 받는 사람 주소, 거래 금액을 포함한 모든 세부 정보는 블록체인 원장에 액세스하는 모든 사람이 볼 수 있습니다. 2. ...
"암호화폐 에어드랍 농부"란 무엇이며 그들은 어떤 전략을 사용합니까?
2025-11-09 15:39:43
암호화폐 에어드롭 파머란 무엇인가요? 1. 암호화폐 에어드랍 농부는 에어드랍으로 알려진 무료 토큰 배포 자격을 얻기 위해 블록체인 프로젝트에 적극적으로 참여하는 개인입니다. 이러한 참가자는 종종 분산형 애플리케이션(dApp)에 참여하고, 지갑을 만들고, NFT를 발행하...
사용되지 않은 트랜잭션 출력(UTXO)은 무엇이며 Bitcoin은 이를 어떻게 사용합니까?
2025-11-12 01:40:17
사용되지 않은 트랜잭션 출력(UTXO)의 개념 이해 1. 일반적으로 UTXO라고 하는 사용되지 않은 거래 출력은 Bitcoin이 소유권을 기록하고 거래를 검증하는 방법의 기본 구성 요소입니다. 각 UTXO는 특정 주소로 전송되었지만 아직 사용되지 않은 개별 양의 bit...
여러 지갑과 체인에서 암호화폐 포트폴리오를 어떻게 추적합니까?
2025-11-12 16:19:42
암호화폐 생태계에서 탈중앙화 거래소의 진화 1. 분산형 거래소(DEX)는 중개자를 제거하고 스마트 계약을 통해 P2P 거래를 가능하게 함으로써 사용자가 디지털 자산을 거래하는 방식을 변화시켰습니다. 중앙 집중식 플랫폼과 달리 DEX는 Ethereum, Binance S...
암호화폐 보험 프로토콜은 어떻게 작동하나요?
2025-11-08 00:39:48
암호화폐 보험 프로토콜 이해 1. 암호화폐 보험 프로토콜은 디지털 자산 보유로 인해 발생하는 손실에 대해 재정적 보호를 제공함으로써 운영됩니다. 이러한 손실은 해킹, 스마트 계약 실패 또는 거래소 파산으로 인해 발생할 수 있습니다. 사용자는 분산형 거버넌스를 통해 관리...
토큰 구성성이란 무엇이며 왜 "DeFi 레고"라고 불리나요?
2025-11-09 06:39:59
탈중앙화 금융에서 Bitcoin의 역할 1. Bitcoin은 분산형 금융의 초석으로 남아 있으며, 블록체인 생태계 전반의 가치와 신뢰성에 대한 벤치마크 역할을 합니다. 고정된 공급량과 예측 가능한 발행 일정으로 인해 변동성이 큰 시장 상황에서 선호되는 가치 저장 수단이...
모든 기사 보기














