Finding The .webp Vulnerability in 8s (Fuzzing with AFL++)



Video Summary and Key Points

Summary of AFL Plus+ Fuzzing Overview

This video provides an overview of using AFL Plus+ for fuzz testing, with the presenter sharing personal experiences while trying to fuzz the “libwebp” library, in an effort to rediscover a vulnerability that was used to hack iPhones. The video discusses the importance of understanding fuzzing and taking a practical approach, including setting up a fuzzing environment, integrating Docker, and exploring different fuzzing strategies.

Key Points:

  • The presenter is new to fuzzing and is learning by attempting to reproduce significant vulnerabilities.
  • A FL Plus+ is a powerful tool that can help find vulnerabilities in programs, including open source software.
  • Competing against OSS fuzz, a large continuous fuzzing server by Google, presents challenges when fuzzing prominent libraries.
  • Setting up a fuzzing environment requires compiling the target library with AFL’s instrumentation.
  • Utilizing Docker containers can streamline the setup process and maintain a clean local environment.
  • Iterative development is encouraged, adjusting scripts as errors are encountered during the fuzzing process.
  • Different fuzzing instances can be run with varied instrumentation and coverage strategies to enhance results.
  • Creating an allow list with functions of interest can potentially speed up the fuzzing process.
  • Persistent fuzzing, as opposed to regular fuzzing, can significantly enhance performance and results.
  • The video encourages understanding that fuzzing is not a guaranteed method for vulnerability discovery, emphasizing the need for a strategic approach.
  • Despite some failures, the presenter remains optimistic and continues exploring fuzzing methods.

Youtube Channel: LiveOverflow
Video Published: 2024-01-22T14:25:45+00:00

Video Description:
A guide on how to do fuzzing with AFL++ in an attempt to rediscover the libwebp vulnerability CVE-2023-4863 that was used to hack iPhones.

Want to learn hacking? Signup to https://hextree.io (ad)
Buy my shitty font: https://shop.liveoverflow.com/ (ad)

Watch webp Part 1: https://www.youtube.com/watch?v=lAyhKaclsPM
,
Sudo Vulnerability Series: https://www.youtube.com/playlist?list=PLhixgUqwRTjy0gMuT4C3bmjeZjuNQyqdx
Docker Video: https://www.youtube.com/watch?v=-YnMr1lj4Z8

OSS-Fuzz: https://github.com/google/oss-fuzz
OSS-Fuzz libwebp coverage: https://storage.googleapis.com/oss-fuzz-coverage/libwebp/reports/20230901/linux/src/libwebp/src/utils/report.html
AFLplusplus: https://github.com/AFLplusplus/AFLplusplus/blob/stable/docs/fuzzing_in_depth.md
vanhauser’s blog: https://www.srlabs.de/blog-post/advanced-fuzzing-unmasks-elusive-vulnerabilities
vanhauser/thc on twitter: https://twitter.com/hackerschoice
AFLpluslus Persistent Mode: https://github.com/AFLplusplus/AFLplusplus/blob/0c054f520eda67b7bb15f95ca58c028e9b68131f/instrumentation/README.persistent_mode.md
Grab the code: https://github.com/LiveOverflow/webp-CVE-2023-4863

=[ ❤️ Support ]=

Find out how you can support LiveOverflow: https://liveoverflow.com/support/

=[ 🐕 Social ]=

→ 2nd Channel: https://www.youtube.com/LiveUnderflow
→ Twitter: https://twitter.com/LiveOverflow/
→ Streaming: https://twitch.tvLiveOverflow/
→ TikTok: https://www.tiktok.com/@liveoverflow_
→ Instagram: https://instagram.com/LiveOverflow/
→ Blog: https://liveoverflow.com/
→ Subreddit: https://www.reddit.com/r/LiveOverflow/
→ Facebook: https://www.facebook.com/LiveOverflow/

Chapters:
00:00 – Intro
00:36 – How to Learn About Fuzzing?
02:36 – Setting Up Fuzzing With AFL++
04:53 – My Docker Workflow for Fuzzing
06:35 – AFL++ Different Coverage Strategies
09:50 – Start the libwebp Fuzzing Campaign
11:58 – Adjusting the Fuzzer
13:45 – Why Don’t We Find a Crash?
15:49 – Fuzzing with AFL++ Persistent Mode
19:47 – Persistent Mode Fuzzing Results
20:46 – Finding the Vulnerability in 8s