ruby_smb 2.0.2 → 2.0.7

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.
Files changed (143) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  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 +81 -48
  21. data/lib/ruby_smb/client/authentication.rb +5 -10
  22. data/lib/ruby_smb/client/echo.rb +2 -4
  23. data/lib/ruby_smb/client/negotiation.rb +3 -4
  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 +37 -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 +37 -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 +32 -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 +1 -1
  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 +10 -25
  77. data/lib/ruby_smb/smb1/packet/trans2/find_first2_response.rb +0 -1
  78. data/lib/ruby_smb/smb1/packet/trans2/find_next2_response.rb +0 -1
  79. data/lib/ruby_smb/smb1/packet/trans2/open2_response.rb +1 -2
  80. data/lib/ruby_smb/smb1/packet/trans2/set_file_information_response.rb +1 -13
  81. data/lib/ruby_smb/smb1/pipe.rb +8 -6
  82. data/lib/ruby_smb/smb1/tree.rb +13 -9
  83. data/lib/ruby_smb/smb2/file.rb +33 -33
  84. data/lib/ruby_smb/smb2/pipe.rb +9 -6
  85. data/lib/ruby_smb/smb2/tree.rb +21 -11
  86. data/lib/ruby_smb/version.rb +1 -1
  87. data/spec/lib/ruby_smb/client_spec.rb +174 -68
  88. data/spec/lib/ruby_smb/dcerpc/ndr_spec.rb +1396 -77
  89. data/spec/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_request_spec.rb +69 -0
  90. data/spec/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_response_spec.rb +53 -0
  91. data/spec/lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_request_spec.rb +69 -0
  92. data/spec/lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_response_spec.rb +37 -0
  93. data/spec/lib/ruby_smb/dcerpc/netlogon/netr_server_req_challenge_request_spec.rb +45 -0
  94. data/spec/lib/ruby_smb/dcerpc/netlogon/netr_server_req_challenge_response_spec.rb +37 -0
  95. data/spec/lib/ruby_smb/dcerpc/rpc_security_attributes_spec.rb +161 -0
  96. data/spec/lib/ruby_smb/dcerpc/rrp_unicode_string_spec.rb +49 -12
  97. data/spec/lib/ruby_smb/dcerpc/svcctl/change_service_config_w_request_spec.rb +191 -0
  98. data/spec/lib/ruby_smb/dcerpc/svcctl/change_service_config_w_response_spec.rb +38 -0
  99. data/spec/lib/ruby_smb/dcerpc/svcctl/close_service_handle_request_spec.rb +30 -0
  100. data/spec/lib/ruby_smb/dcerpc/svcctl/close_service_handle_response_spec.rb +38 -0
  101. data/spec/lib/ruby_smb/dcerpc/svcctl/control_service_request_spec.rb +39 -0
  102. data/spec/lib/ruby_smb/dcerpc/svcctl/control_service_response_spec.rb +38 -0
  103. data/spec/lib/ruby_smb/dcerpc/svcctl/open_sc_manager_w_request_spec.rb +78 -0
  104. data/spec/lib/ruby_smb/dcerpc/svcctl/open_sc_manager_w_response_spec.rb +38 -0
  105. data/spec/lib/ruby_smb/dcerpc/svcctl/open_service_w_request_spec.rb +59 -0
  106. data/spec/lib/ruby_smb/dcerpc/svcctl/open_service_w_response_spec.rb +38 -0
  107. data/spec/lib/ruby_smb/dcerpc/svcctl/query_service_config_w_request_spec.rb +38 -0
  108. data/spec/lib/ruby_smb/dcerpc/svcctl/query_service_config_w_response_spec.rb +152 -0
  109. data/spec/lib/ruby_smb/dcerpc/svcctl/query_service_status_request_spec.rb +30 -0
  110. data/spec/lib/ruby_smb/dcerpc/svcctl/query_service_status_response_spec.rb +38 -0
  111. data/spec/lib/ruby_smb/dcerpc/svcctl/service_status_spec.rb +72 -0
  112. data/spec/lib/ruby_smb/dcerpc/svcctl/start_service_w_request_spec.rb +46 -0
  113. data/spec/lib/ruby_smb/dcerpc/svcctl/start_service_w_response_spec.rb +30 -0
  114. data/spec/lib/ruby_smb/dcerpc/svcctl_spec.rb +512 -0
  115. data/spec/lib/ruby_smb/dcerpc/winreg/create_key_request_spec.rb +110 -0
  116. data/spec/lib/ruby_smb/dcerpc/winreg/create_key_response_spec.rb +44 -0
  117. data/spec/lib/ruby_smb/dcerpc/winreg/enum_key_request_spec.rb +0 -4
  118. data/spec/lib/ruby_smb/dcerpc/winreg/enum_value_request_spec.rb +2 -2
  119. data/spec/lib/ruby_smb/dcerpc/winreg/enum_value_response_spec.rb +2 -2
  120. data/spec/lib/ruby_smb/dcerpc/winreg/open_root_key_request_spec.rb +9 -4
  121. data/spec/lib/ruby_smb/dcerpc/winreg/query_info_key_request_spec.rb +0 -4
  122. data/spec/lib/ruby_smb/dcerpc/winreg/query_value_request_spec.rb +17 -17
  123. data/spec/lib/ruby_smb/dcerpc/winreg/query_value_response_spec.rb +11 -23
  124. data/spec/lib/ruby_smb/dcerpc/winreg/save_key_request_spec.rb +57 -0
  125. data/spec/lib/ruby_smb/dcerpc/winreg/save_key_response_spec.rb +22 -0
  126. data/spec/lib/ruby_smb/dcerpc/winreg_spec.rb +227 -41
  127. data/spec/lib/ruby_smb/dispatcher/socket_spec.rb +10 -10
  128. data/spec/lib/ruby_smb/error_spec.rb +34 -5
  129. data/spec/lib/ruby_smb/field/stringz16_spec.rb +12 -0
  130. data/spec/lib/ruby_smb/generic_packet_spec.rb +7 -0
  131. data/spec/lib/ruby_smb/nbss/session_header_spec.rb +4 -11
  132. data/spec/lib/ruby_smb/smb1/file_spec.rb +2 -4
  133. data/spec/lib/ruby_smb/smb1/packet/trans2/find_first2_response_spec.rb +0 -1
  134. data/spec/lib/ruby_smb/smb1/packet/trans2/find_next2_response_spec.rb +0 -1
  135. data/spec/lib/ruby_smb/smb1/packet/trans2/open2_response_spec.rb +0 -5
  136. data/spec/lib/ruby_smb/smb1/packet/trans2/set_file_information_response_spec.rb +0 -6
  137. data/spec/lib/ruby_smb/smb1/pipe_spec.rb +30 -5
  138. data/spec/lib/ruby_smb/smb1/tree_spec.rb +22 -0
  139. data/spec/lib/ruby_smb/smb2/file_spec.rb +61 -9
  140. data/spec/lib/ruby_smb/smb2/pipe_spec.rb +9 -5
  141. data/spec/lib/ruby_smb/smb2/tree_spec.rb +58 -1
  142. metadata +107 -18
  143. metadata.gz.sig +0 -0
