DApps: problemas de seguridad, hacks y medidas preventivas PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

DApps: problemas de seguridad, hacks y medidas preventivas 

Tiempo de lectura: 4 minutos

La descentralización en todos los ámbitos de la vida es el nuevo código de la próxima era. Las DApps están aquí para revolucionar la forma en que operamos las aplicaciones, fusionando la privacidad de los datos y las cualidades de propiedad. 

Entremos en la profundidad del blog.

¿Qué son las DApps?

Las DApps son aplicaciones descentralizadas que usan blockchain para procesar datos a través de una red distribuida y ejecutar transacciones. A diferencia de las aplicaciones centralizadas, las DApps son operadas por redes peer-to-peer. 

Una vez que el desarrollador publica el código base para la DApp, se pueden crear varias aplicaciones encima. No existe una autoridad única y, por lo tanto, no existe un punto único de falla, ya que la red P2P los ejecuta. 

DApp ayuda a crear numerosas aplicaciones, como aplicaciones web, juegos y entretenimiento, aplicaciones de redes sociales, etc.       

Características significativas de DApp

Aquí hay algunos consejos sobre los atributos clave de DApp

  • Son código fuente abierto y son controlados por el usuario. Esto significa que cualquier cambio o nueva incorporación se vota e implementa. 
  • La descentralización es el aspecto central a través del cual todos los detalles se mantienen en el libro mayor distribuido públicamente.
  • Las DApps emplean tokens nativos de la plataforma para recompensar a los usuarios por participar o extraerlos.

Noticias sobre el uso de DApps

De acuerdo con los informes de dapprad es, el número de usuarios que utilizan aplicaciones descentralizadas crece un 396 % cada año, con 2.4 millones en la actualidad. 

Entre las cuales, las DApps de juegos representan más del 50 % de la actividad de los usuarios en el primer trimestre de 1, y las NFT generaron una enorme recaudación de alrededor de $2022 mil millones. 

Problemas de seguridad de codificación DApp

Habiendo conocido la idea general de DApp, exploremos ahora algunos de los errores técnicos comunes asociados con ellos.

Comprobación de firma: El uso del formato de verificación “case_=> true” en el @verificador La función de codificación DApp prohíbe la transacción de transferencia y permite otros tipos de transacciones.

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

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

Pero al usar este tipo de código, cualquier usuario puede realizar transacciones, excepto transacciones de transferencia. Al ingresar la clave pública en el campo "senderPublicKey" sin agregar firmas, da acceso a cualquier usuario para ejecutar una transacción. 

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

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

Por lo tanto, es crucial garantizar la presencia de una verificación de firma en la codificación DApp para estar libre de la vulnerabilidad mencionada.

Introduciendo claves: Las operaciones en la DApp implican el almacenamiento de clave-valor. El error común es que un desarrollador escribiría en una clave y la leería en otra. Por lo tanto, se debe tener cuidado al escribir claves. 

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 ...
}

Otro error es que en lugar de dar valores predeterminados, intentar leer valores de variables como value() o extract() no es sugestionable.

Transacciones controladas: Las operaciones DApp involucran varias operaciones interdependientes para ejecutarse en secuencia. En tales casos, es seguro tener la función "waitForTxWithNConfirmations" para recibir confirmaciones una vez que se agrega la primera transacción al bloque.

Problemas genéricos relacionados con DApps

Bajo nivel de liquidez de DApps: Los bajos niveles de liquidez en las aplicaciones descentralizadas dificultan la compra o venta de tokens al precio esperado, lo que provoca deslizamientos. El deslizamiento es la diferencia entre los precios esperados y los ejecutados, lo que puede provocar una pérdida de fondos.

Los usuarios pueden realizar un seguimiento de la liquidez de los activos en función de sus volúmenes de negociación y tomar decisiones inteligentes antes de comprar o vender un token. 

Violación o falla de seguridad:  Las DApps funcionan a través de contratos inteligentes y aquellos con errores en su codificación son objetivos ideales para los piratas informáticos. En condiciones de mercado extremas o debido a vulnerabilidades de código, la devaluación o pérdida de fondos en DApps se vuelve inevitable.

La auditoría del código por parte de empresas de terceros es más beneficiosa para superar este problema. 

DApp de phishing: Si hay un compromiso en la codificación de la DApp, los enlaces de phishing se distribuyen en sus sitios oficiales. Al hacer clic en ellos sin saberlo, drenan todos los fondos de las billeteras de los usuarios. 

Por lo tanto, verifique dos veces las URL antes de agregar los fondos de sus billeteras o ingresar la información de la billetera. 

Estado de los hacks y estafas de DApp en 2022

La desventaja de las DApps es el hecho de que son vulnerables a los ataques. Según los datos publicados por DAppRadar, las estafas de DApp por sí solas representaron una pérdida de $1.2 mil millones. 

Los aspectos más destacados de los principales eventos de pirateo incluyen,

Truco del puente Ronin: Al obtener acceso a los nodos de validación, el pirata informático pudo falsificar transacciones en Axie Infinity red del puente Ronin que provocó una pérdida de 600 millones de dólares. 

Protocolo de agujero de gusano: El pirata informático aprovechó una falla de seguridad en el código del protocolo Wormhole, lo que resultó en una pérdida de $ 325 millones. 

Aquí se explica cómo mantenerse seguro y los métodos preventivos que se deben adoptar para la seguridad de DApp

Superar las fallas de seguridad resuelve la mayor parte del problema para DApps. Hay algunas maneras de solucionarlo. 

  1. Contratar servicios de auditoría: Un análisis exhaustivo de la codificación realizado por una empresa de auditoría como QuillAuditorias elimina los insectos desde el nivel del suelo. 
  2. Pruebas de penetración: Las pruebas de penetración ganan ventaja en la búsqueda de vulnerabilidades ocultas/de nodos, pruebas de API y descubrimiento de nuevas rutas de ataque. 

Medidas preventivas generales para la seguridad de DApp

  1. Mantenga el secreto de la frase semilla privada para acceder a los fondos de la billetera
  2. Verificación de la autenticidad y legitimidad del sitio web de DApp
  3. Tenga cuidado con los enlaces o textos con errores gramaticales.

114 Vistas

Sello de tiempo:

Mas de hachís