연구 답변

Create a landscape editorial hero image for this Studio Global article: How did an attacker exploit an unsafe uint128 downcast/integer-overflow flaw in Notional Finance’s legacy Ethereum V1 escrow contract on Sep. Article summary: The reported exploit abused a legacy V1 accounting path: the attacker created an fCash liability at the `2^128` boundary, then an unsafe cast to `uint128` truncated that liability to zero during free-collateral valuation. Topic tags: general, general web, user generated, government, documentation. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text,
노셔널 파이낸스(Notional Finance) V1 에스크로에서 보고된 사건은 흔히 말하는 단순 담보가치 하락 문제가 아니었다. 공개된 분석의 요지는 회계 처리 불일치다. 공격자는 2^128 경계의 막대한 fCash 부채를 만들었고, 프로토콜이 자유 담보(free collateral)를 산정하는 과정에서 이를 uint128으로 축소 변환하면서 부채가 0으로 처리됐다는 것이다. 이 결정적인 검증 단계에서 부채가 사라진 것처럼 기록되면서, 계정은 지급여력이 있는 것처럼 보였고 원래는 출금할 수 없던 자산에 접근할 수 있었던 것으로 분석된다. 416
다만 이는 프로토콜의 공식 사후 분석 보고서가 아니라 온체인 모니터링과 보안 연구자 보고를 토대로 한 공개 재구성이다. 자금 이동은 블록체인에서 확인할 수 있지만, 정확한 전체 호출 순서와 최종 피해 규모, 대응 조치 여부는 당시 보도 기준으로 공식 확인되지 않았다. 34
노셔널 V1은 미래 현금 지급 의무를 fCash로 표현했다. CertiK의 공개 경보에 따르면 공격자는 mintfCashPair()를 두 번 호출해 -2^128의 부채를 만들었다. 이후 자유 담보 평가 과정에서 안전하지 않은 uint128 변환이 이 값을 0으로 절단(truncation)한 것으로 보고됐다. 16
연구자들이 설명한 공격 흐름은 다음과 같다.
uint128 다운캐스트로 변환한 것으로 전해졌다.따라서 이 사건은 일반적인 의미의 ‘정수 오버플로’라기보다, 축소형 변환(narrowing conversion)과 회계 불변식의 실패로 이해하는 편이 정확하다. 보고된 핵심 효과는 출금을 막아야 할 담보 평가 경로에서 음수 부채가 0으로 변했다는 점이다. 416
온체인 기반 보도에 따르면 에스크로에서는 약 69,257 DAI와 1,650,824 USDC, 합계 약 172만8,000달러가 이동했다. 해당 자산은 약 689.2 ETH로 스왑된 뒤 Tornado Cash에 예치된 것으로 보고됐다. 215
보도에서 지목된 대상은 주소 0x9abd0b8868546105F6F48298eaDC1D9c82f7f683의 노셔널 파이낸스 에스크로 컨트랙트다. 한 보고서는 주소 끝자리가 Ce38인 지갑이 2026년 9월 3일 UTC 기준 오후 11시 58분 47초에 준비 거래를 보냈고, 약 3분 뒤인 9월 4일 새벽 자금 유출 거래가 발생했다고 전했다. 1723
조사자들은 자금 이동과 관련해 다음 두 이더리움 주소를 공개적으로 연결했다.
0xC954…De690xDaCC…Ce38이는 온체인 조사상 연관 표시에 해당할 뿐, 특정 개인·조직 또는 최종 통제자를 확인한 것은 아니다. 11
DAI와 USDC가 ETH로 전환되면서 회수 환경은 더 복잡해졌다. 스테이블코인 이동은 이더리움상에서 명확히 추적되지만, ETH로 바뀐 뒤에는 자금이 다른 형태로 분산된다. 이어 Tornado Cash 예치가 이뤄지면 거래의 출발지·도착지·상대방 연결을 난독화하는 프라이버시 계층이 추가된다. 229
그렇다고 블록체인 분석이 불가능해지는 것은 아니며, 이후 출금 지갑의 통제자가 누구인지 자동으로 증명하는 것도 아니다. 다만 자금이 믹서에 들어간 뒤에는 공격받은 에스크로에서 특정 후속 수취인까지 이어지는 직접적인 자산별 추적 경로가 크게 복잡해진다. 29
보도 시점까지 노셔널은 공개적인 사고 대응 입장을 내놓지 않았으며, 다음과 같은 핵심 사항이 남아 있었다.
따라서 현재의 원인 분석은 신뢰할 만한 예비 재구성으로 볼 수는 있어도, 감사된 사후 분석이나 프로토콜의 공식 사고 보고서를 대체할 수는 없다.
오래됐거나 제품 로드맵에서 중심 역할을 잃었다고 해서 컨트랙트의 위험이 자동으로 줄어드는 것은 아니다. 자산을 보관하거나 발행·정산·담보·출금 흐름에 접근할 수 있다면, 그 컨트랙트는 여전히 금융 자산을 노출하는 활성 공격 표면이다.
이번에 보고된 노셔널 V1 사례는 프로토콜 팀이 다음 통제를 함께 점검할 필요가 있음을 보여준다.
2^128 같은 수치 경계값에서 부호 있는 부채, 정산, 담보 계산 테스트DeFi에서 반복되는 패턴은 작아 보이는 표현 오류나 권한 결함이 유동 자산을 가진 출금 경로에 닿는 순간 전액 손실로 증폭될 수 있다는 점이다. 방어의 핵심은 개별 함수를 감사하는 데 그치지 않고, 도달 가능한 모든 호출 순서에서 시스템의 회계 불변식이 유지되는지 입증하는 데 있다.
Studio Global AI
이 페이지에는 Studio Global 내에서 계속할 수 있는 소스 기반 답변이 포함되어 있습니다.
보안 연구자들의 분석에 따르면 공격자는 mintfCashPair()를 두 차례 호출해 2^128 규모의 fCash 부채를 만들었고, 담보 평가 과정의 unsafe uint128 변환이 이를 0으로 잘라냈다.
보안 연구자들의 분석에 따르면 공격자는 mintfCashPair()를 두 차례 호출해 2^128 규모의 fCash 부채를 만들었고, 담보 평가 과정의 unsafe uint128 변환이 이를 0으로 잘라냈다. 에스크로에서 약 69,257 DAI와 1,650,824 USDC, 총 약 172만8,000달러가 이동한 것으로 보고됐으며, 이후 약 689.2 ETH로 교환돼 Tornado Cash로 보내졌다.
이번 사건은 자산을 보관하거나 출금·정산 권한을 유지하는 레거시 DeFi 컨트랙트도 여전히 실질적인 공격 표면이며, 수치 경계값·호출 순서·회계 불변식 검증이 필수임을 보여준다.