வலைப்பதிவு

தானாக மொழிபெயர்க்கப்பட்டது · ஆங்கிலத்தில் படிக்கவும்

SSO தொகுதி 2 - ஸ்மார்ட் ஒப்பந்த பாதிப்புகள்: Reentrancy தாக்குதல்கள் பற்றிய ஆழமான பார்வை

ஸ்மார்ட் ஒப்பந்தங்கள் வெளிப்படைத்தன்மையை வழங்குகின்றன, ஆனால் அபாயங்களையும் சுமக்கின்றன. இந்தக் கட்டுரை Reentrancy போன்ற பாதிப்புகளை வெளிப்படுத்துகிறது; DAO-வின் $150M இழப்பு ஒரு எடுத்துக்காட்டு. Integer Overflow BeautyChain-இன் $900M பின்னடைவுக்கு வழிவகுத்தது. Access Control குறைகளால் DAOMaker $4M இழந்தது. FlashLoan தாக்குதல்களில் Harves Finance $38M இழந்தது.

எழுதியவர் Markos Mebellis

SSO தொகுதி 2 - ஸ்மார்ட் ஒப்பந்த பாதிப்புகள்: Reentrancy தாக்குதல்கள் பற்றிய ஆழமான பார்வை
இந்தப் பக்கத்தில்

ஸ்மார்ட் ஒப்பந்தங்கள் தங்கள் செயல்திறன், வெளிப்படைத்தன்மை மற்றும் மாற்ற முடியாத அம்சங்களுடன் உலகளாவிய தொழில்களில் புரட்சியை ஏற்படுத்துகின்றன. இருப்பினும், அவற்றின் திறந்த மற்றும் தானியங்கி வடிவமைப்பு அவற்றை அபாயங்களுக்கு உட்படுத்துகிறது. அவற்றின் திறனை அதிகரித்து அச்சுறுத்தல்களைக் குறைக்க, அவற்றின் பாதிப்புகளையும் சாத்தியமான தாக்குதல் வழிகளையும் புரிந்துகொள்வது அவசியம். இந்த ஒப்பந்தங்களை உருவாக்கி பராமரிப்பதற்கு கவனமான கவனமும் சிறந்த நடைமுறைகளைப் பின்பற்றுவதும் தேவை. இந்தக் கட்டுரை பொதுவான பாதிப்புகளை ஆராய்ந்து, புரிதலை மேம்படுத்த உண்மையான உலக எடுத்துக்காட்டுகளுடன் விளக்குகிறது. Salus Security வழங்கிய பின்வரும் கட்டுரையைப் பார்ப்போம்.

முக்கிய பாதிப்புகள்:

**Reentrancy:** இங்கே தாக்குபவர்கள் ஒரு இடைவெளியைப் பயன்படுத்தி, முக்கிய செயல்பாடுகள் முடிவதற்கு அல்லது மதிப்புகள் புதுப்பிக்கப்படுவதற்கு முன் செயல்பாடுகளுக்குள் மீண்டும் நுழைகிறார்கள்.

ஒற்றை செயல்பாட்டு Reentrancy: ஒரு ஒப்பந்தம் ஒரு தீய ஒப்பந்தத்துடன் தொடர்பு கொள்ளும்போது இது நிகழ்கிறது, பிந்தையது ஒரு செயல்பாட்டுக்குள் மீண்டும் நுழைய அனுமதிக்கிறது. எடுத்துக்காட்டாக, தீங்கிழைக்கும் ஒப்பந்தங்கள் 'withdrawBalance' செயல்பாட்டுக்குள் தொடர்ந்து மீண்டும் நுழைந்து, இருப்புகள் புதுப்பிக்கப்படுவதற்கு முன் அதிக ஈதரை உறிஞ்சலாம்.

