Ruka hadi kwenye maudhui makuu

Orodha ya ukaguzi wa usalama wa mkataba mahiri

mikataba mahiri
usalama
solidity
Kati
Trailofbits
7 Septemba 2020
3 dakika za kusoma

Orodha ya ukaguzi wa uundaji wa mkataba mahiri

Huu hapa ni mchakato wa kiwango cha juu tunaopendekeza uufuate unapokuwa unaandika mikataba mahiri yako.

Angalia masuala ya usalama yanayojulikana:

  • Kagua mikataba yako ukitumia Slither (opens in a new tab). Ina zaidi ya vigunduzi 40 vilivyojengewa ndani kwa ajili ya udhaifu wa kawaida. Iendeshe kwenye kila uingizaji wa msimbo mpya na uhakikishe inapata ripoti safi (au tumia hali ya kuchuja ili kunyamazisha masuala fulani).
  • Kagua mikataba yako ukitumia Crytic (opens in a new tab). Inakagua masuala 50 ambayo Slither haikagui. Crytic inaweza kusaidia timu yako kufuatiliana pia, kwa kuibua kwa urahisi masuala ya usalama katika Maombi ya Kuvuta (Pull Requests) kwenye GitHub.

Zingatia vipengele maalum vya mkataba wako:

Kagua kwa macho vipengele muhimu vya usalama vya msimbo wako:

Andika sifa muhimu za usalama na utumie vijenereta vya majaribio vya kiotomatiki kuzitathmini:

  • Jifunze kuandika sifa za usalama kwa ajili ya msimbo wako. Ni ngumu mwanzoni, lakini ni shughuli moja muhimu zaidi kwa kufikia matokeo mazuri. Pia ni sharti la kutumia mbinu zozote za hali ya juu katika mafunzo haya.
  • Fafanua sifa za usalama katika Solidity, kwa matumizi na Echidna (opens in a new tab) na Manticore (opens in a new tab). Zingatia mashine yako ya hali, vidhibiti vya ufikiaji, shughuli za hesabu, mwingiliano wa nje, na ufuataji wa viwango.
  • Fafanua sifa za usalama ukitumia API ya Python ya Slither. Zingatia urithi, utegemezi wa vigezo, vidhibiti vya ufikiaji, na masuala mengine ya kimuundo.
  • Endesha majaribio yako ya sifa kwenye kila uwasilishaji ukitumia Crytic (opens in a new tab). Crytic inaweza kutumia na kutathmini majaribio ya sifa za usalama ili kila mtu kwenye timu yako aweze kuona kwa urahisi kwamba yamefaulu kwenye GitHub. Majaribio yanayofeli yanaweza kuzuia uwasilishaji.

Hatimaye, kuwa mwangalifu na masuala ambayo zana za kiotomatiki haziwezi kupata kwa urahisi:

  • Ukosefu wa faragha: kila mtu mwingine anaweza kuona miamala yako inapokuwa kwenye foleni katika bwawa
  • Miamala ya kutangulia (front running)
  • Shughuli za kriptografia
  • Mwingiliano hatari na vipengele vya nje vya fedha zilizogatuliwa (DeFi)

Omba msaada

Saa za ofisi za Ethereum (opens in a new tab) hufanyika kila Jumanne mchana. Vipindi hivi vya saa 1, vya mtu mmoja mmoja ni fursa ya kutuuliza maswali yoyote uliyo nayo kuhusu usalama, kutatua matatizo ukitumia zana zetu, na kupata maoni kutoka kwa wataalamu kuhusu mbinu yako ya sasa. Tutakusaidia kupitia mwongozo huu.

Jiunge na Slack yetu: Empire Hacking (opens in a new tab). Tunapatikana kila wakati katika chaneli za #crytic na #ethereum ikiwa una maswali yoyote.