Actualización de la Guía de Seguridad del MCD: Octubre del 2019

October 29, 2019

La mayor prioridad de la Fundación Maker es la seguridad del Protocolo Maker. Como tal, hemos dedicado muchos recursos (internos y externos) a nuestros esfuerzos de seguridad en torno al lanzamiento del Multi-Collateral Dai (MCD) el 18 de Noviembre. Por supuesto, nosotros continuaremos estos esfuerzos a partir de entonces.

El 24 de Julio publicamos la primera actualización de la guía de seguridad, la cual presentó nuestras vías de seguridad. Hoy, estamos emocionados de brindar los resultados de esos esfuerzos: resultados de nuestro programa Bug Bounty, verificación formal del MCD y resultados de informes de auditoría, y actualizaciones de progreso en nuestro Programa de Integración de Socios.

Resultados del Programa Bug Bounty

En Julio, lanzamos nuestro primer Programa Bug Bounty, y estamos felices de ver que fue todo un éxito. Tres bugs de alta gravedad y un bug de gravedad crítica fueron encontrados, resultando en recompensas con pagos de un total de $90.000.

Las vulnerabilidades consistieron en interacciones indeseadas entre el módulo de la Tasa de Interés de Dai (DSR) y el Protocolo Maker en un caso, y en otro caso con el módulo del Apagado de Emergencia y las Subastas. Los descubrimientos estuvieron en línea con nuestras expectativas, ya que estos módulos requerían un escrutinio adicional o eran los más recientes para integrarse con el sistema.

Dado que la seguridad de nuestro sistema sigue siendo nuestra mayor prioridad, continuaremos el programa bug bounty indefinidamente.

Resultados de Verificación Formal

Los contratos centrales del sistema del MCD han sido verificados formalmente, y la verificación de periféricos y contratos de ayuda están en la fase final. Ahora estamos trabajando en la verificación formal de los tokens que están siendo considerados por los votantes de MKR como los nuevos tipos de colateral, concentrándose en los contratos secundarios al igual que en los contratos de gobernanza en el sistema. Adicionalmente, hemos incorporado la verificación formal en nuestros procesos de evaluación y lanzamiento continuos.

Verificaciones formales completadas hasta ahora:

Como se esperaba, nuestro enfoque de verificación formal demostró ser complementario a otras vías de seguridad. Si bien la verificación formal no es una 'bala de plata' en defensa de las amenazas del sistema, la metodología ha sido reconfirmada como una herramienta altamente efectiva que mejora significativamente la seguridad en general del sistema.

Por supuesto, nosotros continuaremos los procesos de verificación formal y actualizaremos las pruebas pasadas a medida que la auditoría y los resultados del bug bounty lo consideren necesario.

Auditorías de Seguridad

Además de llevar a cabo las verificaciones formales, también se han realizado auditorías de seguridad tradicionales.

Resumen de Actualización de Runtime Verification

Runtime Verification, una compañía de análisis de software con sede en Illinois, usa técnicas basadas en verificación de tiempo de ejecución para mejorar la seguridad, fiabilidad y "corrección" técnica de sistemas dde software. El equipo de Runtime Verification ha completado su modelo de alto nivel del sistema central del MCD y ha comenzado a construir modelos de los otros módulos. El equipo espera completar su trabajo a fines de este otoño, probablemente a fines de Noviembre.

Reporte de la Auditoría Final de Trail of Bits

Trail of Bits (ToB), un lider mundial en seguridad, ha auditados nuestros smart contracts del MCD. ToB revisa una amplia variedad de software, crea herramientas de seguridad y consulta las modificaciones necesarias para la implementación segura del sistema. Su auditoría consistió en revisión manual, análisis automático y desarrollo de herramientas a la medida. Lea el reporte de la auditoría final de ToB.

Resumen de Resultados

  • El equipo de Trail of Bits identificó dos errores de gravedad media, cuatro errores de gravedad baja y ocho errores de seguridad de información.
  • En su reporte de auditoría, el equipo de ToB notó que nuestro uso de verificación formal eliminó gran parte de la "fruta madura" en términos de vulnerabilidades y recomendó su uso continuo.
  • El equipo de ToB también desarrolló muchas herramientas de análisis de seguridad especializada en el código base del MCD. Estas herramientas fueron usadas en el transcurso de la auditoría para descubrir bugs, y luego se entregaron al equipo del MCD cuando se completó la auditoría.
  • ToB tuvo un hallazgo específico sobre la DSR que queremos abordar aquí (fuente, pp. 22). Entendemos el problema percibido y estamos buscando las posibilidades de cómo podríamos aplicar la DSR a Dai en todo el sistema. Mientras tanto, estamos de acuerdo con los riesgos de las proxies ERC-20 no estándar de los usuarios para la DSR y hemos comenzado una I + D en una implementación de prueba de concepto. Como siempre, recomendamos a los usuarios practicar con cautela cuando usan smart contracts de terceros para interactuar con el sistema MCD.

Reporte de Auditoría Final de PeckShield

PeckShield, una organización de servicios de seguridad con sede en China, ha verificado previa e independientemente la vulnerabilidad del Maker DSChief que fue parcheada en Mayo. Por lo tanto, los contratamos para realizar una auditoría formal. Lea el reporte de la auditoría final de PeckShield.

