smbRpc 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 301126aea359549d334c576f81e3984f45d1a77483980f9fa82963fadb112724
4
- data.tar.gz: afea3703a681b4e4f12f411c36b2348b77ee7a07ffa295eefc1dd4c5ba18624e
3
+ metadata.gz: 7f3353d8440dbac0b159a906b9ddbeb6a7514a8061576badb2553871238bfc05
4
+ data.tar.gz: f2797f8e40083d8e93dfcd3751720a12c9e288dced2fb8cd754e1bb0b3b41091
5
5
  SHA512:
6
- metadata.gz: aad2222fd4eca5c0edaddb75bffaea09d6c903f6341133ec1a98b86e26c98d2490efe26097650f61a3d87da5fdd9d435fb3a2c71fc13c3b4eb35cb9f6078804d
7
- data.tar.gz: 42044cfd25b6fe7af0fd23ce4a212f31c22be6631c89318de50cf65be7e1964423774a8462f2ee5c297aea975642224466b0e9dbfec333c5a37acfdf5ba465a8
6
+ metadata.gz: 4ebd5d9e565a097ff1c36221155fdc0047653e6e219eef73a10f28ac38aef59d51ab2dc70fbe724d121f6445ec339faf2ed1b10c9d634c8a7e571aee0ffe737d
7
+ data.tar.gz: 3b1a63cac8deadc5a81cd2173ff21914e9234db9fa02163c5a68967552cef11c9ba54caa847cfd76533c7bfec4e5d1b01a82ae89debdc765a963d49a8cd6a055
@@ -0,0 +1,15 @@
1
+ #!/usr/bin/ruby
2
+ require"smbRpc"
3
+
4
+ ip = ARGV[0]
5
+ port = 445
6
+ user = ARGV[1]
7
+ pass = ARGV[2]
8
+
9
+ svcctl = SmbRpc::Svcctl.new(ip:ip, user:user, pass:pass).openScm(scAccessMask:SVCCTL_SC_ACCESS_MASK["SC_MANAGER_ENUMERATE_SERVICE"])
10
+ svcctl.enumServicesStatus.each do |i|
11
+ puts "%s : %s\ntype: %s\nstate: %s"%[i[:displayName], i[:serviceName], SVCCTL_SERVICE_STATUS_SERVICE_TYPE.key(i[:serviceType]),
12
+ SVCCTL_SERVICE_STATUS_CURRENT_STATE[i[:currentState]] ]
13
+ end
14
+ svcctl.close
15
+ puts"-"*80
@@ -0,0 +1,24 @@
1
+ #!/usr/bin/ruby
2
+ require"smbRpc"
3
+
4
+ ip = ARGV[0]
5
+ port = 445
6
+ user = ARGV[1]
7
+ pass = ARGV[2]
8
+
9
+ samr = SmbRpc::Samr.new(ip:ip, user:user, pass:pass).connect5
10
+
11
+ domName = ""
12
+ lsarpc = SmbRpc::Lsarpc.new(ip:ip, user:user, pass:pass).openPolicy
13
+ infoPolicy = lsarpc.queryInformationPolicy #determine if host is part of a domain
14
+ domName = infoPolicy[:dnsDomainName].nil?? samr.enumerateDomainsInSamServer[0][:domainName] : infoPolicy[:dnsDomainName]
15
+ lsarpc.close
16
+
17
+ domSid = samr.lookupDomainInSamServer(domainName:domName)
18
+
19
+ samr.openDomain(domainSid:domSid).enumerateUsersInDomain.each do |e|
20
+ p samr.openUser(userId:e[:rid]).queryInformationUser
21
+ end
22
+ samr.close
23
+
24
+
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/ruby
2
+ require"smbRpc"
3
+
4
+ ip = ARGV[0]
5
+ port = 445
6
+ user = ARGV[1]
7
+ pass = ARGV[2]
8
+
9
+ srvsvc = SmbRpc::Srvsvc.new(ip:ip, port:port, user:user, pass:pass)
10
+ p srvsvc.serverGetInfo
11
+ srvsvc.close
@@ -51,7 +51,7 @@ module SmbRpc
51
51
  enumerationContext = samrEnumerateUsersInDomainRes.enumerationContext
52
52
  samrEnumerateUsersInDomainRes.numberOfBuffer.times do |i|
53
53
  h = {}
54
- h[:rid] = samrEnumerateUsersInDomainRes.name[i].relativeId
54
+ h[:rid] = samrEnumerateUsersInDomainRes.name[i].relativeId.to_i
55
55
  h[:userName] = samrEnumerateUsersInDomainRes.nameNdr[i].str.unpack("v*").pack("c*")
56
56
  out << h
57
57
  end
data/smbRpc.gemspec CHANGED
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'smbRpc'
3
- s.version = '0.0.3'
4
- s.date = '2019-01-19'
3
+ s.version = '0.0.4'
4
+ s.date = '2019-01-24'
5
5
  s.summary = "Interface to various Windows RPC services over SMB namepipes"
6
6
  s.description = "As describe in summary"
7
7
  s.authors = ["Rungsree Singholka"]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smbRpc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rungsree Singholka
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-01-19 00:00:00.000000000 Z
11
+ date: 2019-01-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ruby_smb
@@ -46,7 +46,10 @@ extra_rdoc_files: []
46
46
  files:
47
47
  - README.md
48
48
  - examples/enumLsa.rb
49
+ - examples/enumServices.rb
49
50
  - examples/enumSmbPipe.rb
51
+ - examples/enumUsers.rb
52
+ - examples/serverGetInfo.rb
50
53
  - lib/smbRpc.rb
51
54
  - lib/smbRpc/epmapper.rb
52
55
  - lib/smbRpc/epmapper/constants.rb