Mit Chromes Zugänglichkeits-APIs Sicherheitslücken finden
Der Code der Benutzeroberfläche von Chrome ist komplex und enthält manchmal Fehler, die Sicherheitslücken sein können, wenn sie zu Speicherfehlern führen, die ein Angreifer ausnutzen kann. Das Chrome-Team möchte diese Fehler automatisch finden und erkannte, dass der Zugriffsbäume von Chrome-Bedienelementen, der für Hilfstechnologie sichtbar ist, für dieses Ziel genutzt werden kann. Sie verwenden eine Technik namens Fuzzing, bei der die Bedienelemente halb zufällig interagiert werden, um zu sehen, ob sie abstürzen lassen. Das Team musste mehrere Herausforderungen überwinden, darunter die Nutzung von coverage-geführtem Fuzzing, um Kombinationen von Bedienelementen auszuwählen, die in neuen Codebereichen von Chrome eindringen, und das Ausführen von Fuzz-Fällen innerhalb einer echten Version von Chrome mithilfe des InProcessFuzzer-Frameworks. Sie mussten auch Bedenken hinsichtlich des Lärms und der Komplexität der Chrome-Umgebung ansprechen und sicherstellen, dass die Testfälle stabil und handhabbar sind. Das Team entwickelte einen eigenen Mutator, um die Effektivität des Fuzzers zu verbessern, und führt den Fuzzer nun auf ihrem ClusterFuzz-Infrastruktur aus. Obwohl es noch zu früh ist, um zu sagen, ob der Ansatz erfolgreich ist, hat der Fuzzer bereits ein paar potenzielle Fehler im Zugriffskode selbst gefunden.