All Projects → naim94a → Lumen

naim94a / Lumen

Licence: mit
A private Lumina server for IDA Pro

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Lumen

Idarling
Collaborative Reverse Engineering plugin for IDA Pro & Hex-Rays
Stars: ✭ 588 (+128.79%)
Mutual labels:  collaboration, ida, ida-pro, reverse-engineering
Keypatch
Multi-architecture assembler for IDA Pro. Powered by Keystone Engine.
Stars: ✭ 939 (+265.37%)
Mutual labels:  ida, ida-pro, reverse-engineering
Amie
A Minimalist Instruction Extender for the ARM architecture and IDA Pro
Stars: ✭ 136 (-47.08%)
Mutual labels:  ida, ida-pro, reverse-engineering
Idacyber
Data Visualization Plugin for IDA Pro
Stars: ✭ 244 (-5.06%)
Mutual labels:  ida, ida-pro, reverse-engineering
Redasm
The OpenSource Disassembler
Stars: ✭ 1,042 (+305.45%)
Mutual labels:  ida, ida-pro, reverse-engineering
Ida For Delphi
IDA Python Script to Get All function names from Event Constructor (VCL)
Stars: ✭ 92 (-64.2%)
Mutual labels:  ida, ida-pro, reverse-engineering
Flare Ida
IDA Pro utilities from FLARE team
Stars: ✭ 1,374 (+434.63%)
Mutual labels:  ida, ida-pro, reverse-engineering
Reversing List
Reversing list
Stars: ✭ 106 (-58.75%)
Mutual labels:  ida, ida-pro, reverse-engineering
Rematch
REmatch, a complete binary diffing framework that is free and strives to be open source and community driven.
Stars: ✭ 141 (-45.14%)
Mutual labels:  ida, ida-pro, reverse-engineering
idapython-cheatsheet
scripting IDA like a Pro
Stars: ✭ 13 (-94.94%)
Mutual labels:  ida, ida-pro
Hrdevhelper
Context-sensitive HexRays decompiler plugin that visualizes the ctree of decompiled functions.
Stars: ✭ 193 (-24.9%)
Mutual labels:  ida, ida-pro
IDA7-FunctionStringAssociate
FunctionStringAssociate plugin by sirmabus, ported to IDA 7
Stars: ✭ 17 (-93.39%)
Mutual labels:  ida, ida-pro
Idangr
Use angr in the IDA Pro debugger generating a state from the current debug session
Stars: ✭ 214 (-16.73%)
Mutual labels:  ida, ida-pro
Ida Batch decompile
*Decompile All the Things* - IDA Batch Decompile plugin and script for Hex-Ray's IDA Pro that adds the ability to batch decompile multiple files and their imports with additional annotations (xref, stack var size) to the pseudocode .c file
Stars: ✭ 198 (-22.96%)
Mutual labels:  ida, reverse-engineering
obfDetect
IDA plugin to pinpoint obfuscated code
Stars: ✭ 99 (-61.48%)
Mutual labels:  ida, ida-pro
IDAShell
Shell extension for opening executables in IDA
Stars: ✭ 172 (-33.07%)
Mutual labels:  ida, ida-pro
Ida Evm
IDA Processor Module for the Ethereum Virtual Machine (EVM)
Stars: ✭ 185 (-28.02%)
Mutual labels:  ida, ida-pro
idapm
idapm is IDA Plugin Manager via GitHub Repository.
Stars: ✭ 50 (-80.54%)
Mutual labels:  ida, ida-pro
ida migrator
IDA Migrator is an IDA Pro plugin which helps migrate existing work from one database instance to another. It Conveniently migrates function names, structures and enums.
Stars: ✭ 65 (-74.71%)
Mutual labels:  ida, ida-pro
Hyara
Yara rule making tool (IDA Pro & Binary Ninja & Cutter Plugin)
Stars: ✭ 142 (-44.75%)
Mutual labels:  ida, ida-pro

Lumen

A private Lumina server that can be used with IDA Pro 7.2+.

lumen.abda.nl runs this server.

You can read about the protocol research here.

Features

  • Stores function signatures so you (and your team) can quickly identify functions that you found in the past using IDA's built-in Lumina features.
  • Backed by PostgreSQL
  • Experimental HTTP API that allows querying the database for comments by file or function hash.

Getting Started

Running the server

Pre-built binaries are not distributed at the moment, you will have to build lumen on your own.

  1. git clone https://github.com/naim94a/lumen.git
  2. Get a rust toolchain: https://rustup.rs/
  3. cd lumen
  4. Setup a Postgres database and execute src/schema.sql on it
  5. cargo +nightly build --release

Docker Method

  1. Install docker-engine and docker-compose.
  2. If using a custom TLS certificate, copy the private key (.p12/.pfx extension) to ./dockershare and set the key password in .env as PKCSPASSWD.
  3. If using a custom Lumen config, copy it to ./dockershare/config.toml.
  4. Otherwise, or if you have finished these steps, just run docker-compose up.
  5. Regardless, if TLS is enabled in the config.toml, a hexrays.crt will be generated in ./dockershare to be copied to the IDA install directory.

Usage

./lumen -c config.toml

Configuring IDA

You will need IDA Pro 7.2 or above in order to use lumen.

The following information may get sent to lumen server: IDA key, Hostname, IDB path, original file path, file MD5, function signature, stack frames & comments.

  • In your IDA's installation directory open "cfg\ida.cfg" with your favorite text editor (Example: C:\Program Files\IDA Pro 7.5\cfg\ida.cfg)
  • Locate the commented out LUMINA_HOST, LUMINA_PORT, and change their values to the address of your lumen server.
  • If you didn't configure TLS, Add "LUMINA_TLS = NO" after the line with LUMINA_PORT.

Example:

LUMINA_HOST = "192.168.1.1";
LUMINA_PORT = 1234

// Only if TLS isn't used:
LUMINA_TLS = NO

Configuring TLS

IDA Pro uses a pinned certificate for Lumina's communcation, so adding a self-signed certificate to your root certificates won't work. Luckily, we can override the hard-coded public key by writing a DER-base64 encoded certificate to "hexrays.crt" in IDA's install directory.

You may find the following commands useful:

# create a certificate
openssl req -x509 -newkey rsa:4096 -keyout lumen_key.pem -out lumen_crt.pem -days 365 -nodes

# convert to pkcs12 for lumen; used for `lumen.tls` in config
openssl pkcs12 -export -out lumen.p12 -inkey lumen_key.pem -in lumen_crt.pem

# export public-key for IDA; Copy hexrays.crt to IDA installation folder
openssl x509 -in lumen_crt.pem -out hexrays.crt

No attempt is made to merge function data - this may casuse a situation where metadata is inconsistent. Instead, the metadata with the highest calculated score is returned to the user.


Developed by Naim A.; License: MIT.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].