Kali Linux

xmap : Performing Internet-wide IPv6 & IPv4 Network Research Scanning

xmap a tool for Performing Internet-wide IPv6 & IPv4 Network Research Scanning

Installing and Building XMap

Installing via Package Manager

XMap operates on GNU/Linux, macOS, and BSD.

Installing with the most OS package managers is not integrated yet.

OS
Fedora 19+ or EPEL 6+-
Debian 8+ or Ubuntu 14.04+-
Gentoo-
macOS (using Homebrew)-
Arch Linux-

Building from Source

Installing XMap Dependencies

XMap has the following dependencies:

  • CMake – Cross-platform, open-source build system
  • GMP – Free library for arbitrary precision arithmetic
  • gengetopt – Command line option parsing for C programs
  • libpcap – Famous user-level packet capture library
  • flex and byacc – Output filter lexer and parser generator
  • json-c – JSON implementation in C
  • libunistring – Unicode string library for C
  • libdnet – (macOS Only) Gateway and route detection

In addition, the following optional packages enable optional XMap functionality:

  • hiredis – RedisDB support in C

Install the required dependencies with the following commands.

  • On Debian-based systems (including Ubuntu):
  • sudo apt-get install build-essential cmake libgmp3-dev gengetopt libpcap-dev flex byacc libjson-c-dev pkg-config libunistring-dev

On RHEL- and Fedora-based systems (including CentOS):

sudo yum install cmake gmp-devel gengetopt libpcap-devel flex byacc json-c-devel libunistring-devel

Development Notes

  • Enabling development turns on debug symbols, and turns off optimizations. Release builds should be built with -DENABLE_DEVELOPMENT=OFF.
  • Enabling log_trace can have a major performance impact and should not be used except during early development. Release builds should be built with -DENABLE_LOG_TRACE=OFF.
  • Redis support is not enabled by default. If you want to use XMap with Redis, you will first need to install hiredis. Then run cmake with -DWITH_REDIS=ON. Debian/Ubuntu has packaged hiredis as libhiredis-dev; Fedora and RHEL/CentOS have packaged it as hiredis-devel.
  • Building packages for some systems like Fedora and RHEL requires a user-definable directory (buildroot) to put files. The way to respect this prefix is to run cmake with -DRESPECT_INSTALL_PREFIX_CONFIG=ON.
  • Manpages (and their HTML representations) are generated from the .ronn source files in the repository, using the ronn tool. This does not happen automatically as part of the build process; to regenerate the man pages you’ll need to run make manpages. This target assumes that ronn is in your PATH.
  • Building with some versions of CMake may fail with unable to find parser.h. If this happens, try updating CMake. If it still fails, don’t clone XMap into a path that contains the string .com, and try again.
  • XMap may be installed to an alternative directory, with the CMAKE_INSTALL_PREFIX option. For example, to install it in $HOME/opt run

cmake -DCMAKE_INSTALL_PREFIX=$HOME/opt .
make -j4
make install

R K

Recent Posts

Cybersecurity – Tools And Their Function

Cybersecurity tools play a critical role in safeguarding digital assets, systems, and networks from malicious…

3 hours ago

MODeflattener – Miasm’s OLLVM Deflattener

MODeflattener is a specialized tool designed to reverse OLLVM's control flow flattening obfuscation through static…

3 hours ago

My Awesome List : Tools And Their Functions

"My Awesome List" is a curated collection of tools, libraries, and resources spanning various domains…

3 hours ago

Chrome Browser Exploitation, Part 3 : Analyzing And Exploiting CVE-2018-17463

CVE-2018-17463, a type confusion vulnerability in Chrome’s V8 JavaScript engine, allowed attackers to execute arbitrary…

3 hours ago

Chrome Browser Exploitation, Part 1 : Introduction To V8 And JavaScript Internals

The blog post "Chrome Browser Exploitation, Part 1: Introduction to V8 and JavaScript Internals" provides…

3 hours ago

Chrome Browser Exploitation, Part 3: Analyzing and Exploiting CVE-2018-17463

The exploitation of CVE-2018-17463, a type confusion vulnerability in Chrome’s V8 JavaScript engine, relies on…

6 hours ago