ruby_smb 2.0.0 → 2.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (136) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +3 -3
  3. data.tar.gz.sig +5 -1
  4. data/examples/anonymous_auth.rb +3 -3
  5. data/examples/append_file.rb +10 -8
  6. data/examples/authenticate.rb +9 -5
  7. data/examples/delete_file.rb +8 -6
  8. data/examples/enum_registry_key.rb +5 -4
  9. data/examples/enum_registry_values.rb +5 -4
  10. data/examples/list_directory.rb +8 -6
  11. data/examples/negotiate_with_netbios_service.rb +9 -5
  12. data/examples/net_share_enum_all.rb +6 -4
  13. data/examples/pipes.rb +11 -12
  14. data/examples/query_service_status.rb +64 -0
  15. data/examples/read_file.rb +8 -6
  16. data/examples/read_registry_key_value.rb +6 -5
  17. data/examples/rename_file.rb +9 -7
  18. data/examples/tree_connect.rb +7 -5
  19. data/examples/write_file.rb +9 -7
  20. data/lib/ruby_smb/client.rb +117 -53
  21. data/lib/ruby_smb/client/authentication.rb +7 -12
  22. data/lib/ruby_smb/client/echo.rb +2 -4
  23. data/lib/ruby_smb/client/negotiation.rb +31 -12
  24. data/lib/ruby_smb/client/tree_connect.rb +2 -4
  25. data/lib/ruby_smb/client/utils.rb +16 -10
  26. data/lib/ruby_smb/client/winreg.rb +1 -1
  27. data/lib/ruby_smb/dcerpc.rb +4 -0
  28. data/lib/ruby_smb/dcerpc/error.rb +3 -0
  29. data/lib/ruby_smb/dcerpc/ndr.rb +306 -44
  30. data/lib/ruby_smb/dcerpc/netlogon.rb +101 -0
  31. data/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_request.rb +28 -0
  32. data/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_response.rb +26 -0
  33. data/lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_request.rb +27 -0
  34. data/lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_response.rb +23 -0
  35. data/lib/ruby_smb/dcerpc/netlogon/netr_server_req_challenge_request.rb +25 -0
  36. data/lib/ruby_smb/dcerpc/netlogon/netr_server_req_challenge_response.rb +24 -0
  37. data/lib/ruby_smb/dcerpc/request.rb +19 -0
  38. data/lib/ruby_smb/dcerpc/rpc_security_attributes.rb +34 -0
  39. data/lib/ruby_smb/dcerpc/rrp_unicode_string.rb +9 -6
  40. data/lib/ruby_smb/dcerpc/svcctl.rb +479 -0
  41. data/lib/ruby_smb/dcerpc/svcctl/change_service_config_w_request.rb +48 -0
  42. data/lib/ruby_smb/dcerpc/svcctl/change_service_config_w_response.rb +26 -0
  43. data/lib/ruby_smb/dcerpc/svcctl/close_service_handle_request.rb +25 -0
  44. data/lib/ruby_smb/dcerpc/svcctl/close_service_handle_response.rb +26 -0
  45. data/lib/ruby_smb/dcerpc/svcctl/control_service_request.rb +26 -0
  46. data/lib/ruby_smb/dcerpc/svcctl/control_service_response.rb +26 -0
  47. data/lib/ruby_smb/dcerpc/svcctl/open_sc_manager_w_request.rb +35 -0
  48. data/lib/ruby_smb/dcerpc/svcctl/open_sc_manager_w_response.rb +23 -0
  49. data/lib/ruby_smb/dcerpc/svcctl/open_service_w_request.rb +31 -0
  50. data/lib/ruby_smb/dcerpc/svcctl/open_service_w_response.rb +23 -0
  51. data/lib/ruby_smb/dcerpc/svcctl/query_service_config_w_request.rb +25 -0
  52. data/lib/ruby_smb/dcerpc/svcctl/query_service_config_w_response.rb +44 -0
  53. data/lib/ruby_smb/dcerpc/svcctl/query_service_status_request.rb +23 -0
  54. data/lib/ruby_smb/dcerpc/svcctl/query_service_status_response.rb +27 -0
  55. data/lib/ruby_smb/dcerpc/svcctl/service_status.rb +25 -0
  56. data/lib/ruby_smb/dcerpc/svcctl/start_service_w_request.rb +27 -0
  57. data/lib/ruby_smb/dcerpc/svcctl/start_service_w_response.rb +25 -0
  58. data/lib/ruby_smb/dcerpc/winreg.rb +98 -17
  59. data/lib/ruby_smb/dcerpc/winreg/create_key_request.rb +73 -0
  60. data/lib/ruby_smb/dcerpc/winreg/create_key_response.rb +36 -0
  61. data/lib/ruby_smb/dcerpc/winreg/enum_key_request.rb +1 -1
  62. data/lib/ruby_smb/dcerpc/winreg/enum_value_request.rb +1 -1
  63. data/lib/ruby_smb/dcerpc/winreg/enum_value_response.rb +1 -1
  64. data/lib/ruby_smb/dcerpc/winreg/open_root_key_request.rb +4 -4
  65. data/lib/ruby_smb/dcerpc/winreg/query_info_key_request.rb +1 -1
  66. data/lib/ruby_smb/dcerpc/winreg/query_value_request.rb +7 -6
  67. data/lib/ruby_smb/dcerpc/winreg/query_value_response.rb +10 -10
  68. data/lib/ruby_smb/dcerpc/winreg/save_key_request.rb +37 -0
  69. data/lib/ruby_smb/dcerpc/winreg/save_key_response.rb +23 -0
  70. data/lib/ruby_smb/dispatcher/base.rb +1 -1
  71. data/lib/ruby_smb/dispatcher/socket.rb +3 -2
  72. data/lib/ruby_smb/error.rb +21 -5
  73. data/lib/ruby_smb/field/stringz16.rb +17 -1
  74. data/lib/ruby_smb/generic_packet.rb +11 -1
  75. data/lib/ruby_smb/nbss/session_header.rb +4 -4
  76. data/lib/ruby_smb/smb1/file.rb +9 -24
  77. data/lib/ruby_smb/smb1/pipe.rb +8 -6
  78. data/lib/ruby_smb/smb1/tree.rb +22 -9
  79. data/lib/ruby_smb/smb2/file.rb +46 -46
  80. data/lib/ruby_smb/smb2/packet/negotiate_response.rb +1 -1
  81. data/lib/ruby_smb/smb2/pipe.rb +9 -6
  82. data/lib/ruby_smb/smb2/tree.rb +30 -20
  83. data/lib/ruby_smb/version.rb +1 -1
  84. data/spec/lib/ruby_smb/client_spec.rb +248 -109
  85. data/spec/lib/ruby_smb/dcerpc/ndr_spec.rb +1396 -77
  86. data/spec/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_request_spec.rb +69 -0
  87. data/spec/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_response_spec.rb +53 -0
  88. data/spec/lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_request_spec.rb +69 -0
  89. data/spec/lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_response_spec.rb +37 -0
  90. data/spec/lib/ruby_smb/dcerpc/netlogon/netr_server_req_challenge_request_spec.rb +45 -0
  91. data/spec/lib/ruby_smb/dcerpc/netlogon/netr_server_req_challenge_response_spec.rb +37 -0
  92. data/spec/lib/ruby_smb/dcerpc/rpc_security_attributes_spec.rb +161 -0
  93. data/spec/lib/ruby_smb/dcerpc/rrp_unicode_string_spec.rb +49 -12
  94. data/spec/lib/ruby_smb/dcerpc/svcctl/change_service_config_w_request_spec.rb +191 -0
  95. data/spec/lib/ruby_smb/dcerpc/svcctl/change_service_config_w_response_spec.rb +38 -0
  96. data/spec/lib/ruby_smb/dcerpc/svcctl/close_service_handle_request_spec.rb +30 -0
  97. data/spec/lib/ruby_smb/dcerpc/svcctl/close_service_handle_response_spec.rb +38 -0
  98. data/spec/lib/ruby_smb/dcerpc/svcctl/control_service_request_spec.rb +39 -0
  99. data/spec/lib/ruby_smb/dcerpc/svcctl/control_service_response_spec.rb +38 -0
  100. data/spec/lib/ruby_smb/dcerpc/svcctl/open_sc_manager_w_request_spec.rb +78 -0
  101. data/spec/lib/ruby_smb/dcerpc/svcctl/open_sc_manager_w_response_spec.rb +38 -0
  102. data/spec/lib/ruby_smb/dcerpc/svcctl/open_service_w_request_spec.rb +59 -0
  103. data/spec/lib/ruby_smb/dcerpc/svcctl/open_service_w_response_spec.rb +38 -0
  104. data/spec/lib/ruby_smb/dcerpc/svcctl/query_service_config_w_request_spec.rb +38 -0
  105. data/spec/lib/ruby_smb/dcerpc/svcctl/query_service_config_w_response_spec.rb +152 -0
  106. data/spec/lib/ruby_smb/dcerpc/svcctl/query_service_status_request_spec.rb +30 -0
  107. data/spec/lib/ruby_smb/dcerpc/svcctl/query_service_status_response_spec.rb +38 -0
  108. data/spec/lib/ruby_smb/dcerpc/svcctl/service_status_spec.rb +72 -0
  109. data/spec/lib/ruby_smb/dcerpc/svcctl/start_service_w_request_spec.rb +46 -0
  110. data/spec/lib/ruby_smb/dcerpc/svcctl/start_service_w_response_spec.rb +30 -0
  111. data/spec/lib/ruby_smb/dcerpc/svcctl_spec.rb +512 -0
  112. data/spec/lib/ruby_smb/dcerpc/winreg/create_key_request_spec.rb +110 -0
  113. data/spec/lib/ruby_smb/dcerpc/winreg/create_key_response_spec.rb +44 -0
  114. data/spec/lib/ruby_smb/dcerpc/winreg/enum_key_request_spec.rb +0 -4
  115. data/spec/lib/ruby_smb/dcerpc/winreg/enum_value_request_spec.rb +2 -2
  116. data/spec/lib/ruby_smb/dcerpc/winreg/enum_value_response_spec.rb +2 -2
  117. data/spec/lib/ruby_smb/dcerpc/winreg/open_root_key_request_spec.rb +9 -4
  118. data/spec/lib/ruby_smb/dcerpc/winreg/query_info_key_request_spec.rb +0 -4
  119. data/spec/lib/ruby_smb/dcerpc/winreg/query_value_request_spec.rb +17 -17
  120. data/spec/lib/ruby_smb/dcerpc/winreg/query_value_response_spec.rb +11 -23
  121. data/spec/lib/ruby_smb/dcerpc/winreg/save_key_request_spec.rb +57 -0
  122. data/spec/lib/ruby_smb/dcerpc/winreg/save_key_response_spec.rb +22 -0
  123. data/spec/lib/ruby_smb/dcerpc/winreg_spec.rb +227 -41
  124. data/spec/lib/ruby_smb/dispatcher/socket_spec.rb +12 -12
  125. data/spec/lib/ruby_smb/error_spec.rb +34 -5
  126. data/spec/lib/ruby_smb/field/stringz16_spec.rb +12 -0
  127. data/spec/lib/ruby_smb/generic_packet_spec.rb +7 -0
  128. data/spec/lib/ruby_smb/nbss/session_header_spec.rb +4 -11
  129. data/spec/lib/ruby_smb/smb1/file_spec.rb +1 -3
  130. data/spec/lib/ruby_smb/smb1/pipe_spec.rb +30 -5
  131. data/spec/lib/ruby_smb/smb1/tree_spec.rb +22 -0
  132. data/spec/lib/ruby_smb/smb2/file_spec.rb +73 -21
  133. data/spec/lib/ruby_smb/smb2/pipe_spec.rb +9 -5
  134. data/spec/lib/ruby_smb/smb2/tree_spec.rb +64 -7
  135. metadata +91 -2
  136. metadata.gz.sig +0 -0
