rex-random_identifier 0.1.15 → 0.1.16
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.
- checksums.yaml +4 -4
- data/.github/workflows/verify.yml +2 -41
- data/lib/rex/random_identifier/generator.rb +22 -3
- data/lib/rex/random_identifier/version.rb +1 -1
- data/rex-random_identifier.gemspec +3 -0
- metadata +21 -33
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8df21bef52b2606256edc78847b153c6ce2c80a1d3c27a10022b75f9045aa200
|
4
|
+
data.tar.gz: f1e0077afa91714b3e36e9e7b77865749f259f6dd0e0df71105750b51272e3b7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2d3558806ac016b5fbe052ecff87aeb2651441e4ba52cd8dfd6d2a868300d98e5817540143eb7fb0dee9afb3eee428b3cc26b7ac5f350eec1f1acdf7e1754027
|
7
|
+
data.tar.gz: 442aeed7f51e32e3d729e2aca6ce4b6dd8ee73421ce113c0e9e7834dc716f57be1a43275502d16880c2dd56a69c8d8ac2dc9d8843f86ab6498a2ca038b40f410
|
@@ -9,44 +9,5 @@ on:
|
|
9
9
|
- '*'
|
10
10
|
|
11
11
|
jobs:
|
12
|
-
|
13
|
-
|
14
|
-
timeout-minutes: 40
|
15
|
-
|
16
|
-
strategy:
|
17
|
-
fail-fast: true
|
18
|
-
matrix:
|
19
|
-
ruby:
|
20
|
-
- '2.7'
|
21
|
-
- '3.0'
|
22
|
-
- '3.1'
|
23
|
-
- '3.2'
|
24
|
-
os:
|
25
|
-
- ubuntu-20.04
|
26
|
-
- ubuntu-latest
|
27
|
-
exclude:
|
28
|
-
- { os: ubuntu-latest, ruby: '2.7' }
|
29
|
-
- { os: ubuntu-latest, ruby: '3.0' }
|
30
|
-
test_cmd:
|
31
|
-
- bundle exec rspec
|
32
|
-
|
33
|
-
env:
|
34
|
-
RAILS_ENV: test
|
35
|
-
|
36
|
-
name: ${{ matrix.os }} - Ruby ${{ matrix.ruby }} - ${{ matrix.test_cmd }}
|
37
|
-
steps:
|
38
|
-
- name: Checkout code
|
39
|
-
uses: actions/checkout@v4
|
40
|
-
|
41
|
-
- name: Setup Ruby
|
42
|
-
uses: ruby/setup-ruby@v1
|
43
|
-
with:
|
44
|
-
ruby-version: ${{ matrix.ruby }}
|
45
|
-
bundler-cache: true
|
46
|
-
|
47
|
-
- name: ${{ matrix.test_cmd }}
|
48
|
-
run: |
|
49
|
-
echo "${CMD}"
|
50
|
-
bash -c "${CMD}"
|
51
|
-
env:
|
52
|
-
CMD: ${{ matrix.test_cmd }}
|
12
|
+
build:
|
13
|
+
uses: rapid7/metasploit-framework/.github/workflows/shared_gem_verify.yml@master
|
@@ -34,7 +34,8 @@ class Rex::RandomIdentifier::Generator
|
|
34
34
|
# This should be pretty universal for identifier rules
|
35
35
|
:char_set => Rex::Text::AlphaNumeric+"_",
|
36
36
|
:first_char_set => Rex::Text::LowerAlpha,
|
37
|
-
:forbidden => [].freeze
|
37
|
+
:forbidden => [].freeze,
|
38
|
+
:prefix => ''
|
38
39
|
}
|
39
40
|
|
40
41
|
JavaOpts = DefaultOpts.merge(
|
@@ -111,11 +112,27 @@ class Rex::RandomIdentifier::Generator
|
|
111
112
|
).freeze
|
112
113
|
)
|
113
114
|
|
115
|
+
PHPOpts = DefaultOpts.merge(
|
116
|
+
prefix: '$',
|
117
|
+
first_char_set: Rex::Text::Alpha + '_',
|
118
|
+
# see: https://www.php.net/manual/en/reserved.php
|
119
|
+
# see: https://www.php.net/manual/en/reserved.variables.php
|
120
|
+
forbidden: (
|
121
|
+
%w[
|
122
|
+
$GLOBALS $_SERVER $_GET $_POST $_FILES $_REQUEST $_SESSION $_ENV $_COOKIE
|
123
|
+
$HTTP_GET_VARS $HTTP_POST_VARS $HTTP_COOKIE_VARS $HTTP_SERVER_VARS
|
124
|
+
$HTTP_ENV_VARS $HTTP_SESSION_VARS $HTTP_POST_FILES $HTTP_RAW_POST_DATA
|
125
|
+
$php_errormsg $http_response_header $argc $argv $this
|
126
|
+
]
|
127
|
+
)
|
128
|
+
)
|
129
|
+
|
114
130
|
Opts = {
|
115
131
|
default: DefaultOpts,
|
116
132
|
java: JavaOpts,
|
117
133
|
jsp: JSPOpts,
|
118
134
|
javascript: JavaScriptOpts,
|
135
|
+
php: PHPOpts,
|
119
136
|
python: PythonOpts
|
120
137
|
}
|
121
138
|
|
@@ -247,12 +264,14 @@ class Rex::RandomIdentifier::Generator
|
|
247
264
|
# pick a random length within the limits
|
248
265
|
len ||= rand(@opts[:min_length] .. (@opts[:max_length]))
|
249
266
|
|
250
|
-
ident =
|
267
|
+
ident = ''
|
251
268
|
|
252
269
|
# XXX: Infinite loop if block returns only values we've already
|
253
270
|
# generated.
|
254
271
|
loop do
|
255
|
-
ident =
|
272
|
+
ident = +''
|
273
|
+
ident << @opts[:prefix]
|
274
|
+
ident << Rex::Text.rand_base(1, "", @opts[:first_char_set])
|
256
275
|
ident << Rex::Text.rand_base(len-1, "", @opts[:char_set])
|
257
276
|
if block_given?
|
258
277
|
ident = yield ident
|
@@ -23,4 +23,7 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.add_development_dependency "rspec"
|
24
24
|
|
25
25
|
spec.add_runtime_dependency "rex-text"
|
26
|
+
|
27
|
+
# bigdecimal is not part of the default gems starting from Ruby 3.4.0: https://www.ruby-lang.org/en/news/2023/12/25/ruby-3-3-0-released/
|
28
|
+
spec.add_runtime_dependency 'bigdecimal'
|
26
29
|
end
|
metadata
CHANGED
@@ -1,40 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rex-random_identifier
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.16
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Metasploit Hackers
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
|
-
cert_chain:
|
11
|
-
-
|
12
|
-
-----BEGIN CERTIFICATE-----
|
13
|
-
MIIERDCCAqygAwIBAgIBATANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDDBttc2Zk
|
14
|
-
ZXYvREM9bWV0YXNwbG9pdC9EQz1jb20wHhcNMjMxMDMwMTYwNDI1WhcNMjUxMDI5
|
15
|
-
MTYwNDI1WjAmMSQwIgYDVQQDDBttc2ZkZXYvREM9bWV0YXNwbG9pdC9EQz1jb20w
|
16
|
-
ggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQDZN/EKv+yVjwiKWvjAVhjF
|
17
|
-
aWNYI0E9bJ5d1qKd29omRYX9a+OOKBCu5+394fyF5RjwU4mYGr2iopX9ixRJrWXH
|
18
|
-
ojs70tEvV1CmvP9rhz7JKzQQoJOkinrz4d+StIylxVxVdgm7DeiB3ruTwvl7qKUv
|
19
|
-
piWzhrBFiVU6XIEAwq6wNEmnv2D+Omyf4h0Tf99hc6G0QmBnU3XydqvnZ+AzUbBV
|
20
|
-
24RH3+NQoigLbvK4M5aOeYhk19di58hznebOw6twHzNczshrBeMFQp985ScNgsvF
|
21
|
-
rL+7HNNwpcpngERwZfzDNn7iYN5X3cyvTcykShtsuPMa5zXsYo42LZrsTF87DW38
|
22
|
-
D8sxL6Dgdqu25Mltdw9m+iD4rHSfb1KJYEoNO+WwBJLO2Y4d6G1CR66tVeWsZspb
|
23
|
-
zneOVC+sDuil7hOm+6a7Y2yrrRyT6IfL/07DywjPAIRUp5+Jn8ZrkWRNo2AOwWBG
|
24
|
-
k5gz7SfJPHuyVnPlxoMA0MTFCUnnnbyHu882TGoJGgMCAwEAAaN9MHswCQYDVR0T
|
25
|
-
BAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFIQfNa4E889ZE334cwU7eNu2hScH
|
26
|
-
MCAGA1UdEQQZMBeBFW1zZmRldkBtZXRhc3Bsb2l0LmNvbTAgBgNVHRIEGTAXgRVt
|
27
|
-
c2ZkZXZAbWV0YXNwbG9pdC5jb20wDQYJKoZIhvcNAQELBQADggGBAMfzvKcV27p7
|
28
|
-
pctmpW2JmIXLMrjNLyGJAxELH/t9pJueXdga7uj2fJkYQDbwGw5x4MGyFqhqJLH4
|
29
|
-
l/qsUF3PyAXDTSWLVaqXQVWO+IIHxecG0XjPXTNudzMU0hzqbqiBKvsW7/a3V5BP
|
30
|
-
SWlFzrFkoXWlPouFpoakyYMJjpW4SGdPzRv7pM4OhXtkXpHiRvx5985FrHgHlI89
|
31
|
-
NSIuIUbp8zqk4hP1i9MV0Lc/vTf2gOmo+RHnjqG1NiYfMCYyY/Mcd4W36kGOl468
|
32
|
-
I8VDTwgCufkAzFu7BJ5yCOueqtDcuq+d3YhAyU7NI4+Ja8EwazOnB+07sWhKpg7z
|
33
|
-
yuQ1mWYPmZfVQpoSVv1CvXsoqJYXVPBBLOacKKSj8ArVG6pPn9Bej7IOQdblaFjl
|
34
|
-
DgscAao7wB3xW2BWEp1KnaDWkf1x9ttgoBEYyuYwU7uatB67kBQG1PKvLt79wHvz
|
35
|
-
Dxs+KOjGbBRfMnPgVGYkORKVrZIwlaboHbDKxcVW5xv+oZc7KYXWGg==
|
36
|
-
-----END CERTIFICATE-----
|
37
|
-
date: 2025-02-13 00:00:00.000000000 Z
|
10
|
+
cert_chain: []
|
11
|
+
date: 2025-05-22 00:00:00.000000000 Z
|
38
12
|
dependencies:
|
39
13
|
- !ruby/object:Gem::Dependency
|
40
14
|
name: rake
|
@@ -78,6 +52,20 @@ dependencies:
|
|
78
52
|
- - ">="
|
79
53
|
- !ruby/object:Gem::Version
|
80
54
|
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: bigdecimal
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
81
69
|
description: Ruby Exploitation(Rex) library for generating Random identifier strings
|
82
70
|
email:
|
83
71
|
- msfdev@metasploit.com
|
@@ -102,7 +90,7 @@ files:
|
|
102
90
|
homepage: https://github.com/rapid7/rex-random_identifier
|
103
91
|
licenses: []
|
104
92
|
metadata: {}
|
105
|
-
post_install_message:
|
93
|
+
post_install_message:
|
106
94
|
rdoc_options: []
|
107
95
|
require_paths:
|
108
96
|
- lib
|
@@ -117,8 +105,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
117
105
|
- !ruby/object:Gem::Version
|
118
106
|
version: '0'
|
119
107
|
requirements: []
|
120
|
-
rubygems_version: 3.
|
121
|
-
signing_key:
|
108
|
+
rubygems_version: 3.4.19
|
109
|
+
signing_key:
|
122
110
|
specification_version: 4
|
123
111
|
summary: Random Identifier Generator
|
124
112
|
test_files: []
|
checksums.yaml.gz.sig
DELETED
Binary file
|
data.tar.gz.sig
DELETED
Binary file
|
metadata.gz.sig
DELETED
Binary file
|