ClusterFuzzLite, un sistema per organitzar proves fuzzing de codi

fa poc Google va donar a conèixer mitjançant una publicació de bloc el projecte ClusterFuzzLite, que permet organitzar proves fuzzing de codi per a la detecció primerenca de vulnerabilitats potencials a l'etapa d'operació de sistemes d'integració contínua.

Actualment, ClusterFuzz es pot utilitzar per automatitzar les proves fuzz de sol·licituds d'extracció a GitHub Actions, Google Cloud Build i Prow, però s'espera que en el futur sigui compatible amb altres sistemes de QI. El projecte es basa en la plataforma ClusterFuzz, creada per coordinar la feina dels clústers de proves fuzzing, i es distribueix sota la llicència Apache 2.0.

Cal assenyalar que després de la introducció del servei OSS-Fuzz per part de Google el 2016, es van acceptar més de 500 projectes importants de codi obert al programa de proves de fuzzing continu. A partir de les comprovacions realitzades, s'han eliminat més de 6.500 vulnerabilitats confirmades i se n'han corregit més de 21.000.

Sobre ClusterFuzzLite

ClusterFuzzLite continua desenvolupant mecanismes de prova fuzzing amb la capacitat d'identificar problemes abans a la fase de revisió per parells dels canvis proposats. ClusterFuzzLite ja s'ha introduït als processos de revisió de canvis en projectes systemd i curl, i ha fet possible identificar els errors que no es van detectar als analitzadors estàtics i linters que es van utilitzar a l'etapa inicial de verificació de codi nou.

Avui, ens complau anunciar ClusterFuzzLite, una solució de fuzzing contínua que sexecuta com part dels fluxos de treball de CI / CD per trobar vulnerabilitats més ràpid que mai. Amb només unes poques línies de codi, els usuaris de GitHub poden integrar ClusterFuzzLite al seu flux de treball i sol·licituds de fuzz pull per detectar errors abans que es cometin, millorant la seguretat general de la cadena de subministrament de programari.
Des del seu llançament el 2016, més de 500 projectes crítics de codi obert s'han integrat al programa OSS-Fuzz de Google, cosa que ha donat com a resultat la correcció de més de 6.500 vulnerabilitats i 21.000 errors funcionals. ClusterFuzzLite va de la mà amb OSS-Fuzz, en detectar errors de regressió molt abans en el procés de desenvolupament.

ClusterFuzzLite admet la validació de projectes a C, C++, Java (i altres llenguatges basats en JVM), Go, Python, Rust i Swift. Les proves de fuzzing es duen a terme fent servir el motor LibFuzzer. Els AddressSanitizer, MemorySanitizer i UBSan (UndefinedBehaviorSanitizer) eines també poden ser cridats per detectar errors de memòria i anomalies.

De les característiques clau de ClusterFuzzLite destaca per exemple la verificació ràpida dels canvis proposats per trobar errors a l'etapa anterior a l'acceptació del codi, així com també la descàrrega d'informes sobre les condicions d'ocurrència de xocs, la capacitat de passar a proves de fuzzing més avançades per identificar errors més profunds que no van aparèixer després de verificar el canvi de codi, també la generació d'informes de cobertura per avaluar la cobertura del codi durant les proves i l'arquitectura modular que us permet escollir la funcionalitat requerida.

Grans projectes, inclosos systemd i curlya, estan usant ClusterFuzzLite durant la revisió del codi, amb resultats positius. Segons Daniel Stenberg, autor de curl, “Quan els revisors humans assenteixen i han aprovat el codi i els seus analitzadors de codi estàtic i linters no poden detectar més problemes, el fuzzing és el que el porta al següent nivell de maduresa i robustesa del codi. OSS-Fuzz i ClusterFuzzLite ens ajuden a mantenir curl com un projecte de qualitat, durant tot el dia, cada dia i en cada compromís”.

Cal recordar que les proves de fuzzing generen un flux de tot tipus de combinacions aleatòries de dades d'entrada properes a les dades reals (per exemple, pàgines html amb paràmetres d'etiquetes aleatòries, fitxers o imatges amb capçaleres anormals, etc.) i corregeixen possibles falles en el procés.

Si alguna seqüència falla o no coincideix amb la resposta esperada, és molt probable que aquest comportament indiqui un error o una vulnerabilitat.

Finalment si estàs interessat en poder conèixer més a l'respecte, Pots consultar els detalls en el següent enllaç.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.