dap 1.2.1 → 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +60 -17
  3. data/dap.gemspec +1 -2
  4. data/lib/dap/version.rb +1 -1
  5. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 33fc1d8d4709faafb17e9f73e554a707351ded42
4
- data.tar.gz: d126eeefb6f0c288b03ce709110c9d77e0c8f95d
3
+ metadata.gz: 3bd85239af6fa41370c3842a05c38ebe5f6326bf
4
+ data.tar.gz: 94f2fd35a90332fcf95d297c46a076beba82d17c
5
5
  SHA512:
6
- metadata.gz: 6b4269aecb9c8bde8a1787fd72af48c1cd16956060df822503024ed101518608da2ee2afe4809d5fb3c3ff508a6b6e5255657a755d6497a9a69993a2e1e3e4e5
7
- data.tar.gz: af968e23977da4412b9f60edd1dda7366078478351339e8f0f6078589d52730f0ab7b5bf118b05b31374f4ceb0fea17a68ced5caa786428c9132ce60933bdd70
6
+ metadata.gz: d399dd8304d8b6d44349b93efb1255104145ea4d9d8181f28aeea51196ce8ab215c3844991d9b84a4798b4d0b238c5382a15012911cc632fb6b68dc44ed87868
7
+ data.tar.gz: 8fa091707e3b5920a6aea17d394f0cfb7d1adc24e02cb1e086643a20596f2c869b00e5ec23ed3da45afb7fd863fea700c20d696edcabcb89fac3f308280df7d2
data/README.md CHANGED
@@ -15,21 +15,46 @@ DAP was written to process terabyte-sized public scan datasets, such as those pr
15
15
 
16
16
  ### Prerequisites
17
17
 
18
- DAP requires Ruby, and is best suited for systems with a relatively current version with 2.1.0 being the minimum requirement.
18
+ DAP requires Ruby and is best suited for systems with a relatively current version with 2.4.x being the minimum requirement.
19
19
  Ideally, this will be managed with either
