เบเบนเป‚เบเป„เบ”เป‰เบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš fuzzing ClusterFuzzLite

เบเบนเป‚เบเป„เบ”เป‰เบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเป‚เบ„เบ‡เบเบฒเบ™ ClusterFuzzLite, เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš fuzzing เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบงเบ”เบชเบญเบšเป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบ‚เบญเบ‡เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเบ—เบตเปˆเบญเบฒเบ”เบˆเบฐเป€เบเบตเบ”เบ‚เบถเป‰เบ™เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, ClusterFuzz เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš fuzz เบ‚เบญเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ”เบถเบ‡เปƒเบ™ GitHub Actions, Google Cloud Build, เปเบฅเบฐ Prow, เปเบ•เปˆเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบฅเบฐเบšเบปเบš CI เบญเบทเปˆเบ™เป†เปเบกเปˆเบ™เบ„เบฒเบ”เบงเปˆเบฒเบˆเบฐเปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”. เป‚เบ„เบ‡เบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบกเปˆเบ™เบญเบตเบ‡เปƒเบชเปˆเป€เบงเบ—เบต ClusterFuzz, เบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เป€เบžเบทเปˆเบญเบ›เบฐเบชเบฒเบ™เบ‡เบฒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบเบธเปˆเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš fuzzing, เปเบฅเบฐเบ–เบทเบเปเบˆเบเบขเบฒเบเบžเบฒเบเปƒเบ•เป‰เปƒเบšเบญเบฐเบ™เบธเบเบฒเบ” Apache 2.0.

เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบงเปˆเบฒเบซเบผเบฑเบ‡เบˆเบฒเบ Google เบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเบšเปเบฅเบดเบเบฒเบ™ OSS-Fuzz เปƒเบ™เบ›เบต 2016, เบซเบผเบฒเบเบเบงเปˆเบฒ 500 เป‚เบ„เบ‡เบเบฒเบ™ open source เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เป„เบ”เป‰เบ–เบทเบเบเบญเบกเบฎเบฑเบšเป€เบ‚เบปเป‰เบฒเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš fuzzing เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡. เบญเบตเบ‡เบ•เบฒเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ—เบตเปˆเบ”เปเบฒเป€เบ™เบตเบ™, เบซเบผเบฒเบเบเบงเปˆเบฒ 6500 เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบขเบทเบ™เบขเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบฅเบปเบšเบฅเป‰เบฒเบ‡เปเบฅเบฐเบซเบผเบฒเบเบเบงเปˆเบฒ 21 เบžเบฑเบ™เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบ–เบทเบเปเบเป‰เป„เบ‚. ClusterFuzzLite เบชเบทเบšเบ•เปเปˆเบžเบฑเบ”เบ—เบฐเบ™เบฒเบเบปเบ™เป„เบเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš fuzzing เบ”เป‰เบงเบเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบšเบฑเบ™เบซเบฒเบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰เปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เบ—เบปเบšเบ—เบงเบ™เบ„เบทเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบชเบฐเป€เบซเบ™เบต. ClusterFuzzLite เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเป‰เบงเปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบปเบšเบ—เบงเบ™เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™ systemd เปเบฅเบฐ curl, เปเบฅเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบเปเบฒเบ™เบปเบ”เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ—เบตเปˆเบžเบฒเบ”เป‚เบญเบเบฒเบ”เป‚เบ”เบเป€เบ„เบทเปˆเบญเบ‡เบงเบดเป€เบ„เบฒเบฐ static เปเบฅเบฐ linters เบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบ‚เบญเบ‡เบเบฒเบ™เบเบงเบ”เบชเบญเบšเบฅเบฐเบซเบฑเบ”เปƒเบซเบกเปˆ.

ClusterFuzzLite เบฎเบญเบ‡เบฎเบฑเบšเบเบฒเบ™เบ—เบปเบšเบ—เบงเบ™เป‚เบ„เบ‡เบเบฒเบ™เปƒเบ™ C, C++, Java (เปเบฅเบฐเบžเบฒเบชเบฒเบญเบทเปˆเบ™เป†เบ—เบตเปˆเปƒเบŠเป‰ JVM), Go, Python, Rust, เปเบฅเบฐ Swift. เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš fuzzing เปเบกเปˆเบ™เบ”เปเบฒเป€เบ™เบตเบ™เป‚เบ”เบเปƒเบŠเป‰เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบ LibFuzzer. เป€เบ„เบทเปˆเบญเบ‡เบกเบท AddressSanitizer, MemorySanitizer, เปเบฅเบฐ UBSan (UndefinedBehaviorSanitizer) เบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบ–เบทเบเป€เบญเบตเป‰เบ™เป€เบžเบทเปˆเบญเบฅเบฐเบšเบธเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบ‚เบญเบ‡เบ„เบงเบฒเบกเบˆเบณ เปเบฅเบฐ เบ„เบงเบฒเบกเบœเบดเบ”เบ›เบปเบเบเบฐเบ•เบด.

เบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ‚เบญเบ‡ ClusterFuzzLite: เบเบฒเบ™เบเบงเบ”เบชเบญเบšเป„เบงเบ‚เบญเบ‡เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบชเบฐเป€เบซเบ™เบตเป€เบžเบทเปˆเบญเบŠเบญเบเบซเบฒเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบเบญเบกเบฎเบฑเบšเบฅเบฐเบซเบฑเบ”; เบ”เบฒเบงเป‚เบซเบผเบ”เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบเปˆเบฝเบงเบเบฑเบšเบชเบฐเบžเบฒเบšเบญเบธเบ›เบฐเบ•เบดเป€เบซเบ”; เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบเป‰เบฒเบงเป„เบ›เบชเบนเปˆเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš fuzzing เบเป‰เบฒเบงเบซเบ™เป‰เบฒเป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ—เบตเปˆเป€เบฅเบดเบเป€เบŠเบดเปˆเบ‡เบšเปเปˆเบซเบ™เป‰เบฒเบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบฅเบฐเบซเบฑเบ”; เบเบฒเบ™เบชเป‰เบฒเบ‡เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เป€เบžเบทเปˆเบญเบ›เบฐเป€เบกเบตเบ™เบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบฅเบฐเบซเบฑเบ”เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš; เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเปเบšเบšเป‚เบกเบ”เบนเบ™เบ—เบตเปˆเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฅเบทเบญเบเบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰.

เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบˆเบทเปˆเป„เบงเป‰เบงเปˆเบฒเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš fuzzing เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เบเบฐเปเบชเบ‚เบญเบ‡เบ—เบธเบเบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เปเบšเบšเบชเบธเปˆเบกเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ›เป‰เบญเบ™เป€เบ‚เบปเป‰เบฒเปƒเบเป‰เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡ (เบ•เบปเบงเบขเปˆเบฒเบ‡, เบซเบ™เป‰เบฒ html เบ—เบตเปˆเบกเบตเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเปเบ—เบฑเบเปเบšเบšเบชเบธเปˆเบก, เบเบฒเบ™เป€เบเบฑเบšเบซเบผเบทเบฎเบนเบšเบžเบฒเบšเบ—เบตเปˆเบกเบตเบซเบปเบงเบ‚เปเป‰เบœเบดเบ”เบ›เบปเบเบเบฐเบ•เบด, เปเบฅเบฐเบญเบทเปˆเบ™เป†), เปเบฅเบฐเบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰. เบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบผเบงเปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เบ–เป‰เบฒเบฅเปเบฒเบ”เบฑเบšเบ‚เบฑเบ”เบ‚เป‰เบญเบ‡เบซเบผเบทเบšเปเปˆเบเบปเบ‡เบเบฑเบšเบ„เปเบฒเบ•เบญเบšเบ—เบตเปˆเบ„เบฒเบ”เป„เบงเป‰, เบžเบถเบ”เบ•เบดเบเปเบฒเบ™เบตเป‰เบกเบตเปเบ™เบงเป‚เบ™เป‰เบกเบชเบนเบ‡เบ—เบตเปˆเบˆเบฐเบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบ–เบดเบ‡เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบซเบผเบทเบ„เบงเบฒเบกเบญเปˆเบญเบ™เปเบญ.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เบŠเบทเป‰เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเป€เบงเบฑเบšเป„เบŠเบ—เปŒเบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡ DDoS, เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ VPS VDS ๐Ÿ”ฅ เบŠเบทเป‰เป€เบงเบฑเบšเป„เบŠเบ—เปŒเป‚เบฎเบ”เบ•เบดเป‰เบ‡เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰เบ”เป‰เบงเบเบเบฒเบ™เบ›เป‰เบญเบ‡เบเบฑเบ™ DDoS, เป€เบŠเบตเบšเป€เบงเบต VPS VDS | ProHoster