Tool

Kam1n0

Server platform from McGill University's Data Mining and Security Lab that indexes collections of disassembled binaries into shared repositories and searches them for cloned assembly functions. Its applications cover subgraph clone search within one instruction-set family (Asm-Clone), cross-architecture semantic search over VEX IR using symbolic and concrete execution (Sym1n0), Asm2Vec representation learning aimed at compiler optimization and obfuscation, and executable classification built on Asm2Vec. An IDA Pro plug-in sends functions to the server and shows flow-graph, text-diff and clone-group views; the README's accuracy and query-time figures come from the authors' own papers.

Targets
Binary
Category
Binary comparison tools
Relationship
Foundation tool
Sources reviewed

Requirements & limits

  • Latest stable release at review: 2.2.0, published 2020-11-15, with Windows installers and Linux tarballs for the server and the IDA Pro plug-in; a nightly-action pre-release from 2023-02-27 attaches Windows builds only. The reviewed master2.x commit of the same date is the default branch's latest, and README says repositories and configuration files from versions before 2.0.0 are no longer supported.
  • The server needs a 64-bit Java 11 runtime (README asks for Oracle's) and, to disassemble uploaded binaries, an IDA Pro installation with IDAPython set in kam1n0.properties; the shipped configuration requests a 12 GB maximum JVM heap and serves the web interface on port 8571. The plug-in needs IDA Pro newer than 6.7 with IDAPython and the CEF Python wheels its installer bundles. Source also contains an undocumented Ghidra disassembly backend, which was not checked.
  • Users supply the binaries to index and query. The repository commits test and example binaries built from open-source code: zlib and libpng builds for several architectures and optimization levels, a Chromium DLL, and IDA databases for PuTTY and zlib. Windows installer sources commit the Microsoft .NET Framework 4.0 and Visual C++ x64 redistributable installers and CEF Python wheels, and the server resources commit JavaFX SDK 11.0.2 DLLs, a prebuilt LibVEX library (VEXIRBB.dll) and a local Maven repository holding a z3 jar.
  • Maven builds the Java 11 modules against those pre-compiled LibVEX and z3 binaries; README says LibVEX comes from angr's fork, and z3 is a submodule. The Maven tests drive Chrome through chromedriver and, per the README, take about three hours; CI only builds the Windows distribution and WiX installers. Accuracy and timing figures are taken from the README and the authors' KDD 2016 and IEEE S&P 2019 papers; no binaries were indexed or searched for this review.
  • Apache-2.0 (LICENSE.txt), copyright McGill University and the researchers. Bundled runtimes, redistributable installers, wheels and test binaries keep their own licenses, and IDA Pro is separately licensed commercial software.

About this entry

The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · McGill-DMaS/Kam1n0-Community · Revision 1c3c309
  2. documentation/server/server.md GitHub · McGill-DMaS/Kam1n0-Community · Revision 1c3c309
  3. documentation/ida-pro-plugin/ida-pro-plugin.md GitHub · McGill-DMaS/Kam1n0-Community · Revision 1c3c309
  4. kam1n0/kam1n0-resources/bin/kam1n0.properties GitHub · McGill-DMaS/Kam1n0-Community · Revision 1c3c309
  5. kam1n0/kam1n0-commons/src/main/java/ca/mcgill/sis/dmas/kam1n0/framework/disassembly/DisassemblyFactory.java GitHub · McGill-DMaS/Kam1n0-Community · Revision 1c3c309
  6. kam1n0-builds/README.md GitHub · McGill-DMaS/Kam1n0-Community · Revision 1c3c309
  7. .gitmodules GitHub · McGill-DMaS/Kam1n0-Community · Revision 1c3c309
  8. .github/workflows/msbuild.yml GitHub · McGill-DMaS/Kam1n0-Community · Revision 1c3c309
  9. kam1n0/kam1n0-resources/bin-exclude-from-distr/test-cases GitHub · McGill-DMaS/Kam1n0-Community · Revision 1c3c309
  10. kam1n0-builds/windows/installer-src-32-64/libs-server GitHub · McGill-DMaS/Kam1n0-Community · Revision 1c3c309
  11. LICENSE.txt GitHub · McGill-DMaS/Kam1n0-Community · Revision 1c3c309
  12. https://github.com/McGill-DMaS/Kam1n0-Community/releases/tag/2.2.0
  13. https://github.com/McGill-DMaS/Kam1n0-Community/releases/tag/nightly-action

More in Native binaries

All 129 entries in Native binaries