
암호화폐를 전송할 때 가장 중요한 정보 중 하나가 받는 사람의 지갑 주소입니다.
지갑 주소는 길고 복잡하기 때문에 많은 사용자가 전체 문자열을 외우기보다 주소의 앞부분과 뒷부분 몇 글자만 확인하기도 합니다.
이러한 습관을 악용하는 방식 중 하나가 주소 오염(Address Poisoning) 또는 주소 포이즈닝이라고 불리는 공격입니다.
공격자는 사용자가 과거에 이용했던 주소와 일부 문자가 비슷해 보이는 주소를 만들고, 해당 주소가 사용자의 거래 기록에 나타나도록 유도할 수 있습니다.
이후 사용자가 거래 내역에서 주소를 복사하면서 공격자의 주소를 정상 주소로 착각하면 잘못된 곳으로 암호화폐를 전송할 위험이 있습니다.
이번 글에서는 주소 오염이 무엇인지, 어떤 방식으로 사용자를 혼동시키는지, 암호화폐를 전송할 때 무엇을 확인해야 하는지 알아보겠습니다.
1. 암호화폐 주소 오염이란?
주소 오염은 사용자가 자주 이용하는 지갑 주소와 일부 문자가 비슷한 다른 주소를 거래 기록 등에 노출시켜 사용자의 실수를 유도하는 방식을 의미합니다.
예를 들어 정상적으로 자주 사용하는 주소가 있다고 가정해 보겠습니다.
사용자는 긴 주소 전체를 확인하기보다 다음처럼 앞뒤 일부만 기억할 수 있습니다.
0x12AB...7890
공격자가 앞부분이나 뒷부분 등이 비슷해 보이는 별도의 주소를 준비한다면 사용자가 거래 기록을 대충 확인했을 때 같은 주소라고 착각할 가능성이 생깁니다.
핵심은 블록체인의 주소 자체를 변조하는 것이 아니라 사람이 주소를 확인하고 복사하는 과정에서 실수하도록 유도한다는 것입니다.
2. 내 지갑 주소가 해킹된 것일까?
주소 오염 흔적이 거래 내역에 나타났다고 해서 개인키나 시드 문구가 유출됐다고 바로 판단할 수는 없습니다.
퍼블릭 블록체인의 주소와 거래 기록은 공개적으로 확인할 수 있습니다.
따라서 제3자가 공개된 거래 정보를 보고 특정 주소를 대상으로 의심스러운 트랜잭션을 만들 수 있습니다.
문제는 사용자가 그 거래 내역을 보고 공격자의 주소를 이전에 이용했던 정상 주소로 착각하는 경우입니다.
즉 주소 오염은 개인키를 직접 탈취하는 공격과는 다른 방식으로 사용자의 실수를 노릴 수 있습니다.
3. 왜 거래 기록을 이용할까?
암호화폐를 반복해서 전송하는 사람은 과거 거래 기록을 이용해 주소를 다시 복사할 수 있습니다.
예를 들어 거래소, 개인 지갑 또는 특정 서비스로 자산을 자주 보내는 경우 이전 전송 내역에서 주소를 찾아 사용하는 것이 편리하게 느껴질 수 있습니다.
공격자는 바로 이 습관을 노립니다.
거래 기록에 비슷한 주소가 추가되면 사용자는 다음 전송 때 가장 최근에 표시된 주소가 자신이 사용했던 주소라고 생각할 수 있습니다.
따라서 거래 기록에 주소가 존재한다는 사실만으로 그 주소가 안전하다고 판단해서는 안 됩니다.
4. 앞뒤 몇 글자만 확인하면 위험할 수 있다
많은 지갑과 블록 익스플로러는 화면 공간 때문에 긴 주소를 다음과 같이 줄여 표시합니다.
0x1234...ABCD
이 방식은 화면을 보기 편하게 만들어 주지만, 사용자가 앞뒤 일부 문자만 보고 주소가 동일하다고 판단하는 습관을 가질 수도 있습니다.
주소 오염 공격에서는 이러한 특징이 악용될 수 있습니다.
따라서 중요한 전송에서는 주소 앞뒤 몇 글자만 확인하는 것에 의존하지 않는 것이 좋습니다.
가능하다면 신뢰할 수 있는 원본에서 받은 주소와 실제 전송 대상 주소를 충분히 비교해야 합니다.
5. 아주 작은 금액이나 토큰이 들어올 수도 있다
주소 오염과 관련된 의심스러운 활동은 매우 작은 금액의 전송이나 특정 토큰의 이동처럼 거래 기록에 흔적을 남기는 형태로 나타날 수 있습니다.
다만 지갑에 작은 금액이나 모르는 토큰이 들어왔다는 사실만으로 모든 경우를 주소 오염이라고 단정해서는 안 됩니다.
중요한 것은 예상하지 못한 거래가 발견됐을 때 해당 거래에 표시된 주소를 신뢰해서 다음 전송에 재사용하지 않는 것입니다.
출처를 알 수 없는 거래는 먼저 내용을 확인하는 것이 좋습니다.
6. 거래 내역에서 주소를 그대로 복사하지 않는다
주소 오염 피해를 줄이는 가장 중요한 방법 중 하나입니다.
암호화폐를 전송할 때 과거 거래 내역에 표시된 주소를 그대로 복사하기보다 원래 신뢰할 수 있는 출처에서 받는 주소를 다시 확인하는 습관이 좋습니다.
예를 들어 본인이 관리하는 다른 지갑으로 보내는 경우 해당 지갑에서 현재 표시되는 수신 주소를 직접 확인할 수 있습니다.
거래소로 입금한다면 해당 거래소의 공식 입금 화면에서 자산, 네트워크, 입금 주소와 필요한 Memo/Tag 등의 정보를 다시 확인하는 것이 좋습니다.
7. 주소록 기능을 활용할 때도 처음 등록이 중요하다
일부 지갑이나 거래소에서는 자주 사용하는 주소를 주소록 또는 화이트리스트 형태로 저장할 수 있습니다.
이런 기능은 매번 거래 기록에서 주소를 복사하는 실수를 줄이는 데 도움이 될 수 있습니다.
하지만 주소록에 처음 등록하는 주소 자체가 잘못됐다면 이후에도 잘못된 주소를 계속 사용할 수 있습니다.
따라서 주소를 처음 등록할 때는 신뢰할 수 있는 원본과 충분히 비교한 뒤 저장해야 합니다.
서비스가 제공한다면 출금 주소 화이트리스트나 추가 인증 기능 등의 보안 기능을 함께 확인하는 것도 좋습니다.
8. 복사한 주소가 바뀌지 않았는지도 확인한다
주소 오염과 별개로, 악성 프로그램이 클립보드에 복사된 암호화폐 주소를 다른 주소로 바꾸는 공격도 존재할 수 있습니다.
주소 오염은 거래 기록에서 비슷한 주소를 잘못 선택하도록 유도하는 방식이고, 클립보드 변조는 사용자가 복사한 주소 자체가 붙여넣기 과정에서 변경되는 방식입니다.
둘은 구분할 필요가 있지만 예방 방법에는 공통점이 있습니다.
붙여넣은 뒤 실제 전송 화면의 주소를 다시 확인해야 합니다.
복사했다는 이유만으로 주소가 정확하다고 가정하지 않는 것이 중요합니다.
9. 소액 테스트 전송은 도움이 될까?
큰 금액을 처음 보내는 주소라면 네트워크 수수료와 서비스 조건을 고려해 소액 테스트 전송을 먼저 하는 방법을 생각할 수 있습니다.
테스트 전송이 정상적으로 도착했는지 확인한 뒤 본 전송을 진행하면 일부 입력 실수를 발견하는 데 도움이 될 수 있습니다.
하지만 중요한 주의점이 있습니다.
테스트 전송 후 본 전송을 할 때도 거래 기록에서 주소를 다시 복사하지 말고 검증했던 원래 주소를 사용해야 합니다.
또한 소액 테스트가 주소 확인이나 네트워크 확인을 대신하는 것은 아닙니다.
10. 잘못된 주소로 전송하면 어떻게 될까?
블록체인 트랜잭션이 정상적으로 처리된 뒤에는 일반적인 은행 송금처럼 임의로 취소할 수 없는 경우가 많습니다.
잘못된 주소가 실제로 존재하고 해당 주소의 키를 다른 사람이 관리하고 있다면 자산을 돌려받는 것이 매우 어려울 수 있습니다.
따라서 전송 완료 후 해결하는 것보다 전송 전에 주소를 정확하게 검증하는 것이 훨씬 중요합니다.
잘못 전송한 경우에는 사용하는 거래소나 지갑 서비스가 관련되어 있다면 공식 고객지원과 해당 네트워크의 안내를 확인해야 합니다.
복구 가능 여부는 상황에 따라 달라질 수 있습니다.
11. 주소 오염 예방 체크리스트
암호화폐를 전송하기 전에 다음 항목을 확인해 보세요.
- 과거 거래 내역의 주소를 무작정 복사하지 않았는가?
- 신뢰할 수 있는 원본에서 수신 주소를 다시 확인했는가?
- 주소의 앞뒤 몇 글자만 보고 판단하지 않았는가?
- 붙여넣은 후 실제 입력된 주소를 다시 확인했는가?
- 전송하려는 자산과 네트워크가 정확한가?
- 필요한 경우 Memo 또는 Tag도 확인했는가?
- 처음 이용하는 주소라면 소액 테스트가 적절한지 검토했는가?
- 예상하지 못한 소액 거래나 토큰의 주소를 재사용하고 있지는 않은가?
특히 금액이 클수록 속도보다 확인을 우선하는 것이 중요합니다.
마무리
암호화폐 주소 오염은 블록체인의 지갑 주소 자체를 바꾸는 방식이라기보다 사용자가 거래 기록에서 비슷한 주소를 정상 주소로 착각하도록 유도하는 공격 방식입니다.
따라서 지갑에 의심스러운 거래가 나타났다고 해서 곧바로 개인키가 유출됐다고 단정할 필요는 없습니다.
하지만 과거 거래 기록에서 주소를 그대로 복사하는 습관은 주의해야 합니다.
핵심은 세 가지입니다.
거래 기록의 주소를 무조건 신뢰하지 않습니다.
신뢰할 수 있는 원본에서 받는 주소를 다시 확인합니다.
전송 버튼을 누르기 전에 실제 입력된 주소와 네트워크를 다시 확인합니다.
암호화폐 전송에서는 몇 초의 추가 확인이 잘못된 전송을 예방하는 중요한 보안 습관이 될 수 있습니다.
안내: 이 글은 암호화폐 주소 오염과 전송 보안에 관한 일반적인 정보를 제공하기 위한 내용입니다. 지갑과 거래소, 블록체인 네트워크마다 주소 표시 방식과 보안 기능이 다를 수 있으므로 실제 이용 시 해당 서비스의 최신 공식 안내를 확인하시기 바랍니다.
댓글