Multi-Agent Cooperative Fuzzing for HarmonyOS APIs
This paper presents HMFuzzer, a multi-agent cooperative fuzzing framework that enhances HarmonyOS API vulnerability discovery by leveraging Android code retrieval, multimodal document interpretation, reinforcement learning for prompt optimization, and automated crash analysis to overcome the scarcity and low quality of existing ecosystem documentation.
Original paper licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written by the authors. For technical accuracy, refer to the original paper. Read full disclaimer
Imagine you are trying to teach a robot how to break into a very new, high-tech house (HarmonyOS) to find weak spots in the locks and windows. The problem is, the house is so new that there are almost no blueprints, no "how-to" videos, and the few instructions you do have are written in a language the robot doesn't speak well, with lots of confusing pictures instead of words.
This paper introduces a new team of robot specialists called HMFuzzer to solve this problem. Instead of one robot trying to do everything, they use a three-person team working together, much like a specialized detective squad.
Here is how their team works, explained with simple analogies:
1. The Problem: The "New House" with Missing Manuals
HarmonyOS is like a brand-new smart city. It has millions of doors (APIs) that let different devices talk to each other. But because it's new:
- There are very few examples of how to use these doors.
- The official instruction manuals are full of diagrams and images that text-based robots can't read.
- Existing tools (other robots) try to guess how to break in, but they keep failing because they don't have enough information.
2. The Solution: The Three-Agent Team
The HMFuzzer team consists of three specialized agents who pass the work down the line:
Agent A: The "Translator & Organizer" (Preprocessing Agent)
- The Job: This agent takes the messy instruction manuals. Since the manuals have lots of pictures (like flowcharts) that the robot can't understand, this agent uses a "super-eyes" AI (Multimodal Large Models) to look at the pictures and describe them in plain text.
- The Analogy: Imagine a librarian who takes a book full of confusing sketches and writes a detailed story description for every picture so the robot can actually read it.
- The Permission Check: This agent also checks the "security guard" rules. It makes sure the robot only tries to open doors it is actually allowed to touch, so it doesn't get flagged for trying to break into a restricted area.
Agent B: The "Driver Builder" (Driver Generation Agent)
- The Job: This agent builds the actual "keys" (fuzz drivers) to test the doors. But since there are no HarmonyOS keys to copy, this agent gets a clever idea: It looks at Android.
- The Analogy: HarmonyOS and Android are like cousins; they wear different clothes but have similar family trees. If the robot needs to know how to open a Bluetooth door in HarmonyOS, it looks at how Android opens its Bluetooth doors. It uses a massive library of Android examples as a "cheat sheet" to guess how the HarmonyOS doors work.
- The "Coach" (Reinforcement Learning): If the robot builds a key that doesn't fit (a syntax error), a "Coach" steps in. Instead of just saying "wrong," the Coach uses a scoring system to tell the robot, "Try this specific type of key shape next time." The robot learns from its mistakes and gets better at building keys with every attempt.
Agent C: The "Crime Scene Investigator" (Vulnerability Analysis Agent)
- The Job: When a test causes the system to crash (like a door jamming or a window shattering), this agent investigates.
- The Analogy: In the past, robots just looked at text logs. But HarmonyOS sometimes doesn't give clear text logs. So, this agent takes a photo of the crash (a screenshot) and uses the "super-eyes" AI to describe what happened in the photo.
- The Detective Work: It combines the photo description, the text logs, and a database of known crimes (vulnerabilities) to figure out: "Was this a simple mistake, or a real security hole?" It uses a "chain of thought" method, meaning it talks through its reasoning step-by-step before making a conclusion.
3. The Results: What Did They Find?
The team tested their new squad on HarmonyOS 5.0 and found some real security holes that other tools missed.
- The Big Win: They found a specific vulnerability in how the system handles SVG images (those are the tiny graphics used in apps). They created a test that fed the system a string of numbers so long it broke the buffer (like trying to pour an ocean into a teacup). The system crashed, revealing a security flaw.
- Efficiency: Their team used less computer memory than other tools because they were smarter about how they tested, rather than just brute-forcing everything.
- Versatility: They even tested their team on other systems (like PyTorch and TensorFlow) and found new bugs there too, proving the team is good at breaking things in general, not just in HarmonyOS.
Summary
In short, the paper describes a smart, three-part robot team that:
- Reads confusing picture-heavy manuals by turning images into text.
- Copies ideas from a similar, older system (Android) to build better test keys.
- Investigates crashes by analyzing screenshots and logs to find real security holes.
They call their tool HMFuzzer, and it successfully found vulnerabilities in HarmonyOS that other tools couldn't see, all while learning and improving as it went.
Drowning in papers in your field?
Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.