@@ -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
@@ -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
@@ -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.2
4
+ version: 2.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Metasploit Hackers
@@ -68,20 +68,20 @@ cert_chain:
68
68
  -----END CERTIFICATE-----
69
69
  - |
70
70
  -----BEGIN CERTIFICATE-----
71
- MIIFIzCCBAugAwIBAgIQDX9ZkVJ2eNVTlibR5ALyJTANBgkqhkiG9w0BAQsFADBy
71
+ MIIFIzCCBAugAwIBAgIQCMePMbkSxvnPeJhYXIfaxzANBgkqhkiG9w0BAQsFADBy
72
72
  MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
73
73
  d3cuZGlnaWNlcnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQg
74
- SUQgQ29kZSBTaWduaW5nIENBMB4XDTE5MTAxNjAwMDAwMFoXDTIwMTAxOTEyMDAw
74
+ SUQgQ29kZSBTaWduaW5nIENBMB4XDTIwMTAwNzAwMDAwMFoXDTIzMTEwNjEyMDAw
75
75
  MFowYDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDU1hc3NhY2h1c2V0dHMxDzANBgNV
76
76
  BAcTBkJvc3RvbjETMBEGA1UEChMKUmFwaWQ3IExMQzETMBEGA1UEAxMKUmFwaWQ3