@@ -26,7 +26,7 @@ RSpec.describe RubySMB::SMB2::Tree do
26
26
  it { is_expected.to respond_to :permissions }
27
27
  it { is_expected.to respond_to :share }
28
28
  it { is_expected.to respond_to :id }
29
- it { is_expected.to respond_to :encryption_required }
29
+ it { is_expected.to respond_to :tree_connect_encrypt_data }
30
30
 
31
31
  it 'inherits the client that spawned it' do
32
32
  expect(tree.client).to eq client
@@ -51,7 +51,7 @@ RSpec.describe RubySMB::SMB2::Tree do
51
51
 
52
52
  it 'calls Client #send_recv with encryption set if required' do
53
53
  allow(tree).to receive(:set_header_fields).and_return(disco_req)
54
- tree.encryption_required = true
54
+ tree.tree_connect_encrypt_data = true
55
55
  expect(client).to receive(:send_recv).with(disco_req, encrypt: true).and_return(disco_resp.to_binary_s)
56
56
  tree.disconnect!
57
57
  end
@@ -147,7 +147,7 @@ RSpec.describe RubySMB::SMB2::Tree do
147
147
 
148
148
  it 'calls Client #send_recv with encryption set if required' do
149
149
  allow(tree).to receive(:open_directory_packet).and_return(create_req)
