지난 시간엔 '내 실수'로 생기는 사고를 이야기했죠. 오늘은 반대쪽입니다. '남이 파놓은 함정'이에요. 문제는, 이 함정이 요즘은 아주 정교해서 조심하는 것만으로는 피하기 어렵다는 겁니다.
평범해 보인 서명 한 번에, 24억 원이 사라졌습니다
2026년 3월, 한 사용자가 평범해 보이는 메시지 하나에 서명했습니다. 흔한 '승인(permit)' 요청 같았죠. 그런데 그 서명은 사실 '내 토큰을 가져가도 좋다'는 허락이었어요. 얼마 뒤, USDC 약 176만 달러(약 24억 원)가 조용히 빠져나갔습니다.
그는 해킹당하지 않았습니다. 비밀번호도, 시드도 넘긴 적이 없어요. 그저 평범해 보이는 서명을 한 번 했을 뿐입니다.
서명은 곧 '허락'입니다
우리는 보통 '서명 = 돈을 보내는 것'이라고 생각합니다. 그런데 크립토에서 서명은 그보다 넓어요. 자산을 직접 보내지 않아도, '누군가 내 자산을 옮겨도 좋다'고 허락하는 서명이 있습니다. 이걸 승인(approval, permit)이라고 해요.
정상적으로 쓰면 편리한 기능입니다. dApp을 쓸 때 매번 확인하지 않아도 되게 해주니까요. 문제는 공격자가 바로 이 승인을 노린다는 거예요. 한 번 '무제한 승인'을 받아내면, 원하는 때에 내 지갑을 비울 수 있습니다. 실제로 승인부터 자산이 빠져나가기까지 걸리는 시간은 평균 32초도 안 됩니다.
악성 서명은 눈으로 구별되지 않습니다
가장 무서운 건 이겁니다. 악성 서명은 정상 서명과 똑같이 생겼어요. 화면에 뜬 내용을 아무리 읽어봐도, 이게 안전한 승인인지 지갑을 비우는 승인인지 알기 어렵습니다. 암호 같은 데이터가 나열돼 있을 뿐이거든요.
'조심하면 되지'라는 말이 여기선 잘 통하지 않는 이유입니다. 조심하고 싶어도, 구별할 정보 자체가 눈에 안 보이니까요.
그래서 필요한 건, '서명 전 시뮬레이션'입니다
방법은 하나예요. 서명하기 전에, 그 서명이 실제로 무슨 일을 일으키는지 미리 돌려보는 것입니다.
디센트 S는 여기에 Blockaid를 씁니다. 서명 전에 거래를 시뮬레이션해서, 결과가 위험하면 미리 경고해줘요. 사람이 못 읽는 걸 대신 읽어주는 셈이죠.
Blockaid가 잡아주는 것
피싱 주소, 악성 컨트랙트, 지갑을 비우는 드레이너, 허니팟 같은 위험을 서명 전에 시뮬레이션해 경고합니다.
어떻게 작동하는지 직접 한번 보실래요?
🌱 오늘의 실천 — 3가지 습관
'무제한 승인'을 조심하세요. dApp이 요구해도, 꼭 필요한 만큼만 승인하는 게 안전합니다.
안 쓰는 승인은 취소(revoke)하세요. 예전에 연결했던 dApp의 승인을 주기적으로 정리하면 위험이 줄어듭니다.
모르는 에어드랍·링크가 요구하는 서명은 하지 마세요. 공짜로 뭔가 준다고 할수록 한 번 더 의심하는 게 좋습니다.
❓ 미니 퀴즈
크립토에서 '서명'이 위험할 수 있는 이유는?
① 서명하면 수수료가 두 배가 된다 ② 자산을 보내지 않아도, 남이 내 자산을 가져가도록 '허락'하는 서명이 있다 ③ 서명은 언제든 되돌릴 수 있다
정답 보기
② 자산을 보내지 않아도, 남이 내 자산을 가져가도록 '허락'하는 서명이 있다. 승인(permit) 서명이 그렇습니다. 악성 서명은 눈으로 구별이 안 되니, 서명 전에 시뮬레이션으로 걸러내는 게 중요해요.
이제, 크립토를 '제대로' 소유하세요
안전하게 보관하는 법을 익혔다면, 다음은 '활용'입니다. 100개가 넘는 네트워크와 생태계를 한 카드로 누리는 법을 이야기합니다.
DCENT S · 카드형 콜드월렛
만일의 한 장, 매일의 한 장
시드리스 셋업 · R3covery 백업 카드 동봉 · 100+ 네트워크 · 4,900+ 자산
디센트 S 보러가기 →안전하게 지키고, 자유롭게 쓰세요.