What is and Why Do We Need Clearblue?
If X-ray is vital for human health, it is regrettable that we do not have an equivalent technology for the health of software, leading to high-impact quality and security incidents. To address this problem, we have developed the tool Clearblue, to automatically reason what ultra large-scale software is really doing.
Clearblue Architecture
Clearblue Key Components
![Plankton Logo](./docs/images/logos/Plankton.png)
Plankton
A binary lifter that could be used to lift arbitrary binaries to LLVM IR.
![Jellyfish Logo](./docs/images/logos/Jellyfish.png)
Jellyfish
A VM program transformer that could be used to transform other VM programs to LLVM IR.
![Swordfish Logo](./docs/images/logos/Swordfish.png)
Swordfish
A tool that performs parallel pointer analysis to accelerate Clearblue analysis.
![Coral Logo](./docs/images/logos/Coral.png)
Coral
A tool for function call graph analysis.
![Sponge Logo](./docs/images/logos/Sponge.png)
Sponge
A tool for software behavior data persistence, on-demand loading, and swap storage.
![Sailfish Logo](./docs/images/logos/Sailfish.png)
Sailfish
A parallel vulnerability checker for PSA.