150
- tree.encryption_required = true
150
+ tree.tree_connect_encrypt_data = true
151
151
  expect(client).to receive(:send_recv).with(create_req, encrypt: true).and_return(create_response.to_binary_s)
152
152
  tree.open_directory
153
153
  end
@@ -195,7 +195,7 @@ RSpec.describe RubySMB::SMB2::Tree do
195
195
  allow(client).to receive(:send_recv) do |packet|
196
196
  expect(packet.file_information_class).to eq RubySMB::Fscc::FileInformation::FileIdFullDirectoryInformation::CLASS_LEVEL
197
197
  expect(packet.name).to eq '*'.encode('UTF-16LE')
198
- expect(packet.output_length).to eq 65_535
198
+ expect(packet.output_length).to eq 65_536
199
199
  end
200
200
  tree.list
201
201
  end
@@ -229,7 +229,7 @@ RSpec.describe RubySMB::SMB2::Tree do
229
229
 
230
230
  it 'calls Client #send_recv with encryption set if required' do
231
231
  allow(tree).to receive(:set_header_fields).and_return(query_dir_req)
232
- tree.encryption_required = true
232
+ tree.tree_connect_encrypt_data = true
233
233
  expect(client).to receive(:send_recv).with(query_dir_req, encrypt: true)
234
234
  tree.list
235
235
  end
@@ -288,6 +288,40 @@ RSpec.describe RubySMB::SMB2::Tree do
288
288
  end
289
289
  end
290
290
 
291
+ context 'when the dialect is 0x0202' do
292
+ it 'sets the packet output_length to 65536 and credit_charge header to 0' do
293
+ client.dialect = '0x0202'
294
+ allow(client).to receive(:send_recv) do |packet|
295
+ expect(packet.output_length).to eq(65536)
296
+ expect(packet.smb2_header.credit_charge).to eq(0)
297
+ end
298
+ tree.list
299
+ end
300
+ end
301
+
302
+ context 'when the server does not support multi credits' do
303
+ it 'sets the packet output_length to 65536 and credit_charge header to 0' do
304
+ client.server_supports_multi_credit = false
305
+ allow(client).to receive(:send_recv) do |packet|
306
+ expect(packet.output_length).to eq(65536)
307
+ expect(packet.smb2_header.credit_charge).to eq(0)
308
+ end
309
+ tree.list
310
+ end
311
+ end
312
+
313
+ context 'when the dialect is not 0x0202 and the server supports multi credits' do
314
+ it 'sets the packet output_length to server_max_read_size and credit_charge header to the expected value' do
315
+ client.server_supports_multi_credit = true
316
+ credit_charge = (90000 - 1) / 65536 + 1
317
+ client.server_max_read_size = 90000
318
+ allow(client).to receive(:send_recv) do |packet|
319
+ expect(packet.output_length).to eq(90000)
320
+ expect(packet.smb2_header.credit_charge).to eq(credit_charge)
321
+ end
322
+ tree.list
323
+ end
324
+ end
291
325
  end
292
326
 
293
327
  describe '#open_file' do
@@ -437,7 +471,7 @@ RSpec.describe RubySMB::SMB2::Tree do
437
471
  end
438
472
 
439
473
  it 'calls Client #send_recv with encryption set if required' do
440
- tree.encryption_required = true
474
+ tree.tree_connect_encrypt_data = true
441
475
  expect(client).to receive(:send_recv).with(create_request, encrypt: true).and_return(create_response.to_binary_s)
442
476
  tree.open_file(filename: filename)
443
477
  end
