본문 바로가기
블록체인교육/블록체인보안

[블록체인] 스마트컨트랙트 취약성(불완전한 tx.orgin 취약점)

by Danny_Kim 2023. 8. 24.

🔑 100배 수익 경험자의 노하우가 담긴 치트키 공개 🔑

  1. 네이버, 카카오 임직원들이 듣고 있는 비트코인 강의
  2. 아무도 알려주지 않은 비트코인, 이더리움의 리스크
  3. 블록체인 전문가들도 놓치기 쉬운 비트코인, 이더리움의 핵심 가치
  4. 천배 수익이 가능한 디파이(DeFi), 코인 생태계 지도
  5. 토큰 제작, 1억 연봉의 블록체인 개발자로 거듭나자!

 

소스

https://github.com/SunWeb3Sec/DeFiVulnLabs/blob/main/src/test/txorigin.sol

 

불완전한 tx.origin 취약점

tx.origin은 솔리디티의 전역변수로, 이 변수를 스마트계약에서 인증에 사용하면 계약이 피싱 공격에 취약해질 수 있음

 

시나리오

wallet은 소유자만 다른 주소로 이더를 전송할 수 있는 간단한 계약임

wallet.transfer()는 호출자가 소유자인지 확인하기 위해 tx.origin을 사용함

앨리스는 Attack.attack()안에 있는 Attack.attack()을 호출해서 트릭을 사용함

엘리스의 지갑에 있는 모든 자금을 이브의 주소로 전송하는 것을 요청함

wallet.transfer()에서 tx.orgin이 앨리스의 주소와 같았기 때문에 이전이 승인됨

지갑은 모든 이더를 이브에게 전송함.

 

개선방법

msg.sender 사용.

 

 

취약성 코드

 

테스트

 

참고문서

https://web3sec.notion.site/txorigin-phishing-cddd05811f414b45bcdfdb655c206b09

🔑 100배 수익 경험자의 노하우가 담긴 치트키 공개 🔑

  1. 네이버, 카카오 임직원들이 듣고 있는 비트코인 강의
  2. 아무도 알려주지 않은 비트코인, 이더리움의 리스크
  3. 블록체인 전문가들도 놓치기 쉬운 비트코인, 이더리움의 핵심 가치
  4. 천배 수익이 가능한 디파이(DeFi), 코인 생태계 지도
  5. 토큰 제작, 1억 연봉의 블록체인 개발자로 거듭나자!

댓글