Skip to content

Installation

deadc0de edited this page Feb 22, 2018 · 20 revisions

Content:


You need to have Erlang/OTP (at least v.18) installed in order to use or build scannerl.

Scannerl has been tested on Ubuntu 16.04, Debian stretch and testing, Arch linux and Kali. It should also build and run in any other linux distributions.

Erlang installation

Scannerl needs Erlang/OTP version v.18 at least in order to run. The current installed version can be checked with

$ erl -eval 'erlang:display(erlang:system_info(otp_release)), halt().' -noshell

Erlang/OTP can be installed by

  • using your distribution packaging system
  • using Erlang/OTP official packages (see Erlang downloads)
  • using kerl which allows to have multiple versions of Erlang/OTP in parallel (a bit like virtualenv for Python).

If no package is available for your platform (or it is using an incompatible version), use kerl:

$ curl -O https://raw.githubusercontent.com/kerl/kerl/master/kerl
$ chmod +x kerl
$ ./kerl build 20.1 20.1
$ ./kerl install 20.1 ~/.kerl/20.1

That version of Erlang/OTP needs to be activated (for the current shell only) with source ~/.kerl/20.1/activate.

Scannerl packages

Debian Ubuntu

DEB Packages are available in the releases.

Arch linux

Scannerl is available on aur

Opensuse Centos Redhat

RPM packages (Opensuse, Centos, Redhat) are available under https://build.opensuse.org/package/show/home:chapeaurouge/scannerl.

Build scannerl from source

$ git clone https://github.com/kudelskisecurity/scannerl.git
$ cd scannerl
$ ./build.sh

Install from source on specific distributions

Debian-based

$ sudo apt install erlang erlang-src rebar

Then build scannerl (see above)

Arch

$ sudo pacman -S erlang-nox rebar git openssh

Then build scannerl (see above)

Kali

Install dependencies

$ sudo apt install libssl-dev automake autoconf libncurses5-dev

Install rebar

$ cd /tmp
$ git clone git://github.com/rebar/rebar.git; cd rebar
$ ./bootstrap
$ sudo cp rebar /usr/local/bin/rebar

Install kerl and Erlang/OTP 20.1

$ cd /tmp
$ curl -O https://raw.githubusercontent.com/kerl/kerl/master/kerl
$ chmod +x kerl
$ sudo cp kerl /usr/local/bin/kerl
$ kerl build 20.1 20.1
$ sudo mkdir /opt/kerl; sudo chown -R $USER /opt/kerl
$ kerl install 20.1 /opt/kerl/20.1

Then build scannerl

$ source /opt/kerl/20.1/activate
$ git clone https://github.com/kudelskisecurity/scannerl.git
$ cd scannerl
$ ./build.sh

Finally create a wrapper which will activate Erlang/OTP version 20.1 and call scannerl. Replace <path-to-scannerl-git-tree> with the location where scannerl was built.

$ sudo -s
$ cat > /usr/local/bin/scannerl << _EOF
#!/bin/bash
source /opt/kerl/20.1/activate
<path-to-scannerl-git-tree>/scannerl
_EOF
$ sudo chmod +x /usr/local/bin/scannerl