@@ -459,7 +493,7 @@ RSpec.describe RubySMB::SMB2::Tree do
459
493
  context 'when encryption is required' do
460
494
  it 'returns the expected RubySMB::SMB2::File object' do
461
495
  file_obj = RubySMB::SMB2::File.new(name: filename, tree: tree, response: create_response, encrypt: true)
462
- tree.encryption_required = true
496
+ tree.tree_connect_encrypt_data = true
463
497
  expect(RubySMB::SMB2::File).to receive(:new).with(name: filename, tree: tree, response: create_response, encrypt: true).and_return(file_obj)
464
498
  expect(tree.open_file(filename: filename)).to eq(file_obj)
465
499
  end
@@ -497,4 +531,27 @@ RSpec.describe RubySMB::SMB2::Tree do
497
531
  end
498
532
  end
499
533
  end
534
+
535
+ describe '#open_pipe' do
536
+ let(:opts) { { filename: '\\test', write: true } }
537
+ before :example do
538
+ allow(tree).to receive(:open_file)
539
+ end
540
+
541
+ it 'calls #open_file with the provided options' do
542
+ opts[:filename] ='test'
543
+ expect(tree).to receive(:open_file).with(opts)
544
+ tree.open_pipe(opts)
545
+ end
546
+
547
+ it 'remove the leading \\ from the filename if needed' do
548
+ expect(tree).to receive(:open_file).with( { filename: 'test', write: true } )
549
+ tree.open_pipe(opts)
550
+ end
551
+
552
+ it 'does not modify the original option hash' do
553
+ tree.open_pipe(opts)
554
+ expect(opts).to eq( { filename: '\\test', write: true } )
555
+ end
556
+ end
500
557
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_smb
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Metasploit Hackers
@@ -97,7 +97,7 @@ cert_chain:
97
97
  JI/W23RbIRksG2pioMhd4dCXq3FLLlkOV1YfCwWixNB+iIhQPPZVaPNfgPhCn4Dt
98
98
  DeGjje/qA4fkLtRmOtb9PUBq3ToRDE4=
99
99
  -----END CERTIFICATE-----
100
- date: 2020-06-09 00:00:00.000000000 Z
100
+ date: 2020-09-21 00:00:00.000000000 Z
101
101
  dependencies:
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: redcarpet
@@ -267,6 +267,7 @@ files:
267
267
  - examples/negotiate_with_netbios_service.rb
268
268
  - examples/net_share_enum_all.rb
269
269
  - examples/pipes.rb
270
+ - examples/query_service_status.rb
270
271
  - examples/read_file.rb
271
272
  - examples/read_file_encryption.rb
272
273
  - examples/read_registry_key_value.rb
@@ -289,18 +290,46 @@ files:
289
290
  - lib/ruby_smb/dcerpc/bind_ack.rb
290
291
  - lib/ruby_smb/dcerpc/error.rb
291
292
  - lib/ruby_smb/dcerpc/ndr.rb
293
+ - lib/ruby_smb/dcerpc/netlogon.rb
294
+ - lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_request.rb
295
+ - lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_response.rb
296
+ - lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_request.rb
297
+ - lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_response.rb
298
+ - lib/ruby_smb/dcerpc/netlogon/netr_server_req_challenge_request.rb
299
+ - lib/ruby_smb/dcerpc/netlogon/netr_server_req_challenge_response.rb
292
300
  - lib/ruby_smb/dcerpc/p_syntax_id_t.rb
293
301
  - lib/ruby_smb/dcerpc/pdu_header.rb
294
302
  - lib/ruby_smb/dcerpc/ptypes.rb
295
303
  - lib/ruby_smb/dcerpc/request.rb
296
304
  - lib/ruby_smb/dcerpc/response.rb
305
+ - lib/ruby_smb/dcerpc/rpc_security_attributes.rb
297
306
  - lib/ruby_smb/dcerpc/rrp_unicode_string.rb
298
307
  - lib/ruby_smb/dcerpc/srvsvc.rb
299
308
  - lib/ruby_smb/dcerpc/srvsvc/net_share_enum_all.rb
