Miranda is a Python-based Universal Plug-N-Play client application designed to discover, query and interact with UPNP devices, particularly Internet Gateway Devices (aka, routers). It can be used to audit UPNP-enabled devices on a network for possible vulnerabilities. Some of its features include:
Interactive shell with tab completion and command history Passive and active discovery of UPNP devices Customizable MSEARCH queries (query for specific devices/services) Full control over application settings such as IP addresses, ports and headers Simple enumeration of UPNP devices, services, actions and variables Correlation of input/output state variables with service actions Ability to send actions to UPNP services/devices Ability to save data to file for later analysis and collaboration Command logging
Miranda was built on and for a Linux system and has been tested on a Linux 2.6 kernel with Python 2.5. However, since it is written in Python, most functionality should be available for any Python-supported platform. Miranda has been tested against IGDs from various vendors, including Linksys, D-Link, Belkin and ActionTec. All Python modules came installed by default on a Linux Mint 5 (Ubuntu 8.04) test system.
Author: Craig Heffner