tlspretense 0.6.1 → 0.6.2
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/tlspretense.rb +4 -3
- data/lib/tlspretense/app.rb +2 -2
- data/lib/{certmaker.rb → tlspretense/cert_maker.rb} +10 -7
- data/lib/{certmaker → tlspretense/cert_maker}/certificate_factory.rb +2 -0
- data/lib/{certmaker → tlspretense/cert_maker}/certificate_suite_generator.rb +2 -1
- data/lib/{certmaker → tlspretense/cert_maker}/runner.rb +3 -3
- data/lib/{certmaker → tlspretense/cert_maker}/tasks.rb +4 -4
- data/lib/{certmaker → tlspretense}/ext_core/hash_indifferent_fetch.rb +0 -0
- data/lib/{ssl_test → tlspretense}/ext_core/io_raw_input.rb +0 -0
- data/lib/tlspretense/test_harness.rb +24 -0
- data/lib/{ssl_test → tlspretense/test_harness}/app_context.rb +3 -1
- data/lib/{ssl_test → tlspretense/test_harness}/certificate_manager.rb +3 -1
- data/lib/{ssl_test → tlspretense/test_harness}/config.rb +3 -1
- data/lib/{ssl_test → tlspretense/test_harness}/input_handler.rb +3 -3
- data/lib/{ssl_test → tlspretense/test_harness}/runner.rb +3 -1
- data/lib/{ssl_test → tlspretense/test_harness}/runner_options.rb +4 -1
- data/lib/{ssl_test → tlspretense/test_harness}/ssl_test_case.rb +3 -1
- data/lib/{ssl_test → tlspretense/test_harness}/ssl_test_report.rb +3 -1
- data/lib/{ssl_test → tlspretense/test_harness}/ssl_test_result.rb +3 -1
- data/lib/{ssl_test → tlspretense/test_harness}/test_listener.rb +3 -1
- data/lib/{ssl_test → tlspretense/test_harness}/test_manager.rb +3 -1
- data/lib/tlspretense/version.rb +1 -1
- data/spec/{ssl_test → tlspretense/test_harness}/certificate_manager_spec.rb +4 -3
- data/spec/{ssl_test → tlspretense/test_harness}/config_spec.rb +4 -3
- data/spec/{ssl_test → tlspretense/test_harness}/runner_spec.rb +4 -2
- data/spec/{ssl_test → tlspretense/test_harness}/ssl_test_case_spec.rb +4 -4
- data/spec/{ssl_test → tlspretense/test_harness}/test_listener_spec.rb +4 -3
- data/spec/{ssl_test → tlspretense/test_harness}/test_manager_spec.rb +4 -2
- metadata +33 -33
- data/lib/ssl_test.rb +0 -21
data/lib/tlspretense.rb
CHANGED
@@ -1,13 +1,14 @@
|
|
1
1
|
require 'fileutils'
|
2
2
|
|
3
|
-
require '
|
4
|
-
require '
|
5
|
-
require 'certmaker/runner'
|
3
|
+
require 'packetthief'
|
4
|
+
require 'tlspretense/cert_maker/runner'
|
6
5
|
|
7
6
|
module TLSPretense
|
8
7
|
class CleanExitError < StandardError ; end
|
9
8
|
|
10
9
|
autoload :App, 'tlspretense/app'
|
11
10
|
autoload :InitRunner, 'tlspretense/init_runner'
|
11
|
+
autoload :TestHarness, 'tlspretense/test_harness'
|
12
12
|
autoload :VERSION, 'tlspretense/version'
|
13
|
+
autoload :CertMaker, 'tlspretense/cert_maker'
|
13
14
|
end
|
data/lib/tlspretense/app.rb
CHANGED
@@ -30,9 +30,9 @@ QUOTE
|
|
30
30
|
when 'init'
|
31
31
|
InitRunner.new(@action_args, @stdin, @stdout).run
|
32
32
|
when 'run'
|
33
|
-
|
33
|
+
TestHarness::Runner.new(@action_args, @stdin, @stdout).run
|
34
34
|
when 'list', 'ls'
|
35
|
-
|
35
|
+
TestHarness::Runner.new(['--list'] + @action_args, @stdin, @stdout).run
|
36
36
|
when 'ca'
|
37
37
|
CertMaker::Runner.new.ca
|
38
38
|
when 'certs'
|
@@ -1,13 +1,14 @@
|
|
1
|
-
|
2
1
|
require 'fileutils'
|
3
|
-
require 'yaml'
|
4
2
|
require 'openssl'
|
3
|
+
require 'yaml'
|
5
4
|
|
6
|
-
require '
|
7
|
-
require 'certmaker/certificate_factory'
|
8
|
-
require 'certmaker/certificate_suite_generator'
|
5
|
+
require 'tlspretense/ext_core/hash_indifferent_fetch'
|
9
6
|
|
10
|
-
module
|
7
|
+
module TLSPretense
|
8
|
+
module CertMaker
|
9
|
+
|
10
|
+
autoload :CertificateFactory, 'tlspretense/cert_maker/certificate_factory'
|
11
|
+
autoload :CertificateSuiteGenerator, 'tlspretense/cert_maker/certificate_suite_generator'
|
11
12
|
|
12
13
|
|
13
14
|
# Generate certificates and keys using +config+.
|
@@ -29,7 +30,7 @@ module CertMaker
|
|
29
30
|
# Ensure that the custom ca exists.
|
30
31
|
def make_ca(config, verbose=false)
|
31
32
|
unless config['certmaker'].has_key? 'customgoodca'
|
32
|
-
puts "
|
33
|
+
puts "CertMaker does not have a 'customgoodca' entry, so a CA will be regenerated every time."
|
33
34
|
return
|
34
35
|
end
|
35
36
|
|
@@ -58,4 +59,6 @@ module CertMaker
|
|
58
59
|
end
|
59
60
|
end
|
60
61
|
module_function :make_ca
|
62
|
+
|
63
|
+
end
|
61
64
|
end
|
@@ -3,14 +3,14 @@ namespace :certs do
|
|
3
3
|
|
4
4
|
desc "Checks for a CA, and generates it if needed."
|
5
5
|
task :ca do
|
6
|
-
require '
|
7
|
-
CertMaker::Runner.new.ca
|
6
|
+
require 'tlspretense/cert_maker/runner'
|
7
|
+
TLSPretense::CertMaker::Runner.new.ca
|
8
8
|
end
|
9
9
|
|
10
10
|
desc "Generate a suite of test certificates"
|
11
11
|
task :generate => [ 'certs:ca' ] do
|
12
|
-
require '
|
13
|
-
CertMaker::Runner.new.certs
|
12
|
+
require 'tlspretense/cert_maker/runner'
|
13
|
+
TLSPretense::CertMaker::Runner.new.certs
|
14
14
|
end
|
15
15
|
|
16
16
|
desc "Clean up by deleting the 'certs' directory."
|
File without changes
|
File without changes
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require 'optparse'
|
2
|
+
require 'logger'
|
3
|
+
|
4
|
+
require 'eventmachine'
|
5
|
+
require 'termios'
|
6
|
+
|
7
|
+
require 'packetthief'
|
8
|
+
require 'tlspretense/ext_core/io_raw_input'
|
9
|
+
|
10
|
+
module TLSPretense
|
11
|
+
module TestHarness
|
12
|
+
autoload :AppContext, 'tlspretense/test_harness/app_context'
|
13
|
+
autoload :CertificateManager, 'tlspretense/test_harness/certificate_manager'
|
14
|
+
autoload :Config, 'tlspretense/test_harness/config'
|
15
|
+
autoload :InputHandler, 'tlspretense/test_harness/input_handler'
|
16
|
+
autoload :RunnerOptions, 'tlspretense/test_harness/runner_options'
|
17
|
+
autoload :Runner, 'tlspretense/test_harness/runner'
|
18
|
+
autoload :SSLTestCase, 'tlspretense/test_harness/ssl_test_case'
|
19
|
+
autoload :SSLTestReport, 'tlspretense/test_harness/ssl_test_report'
|
20
|
+
autoload :SSLTestResult, 'tlspretense/test_harness/ssl_test_result'
|
21
|
+
autoload :TestListener, 'tlspretense/test_harness/test_listener'
|
22
|
+
autoload :TestManager, 'tlspretense/test_harness/test_manager'
|
23
|
+
end
|
24
|
+
end
|
@@ -1,4 +1,5 @@
|
|
1
|
-
module
|
1
|
+
module TLSPretense
|
2
|
+
module TestHarness
|
2
3
|
# SSLTestResults are created by running SSLTestCases. They are then added to
|
3
4
|
# an SSLTestReport so that they can be included in that report.
|
4
5
|
class SSLTestResult
|
@@ -28,3 +29,4 @@ module SSLTest
|
|
28
29
|
end
|
29
30
|
end
|
30
31
|
end
|
32
|
+
end
|
@@ -1,4 +1,5 @@
|
|
1
|
-
module
|
1
|
+
module TLSPretense
|
2
|
+
module TestHarness
|
2
3
|
|
3
4
|
# TestListener is the real workhorse used by SSLTestCases. It builds on the
|
4
5
|
# SSLSmartProxy from PacketThief in order to intercept and forward SSL
|
@@ -138,3 +139,4 @@ module SSLTest
|
|
138
139
|
|
139
140
|
end
|
140
141
|
end
|
142
|
+
end
|
data/lib/tlspretense/version.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
|
-
require File.expand_path(File.join(File.dirname(__FILE__),'..','spec_helper'))
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__),'..','..','spec_helper'))
|
2
2
|
|
3
|
-
module
|
3
|
+
module TLSPretense
|
4
|
+
module TestHarness
|
4
5
|
describe CertificateManager do
|
5
6
|
let(:rawfoocert) do (<<-EOF).gsub(/^\s*/,'')
|
6
7
|
-----BEGIN CERTIFICATE-----
|
@@ -219,4 +220,4 @@ module SSLTest
|
|
219
220
|
|
220
221
|
end
|
221
222
|
end
|
222
|
-
|
223
|
+
end
|
@@ -1,6 +1,7 @@
|
|
1
|
-
require File.expand_path(File.join(File.dirname(__FILE__),'..','spec_helper'))
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__),'..','..','spec_helper'))
|
2
2
|
|
3
|
-
module
|
3
|
+
module TLSPretense
|
4
|
+
module TestHarness
|
4
5
|
describe Config do
|
5
6
|
let(:foo_test) do
|
6
7
|
{
|
@@ -73,4 +74,4 @@ module SSLTest
|
|
73
74
|
|
74
75
|
end
|
75
76
|
end
|
76
|
-
|
77
|
+
end
|
@@ -1,6 +1,7 @@
|
|
1
|
-
require File.expand_path(File.join(File.dirname(__FILE__),'..','spec_helper'))
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__),'..','..','spec_helper'))
|
2
2
|
|
3
|
-
module
|
3
|
+
module TLSPretense
|
4
|
+
module TestHarness
|
4
5
|
describe Runner do
|
5
6
|
let(:args) { [] }
|
6
7
|
let(:stdin) { double("stdin") }
|
@@ -358,3 +359,4 @@ module SSLTest
|
|
358
359
|
|
359
360
|
end
|
360
361
|
end
|
362
|
+
end
|
@@ -1,6 +1,7 @@
|
|
1
|
-
require File.expand_path(File.join(File.dirname(__FILE__),'..','spec_helper'))
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__),'..','..','spec_helper'))
|
2
2
|
|
3
|
-
module
|
3
|
+
module TLSPretense
|
4
|
+
module TestHarness
|
4
5
|
describe SSLTestCase do
|
5
6
|
let(:certchain) { double('certchain') }
|
6
7
|
let(:keychain) { [ double('firstkey'), double('secondkey'), double('cakey') ] }
|
@@ -109,5 +110,4 @@ module SSLTest
|
|
109
110
|
|
110
111
|
end
|
111
112
|
end
|
112
|
-
|
113
|
-
|
113
|
+
end
|
@@ -1,5 +1,4 @@
|
|
1
|
-
require File.expand_path(File.join(File.dirname(__FILE__),'..','spec_helper'))
|
2
|
-
require 'certmaker'
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__),'..','..','spec_helper'))
|
3
2
|
|
4
3
|
# quick and dirty. just create the fields we need.
|
5
4
|
def quickcertmaker(hostname, altnames=nil)
|
@@ -13,7 +12,8 @@ def quickcertmaker(hostname, altnames=nil)
|
|
13
12
|
end
|
14
13
|
|
15
14
|
|
16
|
-
module
|
15
|
+
module TLSPretense
|
16
|
+
module TestHarness
|
17
17
|
describe TestListener do
|
18
18
|
let(:tcpsocket) { double('tcpsocket') }
|
19
19
|
let(:cacert) { double('cacert') }
|
@@ -197,3 +197,4 @@ module SSLTest
|
|
197
197
|
|
198
198
|
end
|
199
199
|
end
|
200
|
+
end
|
@@ -1,6 +1,7 @@
|
|
1
|
-
require File.expand_path(File.join(File.dirname(__FILE__),'..','spec_helper'))
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__),'..','..','spec_helper'))
|
2
2
|
|
3
|
-
module
|
3
|
+
module TLSPretense
|
4
|
+
module TestHarness
|
4
5
|
describe TestManager do
|
5
6
|
|
6
7
|
let(:config) do
|
@@ -322,3 +323,4 @@ module SSLTest
|
|
322
323
|
|
323
324
|
end
|
324
325
|
end
|
326
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tlspretense
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-12-
|
12
|
+
date: 2012-12-21 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: eventmachine
|
@@ -149,12 +149,6 @@ files:
|
|
149
149
|
- bin/view.sh
|
150
150
|
- doc/general_setup.rdoc
|
151
151
|
- doc/linux_setup.rdoc
|
152
|
-
- lib/certmaker.rb
|
153
|
-
- lib/certmaker/certificate_factory.rb
|
154
|
-
- lib/certmaker/certificate_suite_generator.rb
|
155
|
-
- lib/certmaker/ext_core/hash_indifferent_fetch.rb
|
156
|
-
- lib/certmaker/runner.rb
|
157
|
-
- lib/certmaker/tasks.rb
|
158
152
|
- lib/packetthief.rb
|
159
153
|
- lib/packetthief/handlers.rb
|
160
154
|
- lib/packetthief/handlers/abstract_ssl_handler.rb
|
@@ -173,25 +167,31 @@ files:
|
|
173
167
|
- lib/packetthief/logging.rb
|
174
168
|
- lib/packetthief/redirect_rule.rb
|
175
169
|
- lib/packetthief/util.rb
|
176
|
-
- lib/ssl_test.rb
|
177
|
-
- lib/ssl_test/app_context.rb
|
178
|
-
- lib/ssl_test/certificate_manager.rb
|
179
|
-
- lib/ssl_test/config.rb
|
180
|
-
- lib/ssl_test/ext_core/io_raw_input.rb
|
181
|
-
- lib/ssl_test/input_handler.rb
|
182
|
-
- lib/ssl_test/runner.rb
|
183
|
-
- lib/ssl_test/runner_options.rb
|
184
|
-
- lib/ssl_test/ssl_test_case.rb
|
185
|
-
- lib/ssl_test/ssl_test_report.rb
|
186
|
-
- lib/ssl_test/ssl_test_result.rb
|
187
|
-
- lib/ssl_test/test_listener.rb
|
188
|
-
- lib/ssl_test/test_manager.rb
|
189
170
|
- lib/tlspretense.rb
|
190
171
|
- lib/tlspretense/app.rb
|
172
|
+
- lib/tlspretense/cert_maker.rb
|
173
|
+
- lib/tlspretense/cert_maker/certificate_factory.rb
|
174
|
+
- lib/tlspretense/cert_maker/certificate_suite_generator.rb
|
175
|
+
- lib/tlspretense/cert_maker/runner.rb
|
176
|
+
- lib/tlspretense/cert_maker/tasks.rb
|
177
|
+
- lib/tlspretense/ext_core/hash_indifferent_fetch.rb
|
178
|
+
- lib/tlspretense/ext_core/io_raw_input.rb
|
191
179
|
- lib/tlspretense/init_runner.rb
|
192
180
|
- lib/tlspretense/skel/ca/goodcacert.pem
|
193
181
|
- lib/tlspretense/skel/ca/goodcakey.pem
|
194
182
|
- lib/tlspretense/skel/config.yml
|
183
|
+
- lib/tlspretense/test_harness.rb
|
184
|
+
- lib/tlspretense/test_harness/app_context.rb
|
185
|
+
- lib/tlspretense/test_harness/certificate_manager.rb
|
186
|
+
- lib/tlspretense/test_harness/config.rb
|
187
|
+
- lib/tlspretense/test_harness/input_handler.rb
|
188
|
+
- lib/tlspretense/test_harness/runner.rb
|
189
|
+
- lib/tlspretense/test_harness/runner_options.rb
|
190
|
+
- lib/tlspretense/test_harness/ssl_test_case.rb
|
191
|
+
- lib/tlspretense/test_harness/ssl_test_report.rb
|
192
|
+
- lib/tlspretense/test_harness/ssl_test_result.rb
|
193
|
+
- lib/tlspretense/test_harness/test_listener.rb
|
194
|
+
- lib/tlspretense/test_harness/test_manager.rb
|
195
195
|
- lib/tlspretense/version.rb
|
196
196
|
- packetthief_examples/certs/cacert.pem
|
197
197
|
- packetthief_examples/certs/cakey.pem
|
@@ -213,12 +213,12 @@ files:
|
|
213
213
|
- spec/packetthief/logging_spec.rb
|
214
214
|
- spec/packetthief_spec.rb
|
215
215
|
- spec/spec_helper.rb
|
216
|
-
- spec/
|
217
|
-
- spec/
|
218
|
-
- spec/
|
219
|
-
- spec/
|
220
|
-
- spec/
|
221
|
-
- spec/
|
216
|
+
- spec/tlspretense/test_harness/certificate_manager_spec.rb
|
217
|
+
- spec/tlspretense/test_harness/config_spec.rb
|
218
|
+
- spec/tlspretense/test_harness/runner_spec.rb
|
219
|
+
- spec/tlspretense/test_harness/ssl_test_case_spec.rb
|
220
|
+
- spec/tlspretense/test_harness/test_listener_spec.rb
|
221
|
+
- spec/tlspretense/test_harness/test_manager_spec.rb
|
222
222
|
- tlspretense.gemspec
|
223
223
|
homepage: https://github.com/iSECPartners/tlspretense
|
224
224
|
licenses:
|
@@ -254,9 +254,9 @@ test_files:
|
|
254
254
|
- spec/packetthief/logging_spec.rb
|
255
255
|
- spec/packetthief_spec.rb
|
256
256
|
- spec/spec_helper.rb
|
257
|
-
- spec/
|
258
|
-
- spec/
|
259
|
-
- spec/
|
260
|
-
- spec/
|
261
|
-
- spec/
|
262
|
-
- spec/
|
257
|
+
- spec/tlspretense/test_harness/certificate_manager_spec.rb
|
258
|
+
- spec/tlspretense/test_harness/config_spec.rb
|
259
|
+
- spec/tlspretense/test_harness/runner_spec.rb
|
260
|
+
- spec/tlspretense/test_harness/ssl_test_case_spec.rb
|
261
|
+
- spec/tlspretense/test_harness/test_listener_spec.rb
|
262
|
+
- spec/tlspretense/test_harness/test_manager_spec.rb
|
data/lib/ssl_test.rb
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
require 'packetthief'
|
2
|
-
require 'eventmachine'
|
3
|
-
require 'optparse'
|
4
|
-
require 'termios'
|
5
|
-
require 'logger'
|
6
|
-
|
7
|
-
require 'ssl_test/ext_core/io_raw_input'
|
8
|
-
|
9
|
-
module SSLTest
|
10
|
-
autoload :AppContext, 'ssl_test/app_context'
|
11
|
-
autoload :CertificateManager, 'ssl_test/certificate_manager'
|
12
|
-
autoload :Config, 'ssl_test/config'
|
13
|
-
autoload :InputHandler, 'ssl_test/input_handler'
|
14
|
-
autoload :RunnerOptions, 'ssl_test/runner_options'
|
15
|
-
autoload :Runner, 'ssl_test/runner'
|
16
|
-
autoload :SSLTestCase, 'ssl_test/ssl_test_case'
|
17
|
-
autoload :SSLTestReport, 'ssl_test/ssl_test_report'
|
18
|
-
autoload :SSLTestResult, 'ssl_test/ssl_test_result'
|
19
|
-
autoload :TestListener, 'ssl_test/test_listener'
|
20
|
-
autoload :TestManager, 'ssl_test/test_manager'
|
21
|
-
end
|