enchant 1.0.0.pre1 → 1.0.0.pre3

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -33,9 +33,6 @@ Jeweler::Tasks.new do |gem|
33
33
  gem.license = "BSD"
34
34
  gem.version = Enchant::Version.version
35
35
 
36
- gem.summary = %Q{evaluates web server SSL configuration}
37
- gem.description = %Q{ciphersurfer is a security tool that evaluates web server SSL configuration}
38
- gem.authors = ["Paolo Perego"]
39
36
  # dependencies defined in Gemfile
40
37
  end
41
38
  Jeweler::RubygemsDotOrgTasks.new
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.0.pre1
1
+ 1.0.0.pre2
@@ -54,4 +54,10 @@ count = e.scan
54
54
  stop=Time.now
55
55
 
56
56
  puts "#{count} urls open found in #{stop-start} secs".color(:green)
57
+
58
+ e.urls_open.each do |u|
59
+ puts u
60
+
61
+ end
62
+
57
63
  exit 0
@@ -1,4 +1,5 @@
1
1
  require 'net/http'
2
+ require 'net/https'
2
3
  require 'httpclient'
3
4
  require 'uri'
4
5
  require 'progressbar'
@@ -31,6 +32,12 @@ module Enchant
31
32
 
32
33
  def scan
33
34
  http = Net::HTTP.new(@host, @port)
35
+
36
+ if @port == "443"
37
+ http.use_ssl = true
38
+ http.ssl_timeout = 2
39
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
40
+ end
34
41
  list = get_list
35
42
  if list.empty?
36
43
  return 0
@@ -50,7 +57,7 @@ module Enchant
50
57
  response = http.get('/'+path.chop)
51
58
  c = response.code.to_i
52
59
  refused = 0
53
- if c == 200
60
+ if c == 200 or c == 302
54
61
  @urls_open << path
55
62
  end
56
63
  if c == 401
@@ -59,7 +66,7 @@ module Enchant
59
66
  if c >= 500
60
67
  @urls_internal_error << path
61
68
  end
62
- rescue Errno::ECONNREFUSED
69
+ rescue Errno::ECONNREFUSED
63
70
  refused += 1
64
71
  if refused > 5
65
72
  pbar.finish
@@ -91,6 +98,8 @@ module Enchant
91
98
  begin
92
99
  Net::HTTP.new(@host, @port).get('/')
93
100
  return true
101
+ rescue Net::HTTPBadResponse
102
+ return true
94
103
  rescue Errno::ECONNREFUSED
95
104
  return false
96
105
  rescue Errno::ETIMEDOUT
@@ -3,7 +3,7 @@ module Enchant
3
3
  MAJOR = 1
4
4
  MINOR = 0
5
5
  PATCH = 0
6
- BUILD = 'pre1'
6
+ BUILD = 'pre3'
7
7
 
8
8
  def self.version
9
9
  if BUILD.empty?
@@ -1,8 +1,8 @@
1
1
  require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
2
 
3
3
  describe "enchant " do
4
- it "must fail" do
5
- fail
4
+ it "must have a good rspec" do
5
+ pending "but now it has not"
6
6
  end
7
7
 
8
8
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enchant
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.pre1
4
+ version: 1.0.0.pre3
5
5
  prerelease: 6
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-16 00:00:00.000000000Z
12
+ date: 2012-09-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rainbow
16
- requirement: &70223617410300 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70223617410300
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: progressbar
27
- requirement: &70223617407820 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ! '>='
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: '0'
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *70223617407820
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: httpclient
38
- requirement: &70223617405260 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ! '>='
@@ -43,10 +53,15 @@ dependencies:
43
53
  version: '0'
44
54
  type: :runtime
45
55
  prerelease: false
46
- version_requirements: *70223617405260
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
47
62
  - !ruby/object:Gem::Dependency
48
63
  name: rspec
49
- requirement: &70223617401900 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ~>
@@ -54,10 +69,15 @@ dependencies:
54
69
  version: 2.3.0
55
70
  type: :development
56
71
  prerelease: false
57
- version_requirements: *70223617401900
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: 2.3.0
58
78
  - !ruby/object:Gem::Dependency
59
79
  name: yard
60
- requirement: &70223617399720 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
61
81
  none: false