20
20
  [`rbenv`](https://github.com/rbenv/rbenv) or [`rvm`](https://rvm.io/) with the bundler gem also installed and up to date.
21
21
  Using system managed/installed Rubies is possible but fraught with peril.
22
22
 
23
- DAP depends on [Maxmind's geoip database](http://dev.maxmind.com/geoip/legacy/downloadable/) to be able to append geographic metadata to analyzed datasets. If you intend on using this capability, run the following as `root`:
23
+ #### Maxmind IP Location Databases
24
24
 
25
- ```bash
26
- sudo mkdir -p /var/lib/geoip && cd /var/lib/geoip && sudo wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz && sudo gunzip GeoLiteCity.dat.gz && sudo wget http://geolite.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz && sudo gunzip GeoIPASNum.dat.gz
25
+ If you intend on using any of the `geo_ip*` or `geo_ip2*` filters, you must
26
+ install the databases that provide the data for these filters. If you do not
27
+ intend on using these filters, you can skip this step.
27
28
 
28
- ```
29
- ### Ubuntu 16.04
29
+ `dap` versions 1.4.x and later depend on [Maxmind's geoip2/geolite2
30
+ databases](https://dev.maxmind.com/geoip/geoip2/geolite2/) to be able to append
31
+ geographic and related metadata to analyzed datasets. In order to use this
32
+ functionality you must put your copy of the relevant Maxmind databases in the
33
+ correct location in `/var/lib/geoip2` or the `data` directory of your `dap`
34
+ installation or override with an environment variable that specifies the full
35
+ path to the database in question:
36
+
37
+ * ASN: `GeoLite2-ASN.mmdb` (environment override: `GEOIP2_ASN_DATABASE_PATH`)
38
+ * City: `GeoLite2-City.mmdb` (environment override: `GEOIP2_CITY_DATABASE_PATH`)
39
+ * ISP: `GeoIP2-ISP.mmdb` (environment override: `GEOIP2_ISP_DATABASE_PATH`)
40
+
41
+ *NOTE*: Prior to `dap` version 1.4.x there was a dependency on [Maxmind's geoip
42
+ database](http://dev.maxmind.com/geoip/legacy/downloadable/)
43
+ to be able to append geographic metadata to analyzed datasets. However, since
44
+ that time Maxmind has dropped support for these legacy databases. If you
45
+ intend to continue using this deprecated functionality, you must put your copy
46
+ of the relevant Maxmind legacy databases in the correct location in
47
+ `/var/lib/geoip` or the `data` directory of your `dap` installation or override
48
+ with an environment variable that specifies the full path to the database in question:
49
+
50
+ * ASN: `GeoIPASNum.dat` (environment override in 1.4.x+: `GEOIP_ASN_DATABASE_PATH`)
51
+ * City: `geoip_city.dat` (environment override in 1.4.x+: `GEOIP_CITY_DATABASE_PATH`)
52
+ * Org: `geoip_org.dat` (environment override in 1.4.x+: `GEOIP_ORG_DATABASE_PATH`)
53
+
54
+ ### Ubuntu 16.04+
30
55
 
31
56
  ```bash
32
- sudo apt-get install libgeoip-dev zlib1g-dev ruby ruby-dev gcc make ruby-bundler
57
+ sudo apt-get install zlib1g-dev ruby ruby-dev gcc make ruby-bundler
33
58
  gem install dap
34
59
  ```
35
60
 
@@ -37,7 +62,6 @@ gem install dap
37
62
 
38
63
  ```bash
39
64
  brew update
40
- brew install geoip
41
65
  gem install dap
42
66
  ```
43
67
 
@@ -57,15 +81,34 @@ To see which input/output formats are supported and what filters are available,
57
81
  This example reads as input a single IP address from `STDIN` in line form, applies geo-ip transformations as a filter on that line, and then returns the output as JSON:
58
82
 
59
83
  ```
60
- $ echo 8.8.8.8 | bin/dap + lines + geo_ip line + json
61
- {"line":"8.8.8.8","line.country_code":"US","line.country_code3":"USA","line.country_name":"United States","line.latitude":"38.0","line.longitude":"-97.0"}
62
- ```
63
-
64
- This example does the same, but only outputs the geo-ip country code:
65
-
66
- ```
67
- $ echo 8.8.8.8 | bin/dap + lines + geo_ip line + select line.country_code3 + lines
68
- USA
84
+ $ echo 8.8.8.8 | bin/dap + lines + geo_ip2_city line + json | jq .
85
+ {
86
+ "line": "8.8.8.8",
87
+ "line.geoip2.city.city.geoname_id": "0",
88
+ "line.geoip2.city.continent.code": "NA",
89
+ "line.geoip2.city.continent.geoname_id": "6255149",
90
+ "line.geoip2.city.country.geoname_id": "6252001",
91
+ "line.geoip2.city.country.iso_code": "US",
92
+ "line.geoip2.city.country.is_in_european_union": "false",
93
+ "line.geoip2.city.location.accuracy_radius": "1000",
94
+ "line.geoip2.city.location.latitude": "37.751",
95
+ "line.geoip2.city.location.longitude": "-97.822",
96
+ "line.geoip2.city.location.metro_code": "0",
97
+ "line.geoip2.city.location.time_zone": "America/Chicago",
98
+ "line.geoip2.city.postal.code": "",
99
+ "line.geoip2.city.registered_country.geoname_id": "6252001",
100
+ "line.geoip2.city.registered_country.iso_code": "US",
101
+ "line.geoip2.city.registered_country.is_in_european_union": "false",
102
+ "line.geoip2.city.represented_country.geoname_id": "0",
103
+ "line.geoip2.city.represented_country.iso_code": "",
104
+ "line.geoip2.city.represented_country.is_in_european_union": "false",
105
+ "line.geoip2.city.represented_country.type": "",
106
+ "line.geoip2.city.traits.is_anonymous_proxy": "false",
107
+ "line.geoip2.city.traits.is_satellite_provider": "false",
108
+ "line.geoip2.city.continent.name": "North America",
109
+ "line.geoip2.city.country.name": "United States",
110
+ "line.geoip2.city.registered_country.name": "United States"
111
+ }
69
112
  ```
70
113
 
71
114
  There are also several examples of how to use DAP along with sample datasets [here](samples).
@@ -5,7 +5,7 @@ require 'dap/version'
5
5
  Gem::Specification.new do |s|
6
6
  s.name = 'dap'
7
7
  s.version = Dap::VERSION
8
- s.required_ruby_version = '>= 2.1'
8
+ s.required_ruby_version = '>= 2.4'
9
9
  s.authors = [
10
10
  'Rapid7 Research'
11
11
  ]
@@ -40,5 +40,4 @@ Gem::Specification.new do |s|
40
40
  s.add_runtime_dependency 'geoip-c'
41
41
  s.add_runtime_dependency 'recog'
42
42
  s.add_runtime_dependency 'maxmind-db'
43
-
44
43
  end
@@ -1,3 +1,3 @@
1
1
  module Dap
2
- VERSION = "1.2.1"
2
+ VERSION = "1.2.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dap
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rapid7 Research
@@ -275,7 +275,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
275
275
  requirements:
276
276
  - - ">="
277
277
  - !ruby/object:Gem::Version
278
- version: '2.1'
278
+ version: '2.4'
279
279
  required_rubygems_version: !ruby/object:Gem::Requirement
280
280
  requirements:
281
281
  - - ">="
@@ -283,7 +283,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
283
283
  version: '0'
284
284
  requirements: []
285
285
  rubyforge_project:
286
- rubygems_version: 2.6.14.3
286
+ rubygems_version: 2.6.11
287
287
  signing_key:
288
288
  specification_version: 4
289
289
  summary: 'DAP: The Data Analysis Pipeline'