309
+ - lib/ruby_smb/dcerpc/svcctl.rb
310
+ - lib/ruby_smb/dcerpc/svcctl/change_service_config_w_request.rb
311
+ - lib/ruby_smb/dcerpc/svcctl/change_service_config_w_response.rb
312
+ - lib/ruby_smb/dcerpc/svcctl/close_service_handle_request.rb
313
+ - lib/ruby_smb/dcerpc/svcctl/close_service_handle_response.rb
314
+ - lib/ruby_smb/dcerpc/svcctl/control_service_request.rb
315
+ - lib/ruby_smb/dcerpc/svcctl/control_service_response.rb
316
+ - lib/ruby_smb/dcerpc/svcctl/open_sc_manager_w_request.rb
317
+ - lib/ruby_smb/dcerpc/svcctl/open_sc_manager_w_response.rb
318
+ - lib/ruby_smb/dcerpc/svcctl/open_service_w_request.rb
319
+ - lib/ruby_smb/dcerpc/svcctl/open_service_w_response.rb
320
+ - lib/ruby_smb/dcerpc/svcctl/query_service_config_w_request.rb
321
+ - lib/ruby_smb/dcerpc/svcctl/query_service_config_w_response.rb
322
+ - lib/ruby_smb/dcerpc/svcctl/query_service_status_request.rb
323
+ - lib/ruby_smb/dcerpc/svcctl/query_service_status_response.rb
324
+ - lib/ruby_smb/dcerpc/svcctl/service_status.rb
325
+ - lib/ruby_smb/dcerpc/svcctl/start_service_w_request.rb
326
+ - lib/ruby_smb/dcerpc/svcctl/start_service_w_response.rb
300
327
  - lib/ruby_smb/dcerpc/uuid.rb
301
328
  - lib/ruby_smb/dcerpc/winreg.rb
302
329
  - lib/ruby_smb/dcerpc/winreg/close_key_request.rb
303
330
  - lib/ruby_smb/dcerpc/winreg/close_key_response.rb
331
+ - lib/ruby_smb/dcerpc/winreg/create_key_request.rb
332
+ - lib/ruby_smb/dcerpc/winreg/create_key_response.rb
304
333
  - lib/ruby_smb/dcerpc/winreg/enum_key_request.rb
305
334
  - lib/ruby_smb/dcerpc/winreg/enum_key_response.rb
306
335
  - lib/ruby_smb/dcerpc/winreg/enum_value_request.rb
@@ -314,6 +343,8 @@ files:
314
343
  - lib/ruby_smb/dcerpc/winreg/query_value_request.rb
315
344
  - lib/ruby_smb/dcerpc/winreg/query_value_response.rb
316
345
  - lib/ruby_smb/dcerpc/winreg/regsam.rb
346
+ - lib/ruby_smb/dcerpc/winreg/save_key_request.rb
347
+ - lib/ruby_smb/dcerpc/winreg/save_key_response.rb
317
348
  - lib/ruby_smb/dispatcher.rb
318
349
  - lib/ruby_smb/dispatcher/base.rb
319
350
  - lib/ruby_smb/dispatcher/socket.rb
@@ -499,16 +530,43 @@ files:
499
530
  - spec/lib/ruby_smb/dcerpc/bind_ack_spec.rb
500
531
  - spec/lib/ruby_smb/dcerpc/bind_spec.rb
501
532
  - spec/lib/ruby_smb/dcerpc/ndr_spec.rb
533
+ - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_request_spec.rb
534
+ - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_response_spec.rb
535
+ - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_request_spec.rb
536
+ - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_response_spec.rb
537
+ - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_req_challenge_request_spec.rb
538
+ - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_req_challenge_response_spec.rb
502
539
  - spec/lib/ruby_smb/dcerpc/p_syntax_id_t_spec.rb
503
540
  - spec/lib/ruby_smb/dcerpc/pdu_header_spec.rb
504
541
  - spec/lib/ruby_smb/dcerpc/request_spec.rb
505
542
  - spec/lib/ruby_smb/dcerpc/response_spec.rb
543
+ - spec/lib/ruby_smb/dcerpc/rpc_security_attributes_spec.rb
506
544
  - spec/lib/ruby_smb/dcerpc/rrp_unicode_string_spec.rb
507
545
  - spec/lib/ruby_smb/dcerpc/srvsvc/net_share_enum_all_spec.rb
508
546
  - spec/lib/ruby_smb/dcerpc/srvsvc_spec.rb