62
82
  requirements:
63
83
  - - ~>
@@ -65,10 +85,15 @@ dependencies:
65
85
  version: 0.6.0
66
86
  type: :development
67
87
  prerelease: false
68
- version_requirements: *70223617399720
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: 0.6.0
69
94
  - !ruby/object:Gem::Dependency
70
95
  name: bundler
71
- requirement: &70223617383320 !ruby/object:Gem::Requirement
96
+ requirement: !ruby/object:Gem::Requirement
72
97
  none: false
73
98
  requirements:
74
99
  - - ~>
@@ -76,10 +101,15 @@ dependencies:
76
101
  version: 1.0.0
77
102
  type: :development
78
103
  prerelease: false
79
- version_requirements: *70223617383320
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: 1.0.0
80
110
  - !ruby/object:Gem::Dependency
81
111
  name: jeweler
82
- requirement: &70223617381780 !ruby/object:Gem::Requirement
112
+ requirement: !ruby/object:Gem::Requirement
83
113
  none: false
84
114
  requirements:
85
115
  - - ~>
@@ -87,10 +117,15 @@ dependencies:
87
117
  version: 1.6.0
88
118
  type: :development
89
119
  prerelease: false
90
- version_requirements: *70223617381780
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ~>
124
+ - !ruby/object:Gem::Version
125
+ version: 1.6.0
91
126
  - !ruby/object:Gem::Dependency
92
127
  name: rcov
93
- requirement: &70223617380060 !ruby/object:Gem::Requirement
128
+ requirement: !ruby/object:Gem::Requirement
94
129
  none: false
95
130
  requirements:
96
131
  - - ! '>='
@@ -98,10 +133,15 @@ dependencies:
98
133
  version: '0'
99
134
  type: :development
100
135
  prerelease: false
101
- version_requirements: *70223617380060
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
102
142
  - !ruby/object:Gem::Dependency
103
143
  name: progressbar
104
- requirement: &70223617378300 !ruby/object:Gem::Requirement
144
+ requirement: !ruby/object:Gem::Requirement
105
145
  none: false
106
146
  requirements:
107
147
  - - ! '>='
@@ -109,10 +149,15 @@ dependencies:
109
149
  version: '0'
110
150
  type: :runtime
111
151
  prerelease: false
112
- version_requirements: *70223617378300
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
113
158
  - !ruby/object:Gem::Dependency
114
159
  name: rainbow
115
- requirement: &70223617376540 !ruby/object:Gem::Requirement
160
+ requirement: !ruby/object:Gem::Requirement
116
161
  none: false
117
162
  requirements:
118
163
  - - ! '>='
@@ -120,10 +165,15 @@ dependencies:
120
165
  version: '0'
121
166
  type: :runtime
122
167
  prerelease: false
123
- version_requirements: *70223617376540
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ! '>='
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
124
174
  - !ruby/object:Gem::Dependency
125
175
  name: httpclient
126
- requirement: &70223617336360 !ruby/object:Gem::Requirement
176
+ requirement: !ruby/object:Gem::Requirement
127
177
  none: false
128
178
  requirements:
129
179
  - - ! '>='
@@ -131,8 +181,14 @@ dependencies:
131
181
  version: '0'
132
182
  type: :runtime
133
183
  prerelease: false
134
- version_requirements: *70223617336360
135
- description: ciphersurfer is a security tool that evaluates web server SSL configuration
184
+ version_requirements: !ruby/object:Gem::Requirement
185
+ none: false
186
+ requirements:
187
+ - - ! '>='
188
+ - !ruby/object:Gem::Version
189
+ version: '0'
190
+ description: Enchant is tool aimed to discover web application directory and pages
191
+ by fuzzing the requests using a dictionary approach
136
192
  email: thesp0nge@gmail.com
137
193
  executables:
138
194
  - enchant
@@ -180,8 +236,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
180
236
  version: 1.3.1
181
237
  requirements: []
182
238
  rubyforge_project:
183
- rubygems_version: 1.8.10
239
+ rubygems_version: 1.8.24
184
240
  signing_key:
185
241
  specification_version: 3
186
- summary: evaluates web server SSL configuration
242
+ summary: Your magical web application fuzzer
187
243
  test_files: []