Go to file
George Hotz 6f807280d9 trial 0.8 release 2014-08-18 10:47:59 -07:00
cda better readme 2014-08-15 06:34:17 +00:00
ida update ida plugin for linux 2014-08-18 09:39:03 -07:00
middleware fixed to work at work 2014-08-18 09:05:51 -07:00
old support best OS 2014-08-05 02:14:03 -07:00
pin qirapin bugfix 2014-08-10 14:26:52 +00:00
qemu_mods fixed x64 and OMG INTEL SYNTAX 2014-08-16 12:58:40 +00:00
qiradb Merge branch 'master' of https://code.google.com/p/qira 2014-08-05 23:58:26 +00:00
qiradb_test refactored the python module packaging, VERSION in one place 2014-07-28 14:48:14 -07:00
releases trial 0.8 release 2014-08-18 10:47:59 -07:00
tests added regex searching to cda 2014-08-10 19:04:12 +00:00
vim i don't think we should ship the poorly supported vim plugin yet 2014-07-31 12:29:39 -07:00
web cap scrolling down strace 2014-08-10 16:36:51 +00:00
webstatic right click to delete forks, no more trash 2014-08-10 14:46:22 +00:00
.gitignore added regex searching to cda 2014-08-10 19:04:12 +00:00
README better readme 2014-08-15 06:34:17 +00:00
VERSION package this as version 0.6 instead 2014-07-28 22:54:19 -07:00
bdistrib.sh next version should ship with CDA 2014-08-10 19:39:59 +00:00
fetchlibs.sh very low quality aarch64 support 2014-08-16 05:06:58 +00:00
install.bat attempting to make qira work on windows 2014-08-05 21:25:41 +00:00
install.sh trial 0.8 release 2014-08-18 10:47:59 -07:00
qemu_build.sh very low quality aarch64 support 2014-08-16 05:06:58 +00:00
qira c database works, about to tear out old stuff 2014-07-22 17:37:06 -07:00
qira.bat the server wants to work 2014-08-05 17:07:55 -07:00

README

QIRA is an IDA plugin to reverse using QEMU

== Installation ==

./install.sh should handle everything for both release and trunk
./fetchlibs.sh will fetch the libraries for armhf, armel, and ppc


== UI ==

At the top, you have 4 boxes, called the controls.
  Blue = change number, Grey = fork number
  Red = instruction address(iaddr), Yellow = data address(daddr)

On the left you have the vtimeline, this is the full trace of the program.
  The top is the start of the program, the bottom is the end/current state.
  More green = deeper into a function.
  The currently selected change is blue, red is every passthrough of the current iaddr
  Bright yellow is a write to the daddr, dark yellow is a read from the daddr.
  This color scheme is followed everywhere

Below the controls, you have the idump, showing instructions near the current change
Under that is the regviewer, datachanges, hexeditor, and strace, all self explanatory.


== Mouse Actions ==

Click on vtimeline to navigate around
Right click forks to delete them

Click on data(or doubleclick if highlightable) to follow in data
Right click on instruction address to follow in instruction


== Keyboard Shortcuts in web/client/controls.js ==

j -- next invocation of instruction
k -- prev invocation of instruction

u -- next toucher of data
i -- prev toucher of data

z -- zoom out max on vtimeline

l -- set iaddr to instruction at current clnum

left  -- -1 fork
right -- +1 fork
up    -- -1 clnum
down  -- +1 clnum

esc -- back

shift-c -- clear all forks


== Installation on Windows (experimental) ==

Install git
Install python 2.7.8
Install pip

Run install.bat


== Using CDA ==

Pass either --cda or --cda-only to QIRA, or just call "cda binary"

The binary must have DWARF data, and the source files must exist on the system

Without cda-only, you have to go to localhost:3002/cda
Everything should be intuitive, except press '/' to regex search