குறிப்பிடத்தக்க தாக்குதல்கள்:

  • The DAO (2016): $150 மில்லியன் திரட்டிய பிறகு, குறியீட்டு பாதிப்புகள் காரணமாக இது ஹேக் செய்யப்பட்டது. இது Ethereum நெட்வொர்க்கில் பிளவை ஏற்படுத்தியது.
  • PolyDex (2021): PLX Locker Smart Contract-ல் ஏற்பட்ட reentrancy தாக்குதல் காரணமாக $500k இழக்கப்பட்டது.
  • Bacon Protocol (2022): lend() செயல்பாட்டில் ஏற்பட்ட reentrancy பிழை காரணமாக $1M இழப்பைச் சந்தித்தது.
  • Lendf.Me (2020): பல கிரிப்டோகரன்சிகளில் சுமார் $24.7 மில்லியன் இழந்தது.

**குறுக்கு-செயல்பாட்டு மறுநுழைவு:** வெவ்வேறு செயல்பாடுகளுக்கு இடையே பகிரப்பட்ட நிலைகள் மற்றும் மோசமான மறுநுழைவு பாதுகாப்பிலிருந்து எழுகிறது. மேலே உள்ள 'balances' எடுத்துக்காட்டு, 'withdrawAll' பாதுகாப்பைக் கொண்டிருந்தாலும், தாக்குபவர்கள் 'transfer' செயல்பாட்டை இன்னும் சுரண்ட முடியும் என்பதைக் காட்டுகிறது.

புகழ்பெற்ற சம்பவங்கள்:

  • DFX Finance (2022): மறுநுழைவு பாதுகாப்பு இல்லாத ஒரு செயல்பாட்டைச் சுரண்டிய தாக்குதலால் $7 மில்லியனுக்கும் மேல் இழந்தது.
  • Hundred Finance (2022): borrowFresh செயல்பாட்டை மறுநுழைவு தாக்குதல் சுரண்டிய பிறகு சுமார் $6.5 மில்லியன் இழந்தது.
  • Fei Protocol (2022): Reentrancy பாதுகாப்பு ஓட்டையைப் பயன்படுத்திய தாக்குதலால் சுமார் $80 மில்லியன் இழப்பு.

**குறுக்கு-ஒப்பந்த Reentrancy:** வெவ்வேறு ஒப்பந்தங்களுக்கிடையே பகிரப்பட்ட நிலைகள் மற்றும் தவறான மாறி மாற்ற வரிசைகளால் ஏற்படுகிறது. செயல்பாடுகளுக்கு பாதுகாப்பு இருந்தாலும், 'burnAccount' போன்ற பிற செயல்பாடுகள் இன்னும் சுரண்டப்படலாம்.

முக்கிய தாக்குதல்கள்:

  • Rari Capital (2021): ஒரு மணி நேரத்திற்குள் சுமார் $10 மில்லியன் (~2600 ETH) இழப்பு.
  • ValueDefi (2021): வெளிப்புற தரவைச் சார்ந்த தவறான பங்கு கணக்கீடுகளால் 5345.314 WBNB இழப்பு.

படிக்க-மட்டும் Reentrancy:

Read-only reentrancy என்பது ஒரு function-ஐ பயன்படுத்துகிறது, அது contract-இன் state-ஐ மாற்றாவிட்டாலும், state சீரானதாக இல்லாதபோது தவறான output-களை உருவாக்கக்கூடும்.

குறிப்பிடத்தக்க தாக்குதல்கள்:

  • QuickSwap (2022): Exploiters ஒரு flash loan-ஐ தவறாகப் பயன்படுத்தி asset-இன் spot price-ஐ மாற்றி, 138 ETH மற்றும் 700 MATIC token-களை ஏமாற்றி எடுத்தனர். Curve LP oracle-இல் இருந்த குறையால் இது சாத்தியமானது.
  • dForce (2023): Arbitrum மற்றும் Optimism chain-களில் Curve Finance-உடன் price oracle-களை அணுகும் code-இல் read-only reentrancy bug இருந்தது.
  • Sentimente (2023): Read-only reentrancy குறையைப் பயன்படுத்திய ஒரு தாக்குதல் $1 million திருட்டுக்கு வழிவகுத்தது. அதிர்ஷ்டவசமாக, 90% குற்றவாளியால் திருப்பித் தரப்பட்டது.
  • Sturdy (2023): Balancer-இன் read-only reentrancy சிக்கலால் B-stETH-STABLE-இன் விலை சிதைக்கப்பட்டதால் தோராயமாக 442 ETH இழக்கப்பட்டது.

Reentrancy பாதிப்பு தடுப்பு:

  1. எப்போதும் check-effect-interaction முறையைப் பின்பற்றுங்கள்.
  2. அனைத்து உணர்திறன் செயல்பாடுகளுக்கும் re-entry பாதுகாப்பைப் பயன்படுத்துங்கள்.
  3. ஒவ்வொரு வெளிப்புற அழைப்பையும் கவனமாகக் கையாளுங்கள்.

முழு எண் மிகைப்பு:

கணக்கீடுகள் வரம்புகளை மீறும்போது அவை மிகைப்பு அடைகின்றன, இது பெரும்பாலும் மிகச் சிறிய அல்லது மிகப்பெரிய மதிப்புகளுக்கு வழிவகுக்கிறது.

விளக்கமான தாக்குதல்கள்:

  • BeautyChain (2018): முழு எண் மிகைப்பு மூலம் தாக்குதலாளர்கள் 10^58 BEC-களைக் கைப்பற்றி, வியக்கத்தக்க $900 மில்லியனை வெளியேற்றினர்.
  • Poolz (2023): Ethereum, Binance மற்றும் Polygon-இன் ஆன்-செயினில் சுமார் $665,000 இழப்பு ஏற்பட்டது.

முழு எண் மிகைப்பு எதிர் நடவடிக்கைகள்:

  1. safeMath நூலகம் போன்ற பாதுகாப்பான கணக்கீட்டு முறைகளைப் பயன்படுத்தவும்.
  2. முடிவுகள் வரம்பிற்குள் இருப்பதை உறுதிசெய்ய எல்லைச் சரிபார்ப்புக்கு முன்னுரிமை அளிக்கவும்.
  3. உள்ளமைந்த ஓவர்ஃப்ளோ கண்டறிதலுக்கு Solidity கம்பைலர் பதிப்பு 0.8.0 அல்லது அதற்குப் பிந்தையதைப் பயன்படுத்துங்கள்.

அணுகல் கட்டுப்பாடு:
முக்கிய செயல்பாடுகளைக் கையாளும் செயல்பாடுகளில் கடுமையான அணுகல் கட்டுப்பாடுகள் இல்லாததால் அணுகல் கட்டுப்பாட்டு பாதிப்புகள் ஏற்படுகின்றன.

  • முக்கிய தாக்குதல்கள்:
  • DAOMaker (2021): சுமார் $4M பெரிய அளவில் அபகரிக்கப்பட்டது, அதன் பிறகு init செயல்பாடு பாதிப்புக்குள்ளாக விடப்பட்டது.
  • GymNetwork (2022): சுரண்டலாளர்கள் depositFromOtherContract() இல் உள்ள அங்கீகார கவனக்குறைவைப் பயன்படுத்தி, உண்மையான பணம் செலுத்தாமல் சட்டவிரோத இருப்பு அதிகரிப்பை எளிதாக்கினர். இழப்பு? சுமார் 2,475.91 WBNB.
  • Tempdao (2023): migrateStake செயல்பாட்டிற்கான அணுகல் கட்டுப்பாட்டில் தளர்வான அணுகுமுறை $2.34 மில்லியனுக்கும் அதிகமான இழப்பை ஏற்படுத்தியது.

அணுகல் கட்டுப்பாட்டு பாதிப்பு

  • விளக்கம்: ஒரு அமைப்பிற்குள் குறிப்பிட்ட செயல்பாடுகளுக்கான அணுகல் மற்றும் சிறப்புரிமைகளை நிர்வகிக்கும் போதுமான கட்டுப்பாட்டு வழிமுறைகள் இல்லாததால் ஏற்படும் பாதிப்புகள்.

