ruby_smb 3.3.7 → 3.3.9

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 (39) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/README.md +14 -0
  4. data/lib/ruby_smb/dcerpc/error.rb +3 -0
  5. data/lib/ruby_smb/dcerpc/lsarpc/lsar_close_handle_request.rb +22 -0
  6. data/lib/ruby_smb/dcerpc/lsarpc/lsar_close_handle_response.rb +23 -0
  7. data/lib/ruby_smb/dcerpc/lsarpc/lsar_lookup_sids_request.rb +26 -0
  8. data/lib/ruby_smb/dcerpc/lsarpc/lsar_lookup_sids_response.rb +25 -0
  9. data/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy2_request.rb +24 -0
  10. data/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy2_response.rb +23 -0
  11. data/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy_request.rb +24 -0
  12. data/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy_response.rb +23 -0
  13. data/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy2_request.rb +23 -0
  14. data/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy2_response.rb +23 -0
  15. data/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy_request.rb +23 -0
  16. data/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy_response.rb +23 -0
  17. data/lib/ruby_smb/dcerpc/lsarpc.rb +634 -2
  18. data/lib/ruby_smb/dcerpc/netlogon/domain_controller_infow.rb +28 -0
  19. data/lib/ruby_smb/dcerpc/netlogon/dsr_get_dc_name_ex2_request.rb +28 -0
  20. data/lib/ruby_smb/dcerpc/netlogon/dsr_get_dc_name_ex2_response.rb +24 -0
  21. data/lib/ruby_smb/dcerpc/netlogon.rb +3 -0
  22. data/lib/ruby_smb/dcerpc/request.rb +8 -0
  23. data/lib/ruby_smb/dcerpc/samr/rpc_sid.rb +1 -1
  24. data/lib/ruby_smb/version.rb +1 -1
  25. data/spec/lib/ruby_smb/dcerpc/lsarpc/lsar_close_handle_request_spec.rb +40 -0
  26. data/spec/lib/ruby_smb/dcerpc/lsarpc/lsar_close_handle_response_spec.rb +46 -0
  27. data/spec/lib/ruby_smb/dcerpc/lsarpc/lsar_lookup_sids_request_spec.rb +69 -0
  28. data/spec/lib/ruby_smb/dcerpc/lsarpc/lsar_lookup_sids_response_spec.rb +56 -0
  29. data/spec/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy2_request_spec.rb +68 -0
  30. data/spec/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy2_response_spec.rb +46 -0
  31. data/spec/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy_request_spec.rb +68 -0
  32. data/spec/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy_response_spec.rb +45 -0
  33. data/spec/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy2_request_spec.rb +47 -0
  34. data/spec/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy2_response_spec.rb +54 -0
  35. data/spec/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy_request_spec.rb +46 -0
  36. data/spec/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy_response_spec.rb +53 -0
  37. data.tar.gz.sig +0 -0
  38. metadata +42 -3
  39. metadata.gz.sig +0 -0
