dorothy2 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.md CHANGED
@@ -31,7 +31,7 @@ The framework is mainly composed by four big elements that can be even executed
31
31
 
32
32
  Our botnet infiltration module, refers to this [ppt](https://www.honeynet.it/wp-content/uploads/Presentations/JDrone.pptx) presentation for an overview.
33
33
 
34
- The first three modules are (or will be soon) publicly released under GPL 2/3 license as tribute to the the [Honeynet Project Alliance](http://www.honeynet.org).
34
+ The first three modules are (or will be soon) publicly released under GPL 3 license as tribute to the the [Honeynet Project Alliance](http://www.honeynet.org).
35
35
  All the information generated by the framework - i.e. binary info, timestamps, dissected network analysis - are stored into a postgres DB (Dorothive) in order to be used for further analysis.
36
36
  A no-SQL database (CouchDB) is also used to mass store all the traffic dumps thanks to the [pcapr/xtractr](https://code.google.com/p/pcapr/wiki/Xtractr) technology.
37
37
 
@@ -180,8 +180,6 @@ or
180
180
  $ brew install libmagic
181
181
  $ brew link libmagic
182
182
 
183
- 4. Install the xtractr gem, for a detailed howto, go [here](https://code.google.com/p/pcapr/wiki/Xtractr).
184
-
185
183
  ### 3. Install Dorothy gem
186
184
 
187
185
  *Install Dorothy gem
data/bin/dorothy_start CHANGED
@@ -116,7 +116,7 @@ rescue => e
116
116
  if e.inspect =~ /exist/
117
117
  puts "WARNING".yellow + " The database doesn't exist yet. Press Enter to load the ddl into the DB"
118
118
  gets
119
- Util.init_db(true)
119
+ Util.init_db(DoroSettings.dorothive[:ddl])
120
120
  exit(0)
121
121
  else
122
122
  puts "ERROR".red + " Can't connect to the database"
data/dorothy2.gemspec CHANGED
@@ -23,6 +23,7 @@ Gem::Specification.new do |gem|
23
23
  gem.add_dependency(%q<colored>, [">= 1.2"])
24
24
  gem.add_dependency(%q<ruby-pg>, [">= 0.7.9.2008.01.28"])
25
25
  gem.add_dependency(%q<virustotal>, [">= 2.0.0"])
26
+ gem.add_dependency(%q<nokogiri>, ["~> 1.5.10"])
26
27
  gem.add_dependency(%q<rbvmomi>, [">= 1.3.0"])
27
28
  gem.add_dependency(%q<ruby-filemagic>, [">= 0.4.2"])
28
29
  #for dparser
@@ -10,7 +10,7 @@ module Dorothy
10
10
 
11
11
  def init_home(home)
12
12
  puts "INIT".yellow + " Creating Directoy structure in #{home}"
13
- Dir.mkdir(home)
13
+ Dir.mkdir(home) unless Util.exists?("#{home}")
14
14
  unless Util.exists?("#{home}/opt")
15
15
  Dir.mkdir("#{home}/opt")
16
16
  Dir.mkdir("#{home}/opt/bins")
@@ -45,6 +45,7 @@ module Dorothy
45
45
  conf["nam"] = Hash.new
46
46
  conf["virustotal"] = Hash.new
47
47
  conf["esx"] = Hash.new
48
+ conf["pcapr"] = Hash.new
48
49
 
49
50
 
50
51
  ################################################
@@ -58,10 +59,7 @@ module Dorothy
58
59
 
59
60
  home = conf["env"]["home"]
60
61
 
61
- unless Util.exists?(home)
62
- self.init_home(home)
63
- end
64
-
62
+ self.init_home(home)
65
63
 
66
64
 
67
65
 
@@ -69,7 +67,7 @@ module Dorothy
69
67
 
70
68
  conf["env"]["pidfile"] = "#{home}/var/dorothy.pid"
71
69
  conf["env"]["pidfile_parser"] = "#{home}/var/doroParser.pid"
72
- conf["env"]["analysis_dir"] = "#{home}/opt/analyzed" # TODO if doesn't exist, create it. -> Dir.mkdir("mynewdir")
70
+ conf["env"]["analysis_dir"] = "#{home}/opt/analyzed"
73
71
  conf["env"]["geoip"] = "#{home}/etc/geo/GeoLiteCity.dat"
74
72
  conf["env"]["geoasn"] = "#{home}/etc/geo/GeoIPASNum.dat"
75
73
 
@@ -93,8 +91,8 @@ module Dorothy
93
91
  puts "DB Name [dorothive]:"
94
92
  conf["dorothive"]["dbname"] = (t = gets.chop).empty? ? "dorothive" : t
95
93
 
96
- puts "DB Username [dorothy]:"
97
- conf["dorothive"]["dbuser"] = (t = gets.chop).empty? ? "dorothy" : t
94
+ puts "DB Username [postgres]:"
95
+ conf["dorothive"]["dbuser"] = (t = gets.chop).empty? ? "postgres" : t
98
96
 
99
97
  puts "DB Password"
100
98
  conf["dorothive"]["dbpass"] = gets.chop
@@ -148,12 +146,12 @@ module Dorothy
148
146
  puts "Username [dorothy] :"
149
147
  conf["nam"]["user"] = (t = gets.chop).empty? ? "dorothy" : t
150
148
 
151
- puts "SSH Port [22] :"
152
- conf["nam"]["port"] = (t = gets.chop).empty? ? 22 : t
153
-
154
149
  puts "Password:"
155
150
  conf["nam"]["pass"] = gets.chop
156
151
 
152
+ puts "SSH Port [22] :"
153
+ conf["nam"]["port"] = (t = gets.chop).empty? ? 22 : t
154
+
157
155
  puts "Folder where to store PCAP files [~/pcaps]"
158
156
  conf["nam"]["pcaphome"] = (t = gets.chop).empty? ? "~/pcaps" : t
159
157
 
@@ -1,3 +1,3 @@
1
1
  module Dorothy2
2
- VERSION = "1.0.0"
2
+ VERSION = "1.0.1"
3
3
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dorothy2
3
3
  version: !ruby/object:Gem::Version
4
- hash: 23
4
+ hash: 21
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 0
9
- - 0
10
- version: 1.0.0
9
+ - 1
10
+ version: 1.0.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - marco riccardi
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2013-06-07 00:00:00 Z
18
+ date: 2013-07-01 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: net-scp
@@ -147,9 +147,25 @@ dependencies:
147
147
  type: :runtime
148
148
  version_requirements: *id008
149
149
  - !ruby/object:Gem::Dependency
150
- name: rbvmomi
150
+ name: nokogiri
151
151
  prerelease: false
152
152
  requirement: &id009 !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ~>
156
+ - !ruby/object:Gem::Version
157
+ hash: 23
158
+ segments:
159
+ - 1
160
+ - 5
161
+ - 10
162
+ version: 1.5.10
163
+ type: :runtime
164
+ version_requirements: *id009
165
+ - !ruby/object:Gem::Dependency
166
+ name: rbvmomi
167
+ prerelease: false
168
+ requirement: &id010 !ruby/object:Gem::Requirement
153
169
  none: false
154
170
  requirements:
155
171
  - - ">="
@@ -161,11 +177,11 @@ dependencies:
161
177
  - 0
162
178
  version: 1.3.0
163
179
  type: :runtime
164
- version_requirements: *id009
180
+ version_requirements: *id010
165
181
  - !ruby/object:Gem::Dependency
166
182
  name: ruby-filemagic
167
183
  prerelease: false
168
- requirement: &id010 !ruby/object:Gem::Requirement
184
+ requirement: &id011 !ruby/object:Gem::Requirement
169
185
  none: false
170
186
  requirements:
171
187
  - - ">="
@@ -177,11 +193,11 @@ dependencies:
177
193
  - 2
178
194
  version: 0.4.2
179
195
  type: :runtime
180
- version_requirements: *id010
196
+ version_requirements: *id011
181
197
  - !ruby/object:Gem::Dependency
182
198
  name: net-dns
183
199
  prerelease: false
184
- requirement: &id011 !ruby/object:Gem::Requirement
200
+ requirement: &id012 !ruby/object:Gem::Requirement
185
201
  none: false
186
202
  requirements:
187
203
  - - ">="
@@ -193,11 +209,11 @@ dependencies:
193
209
  - 0
194
210
  version: 0.8.0
195
211
  type: :runtime
196
- version_requirements: *id011
212
+ version_requirements: *id012
197
213
  - !ruby/object:Gem::Dependency
198
214
  name: geoip
199
215
  prerelease: false
200
- requirement: &id012 !ruby/object:Gem::Requirement
216
+ requirement: &id013 !ruby/object:Gem::Requirement
201
217
  none: false
202
218
  requirements:
203
219
  - - ">="
@@ -209,11 +225,11 @@ dependencies:
209
225
  - 1
210
226
  version: 1.2.1
211
227
  type: :runtime
212
- version_requirements: *id012
228
+ version_requirements: *id013
213
229
  - !ruby/object:Gem::Dependency
214
230
  name: tmail
215
231
  prerelease: false
216
- requirement: &id013 !ruby/object:Gem::Requirement
232
+ requirement: &id014 !ruby/object:Gem::Requirement
217
233
  none: false
218
234
  requirements:
219
235
  - - ">="
@@ -226,7 +242,7 @@ dependencies:
226
242
  - 1
227
243
  version: 1.2.7.1
228
244
  type: :runtime
229
- version_requirements: *id013
245
+ version_requirements: *id014
230
246
  description: A malware/botnet analysis framework written in Ruby.
231
247
  email:
232
248
  - marco.riccardi@honeynet.it