தடுப்பு நடவடிக்கைகள்:

  1. கடுமையான அனுமதி சரிபார்ப்பு: செயல்பாடுகளுக்கு கண்டிப்பான அனுமதி நெறிமுறைகளை எப்போதும் அமல்படுத்துங்கள், குறிப்பாக முக்கியமான செயல்பாடுகளைக் கையாள்பவற்றுக்கு.
  2. பல கையொப்ப முறை: கூட்டு முடிவெடுக்க வேண்டிய பணிகளுக்கு, முக்கியமான செயல்பாடுகளைச் செயல்படுத்தும் முன் பல ஒப்புதல்கள் தேவைப்படும் பல கையொப்ப நெறிமுறைகளைப் பயன்படுத்துங்கள்.

பொதுவான தாக்குதல் வழிகள்

  • விளக்கம்: தாக்குபவர்கள் ஒரு அமைப்பில், முதன்மையாக ஸ்மார்ட் ஒப்பந்தங்களில் உள்ள பாதிப்புகளைப் பயன்படுத்தும் பல்வேறு முறைகள் அல்லது வழிகள்.

குறிப்பிடத்தக்க எடுத்துக்காட்டுகள்:

  • FlashLoan தாக்குதல்கள்: தீங்கிழைக்கும் செயல்களைச் செய்ய பரவலாக்கப்பட்ட நிதி அமைப்புகளின் உடனடிக் கடன் வாங்கும் அம்சத்தைப் பயன்படுத்துகிறது.
  • Front-Running: தாக்குபவர்கள் மற்றொரு பயனரின் நிலுவையில் உள்ள பரிவர்த்தனையை அறிந்து, அதிக gas கட்டணத்தை வழங்குவதன் மூலம் அதில் செயல்படுகிறார்கள்.

FlashLoan தாக்குதல்

  • விளக்கம்: இயல்பாகவே ஒரு தாக்குதல் அல்ல என்றாலும், FlashLoan என்பது பயனர்கள் பிணையம் இல்லாமல் பெரிய தொகையை உடனடியாக கடன் வாங்க அனுமதிக்கும் DeFi அம்சமாகும். ஒப்பந்த தொடர்புகள் மற்றும் உறவுகளில் உள்ள தர்க்கக் குறைகளால் இது சுரண்டப்பட்டுள்ளது.

குறிப்பிடத்தக்க தாக்குதல்கள்:

  1. Harves Finance (2020.10.26): $38 மில்லியன் இழப்பில் முடிந்தது.
  2. InverseFinance (2022.6.16): 53.2445 WBTC மற்றும் 99,976.29 USDT இழப்புக்கு வழிவகுத்தது.
  3. NewFreeDAO (2022.9.8): 4,481 WBNB அளவு திரவமாக்கப்பட்டது, இது தோராயமாக $1.25 மில்லியனுக்கு சமம்.
  4. Lodestar (2022.12.11): ஆரக்கிள் விலை கையாளுதலின் மூலம் சுரண்டப்பட்டது.
  5. 0vix (2023.4.28): Polygon செயினில் $2 மில்லியன் இழப்பை ஏற்படுத்தியது.

தடுப்பு பரிந்துரைகள்:

  1. திட்ட மேம்பாட்டின் போது Flashloan பண்புகளை அடையாளம் காணவும்.
  2. துல்லியமான விலை நிர்ணயத்திற்கு, நேர-எடையிடப்பட்ட சராசரி அல்லது பல ஆரக்கிள்களைப் பயன்படுத்தவும்.

முன்னோட்டம்

  • விளக்கம்: ஒரு தாக்குபவர் memPool-இல் இருந்து மற்றொரு பயனரின் பரிவர்த்தனையை அறிந்து, அதிக gas கட்டணத்தை வழங்கி அதைப் பயன்படுத்திக் கொள்கிறார்.

குறிப்பிடத்தக்க தாக்குதல்கள்:

  1. Sushi Badger Digg (2021.1.25): 81.68 ETH இழப்பில் முடிந்தது.
  2. Sushiswap Ape-ETH pool (2022.5.17): தாக்குபவர் சுமார் 0.3 ETH லாபம் ஈட்டினார்.
  3. Uniswap (2023.4.2): சாண்ட்விச் தாக்குதல் மூலம் சுமார் $25 மில்லியன் இழப்பு ஏற்பட்டது.

தடுப்பு பரிந்துரைகள்:

  1. வர்த்தகம் செய்யும்போது ஸ்லிப்பேஜ் பாதுகாப்பைப் பயன்படுத்தவும்.
  2. உச்ச நேரம் அல்லாத நேரங்களில், குறிப்பாக ஏற்ற இறக்கமான சந்தைகளில் வர்த்தகங்களைச் செயல்படுத்தவும்.
  3. மெம்பூலைத் தவிர்த்து, வர்த்தகங்களை நேரடியாக மைனர்களுக்கு அனுப்ப 1inch-இன் FlashBot rpc-ஐப் பயன்படுத்தவும்.

சுருக்கம்

வாழ்த்துகள்! நீங்கள் தொகுதி 2 - ஸ்மார்ட் ஒப்பந்த பாதிப்புகள்: ரீஎன்ட்ரன்சி தாக்குதல்கள் மற்றும் பொதுவான சுரண்டல்கள் பற்றிய ஆழமான பார்வையை முடித்துவிட்டீர்கள்

உங்கள் கற்றல்களை மதிப்பாய்வு செய்வோம்:

மறுநுழைவு பாதிப்புகள் - தாக்குபவர்கள் இடைவெளிகளைப் பயன்படுத்தி, செயல்பாடுகள் முழுமையாக முடிவதற்கு முன் மீண்டும் நுழைகிறார்கள்.

  • ஒற்றை செயல்பாடு மறுநுழைவு: ஒரு தீய ஒப்பந்தம் மற்றொரு ஒப்பந்தத்தில் உள்ள செயல்பாட்டில் மீண்டும் நுழைகிறது.
  • குறுக்கு செயல்பாடு மறுநுழைவு: மோசமான மறுநுழைவு பாதுகாப்பு காரணமாக வெவ்வேறு செயல்பாடுகளுக்கு இடையேயான பகிரப்பட்ட நிலைகள் சுரண்டப்படுகின்றன.
  • குறுக்கு ஒப்பந்த மறுநுழைவு: வெவ்வேறு ஒப்பந்தங்களில் பகிரப்பட்ட நிலைகளை சுரண்டுகிறது.
  • படிக்க-மட்டும் மறுநுழைவு: நிலை சீரற்றதாக இருக்கும்போது தவறான வெளியீடுகளை உருவாக்கும் செயல்பாட்டை சுரண்டுகிறது.

முழு எண் மிகைப்பு - நிர்ணயிக்கப்பட்ட வரம்புகளை மீறும் கணக்கீடுகள், தீவிர மதிப்புகளை விளைவிக்கின்றன.

அணுகல் கட்டுப்பாட்டு பாதிப்புகள் - அத்தியாவசிய செயல்பாடுகளில் கடுமையான அணுகல் கட்டுப்பாடுகள் இல்லாததால் எழுகின்றன.

பொதுவான தாக்குதல் வழிமுறைகள் - தாக்குபவர்கள் கணினி பாதிப்புகளைப் பயன்படுத்தும் முறைகள்.

**FlashLoan தாக்குதல்** - பிணையம் இல்லாமல் உடனடியாக பெரிய கடன் வாங்க அனுமதிக்கும் DeFi அம்சம், ஆனால் தர்க்கக் குறைகளால் பயன்படுத்தப்படுகிறது.

முன்னோட்டத் தாக்குதல்- தாக்குபவர்கள் நிலுவையில் உள்ள பரிவர்த்தனைகளை அறிந்து, அதிக gas கட்டணங்களை வழங்கி பயன்பெறுகிறார்கள்.

இந்தக் கட்டுரையை உங்களுக்கு வழங்கியவர்:

சுருக்கம் — விளக்கம்