pwn 0.4.617 → 0.4.619
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/Gemfile +4 -4
- data/README.md +2 -2
- data/lib/pwn/plugins/jenkins.rb +1 -1
- data/lib/pwn/plugins/open_ai.rb +63 -12
- data/lib/pwn/version.rb +1 -1
- metadata +22 -8
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 58a6651edf4d2111509bbfbace1caa37b7a5676e4324546264b0314ce0c8922c
|
|
4
|
+
data.tar.gz: dffc41ac0228ac773889e33bc9a903c8a636bcd6b59d166b55e2b3e14fe6770c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 931533d6769fb90d3f44c2f08f5159066fdf58a80fc6d9cd5418c2d5e0831a2933c99c6c93ae4b5a200406dfa919753a5772a457004276ca428155ea23a2d77a
|
|
7
|
+
data.tar.gz: 4444938711c6afe3a8cae7ad2892c5ae6ad97548e85172c2533d884acfd47acfccfaa995091eb000b79eec45e7f7c036583c2089638bb5f1b3aac94c036bca47
|
data/Gemfile
CHANGED
|
@@ -11,7 +11,7 @@ gemspec
|
|
|
11
11
|
# In some circumstances custom flags are passed to gems in order
|
|
12
12
|
# to build appropriately. Defer to ./reinstall_pwn_gemset.sh
|
|
13
13
|
# to review these custom flags (e.g. pg, serialport, etc).
|
|
14
|
-
gem 'activesupport', '7.0.4.
|
|
14
|
+
gem 'activesupport', '7.0.4.3'
|
|
15
15
|
gem 'anemone', '0.7.2'
|
|
16
16
|
gem 'authy', '3.0.1'
|
|
17
17
|
gem 'aws-sdk', '3.1.0'
|
|
@@ -33,7 +33,7 @@ gem 'gem-wrappers', '1.4.0'
|
|
|
33
33
|
gem 'gist', '6.0.0'
|
|
34
34
|
gem 'htmlentities', '4.3.4'
|
|
35
35
|
gem 'ipaddress', '0.8.3'
|
|
36
|
-
|
|
36
|
+
gem 'jenkins_api_client2', '1.9.0'
|
|
37
37
|
gem 'js-beautify', '0.1.8'
|
|
38
38
|
gem 'json', '2.6.3'
|
|
39
39
|
gem 'jsonpath', '1.1.2'
|
|
@@ -61,10 +61,10 @@ gem 'rbvmomi', '3.0.0'
|
|
|
61
61
|
gem 'rdoc', '6.5.0'
|
|
62
62
|
gem 'rest-client', '2.1.0'
|
|
63
63
|
gem 'rex', '2.0.13'
|
|
64
|
-
gem 'rmagick', '5.
|
|
64
|
+
gem 'rmagick', '5.2.0'
|
|
65
65
|
gem 'rspec', '3.12.0'
|
|
66
66
|
gem 'rtesseract', '3.1.2'
|
|
67
|
-
gem 'rubocop', '1.48.
|
|
67
|
+
gem 'rubocop', '1.48.1'
|
|
68
68
|
gem 'rubocop-rake', '0.6.0'
|
|
69
69
|
gem 'rubocop-rspec', '2.19.0'
|
|
70
70
|
gem 'ruby-audio', '1.6.1'
|
data/README.md
CHANGED
|
@@ -37,7 +37,7 @@ $ rvm use ruby-ruby-3.2.1@pwn
|
|
|
37
37
|
$ rvm list gemsets
|
|
38
38
|
$ gem install --verbose pwn
|
|
39
39
|
$ pwn
|
|
40
|
-
pwn[v0.4.
|
|
40
|
+
pwn[v0.4.619]:001 >>> PWN.help
|
|
41
41
|
```
|
|
42
42
|
|
|
43
43
|
[](https://youtu.be/G7iLUY4FzsI)
|
|
@@ -52,7 +52,7 @@ $ rvm use ruby-ruby-3.2.1@pwn
|
|
|
52
52
|
$ gem uninstall --all --executables pwn
|
|
53
53
|
$ gem install --verbose pwn
|
|
54
54
|
$ pwn
|
|
55
|
-
pwn[v0.4.
|
|
55
|
+
pwn[v0.4.619]:001 >>> PWN.help
|
|
56
56
|
```
|
|
57
57
|
|
|
58
58
|
|
data/lib/pwn/plugins/jenkins.rb
CHANGED
data/lib/pwn/plugins/open_ai.rb
CHANGED
|
@@ -91,15 +91,15 @@ module PWN
|
|
|
91
91
|
end
|
|
92
92
|
|
|
93
93
|
# Supported Method Parameters::
|
|
94
|
-
# response = PWN::Plugins::OpenAI.
|
|
94
|
+
# response = PWN::Plugins::OpenAI.legacy_chat(
|
|
95
95
|
# token: 'required - Bearer token',
|
|
96
96
|
# request: 'required - message to ChatGPT'
|
|
97
|
-
# model: 'optional - model to use for text generation (defaults to
|
|
97
|
+
# model: 'optional - model to use for text generation (defaults to gpt-3.5-turbo)',
|
|
98
98
|
# temp: 'optional - creative response float (deafults to 0)',
|
|
99
99
|
# max_tokens: 'optional - integer (defaults to 4_097 - request.length || 300)'
|
|
100
100
|
# )
|
|
101
101
|
|
|
102
|
-
public_class_method def self.
|
|
102
|
+
public_class_method def self.legacy_chat(opts = {})
|
|
103
103
|
token = opts[:token]
|
|
104
104
|
request = opts[:request]
|
|
105
105
|
model = opts[:model]
|
|
@@ -112,12 +112,63 @@ module PWN
|
|
|
112
112
|
|
|
113
113
|
rest_call = 'completions'
|
|
114
114
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
115
|
+
response = open_ai_rest_call(
|
|
116
|
+
http_method: :post,
|
|
117
|
+
token: token,
|
|
118
|
+
rest_call: rest_call,
|
|
119
|
+
http_body: http_body.to_json
|
|
120
|
+
)
|
|
121
|
+
|
|
122
|
+
JSON.parse(response, symbolize_names: true)
|
|
123
|
+
rescue StandardError => e
|
|
124
|
+
raise e
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
# Supported Method Parameters::
|
|
128
|
+
# response = PWN::Plugins::OpenAI.chat(
|
|
129
|
+
# token: 'required - Bearer token',
|
|
130
|
+
# request: 'required - message to ChatGPT'
|
|
131
|
+
# model: 'optional - model to use for text generation (defaults to gpt-3.5-turbo)',
|
|
132
|
+
# temp: 'optional - creative response float (deafults to 0)',
|
|
133
|
+
# max_tokens: 'optional - integer (defaults to 4_097 - request.length || 300)'
|
|
134
|
+
# )
|
|
135
|
+
|
|
136
|
+
public_class_method def self.chat(opts = {})
|
|
137
|
+
token = opts[:token]
|
|
138
|
+
request = opts[:request]
|
|
139
|
+
model = opts[:model]
|
|
140
|
+
model ||= 'gpt-3.5-turbo'
|
|
141
|
+
temp = opts[:temp].to_f
|
|
142
|
+
temp = 0 unless temp.positive?
|
|
143
|
+
max_tokens = opts[:max_tokens].to_i
|
|
144
|
+
max_tokens = 4_097 - request.to_s.length
|
|
145
|
+
max_tokens = 300 unless max_tokens.positive?
|
|
146
|
+
|
|
147
|
+
rest_call = 'chat/completions'
|
|
148
|
+
|
|
149
|
+
case model
|
|
150
|
+
when 'text-davinci-002',
|
|
151
|
+
'text-davinci-003'
|
|
152
|
+
http_body = {
|
|
153
|
+
model: model,
|
|
154
|
+
prompt: request,
|
|
155
|
+
temperature: temp,
|
|
156
|
+
max_tokens: max_tokens
|
|
157
|
+
}
|
|
158
|
+
when 'gpt-3.5-turbo',
|
|
159
|
+
'gpt-4'
|
|
160
|
+
http_body = {
|
|
161
|
+
model: model,
|
|
162
|
+
messages: [
|
|
163
|
+
role: 'system',
|
|
164
|
+
content: request
|
|
165
|
+
],
|
|
166
|
+
temperature: temp,
|
|
167
|
+
max_tokens: max_tokens
|
|
168
|
+
}
|
|
169
|
+
else
|
|
170
|
+
raise "ERROR: #{model} not supported."
|
|
171
|
+
end
|
|
121
172
|
|
|
122
173
|
response = open_ai_rest_call(
|
|
123
174
|
http_method: :post,
|
|
@@ -179,11 +230,11 @@ module PWN
|
|
|
179
230
|
|
|
180
231
|
public_class_method def self.help
|
|
181
232
|
puts "USAGE:
|
|
182
|
-
response = #{self}.
|
|
233
|
+
response = #{self}.chat(
|
|
183
234
|
token: 'required - Bearer token',
|
|
184
235
|
request: 'required - message to ChatGPT',
|
|
185
|
-
model: 'optional - model to use for text generation (defaults to
|
|
186
|
-
temp: 'optional - creative response float (
|
|
236
|
+
model: 'optional - model to use for text generation (defaults to gpt-3.5-turbo)',
|
|
237
|
+
temp: 'optional - creative response float (defaults to 0)',
|
|
187
238
|
max_tokens: 'optional - integer (deafults to 4_097 - request.length || 300)'
|
|
188
239
|
)
|
|
189
240
|
|
data/lib/pwn/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: pwn
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.4.
|
|
4
|
+
version: 0.4.619
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- 0day Inc.
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2023-03-
|
|
11
|
+
date: 2023-03-14 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activesupport
|
|
@@ -16,14 +16,14 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - '='
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 7.0.4.
|
|
19
|
+
version: 7.0.4.3
|
|
20
20
|
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
24
|
- - '='
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: 7.0.4.
|
|
26
|
+
version: 7.0.4.3
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: anemone
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -318,6 +318,20 @@ dependencies:
|
|
|
318
318
|
- - '='
|
|
319
319
|
- !ruby/object:Gem::Version
|
|
320
320
|
version: 0.8.3
|
|
321
|
+
- !ruby/object:Gem::Dependency
|
|
322
|
+
name: jenkins_api_client2
|
|
323
|
+
requirement: !ruby/object:Gem::Requirement
|
|
324
|
+
requirements:
|
|
325
|
+
- - '='
|
|
326
|
+
- !ruby/object:Gem::Version
|
|
327
|
+
version: 1.9.0
|
|
328
|
+
type: :runtime
|
|
329
|
+
prerelease: false
|
|
330
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
331
|
+
requirements:
|
|
332
|
+
- - '='
|
|
333
|
+
- !ruby/object:Gem::Version
|
|
334
|
+
version: 1.9.0
|
|
321
335
|
- !ruby/object:Gem::Dependency
|
|
322
336
|
name: js-beautify
|
|
323
337
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -702,14 +716,14 @@ dependencies:
|
|
|
702
716
|
requirements:
|
|
703
717
|
- - '='
|
|
704
718
|
- !ruby/object:Gem::Version
|
|
705
|
-
version: 5.
|
|
719
|
+
version: 5.2.0
|
|
706
720
|
type: :runtime
|
|
707
721
|
prerelease: false
|
|
708
722
|
version_requirements: !ruby/object:Gem::Requirement
|
|
709
723
|
requirements:
|
|
710
724
|
- - '='
|
|
711
725
|
- !ruby/object:Gem::Version
|
|
712
|
-
version: 5.
|
|
726
|
+
version: 5.2.0
|
|
713
727
|
- !ruby/object:Gem::Dependency
|
|
714
728
|
name: rspec
|
|
715
729
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -744,14 +758,14 @@ dependencies:
|
|
|
744
758
|
requirements:
|
|
745
759
|
- - '='
|
|
746
760
|
- !ruby/object:Gem::Version
|
|
747
|
-
version: 1.48.
|
|
761
|
+
version: 1.48.1
|
|
748
762
|
type: :runtime
|
|
749
763
|
prerelease: false
|
|
750
764
|
version_requirements: !ruby/object:Gem::Requirement
|
|
751
765
|
requirements:
|
|
752
766
|
- - '='
|
|
753
767
|
- !ruby/object:Gem::Version
|
|
754
|
-
version: 1.48.
|
|
768
|
+
version: 1.48.1
|
|
755
769
|
- !ruby/object:Gem::Dependency
|
|
756
770
|
name: rubocop-rake
|
|
757
771
|
requirement: !ruby/object:Gem::Requirement
|