Introducing IO Ninja

IO Ninja is a professional, scriptable, multi-purpose terminal emulator, network sniffer and IO monitor. It's aimed at network security experts, system administrators, and all kinds of software/hardware/embedded developers.

Hardware Sniffers for IO Ninja

We are proud to introduce the hardware Ethernet Tap — a new member to the IO Ninja Tap family, together with Serial Tap and I2C/SPI Tap. These devices are simple yet functional and convenient sniffers for Ethernet, asynchronous serial links (RS232, RS422, RS485, TTL-level UART), I2C, and SPI communications.


IO Ninja 3.12.1 is out!

Service Release

  • Fixed crash on select-word on an empty line in plain-text binary view;
  • Fixed lock-down on unplugging Ethernet Tap or I2C/SPI Tap during capture;
  • Fixed non-selectable merge-boundaries in text lines.


IO Ninja 3.12.0

Major Update

  • New Ethernet Tap hardware sniffer & plugin;
  • Details pane for the master-log-vs-details representation;
  • Deep-find — search goes through both the master log and details pane;
  • Process name detection in Serial, Pipe Monitor, Mailslot Monitor;
  • Post-capture filtering using file name, file ID, process name and PID in Pipe Monitor, Mailslot Monitor;
  • Added support for multiple protocols to Pcap Sniffer;
  • Post-capture filtering (a.k.a. view filter) in Pcap Sniffer;
  • Export to .pcap in Pcap Sniffer;
  • Fix for the SIGSEGV due to a write to a read-only page crash in Tibbo Device Monitor on Linux v5.3.0 and above (AMD64 & X86 architectures);
  • Fix for the bouncing app icon on Mac when IO Ninja is in the background;
  • Support for empty datagrams in UDP Socket;
  • Tables in the Ninja Scroll engine — representers can now simply use tabulation (\t) to create automatically formatted tables;
  • Introspection facilities in Jancy — scripts can now inspect their structure at runtime (perfect for writing protocol analyzers);
  • Lazy parsing in Jancy — the script code base got much bigger, but the plugins start-up time actually decreased!

For a full list of changes see changelog.txt (also included in all installation packages)

Previous release announcements

IO Ninja Is Used At

ABB Schweiz AG
Airbus SAS
Australian Antarctic Program
Axis Communications
BOSCH Thermoteknik AB
Boston Scientific
Dover Fueling Solutions
Mitsubishi Electric
Selex ES, Inc.
Siemens Mobility GmbH
Take Two Interactive
Teledyne Marine
Texas Instruments

Serial Communications

Performs serial communications over COM/VCOM/CDC serial devices on your machine.

Monitors serial communications performed by other processes over COM/VCOM/CDC serial devices on your machine.

Monitors serial communications over COM/VCOM/CDC serial device on a remote machine using an SSH connection to this remote machine.

Displays dump files previously captured with tdevmon in the machine interface (aka, MI) mode.

Monitors data flowing through a RS232/RS422/RS485/TTL-level serial link using our affordable hardware Serial Tap.

Monitors data flowing through an I2C or SPI link using our affordabke hardware I2C/SPI Tap.

Monitors data flowing through popular tap-cables EZ-Tap Pro and Versa-Tap.

Monitors data flowing through a generic dual COM tap-cable — such as EZ-Tap RS-232.

Analyzes a serial communications log and shows human-readable descriptions for Modbus RTU or Modbus ASCII messages.

Network Communications

Establishes outbound connection over a TCP client-side socket.

Listens for and accepts inbound connection to a TCP server-side socket.

A man-in-the-middle for a TCP connection — passes-through data between a TCP client and a TCP server and writes everything to the log.

Reconstructs TCP communications from packets captured via Pcap and produced a clean data flow view.

Performs one-to-one or one-to-many UDP communication over a UDP socket — without the connection notation.

Reconstructs UDP communications from packets captured via Pcap and produced a clean data flow view.

Establishes outbound SSH channel over a TCP client-side socket.

Monitors data flowing through an Ethernet link using our affordable hardware Ethernet Tap.

A data-centric front-end for Pcap with payload previews visible instantly in the main log.

Analyzes a TCP connection log and shows human-readable descriptions for Modbus TCP messages.

File Systems

Performs reads and/or writes to a generic file stream — on-disk file, named pipe, non-standard device, etc.

Listens for and accepts inbound connection to a server-side named pipe. Windows only.

Monitors data transmitted over named pipes and anonymous pipes — both local and remote. Windows only.

Receives inbound messages to a server-side mailslot. Windows only.

Monitors data transmitted over mailslots on your Windows machine — both local and remote. Windows only.

USB Communications

Performs low-level direct USB control transfer over the USB endpoint EP0 on a device.

Performs low-level direct USB data transfers over bulk, interrupt, or isochronous endpoints on a device.

An advanced terminal for the J-Link RTT (real-time transfer) communications.

Generic Layers

Implements XModem protocol for file transmit/receive over any transport (e.g. serial, TCP, UDP, named pipe, etc.)

Efficiently colorizes RX/TX data according to the preset regular expression patterns.

The Replay Log layer plugin replays TX/RX records from a log file with respect to timestamps, thus preserving time intervals between packets.

Adjusts outbound packets — appends prefixes and/or suffixes, re-transmits with the specified interval, inserts inter-character delays.

Allows to filter out (exclude) TX or RX streams out of the log — extremely helpful when local echo clutters the view!

Immediately transmits any inbound packet back — a simple, yet effective testing tool.

Platform Features

IO Ninja is powered by our innovative programming language Jancy tailor-made for IO and UI programming.

IO Ninja comes with an IDE (integrated development environment) to make it convenient to write IO Ninja plugins in Jancy.

IO Ninja's advanced logging engine shows massive logs in a clean, easy-to-read way. It'll gracefully display informational text messages side-by-side with binary data blocks in either hex view or plain text representations.

IO Ninja has excellent support for binary data transmission — use C escape-sequences, transmit files, fill packet fields using a property grid, or write a custom script to send one or more packets programmatically.

IO Ninja supports ANSI & X-Term terminal emulation; unlike other terminals, you can inspect terminal escape control sequences by switching to the log view.

IO Ninja provides a powerful and elegant way of redirecting data from any transport to any other transport with so-called Session Linking. Think Unix pipes, but better.

Write protocol analyzers, custom filters, testing scripts, and other utilities to extend existing sessions.

IPv6 is slowly but steadily taking over the Internet. IO Ninja is here to help testing IPv6-connectivity of your products.

IO Ninja can show and send characters in any Unicode encoding (UTF8, UTF16-LE, UTF16-BE, UTF32-LE, UTF32-BE).


More screenshots...