DApps: Biztonsági problémák, feltörések és megelőző intézkedések PlatoBlockchain Data Intelligence. Függőleges keresés. Ai.

DApps: Biztonsági problémák, feltörések és megelőző intézkedések 

Olvasási idő: 4 jegyzőkönyv

A decentralizáció az élet minden területén a közelgő korszak új kódja. A DApps azért jött, hogy forradalmasítsa az alkalmazások kezelését, egyesítve az adatvédelmi és a tulajdonjog minőségét. 

Menjünk a blog mélyére.

Mik azok a DApp-ok?

A DApp-k decentralizált alkalmazások, amelyek blokkláncot használnak az adatok elosztott hálózaton keresztüli feldolgozására és tranzakciók végrehajtására. A központosított alkalmazásokkal ellentétben a DApp-okat peer-to-peer hálózatok üzemeltetik. 

Miután a fejlesztő kiadja a DApp kódbázisát, több alkalmazás is ráépíthető. Nincs egyetlen hatóság, és ezért nincs egyetlen hibapont sem, mivel a P2P hálózat működteti őket. 

A DApp számos alkalmazás létrehozásában segít, például webalkalmazások, játékok és szórakoztatás, közösségi média alkalmazások stb.       

A DApp jelentős jellemzői

Íme néhány mutató a DApp legfontosabb tulajdonságairól

  • Nyílt forráskódúak, és a felhasználó által vezérelhetők. Ez azt jelenti, hogy minden változtatást vagy új kiegészítést megszavaznak és végrehajtanak. 
  • A decentralizáció az az alapvető szempont, amelyen keresztül az összes részlet a nyilvánosan terjesztett főkönyvben tárolódik.
  • A DApps a platformon natív tokeneket alkalmaz, hogy jutalmazza a felhasználókat a részvételért vagy azok bányászatáért.

Hírek a DApps használatáról

A jelentések szerint DAppRadar, a decentralizált alkalmazásokat használó felhasználók száma évente 396%-kal növekszik, jelenleg 2.4 millió. 

50 első negyedévében a játékra szánt DApp-k a felhasználói tevékenység több mint 1%-át teszik ki, az NFT-k pedig hatalmas, körülbelül 2022 milliárd dolláros gyűjteményt tettek ki. 

DApp kódolási biztonsági problémák

Miután megismertük a DApp általános elképzelését, most vizsgáljunk meg néhány gyakori technikai hibát, amelyek ezekhez kapcsolódnak.

Aláírás ellenőrzése: A „case_=> true” ellenőrzési formátum használata a @ellenőrző A DApp kódolás funkciója tiltja az átviteli tranzakciót, miközben engedélyezi az egyéb tranzakciótípusokat.

{-# STDLIB_VERSION 3 #-}
{-# CONTENT_TYPE EXPRESSION #-}
{-# SCRIPT_TYPE ACCOUNT #-}

match (tx) {
	case t:TransferTransaction => false
	case _ => true # NEVER DO THIS!
}

Az ilyen típusú kód használatával azonban bármely felhasználó végrehajthat tranzakciókat, kivéve az átviteli tranzakciókat. Ha a nyilvános kulcsot a „senderPublicKey” mezőbe írja be aláírás hozzáadása nélkül, hozzáférést biztosít bármely felhasználó számára a tranzakció futtatásához. 

{-# STDLIB_VERSION 3 #-}
{-# CONTENT_TYPE EXPRESSION #-}
{-# SCRIPT_TYPE ACCOUNT #-}

match (tx) {
	case t:TransferTransaction => false
	case _ => sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublikey)
}

Ezért kulcsfontosságú az aláírás-ellenőrzés megléte a DApp kódolásban, hogy az említett sebezhetőség mentes legyen.

Kulcsok beírása: A DApp műveletei a kulcs-érték tárolást foglalják magukban. A gyakori hiba az, hogy a fejlesztő az egyik kulcsra ír, és azt olvassa ki a másikból. Tehát óvatosnak kell lennie a kulcsok írása során. 

let NONE = "NONE"

func keyVoteByAddress(votingId: Int, address: String) = "voting_" + votingId + "_vote_" + address


@Callable(i)
func vote(id: Int) => {
	let voteKey = keyVoteByAddress(id, i.caller.toBase58String())
	let vote = getString(this, voteKey).valueOrElse(NONE)

	# alternative option

	let vote = match getString(this, voteKey){
    	case s: String => s
    	case _ => NONE
	}

	if (vote == NONE) then ...
	else ...
}

Egy másik hiba az, hogy az alapértelmezett értékek megadása helyett nem javasolható, hogy az értékeket olyan változókból próbáljuk kiolvasni, mint a value() vagy a extract().

Ellenőrzött tranzakciók: A DApp-műveletek több, egymástól függő műveletet foglalnak magukban, amelyek egymás után futnak. Ilyen esetekben biztonságosan használhatja a „waitForTxWithNConfirmations” funkciót, amely az első tranzakció blokkhoz való hozzáadását követően egyszeri megerősítést kap.

A DApps-szal kapcsolatos általános problémák

A DApps alacsony likviditási szintje: A decentralizált alkalmazások alacsony likviditási szintje megnehezíti a tokenek várt áron történő vásárlását vagy eladását, ami csúszást okoz. A csúszás a várt és a végrehajtott ár közötti különbség, amely forráskieséshez vezethet.

A felhasználók kereskedési volumeneik alapján nyomon követhetik az eszközök likviditását, és okos döntéseket hozhatnak a token vásárlása vagy eladása előtt. 

Biztonsági megsértés vagy hiba:  A DApp-ok intelligens szerződéseken keresztül működnek, és a kódolási hibákkal rendelkezők ideális célpontok a hackerek számára. Szélsőséges piaci körülmények között vagy kódexploitások következtében elkerülhetetlenné válik a DApps leértékelődése vagy pénzvesztése.

A kód külső cégek általi auditálása jobban segít a probléma megoldásában. 

Adathalász DApp: Ha a DApp kódolása kompromisszumot szenved, az adathalász linkeket a hivatalos webhelyeiken terjesztik. Ha tudtán kívül kattintanak rájuk, akkor a felhasználói pénztárcákból kimerítik az összes pénzt. 

Ezért még egyszer ellenőrizze az URL-eket, mielőtt hozzáadná a pénztárcájából származó összeget, vagy megadná a pénztárca adatait. 

A DApp-hackelések és átverések helyzete 2022-ben

A DApps hátránya az a tény, hogy ki vannak téve a feltöréseknek. A DAppRadar által közzétett adatok alapján a DApp-csalás önmagában 1.2 milliárd dolláros veszteséget okozott. 

A főbb hack események közül kiemelkedik,

Ronin híd feltörése: Az érvényesítő csomópontokhoz hozzáférve a hacker hamis tranzakciókat tudott hamisítani Axie Infinity's Ronin hídhálózat, amely 600 millió dolláros veszteséget okozott. 

Féreglyuk protokoll: A hacker a Wormhole protokoll kódjának biztonsági hibáját használta ki, ami 325 millió dolláros veszteséget okozott. 

Íme, hogyan maradhat biztonságban, és milyen megelőző módszereket alkalmazhat a DApp biztonsághoz

A biztonsági hibák leküzdése megoldja a probléma nagy részét DApps. Van néhány módja annak, hogy rendezze. 

  1. Vegyen könyvvizsgálói szolgáltatásokat: Alapos kódelemzés egy könyvvizsgáló cégtől, mint pl QuillAudits eltávolítja a hibákat a talajszintről. 
  2. Penetrációs vizsgálat: A penetrációs tesztelés előnyt élvez a rejtett/csomóponti sebezhetőségek felkutatásában, az API-k tesztelésében és az új támadási utak felfedezésében. 

Általános megelőző intézkedések a DApp biztonság érdekében

  1. Fenntartja a magánjellegű vetőmag kifejezés titkát, hogy hozzáférjen a pénztárcából származó forrásokhoz
  2. A DApp webhely hitelességének és legitimitásának ellenőrzése
  3. Legyen óvatos a nyelvtani hibákat tartalmazó hivatkozásokkal vagy szövegekkel.

114 Nézetek

Időbélyeg:

Még több Quillhash