77
- IExMQzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANHnKegPAghKuZk4
78
- Gy1jKaZEXbWc4fxioTemv/F1yIYzAjCWP65qjKtyeeFDe4/kJzG9nseF9oa93YBf
79
- 1nyEqxNSZMw/sCAZ87lOl713dRi73uxOoszy2PT5xEB+Q5R6cbzExkWG2zrLdXDr
80
- so0Bd6VHw+IsAoBBkAq5FrZOJQYGn5VY20xw/2DqtCeoW4QDWyqTnbJmwO9tZrfr
81
- 3Le2crfk2eOgafaPNhLon5uuIKCZsk2YkUSNURSS3M7gosMwU9Gg4JTBi7X5+oww
82
- rY43dJT28YklxmNVu8o5kJxW4dqLKJLOIgSXZ63nceT/EaCSg7DcofHNcUzejFwb
83
- M7Zbb2kCAwEAAaOCAcUwggHBMB8GA1UdIwQYMBaAFFrEuXsqCqOl6nEDwGD5LfZl
84
- dQ5YMB0GA1UdDgQWBBR18CAeMsIEU+0pXal/XXw9LCtMADAOBgNVHQ8BAf8EBAMC
77
+ IExMQzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALNTz4zvAy7h/vQp
78
+ 4dr1txXHlABAagkwYYwTMCtHs5PXsJITx/5SAjx5swuaLfze5kPBNF2YImvFlOXY
79
+ WaB+0PsOnXnaARsDZU683xFlj8izU6IN6VrAHzDLKFBzruJENrOJD/ikbEtbjO/q
80
+ gFbmS9J9v5ohG/pcRSS0t4ZPAwymf8eCp6QsvOKK/Aymp1RhlRaP8N6N5CIpkhz1
81
+ 9p968iCE+DjOXVYxcWE+jE/7uB1dbgrXykNBujMSS3GULOvVEY28n6NCmrPlo23g
82
+ yRjYVJ2Vy14nBqnxDZ/yRIfWRVjWoT9TsAEbe9gY29oDpSCSs4wSmLQd5zGCpZ9h
83
+ r0HDFB8CAwEAAaOCAcUwggHBMB8GA1UdIwQYMBaAFFrEuXsqCqOl6nEDwGD5LfZl
84
+ dQ5YMB0GA1UdDgQWBBTLBL7DTwumVEKtdCdpHVYMXOFeDzAOBgNVHQ8BAf8EBAMC
85
85
  B4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwdwYDVR0fBHAwbjA1oDOgMYYvaHR0cDov
86
86
  L2NybDMuZGlnaWNlcnQuY29tL3NoYTItYXNzdXJlZC1jcy1nMS5jcmwwNaAzoDGG
87
87
  L2h0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9zaGEyLWFzc3VyZWQtY3MtZzEuY3Js
@@ -90,14 +90,14 @@ cert_chain:
90
90
  JAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBOBggrBgEFBQcw
91
91
  AoZCaHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0U0hBMkFzc3Vy
92
92
  ZWRJRENvZGVTaWduaW5nQ0EuY3J0MAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQEL
93
- BQADggEBAFpzR9s7lcYKDzSJucOHztEPj+iSIeCzxEw34NTE9M2AfkYIu82c4r2a
94
- bzIGmzZWiCGufjOp0gF5xW6sSSJ9n0TqH0nhHhvjtZQkmkGtOBbN1zeYDFS2ozAp
95
- sljF/g68Y1eYs3NaFf7kQUa6vb6RdjW3J8M9AQ8gthBt7gr/guVxd/gJUYbdDdBX
96
- cWfJJi/X7GVBOBmmvA43qoKideuhOBrVGBHvIF/yO9p23dIiUrGmW9kxXCSxgute
97
- JI/W23RbIRksG2pioMhd4dCXq3FLLlkOV1YfCwWixNB+iIhQPPZVaPNfgPhCn4Dt
98
- DeGjje/qA4fkLtRmOtb9PUBq3ToRDE4=
93
+ BQADggEBAN+GL5/myPWg7oH4mVrG7/OhXF1MoYQF0ddaNiqaweEHMuKJBQCVZRbL
94
+ 37HojoKXXv2yyRJBCeTB+ojrxX+5PdLVZa0ss7toWzJ2A1poPXZ1eZvm5xeFD32z
95
+ YQaTmmNWNI3PCDTyJ2PXUc+bDiNNwcZ7yc5o78UNRvp9Jxghya17Q76c9Ov9wvnv
96
+ dxxQKWGOQy0m4fBrkyjAyH9Djjn81RbQrqYgPuhd5nD0HjN3VUQLhQbIJrk9TVs0
97
+ EknWpNgVhohbot1lfVAMmIhdtOVaRVcQQixWPwprDj/ydB8ryDMDosIMcw+fkoXU
98
+ 9GJsSaSRRYQ9UUkVL27b64okU8D48m8=
99
99
  -----END CERTIFICATE-----
100
- date: 2020-06-23 00:00:00.000000000 Z
100
+ date: 2020-11-19 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