IO Ninja



IO Ninja is an all-in-one IPv6-enabled scriptable/programmable terminal emulator and IO monitor. It is aimed at system administrators, network security experts and developers of communications software, firmware and hardware. Download IPSW and iOS firmware files for iPhone, iPad, iPod and Apple TV on iOS, iPadOS, and tvOS.

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

  • New Packet History pane;
  • New Packet Library pane;
  • Complete re-design of the in-app scripting user script file management;
  • Stock in-app script file browser;
  • Added the synchronous receive() function to in-app scripting;
  • Session system logs are now viewable from the main app — makes debugging of your scripts more convenient;
  • Device Monitor release 3.3.8 for Linux fixes kernel module compilation errors on Linux versions 5.9.2 and above.

Packet History/Library Panes

The transmit history was always there, but it was implicit and invisible and hence, not so easy to use. Now, there is a dedicated Packet History pane where you can conveniently inspect all recently transmitted packets.

We also added the Packet Library pane for building domain-specific sets of packets and giving them meaningful names. If a recently transmitted packet is a part of the packet library, you will see its name in the history pane.

In either of those new panes, send any packet with a double-click, drag it into the editor to modify before sending, or hover a mouse to inspect the packet contents in a hex-view tooltip.

In-App Scripting Improvements

To help you get started with the IO Ninja in-app scripting, we added a bunch of simple stock scripts to serve as the basis for your own packet templates, programatically-driven transmissions, or other testing scripts.

The management of in-app script files was also refined. You will see no more annoying save-as dialogs, and MRU script file lists were added for your convenience.

Also, the session system log is now directly accessible from the main app for the sake of printf-debugging of your in-app scripts.

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

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 Is Used At

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 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.

Analyzes a serial communications log and shows human-readable descriptions for the Allen-Bradley DF1 protocol messages.

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

Network Communications

Establishes an outbound connection over a TCP client-side socket.

Listens for and accepts inbound connections 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 produces a clean data flow view.

Reconstructs TCP communications from packets captured via Pcap and produces 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 produces a clean data flow view.

Io Ninja Serial Tap

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

Establishes an outbound connection over a SSL client-side socket.

Listens for and accepts inbound connections to a SSL server-side socket.

All 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.

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

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.

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 Pipe

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

Slither Io Ninja Skin Code

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

IO Ninja

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 Pipe Monitor

Screenshots