Resumen

  • El equipo de PeckShield identificó un problema de alta gravedad (previamente descubierto a través del programa bug bounty), un problema de gravedad media, cuatro problemas de gravedad baja y diez problemas de seguridad de información.
  • En su reporte de auditoría, el equipo reconoció nuestros esfuerzos de seguridad independientes: "Siempre recomendamos proceder con varias auditorías independientes y un programa público bug bounty para garantizar la seguridad de los smart contract(s)."
  • Se encontraron cero errores en la lista de "17 bugs típicos de codificación de smart contracts" de PeckShield.

Resultados de Auditoría de Terceros

Además de los resultados de las auditorías proporcionados por las tres compañías contratadas anteriormente, fuimos contactados por otra firma de seguridad, Certora, quién presentó hallazgos luego de revisar el código del MCD por su cuenta y con sus propias herramientas. Queremos agradecer a Certora por verificar independientemente dos vulnerabilidades importantes.

Resultados Superpuestos

Dada la naturaleza exhaustiva y amplia de las auditorías de Trail of Bits y PeckShield, nuestro program bug bounty y la auditoría de Certora, esperábamos, correctamente, que se produciría correctamente una superposición en la cobertura y los resultados. Las superposiciones de auditoría detalladas en el diagrama siguiente representan los beneficios y la fortaleza de combinar nuestros propios esfuerzos de seguridad con la supervisión externa. Para una definición detallada de los hallazgos, consulte los enlaces anteriores para ver los reportes de auditorías individuales.

This image has an empty alt attribute; its file name is j350UOyoXQyBibr_ibQHvZldgUgPWedarkRyXiDNj81iZ0JwfgGeqq7BvYOJNtWxSub3QOUPmKgZCpQ6-OdLDpNPLlPyt1HzvdSUd-6obiiNOZCyAaAyQwprZ9ZJCJDuoYelxKuC

En general, las auditorías de seguridad han cubierto las siguiente áreas dentro del MCD:

  • El protocolo principal de Maker
  • Razonamiento de incentivos
  • Ataques DoS, Repetición, Front-running, y de sistema a nivel de Blockchain.
  • Ataques de Gobernanza
  • Gobernanza (General)
  • Adaptadores de colateral y contratos Front-end
  • Oráculos
  • Infrestructura de indicadores de precios off-chain
  • Contratos de oráculos on-chain
  • Implementación del sistema y correción de permisos
  • Subastas
  • K-dss

Programa de Integración de Socios

La campaña para promocionar proyectos que han integrado y probado sus productos y servicios dentro del MCD ha sido exitosa hasta ahora. Al momento de escribir este artículo, hemos compartido el siguiente contenido con la comunidad y con nuestros socios para ayudar a asegurar que sus proyectos estarán listos para el lanzamiento del MCD:

  • El MCD Roadmap (actualizaciones regulares sobre el progreso del MCD).
  • Una explicación de los smart contracts del MCD (detallada en MCD 101).
  • La Guía de Migración (una vista general del proceso para actualizar el Dai existente y los CDPs al MCD).
  • Herramientas de integración (detalladas en nuestra Guía de Desarrolladores).

Luego, guiaremos a nuestros socios a través de los pasos finales de preparación para el MCD y la Tasa de Interés de Dai.

En Resumen

Nuestros esfuerzos de las cuatro vías de seguridad han resultado en el descubrimiento de un número de bugs, incluyendo algunos errores de gravedad alta y crítica. Hemos tomado medidas para evaluar y mitigar estos errores, y continuaremos trabajando con los auditores para verificar que los hemos abordado correctamente antes del lanzamiento del MCD.

Próximos Pasos

En el futuro, continuaremos garantizando que nuestros esfuerzos de seguridad en torno al MCD sean rigurosos. Continuaremos siguiendo nuestra hoja de ruta de seguridad, incluyendo nuestros esfuerzos de verificación formal, continuaremos con el programa Bug Bounty y, por supuesto, mantendremos el monitoreo de amenazas. La auditoría de seguridad es un esfuerzo continuo; si se identifican problemas adicionales después del lanzamiento, tenemos los mecanismos para actualizar el sistema con el permiso de los dueños de MKR.

En términos de los próximos pasos más inmediatos , nos concentraremos en lo siguiente:

  • Un lanzamiento de MCD por etapas.
  • Capacidad de actualización de los módulos de acceso instantáneo, que contienen los componentes para realizar cambios directos y limitados en el Sistema de Crédito Dai sin consenso en DS-Chief.
  • Apagado de Emergencia y ejecución de prueba de redistribución.

Finalmente, esperamos seguir trabajando con los mejores socios en la seguridad de la industria. Sus reportes de auditoría brindan inmersiones profundas en áreas de cobertura y preocupación, y estamos felices de compartirlos con nuestra comunidad para ayudar a todos a entender como funciona el Multi-Collateral Dai.

Para más información sobre auditorías de seguridad, el programa bug bounty y nuestros esfuerzos de verificación formal,visita security.makerdao.com. Para acompañarnos en nuestro camino hacia el MCD, asegúrate de enmarcar y revisar el MCD Roadmap.

October 29, 2019