Can Graph-Based Microservice Performance Detection Be Used for Microservice Intrusion Detection?
This paper investigates whether graph-based microservice performance detection can serve as a foundation for intrusion detection by evaluating a graph convolutional network on a synthetic e-commerce benchmark, finding that while the model achieves high accuracy under random splits, multi-modal data integration is crucial and current shallow graph models are outperformed by strong flattened baselines under stricter trial-level evaluation.
Original paper dedicated to the public domain under CC0 1.0 (http://creativecommons.org/publicdomain/zero/1.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer
Imagine a massive, busy shopping mall where every store (a "microservice") talks to every other store to help a customer finish a purchase. To keep things running smoothly, the mall manager installs thousands of cameras and sensors. These sensors track how fast things move (metrics), what people say (logs), and the exact path a customer takes from store to store (traces).
Usually, the manager uses these sensors for two different jobs:
- Performance Monitoring: "Is the coffee shop too slow? Is the line too long?"
- Security: "Is someone stealing? Is someone trying to break into the vault?"
This paper asks a simple question: Can the same sensors used to spot slow lines also spot thieves?
The Experiment: A Digital Mall Under Attack
The researcher built a fake digital mall using computer code (Docker). They simulated a normal day where customers browse and buy things. Then, they introduced five different types of "thieves" (attacks):
- The Crowd-Placer: Tries to jam the doors with too many people at once (HTTP Flood).
- The Key-Tester: Tries thousands of wrong passwords to guess the right one (Brute-force Login).
- The Vault-Picker: Tries to sneak a command into a form to steal data (SQL Injection).
- The Tunnel-Digger: Tries to use the mall's own phone lines to call outside numbers (SSRF).
- The Data-Hauler: Tries to sneak a huge box of data out the back door (Exfiltration).
For every single customer request, the researcher drew a map (a graph). On this map:
- Nodes (Dots): The stores involved.
- Edges (Lines): The path the request took.
- Features (Colors/Labels): How fast the stores were running and what the logs said.
The Detective: The Graph Neural Network (GCN)
The researcher trained a computer program called a Graph Neural Network (GCN) to look at these maps and decide: "Is this a normal customer, or is this one of our five types of thieves?"
Think of the GCN as a detective who doesn't just look at a single person, but looks at the entire path they took through the mall and how the stores reacted to them.
What They Found
The results were a mix of "Great!" and "Not quite yet."
1. The "Happy Path" (Random Guessing):
When the researcher let the detective learn from a mix of all the maps (some from the same day, some from different days), the GCN was a superstar. It got 96% accuracy. It was great at spotting the "Crowd-Placer" because that attack made the whole mall slow and noisy.
2. The "Real World" Test (The Strict Trial):
But in the real world, you can't train on today's data to predict tomorrow's data if they look too similar. So, they did a stricter test: "Train on Day 1, Day 2, and Day 3. Then, try to predict Day 4 without seeing it first."
- The Result: The GCN's score dropped significantly. It struggled to generalize.
- The Surprise: A much simpler detective (a standard computer program that just looked at a list of numbers without the "map" structure) actually did better than the fancy GCN.
3. What Made the Difference?
- The Map Alone Isn't Enough: Just knowing the path a request took (which stores were visited) wasn't enough to catch the thieves. The path often looked normal even when the attack was happening.
- Logs and Metrics are Key: The detective needed to read the notes (logs) and check the speedometers (metrics).
- Example: The "Key-Tester" (Brute-force) didn't change the path or slow down the mall much. But the logs showed "Failed Login" over and over. The GCN needed those logs to catch it.
- Example: The "Crowd-Placer" was easy to catch just by looking at how slow the stores got.
4. The Weak Spot:
The GCN was terrible at spotting the "Key-Tester" when it was tested on new days. It kept thinking, "Oh, that's just a normal customer browsing," because the path looked normal. It missed about 97% of these specific attacks in the strict test.
The Bottom Line
The paper concludes that yes, you can use performance graphs to help find intruders, but it's not a magic bullet.
- When it works: When the attack makes the system slow, noisy, or changes the path (like a crowd or a data leak).
- When it struggles: When the attack is quiet and sneaky (like trying many passwords), the "map" doesn't show enough clues. You need the specific text logs to catch it.
- The Verdict: Right now, a simple list of numbers (non-graph) is actually better at catching these specific attacks than the fancy map-based AI. The map-based AI is a promising tool, but it needs more training and better features before it can beat the simple methods.
In short: The graph is a useful tool in the toolbox, but for now, it's not the only tool you need to catch the bad guys.
Drowning in papers in your field?
Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.