/multi-ip-rep-retriever

This tool provides an html interface to get IP reputation for multiple IPs using our IP Intelligence API. This enhances the existing UX functionality that allows to check one IP address at a time.

Primary LanguageJavaScriptMIT LicenseMIT

multi-ip-rep-retriever

This nodejs tool provides an html interface to get IP reputation for multiple IPs using the Imperva Reputation Intelligence service API. This enhances the existing UX functionality that allows to check one IP address at a time. The tool uses the Incapsula API. In order to use this tool you must have valid API credentials and be subscribed to the service.

Usage

Installation

  1. Install nodejs
  2. Download the project files from the github repository and save them locally in a directory of your choice (aka project directory).
  3. In the project directory open a command prompt and run npm install

Configuration

  1. In setting.js set the following:
    • apiId (mandatory)- your API ID which you can generate as described in the API Key Management page
    • apiKey (mandatory) - Your API_KEY which you can generate as described in the API Key Management page
    • listeningPort (default 3000)- The multi-ip-rep-retriever will use this port to communicate with your web-browser
    • ipListLengthLimit (default 10)- This will limit the number of IPs you can submit in the same time. This is due to the fact that the Imperva Reputation Intelligence service has a built in limit for requests over a period of time
    • printDebugInfo - (default false) - true to print debug info during execution

Start web service

  1. In the project directory run the following command in command line:
  • node version <12 - node app
  • node version >=12 - node --http-parser=legacy app due to issue listed here

Get IP reputation

  1. Open web browser and set 127.0.0.1:. For example 127.0.0.1:3000
  2. Set required IP addresses in text box separated a by space or comma
  3. Press the 'Submit' button
  4. If you want to drill down to a specific IP select it's link from the list and you will be directed to the Reputation Intelligence GUI. You need to be logged in to the Cloud WAF console in order to be able to see this information.

Dependencies

  • nodejs
  • packages
    • aysnc
    • express
    • fs
    • ip
    • request
    • request-promise

Contributions & Bug reports

Contribution

  • You can create your own branch and add features, fix bugs. If you have to merge your changes into the master branch, please reach out to me via mail doron.tzur@imperva.com.
  • You can also reach out to me with suggestions which I might implement.

Reporting Bugs

Please open a Git Issue and include as much information as possible. If possible, provide sample code that illustrates the problem you're seeing. If you're seeing a bug only on a specific repository, please provide a link to it if possible.

Please do not open a Git Issue for help, leave it only for bug reports.