547
+ - spec/lib/ruby_smb/dcerpc/svcctl/change_service_config_w_request_spec.rb
548
+ - spec/lib/ruby_smb/dcerpc/svcctl/change_service_config_w_response_spec.rb
549
+ - spec/lib/ruby_smb/dcerpc/svcctl/close_service_handle_request_spec.rb
550
+ - spec/lib/ruby_smb/dcerpc/svcctl/close_service_handle_response_spec.rb
551
+ - spec/lib/ruby_smb/dcerpc/svcctl/control_service_request_spec.rb
552
+ - spec/lib/ruby_smb/dcerpc/svcctl/control_service_response_spec.rb
553
+ - spec/lib/ruby_smb/dcerpc/svcctl/open_sc_manager_w_request_spec.rb
554
+ - spec/lib/ruby_smb/dcerpc/svcctl/open_sc_manager_w_response_spec.rb
555
+ - spec/lib/ruby_smb/dcerpc/svcctl/open_service_w_request_spec.rb
556
+ - spec/lib/ruby_smb/dcerpc/svcctl/open_service_w_response_spec.rb
557
+ - spec/lib/ruby_smb/dcerpc/svcctl/query_service_config_w_request_spec.rb
558
+ - spec/lib/ruby_smb/dcerpc/svcctl/query_service_config_w_response_spec.rb
559
+ - spec/lib/ruby_smb/dcerpc/svcctl/query_service_status_request_spec.rb
560
+ - spec/lib/ruby_smb/dcerpc/svcctl/query_service_status_response_spec.rb
561
+ - spec/lib/ruby_smb/dcerpc/svcctl/service_status_spec.rb
562
+ - spec/lib/ruby_smb/dcerpc/svcctl/start_service_w_request_spec.rb
563
+ - spec/lib/ruby_smb/dcerpc/svcctl/start_service_w_response_spec.rb
564
+ - spec/lib/ruby_smb/dcerpc/svcctl_spec.rb
509
565
  - spec/lib/ruby_smb/dcerpc/uuid_spec.rb
510
566
  - spec/lib/ruby_smb/dcerpc/winreg/close_key_request_spec.rb
511
567
  - spec/lib/ruby_smb/dcerpc/winreg/close_key_response_spec.rb
568
+ - spec/lib/ruby_smb/dcerpc/winreg/create_key_request_spec.rb
569
+ - spec/lib/ruby_smb/dcerpc/winreg/create_key_response_spec.rb
512
570
  - spec/lib/ruby_smb/dcerpc/winreg/enum_key_request_spec.rb
513
571
  - spec/lib/ruby_smb/dcerpc/winreg/enum_key_response_spec.rb
514
572
  - spec/lib/ruby_smb/dcerpc/winreg/enum_value_request_spec.rb
@@ -522,6 +580,8 @@ files:
522
580
  - spec/lib/ruby_smb/dcerpc/winreg/query_value_request_spec.rb
523
581
  - spec/lib/ruby_smb/dcerpc/winreg/query_value_response_spec.rb
524
582
  - spec/lib/ruby_smb/dcerpc/winreg/regsam_spec.rb
583
+ - spec/lib/ruby_smb/dcerpc/winreg/save_key_request_spec.rb
584
+ - spec/lib/ruby_smb/dcerpc/winreg/save_key_response_spec.rb
525
585
  - spec/lib/ruby_smb/dcerpc/winreg_spec.rb
526
586
  - spec/lib/ruby_smb/dcerpc_spec.rb
527
587
  - spec/lib/ruby_smb/dispatcher/base_spec.rb
@@ -704,16 +764,43 @@ test_files:
704
764
  - spec/lib/ruby_smb/dcerpc/bind_ack_spec.rb
705
765
  - spec/lib/ruby_smb/dcerpc/bind_spec.rb
706
766
  - spec/lib/ruby_smb/dcerpc/ndr_spec.rb
767
+ - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_request_spec.rb
768
+ - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_response_spec.rb
769
+ - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_request_spec.rb
770
+ - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_response_spec.rb
771
+ - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_req_challenge_request_spec.rb
772
+ - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_req_challenge_response_spec.rb
707
773
  - spec/lib/ruby_smb/dcerpc/p_syntax_id_t_spec.rb