@@ -0,0 +1,46 @@
1
+ require 'ruby_smb/dcerpc/ndr'
2
+
3
+ RSpec.describe RubySMB::Dcerpc::Lsarpc::LsarQueryInformationPolicyRequest do
4
+ subject(:packet) { described_class.new }
5
+
6
+ it { is_expected.to respond_to :policy_handle }
7
+ it { is_expected.to respond_to :information_class }
8
+ it { is_expected.to respond_to :opnum }
9
+
10
+ it 'is little endian' do
11
+ expect(described_class.fields.instance_variable_get(:@hints)[:endian]).to eq :little
12
+ end
13
+ it 'is a BinData::Record' do
14
+ expect(packet).to be_a(BinData::Record)
15
+ end
16
+ describe '#policy_handle' do
17
+ it 'is an LsaprHandle structure' do
18
+ expect(packet.policy_handle).to be_a RubySMB::Dcerpc::Lsarpc::LsaprHandle
19
+ end
20
+ end
21
+ describe '#information_class' do
22
+ it 'is an NdrUint32 structure' do
23
+ expect(packet.information_class).to be_a RubySMB::Dcerpc::Ndr::NdrUint32
24
+ end
25
+ end
26
+ describe '#initialize_instance' do
27
+ it 'sets #opnum to LSAR_QUERY_INFORMATION_POLICY constant' do
28
+ expect(packet.opnum).to eq(RubySMB::Dcerpc::Lsarpc::LSAR_QUERY_INFORMATION_POLICY)
29
+ end
30
+ end
31
+ it 'reads itself' do
32
+ new_class = described_class.new(
33
+ policy_handle: {
34
+ context_handle_attributes: 0,
35
+ context_handle_uuid: "fc873b90-d9a9-46a4-b9ea-f44bb1c272a7"
36
+ }
37
+ )
38
+ expect(packet.read(new_class.to_binary_s)).to eq(
39
+ policy_handle: {
40
+ context_handle_attributes: 0,
41
+ context_handle_uuid: "fc873b90-d9a9-46a4-b9ea-f44bb1c272a7"
42
+ },
43
+ information_class: 0
44
+ )
45
+ end
46
+ end
@@ -0,0 +1,53 @@
1
+ require 'ruby_smb/dcerpc/ndr'
2
+
3
+ RSpec.describe RubySMB::Dcerpc::Lsarpc::LsarQueryInformationPolicyResponse do
4
+ subject(:packet) { described_class.new }
5
+
6
+ it { is_expected.to respond_to :policy_information }
7
+ it { is_expected.to respond_to :error_status }
8
+ it { is_expected.to respond_to :opnum }
9
+
10
+ it 'is little endian' do
11
+ expect(described_class.fields.instance_variable_get(:@hints)[:endian]).to eq :little
12
+ end
13
+ it 'is a BinData::Record' do
14
+ expect(packet).to be_a(BinData::Record)
15
+ end
16
+ describe '#policy_information' do
17
+ it 'is an LsaprPolicyInformationPtr structure' do
18
+ expect(packet.policy_information).to be_a RubySMB::Dcerpc::Lsarpc::LsaprPolicyInformationPtr
19
+ end
20
+ end
21
+ describe '#error_status' do
22
+ it 'is an NdrUint32 structure' do
23
+ expect(packet.error_status).to be_a RubySMB::Dcerpc::Ndr::NdrUint32
24
+ end
25
+ end
26
+ describe '#initialize_instance' do
27
+ it 'sets #opnum to LSAR_QUERY_INFORMATION_POLICY constant' do
28
+ expect(packet.opnum).to eq(RubySMB::Dcerpc::Lsarpc::LSAR_QUERY_INFORMATION_POLICY)
29
+ end
30
+ end
31
+ it 'reads itself' do
32
+ new_class = described_class.new(
33
+ policy_information: {
34
+ policy_information_class: 1,
35
+ policy_information: {}
36
+ }
37
+ )
38
+ expect(packet.read(new_class.to_binary_s)).to eq(
39
+ policy_information: {
40
+ policy_information_class: 1,
41
+ policy_information: {
42
+ audit_log_percent_full: 0,
43
+ maximum_log_size: 0,
44
+ audit_retention_period: 0,
45
+ audit_log_full_shutdown_in_progress: 0,
46
+ time_to_shutdown: 0,
47
+ next_audit_record_id: 0
48
+ }
49
+ },
50
+ error_status: 0
51
+ )
52
+ end
53
+ end
data.tar.gz.sig CHANGED
Binary file
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: 3.3.7
4
+ version: 3.3.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Metasploit Hackers
@@ -38,7 +38,7 @@ cert_chain:
38
38
  DgscAao7wB3xW2BWEp1KnaDWkf1x9ttgoBEYyuYwU7uatB67kBQG1PKvLt79wHvz
39
39
  Dxs+KOjGbBRfMnPgVGYkORKVrZIwlaboHbDKxcVW5xv+oZc7KYXWGg==
40
40
  -----END CERTIFICATE-----
41
- date: 2024-04-30 00:00:00.000000000 Z
41
+ date: 2024-06-10 00:00:00.000000000 Z
42
42
  dependencies:
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: redcarpet
@@ -281,8 +281,23 @@ files:
281
281
  - lib/ruby_smb/dcerpc/icpr/cert_server_request_request.rb
