-
-
Notifications
You must be signed in to change notification settings - Fork 7
/
printing.rb
78 lines (69 loc) · 2.14 KB
/
printing.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# frozen_string_literal: true
#
# ronin-payloads - A Ruby micro-framework for writing and running exploit
# payloads.
#
# Copyright (c) 2007-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
#
# ronin-payloads is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published
# by the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# ronin-payloads is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with ronin-payloads. If not, see <https://www.gnu.org/licenses/>.
#
module Ronin
module Payloads
class CLI
#
# Common methods for printing payload metadata.
#
module Printing
# Known payload types and their printable names.
PAYLOAD_TYPES = {
payload: 'Custom',
binary: 'Binary',
asm: 'ASM',
shellcode: 'Shellcode',
c: 'C',
go: 'Go',
rust: 'Rust',
java: 'Java',
groovy: 'Groovy',
command: 'Command',
shell: 'Shell',
powershell: 'PowerShell',
coldfusion: 'ColdFusion',
jsp: 'JSP',
php: 'PHP',
python: 'Python',
ruby: 'Ruby',
javascript: 'JavaScript',
node_js: 'Node.js',
nashorn: 'Nashorn',
sql: 'SQL',
html: 'HTML',
xml: 'XML'
}
#
# Returns the printable payload type for the payload class.
#
# @param [Class<Payload>] payload_class
# The payload class.
#
# @return [String]
# The printable payload type (ex: 'ASM' or 'shellcode').
#
def payload_type(payload_class)
PAYLOAD_TYPES.fetch(payload_class.payload_type,'Unknown')
end
end
end
end
end