Mozilla has announced a new bug rewards program for security researchers that find flaws in the new certificate verification library it plans to use in the upcoming Firefox 31 release.
As part of the program, the company will offer researchers $10,000 for critical security flaws found before the end of June.
“As we’ve all been painfully reminded recently (Heartbleed, #gotofail) correct code in TLS libraries is crucial in today’s Internet and we want to make sure this code is rock solid before it ships to millions of Firefox users,” blogged Daniel Veditz, security lead at Mozilla.
“We are primarily interested in bugs that allow the construction of certificate chains that are accepted as valid when they should be rejected, and bugs in the new code that lead to exploitable memory corruption,” he blogged. “Compatibility issues that cause Firefox to be unable to verify otherwise valid certificates will generally not be considered a security bug, but a bug that caused Firefox to accept forged signed OCSP responses would be.”
To qualify for the program, the bug and the bug reporter must meet the guidelines of Mozilla’s normal security bug bounty program. In addition, the vulnerability must either be in or caused by code in security/pkix or security/certverifier as used in Firefox, be trigged through normal Web browsing and be reported in enough detail for Mozilla to reproduce the problem. It also must be reported to Mozilla by 11:59 pm PDT on June 30.
Bugs reported to the firm that do not meet the specific parameters of the program are still eligible for Mozilla’s normal $3,000 bounty.
According to Mozilla, the new certificate verification library – mozilla::pkix – is more robust and maintainable.
“The new code is more robust because certificate path building attempts all potential trust chains for a certificate before giving up (acknowledging the fact that the certificate space is a cyclic directed graph and not a forest),” the firm announced. “The new implementation is also more maintainable, with only 4,167 lines of C++ code compared to the previous 81,865 lines of code which had been auto-translated from Java to C. The new library benefits from C++ functionality such as memory cleanup tools (e.g., RAII).”