708
774
  - spec/lib/ruby_smb/dcerpc/pdu_header_spec.rb
709
775
  - spec/lib/ruby_smb/dcerpc/request_spec.rb
710
776
  - spec/lib/ruby_smb/dcerpc/response_spec.rb
777
+ - spec/lib/ruby_smb/dcerpc/rpc_security_attributes_spec.rb
711
778
  - spec/lib/ruby_smb/dcerpc/rrp_unicode_string_spec.rb
712
779
  - spec/lib/ruby_smb/dcerpc/srvsvc/net_share_enum_all_spec.rb
713
780
  - spec/lib/ruby_smb/dcerpc/srvsvc_spec.rb
781
+ - spec/lib/ruby_smb/dcerpc/svcctl/change_service_config_w_request_spec.rb
782
+ - spec/lib/ruby_smb/dcerpc/svcctl/change_service_config_w_response_spec.rb
783
+ - spec/lib/ruby_smb/dcerpc/svcctl/close_service_handle_request_spec.rb
784
+ - spec/lib/ruby_smb/dcerpc/svcctl/close_service_handle_response_spec.rb
785
+ - spec/lib/ruby_smb/dcerpc/svcctl/control_service_request_spec.rb
786
+ - spec/lib/ruby_smb/dcerpc/svcctl/control_service_response_spec.rb
787
+ - spec/lib/ruby_smb/dcerpc/svcctl/open_sc_manager_w_request_spec.rb
788
+ - spec/lib/ruby_smb/dcerpc/svcctl/open_sc_manager_w_response_spec.rb
789
+ - spec/lib/ruby_smb/dcerpc/svcctl/open_service_w_request_spec.rb
790
+ - spec/lib/ruby_smb/dcerpc/svcctl/open_service_w_response_spec.rb
791
+ - spec/lib/ruby_smb/dcerpc/svcctl/query_service_config_w_request_spec.rb
792
+ - spec/lib/ruby_smb/dcerpc/svcctl/query_service_config_w_response_spec.rb
793
+ - spec/lib/ruby_smb/dcerpc/svcctl/query_service_status_request_spec.rb
794
+ - spec/lib/ruby_smb/dcerpc/svcctl/query_service_status_response_spec.rb
795
+ - spec/lib/ruby_smb/dcerpc/svcctl/service_status_spec.rb
796
+ - spec/lib/ruby_smb/dcerpc/svcctl/start_service_w_request_spec.rb
797
+ - spec/lib/ruby_smb/dcerpc/svcctl/start_service_w_response_spec.rb
798
+ - spec/lib/ruby_smb/dcerpc/svcctl_spec.rb
714
799
  - spec/lib/ruby_smb/dcerpc/uuid_spec.rb
715
800
  - spec/lib/ruby_smb/dcerpc/winreg/close_key_request_spec.rb
716
801
  - spec/lib/ruby_smb/dcerpc/winreg/close_key_response_spec.rb
802
+ - spec/lib/ruby_smb/dcerpc/winreg/create_key_request_spec.rb
803
+ - spec/lib/ruby_smb/dcerpc/winreg/create_key_response_spec.rb
717
804
  - spec/lib/ruby_smb/dcerpc/winreg/enum_key_request_spec.rb
718
805
  - spec/lib/ruby_smb/dcerpc/winreg/enum_key_response_spec.rb
719
806
  - spec/lib/ruby_smb/dcerpc/winreg/enum_value_request_spec.rb
@@ -727,6 +814,8 @@ test_files:
727
814
  - spec/lib/ruby_smb/dcerpc/winreg/query_value_request_spec.rb
728
815
  - spec/lib/ruby_smb/dcerpc/winreg/query_value_response_spec.rb
729
816
  - spec/lib/ruby_smb/dcerpc/winreg/regsam_spec.rb
817
+ - spec/lib/ruby_smb/dcerpc/winreg/save_key_request_spec.rb
818
+ - spec/lib/ruby_smb/dcerpc/winreg/save_key_response_spec.rb
730
819
  - spec/lib/ruby_smb/dcerpc/winreg_spec.rb
731
820
  - spec/lib/ruby_smb/dcerpc_spec.rb
732
821
  - spec/lib/ruby_smb/dispatcher/base_spec.rb
metadata.gz.sig CHANGED
Binary file