282
282
  - lib/ruby_smb/dcerpc/icpr/cert_server_request_response.rb
283
283
  - lib/ruby_smb/dcerpc/lsarpc.rb
284
+ - lib/ruby_smb/dcerpc/lsarpc/lsar_close_handle_request.rb
285
+ - lib/ruby_smb/dcerpc/lsarpc/lsar_close_handle_response.rb
286
+ - lib/ruby_smb/dcerpc/lsarpc/lsar_lookup_sids_request.rb
287
+ - lib/ruby_smb/dcerpc/lsarpc/lsar_lookup_sids_response.rb
288
+ - lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy2_request.rb
289
+ - lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy2_response.rb
290
+ - lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy_request.rb
291
+ - lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy_response.rb
292
+ - lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy2_request.rb
293
+ - lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy2_response.rb
294
+ - lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy_request.rb
295
+ - lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy_response.rb
284
296
  - lib/ruby_smb/dcerpc/ndr.rb
285
297
  - lib/ruby_smb/dcerpc/netlogon.rb
298
+ - lib/ruby_smb/dcerpc/netlogon/domain_controller_infow.rb
299
+ - lib/ruby_smb/dcerpc/netlogon/dsr_get_dc_name_ex2_request.rb
300
+ - lib/ruby_smb/dcerpc/netlogon/dsr_get_dc_name_ex2_response.rb
286
301
  - lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_request.rb
287
302
  - lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_response.rb
288
303
  - lib/ruby_smb/dcerpc/netlogon/netr_server_password_set2_request.rb
@@ -658,6 +673,18 @@ files:
658
673
  - spec/lib/ruby_smb/dcerpc/icpr/cert_server_request_request_spec.rb
659
674
  - spec/lib/ruby_smb/dcerpc/icpr/cert_server_request_response_spec.rb
660
675
  - spec/lib/ruby_smb/dcerpc/icpr/cert_trans_blob_spec.rb
676
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_close_handle_request_spec.rb
677
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_close_handle_response_spec.rb
678
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_lookup_sids_request_spec.rb
679
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_lookup_sids_response_spec.rb
680
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy2_request_spec.rb
681
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy2_response_spec.rb
682
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy_request_spec.rb
683
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy_response_spec.rb
684
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy2_request_spec.rb
685
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy2_response_spec.rb
686
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy_request_spec.rb
687
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy_response_spec.rb
661
688
  - spec/lib/ruby_smb/dcerpc/ndr_spec.rb
662
689
  - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_request_spec.rb
663
690
  - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_response_spec.rb
@@ -964,7 +991,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
964
991
  - !ruby/object:Gem::Version
965
992
  version: '0'
966
993
  requirements: []
967
- rubygems_version: 3.1.4
994
+ rubygems_version: 3.2.3
968
995
  signing_key:
969
996
  specification_version: 4
970
997
  summary: A pure Ruby implementation of the SMB Protocol Family
@@ -987,6 +1014,18 @@ test_files:
987
1014
  - spec/lib/ruby_smb/dcerpc/icpr/cert_server_request_request_spec.rb
988
1015
  - spec/lib/ruby_smb/dcerpc/icpr/cert_server_request_response_spec.rb
989
1016
  - spec/lib/ruby_smb/dcerpc/icpr/cert_trans_blob_spec.rb
1017
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_close_handle_request_spec.rb
1018
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_close_handle_response_spec.rb
1019
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_lookup_sids_request_spec.rb
1020
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_lookup_sids_response_spec.rb
1021
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy2_request_spec.rb
1022
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy2_response_spec.rb
1023
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy_request_spec.rb
1024
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_open_policy_response_spec.rb
1025
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy2_request_spec.rb
1026
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy2_response_spec.rb
1027
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy_request_spec.rb
1028
+ - spec/lib/ruby_smb/dcerpc/lsarpc/lsar_query_information_policy_response_spec.rb
990
1029
  - spec/lib/ruby_smb/dcerpc/ndr_spec.rb
991
1030
  - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_request_spec.rb
992
1031
  - spec/lib/ruby_smb/dcerpc/netlogon/netr_server_authenticate3_response_spec.rb
metadata.gz.sig CHANGED
Binary file