Skip to content
/ idapm Public

idapm is IDA Plugin Manager via GitHub Repository.

License

Notifications You must be signed in to change notification settings

tkmru/idapm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

idapm

idapm is IDA Plugin Manager. It works perfectly on macOS, it probably works on Windows and Linux. This is because I only have the macOS version of IDA Pro.

Motivation

Managing the IDA Plugin is inconvenient. There is no official package manager and you have to copy files to the plugin directory manually. So I developed a plugin manager inspired by go get that allows you to install plugins from GitHub repositories without API server, and also allows you to import plugins from different directories on your PC with a single command.

Installation

$ pip install git+ssh://[email protected]/tkmru/idapm.git

Usage

init

init command creates ~/idapm.json. It contains information about the plugins you have installed.

$ idapm init
~/idapm.json was created successfully!

If ~/idapm.json already exists, you can install the plugins listed in ~/idapm.json.

$ idapm init
~/idapm.json already exists...
Do you want to install a plugin written in ~/idapm.json? [Y/n]: y
----------------------
Try: git clone https://github.com/L4ys/LazyIDA.git
Cloning into '/Applications/IDA Pro 7.5/ida.app/Contents/MacOS/plugins/idapm/L4ys/LazyIDA'...
Symbolic link(/Applications/IDA Pro 7.5/ida.app/Contents/MacOS/plugins/LazyIDA.py) has been created
Installed successfully!

install

install command install plugin from GitHub repository or local.

from GitHub

You can install from the specified GitHub repository.

$ idapm install L4ys/LazyIDA
----------------------
Try: git clone https://github.com/L4ys/LazyIDA.git
Cloning into '/Applications/IDA Pro 7.5/ida.app/Contents/MacOS/plugins/idapm/L4ys/LazyIDA'...
Symbolic link(/Applications/IDA Pro 7.5/ida.app/Contents/MacOS/plugins/LazyIDA.py) has been created.
Installed successfully!

The installed plug-ins are marked in the config.

$ cat /Users/tkmru/idapm.json
{
  "plugins": [
    "keystone-engine/keypatch",
    "L4ys/LazyIDA"
  ]
}

from local

You can copy a Python script from the specified directory.

$ idapm install --local ./
Copy to /Applications/IDA Pro 7.5/ida.app/Contents/MacOS/plugins/test.py from ./test.py
Installed successfully!

list

list command displays a list of installed plugins.

$ idapm list
List of scripts in IDA plugin directory
LazyIDA.py

List of plugins in config
L4ys/LazyIDA

check

$ idapm check
IDA plugin dir:    /Applications/IDA Pro 7.5/ida.app/Contents/MacOS/plugins
idapm config path: /Users/tkmru/idapm.json

License

GPLv3 - GNU General Public License, version 3

Copyright (C) 2020 tkmru

About

idapm is IDA Plugin Manager via GitHub Repository.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages