emonti-rbkb 0.6.1.1
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.
- data/README.rdoc +39 -0
- data/bin/b64 +57 -0
- data/bin/bgrep +91 -0
- data/bin/blit +97 -0
- data/bin/c +14 -0
- data/bin/crc32 +60 -0
- data/bin/d64 +41 -0
- data/bin/dedump +53 -0
- data/bin/hexify +85 -0
- data/bin/len +74 -0
- data/bin/rex +10 -0
- data/bin/rstrings +123 -0
- data/bin/slice +74 -0
- data/bin/telson +109 -0
- data/bin/unhexify +65 -0
- data/bin/urldec +56 -0
- data/bin/urlenc +55 -0
- data/bin/xor +60 -0
- data/lib/rbkb/command_line.rb +41 -0
- data/lib/rbkb/extends.rb +672 -0
- data/lib/rbkb/plug/blit.rb +220 -0
- data/lib/rbkb/plug/peer.rb +64 -0
- data/lib/rbkb/plug/plug.rb +195 -0
- data/lib/rbkb/plug.rb +6 -0
- data/lib/rbkb.rb +6 -0
- data/usage.txt +224 -0
- metadata +109 -0
data/lib/rbkb/plug.rb
ADDED
data/lib/rbkb.rb
ADDED
data/usage.txt
ADDED
@@ -0,0 +1,224 @@
|
|
1
|
+
== Command Line Tools
|
2
|
+
|
3
|
+
|
4
|
+
=== b64
|
5
|
+
|
6
|
+
Base64 encode data supplied via an argument, file, or standard input.
|
7
|
+
|
8
|
+
Usage: b64 [options] <data | blank for stdin>
|
9
|
+
-h, --help Show this message
|
10
|
+
-v, --version Show version and exit
|
11
|
+
-f, --file FILENAME Input from FILENAME
|
12
|
+
|
13
|
+
Output options:
|
14
|
+
-l, --length LEN Encode in lines of LEN characters
|
15
|
+
|
16
|
+
|
17
|
+
=== bgrep
|
18
|
+
|
19
|
+
Binary grep. Prints 'inspected' matches and offset information.
|
20
|
+
|
21
|
+
Usage: bgrep [options] <subject> <file | blank for stdin>
|
22
|
+
-h, --help Show this message
|
23
|
+
-v, --version Show version and exit
|
24
|
+
-x, --[no-]hex Specify subject as hex (default: false)
|
25
|
+
-r, --[no-]regex Specify subject as regex (default: false)
|
26
|
+
-a, --align=BYTES Only match on alignment boundary
|
27
|
+
-n, --[no-]filename Suppress prefixing of filenames.
|
28
|
+
|
29
|
+
|
30
|
+
=== blit
|
31
|
+
|
32
|
+
Sends data through any plugboard that implements a Plug::Blit listener for
|
33
|
+
out-of band input.
|
34
|
+
|
35
|
+
See also: telson
|
36
|
+
|
37
|
+
Usage: blit [options] <data | blank for stdin>
|
38
|
+
-h, --help Show this message
|
39
|
+
-v, --version Show version and exit
|
40
|
+
-f, --file FILENAME Input from FILENAME
|
41
|
+
-t, --trans-protocol=PROTO Blit transport protocol TCP/UDP
|
42
|
+
-b, --blitsrv=ADDR:PORT Where to send blit messages
|
43
|
+
-i, --peer-index=IDX Index for remote peer to receive
|
44
|
+
-l, --list-peers Lists the peer array for the target
|
45
|
+
-k, --kill Stops the remote event loop.
|
46
|
+
|
47
|
+
|
48
|
+
=== c
|
49
|
+
|
50
|
+
Prints a character n-times.
|
51
|
+
|
52
|
+
Usage: c 100 A; # print 100 A's'
|
53
|
+
|
54
|
+
|
55
|
+
=== crc32
|
56
|
+
|
57
|
+
Generates a crc32 checksum for data provided via stdin or file
|
58
|
+
|
59
|
+
Usage: crc32 [options]
|
60
|
+
-h, --help Show this message
|
61
|
+
-v, --version Show version and exit
|
62
|
+
-f, --file FILENAME Input from FILENAME
|
63
|
+
-r, --range=START[:END] Start and optional end range
|
64
|
+
-x, --hexrange=START[:END] same, but in hex
|
65
|
+
|
66
|
+
|
67
|
+
=== d64
|
68
|
+
|
69
|
+
Base64 decode an encoded chunk supplied via argument, file, or standard input.
|
70
|
+
|
71
|
+
Usage: d64 [options] <data | blank for stdin>
|
72
|
+
-h, --help Show this message
|
73
|
+
-v, --version Show version and exit
|
74
|
+
-f, --file FILENAME Input from FILENAME
|
75
|
+
|
76
|
+
|
77
|
+
=== dedump
|
78
|
+
|
79
|
+
Reverses a hexdump back to raw data. Designed to work with hexdumps created
|
80
|
+
by Unix utilities like 'xxd' as well as 'hexdump -C'.
|
81
|
+
|
82
|
+
Usage: dedump [options] <input-file | blank for stdin>
|
83
|
+
-h, --help Show this message
|
84
|
+
-v, --version Show version and exit
|
85
|
+
-l, --length LEN Bytes per line in hexdump (default: 16)
|
86
|
+
|
87
|
+
|
88
|
+
=== hexify
|
89
|
+
|
90
|
+
Converts a string or raw data to hex characters. Input can be supplied via
|
91
|
+
stdin, a string argument, or a file (with -f).
|
92
|
+
|
93
|
+
Usage: hexify [options] <data | blank for stdin>
|
94
|
+
-h, --help Show this message
|
95
|
+
-v, --version Show version and exit
|
96
|
+
-f, --file FILENAME Input from FILENAME
|
97
|
+
-l, --length LEN Hexify in lines of LEN bytes
|
98
|
+
-d, --delim=DELIMITER DELIMITER between each byte
|
99
|
+
-p, --prefix=PREFIX PREFIX before each byte
|
100
|
+
-s, --suffix=SUFFIX SUFFIX after each byte
|
101
|
+
|
102
|
+
|
103
|
+
=== len
|
104
|
+
|
105
|
+
Takes input from a blob of data and output it with its binary length prepended.
|
106
|
+
|
107
|
+
Usage: len [options] <data | blank for stdin>
|
108
|
+
-h, --help Show this message
|
109
|
+
-v, --version Show version and exit
|
110
|
+
-f, --file FILENAME Input from FILENAME
|
111
|
+
-n, --nudge INT Add integer to length
|
112
|
+
-s, --size=SIZE Size of length field in bytes
|
113
|
+
-x, --[no-]swap Swap endianness. Default=big
|
114
|
+
-t, --[no-]total Include size word in size
|
115
|
+
-l, --length=LEN Ignore all else and use LEN
|
116
|
+
|
117
|
+
|
118
|
+
=== rex
|
119
|
+
|
120
|
+
Lazy shortcut for ruby -e "..."
|
121
|
+
|
122
|
+
All commandline arguments get smeared into a ruby statement via 'eval()'.
|
123
|
+
|
124
|
+
|
125
|
+
=== rstrings
|
126
|
+
|
127
|
+
A utility much like Unix 'strings' -- implemented in ruby.
|
128
|
+
|
129
|
+
Usage: rstrings [options] <file | blank for stdin>
|
130
|
+
-h, --help Show this message
|
131
|
+
-v, --version Show version and exit
|
132
|
+
-s, --start=OFFSET Start at offset
|
133
|
+
-e, --end=OFFSET End at offset
|
134
|
+
-t, --encoding-type=TYPE Encoding: ascii/unicode/both (default=both)
|
135
|
+
-l, --min-length=NUM Minimum length of strings (default=6)
|
136
|
+
-a, --align=ALIGNMENT Match only on alignment (default=none)
|
137
|
+
|
138
|
+
|
139
|
+
=== slice
|
140
|
+
|
141
|
+
Returns a slice from input. Just a shell interface to a string slice operation.
|
142
|
+
|
143
|
+
Usage: slice [options] start (no args when using -r|-x)
|
144
|
+
-h, --help Show this message
|
145
|
+
-v, --version Show version and exit
|
146
|
+
-f, --file FILENAME Input from FILENAME
|
147
|
+
-r, --range=START[:END] Start and optional end range
|
148
|
+
-x, --hexrange=START[:END] same, but in hex
|
149
|
+
|
150
|
+
|
151
|
+
=== telson
|
152
|
+
|
153
|
+
This is an implementation of the original blackbag "telson" using ruby and
|
154
|
+
eventmachine.
|
155
|
+
|
156
|
+
Telson is for doing the following things with minimum fuss:
|
157
|
+
|
158
|
+
* Run as a server or client using UDP or TCP
|
159
|
+
* Debugging network protocols
|
160
|
+
* Observe client/server behaviors using different messages at various phases
|
161
|
+
of a conversation.
|
162
|
+
|
163
|
+
Usage: telson [options] host:port
|
164
|
+
-h, --help Show this message
|
165
|
+
-v, --version Show version and exit
|
166
|
+
-u, --udp UDP mode
|
167
|
+
-b, --blit=ADDR:PORT Where to listen for blit
|
168
|
+
-o, --output=FILE Output to file instead of screen
|
169
|
+
-q, --quiet Turn off verbose logging
|
170
|
+
-r, --reconnect Attempt to reconnect endlessly.
|
171
|
+
-s, --source=(ADDR:?)PORT Bind on port (and addr?)
|
172
|
+
|
173
|
+
|
174
|
+
=== unhexify
|
175
|
+
|
176
|
+
unhexify converts a string of hex bytes back to raw data. Input can be
|
177
|
+
supplied via stdin, a hex-string argument, or a file containing hex (use -f).
|
178
|
+
|
179
|
+
Usage: unhexify [options] <data | blank for stdin>
|
180
|
+
-h, --help Show this message
|
181
|
+
-v, --version Show version and exit
|
182
|
+
-f, --file FILENAME Input from FILENAME
|
183
|
+
-d, --delim DELIMITER DELIMITER regex between hex chunks
|
184
|
+
|
185
|
+
|
186
|
+
=== urldec
|
187
|
+
|
188
|
+
Decodes a url percent-encoded string.
|
189
|
+
Input from stdin, file, or command-line argument.
|
190
|
+
|
191
|
+
Usage: urldec [options] <data | blank for stdin>
|
192
|
+
-h, --help Show this message
|
193
|
+
-v, --version Show version and exit
|
194
|
+
-f, --file FILENAME Input from FILENAME
|
195
|
+
-p, --[no-]plus Convert '+' to space (default is true)
|
196
|
+
|
197
|
+
|
198
|
+
=== urlenc
|
199
|
+
|
200
|
+
Encodes data as a url percent-encoded string.
|
201
|
+
Input from stdin, file, or command-line argument.
|
202
|
+
|
203
|
+
Usage: urlenc [options] <data | blank for stdin>
|
204
|
+
-h, --help Show this message
|
205
|
+
-v, --version Show version and exit
|
206
|
+
-f, --file FILENAME Input from FILENAME
|
207
|
+
-p, --[no-]plus Convert spaces to '+' (default is false)
|
208
|
+
|
209
|
+
|
210
|
+
=== xor
|
211
|
+
|
212
|
+
Repeating string xor. Takes input and XOR's it against a string.
|
213
|
+
String can be provided in hex.
|
214
|
+
|
215
|
+
Usage: xor [options] -k|-s <key> <data | stdin>
|
216
|
+
-h, --help Show this message
|
217
|
+
-v, --version Show version and exit
|
218
|
+
-f, --file FILENAME Input from FILENAME
|
219
|
+
|
220
|
+
Key options (one of the following is required):
|
221
|
+
-s, --strkey STRING xor against bare STRING
|
222
|
+
-x, --hexkey HEXSTR xor against decoded HEXSTR
|
223
|
+
|
224
|
+
|
metadata
ADDED
@@ -0,0 +1,109 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: emonti-rbkb
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.6.1.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Eric Monti
|
8
|
+
autorequire: rbkb
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2009-02-13 00:00:00 -08:00
|
13
|
+
default_executable:
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: eventmachine
|
17
|
+
type: :runtime
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 0.12.2
|
24
|
+
version:
|
25
|
+
description:
|
26
|
+
email: emonti@matasano.com
|
27
|
+
executables:
|
28
|
+
- b64
|
29
|
+
- bgrep
|
30
|
+
- blit
|
31
|
+
- c
|
32
|
+
- crc32
|
33
|
+
- d64
|
34
|
+
- dedump
|
35
|
+
- hexify
|
36
|
+
- len
|
37
|
+
- rex
|
38
|
+
- rstrings
|
39
|
+
- slice
|
40
|
+
- telson
|
41
|
+
- unhexify
|
42
|
+
- urldec
|
43
|
+
- urlenc
|
44
|
+
- xor
|
45
|
+
extensions: []
|
46
|
+
|
47
|
+
extra_rdoc_files: []
|
48
|
+
|
49
|
+
files:
|
50
|
+
- README.rdoc
|
51
|
+
- usage.txt
|
52
|
+
- bin/b64
|
53
|
+
- bin/bgrep
|
54
|
+
- bin/blit
|
55
|
+
- bin/c
|
56
|
+
- bin/crc32
|
57
|
+
- bin/d64
|
58
|
+
- bin/dedump
|
59
|
+
- bin/hexify
|
60
|
+
- bin/len
|
61
|
+
- bin/rex
|
62
|
+
- bin/rstrings
|
63
|
+
- bin/slice
|
64
|
+
- bin/telson
|
65
|
+
- bin/unhexify
|
66
|
+
- bin/urldec
|
67
|
+
- bin/urlenc
|
68
|
+
- bin/xor
|
69
|
+
- lib/rbkb.rb
|
70
|
+
- lib/rbkb/command_line.rb
|
71
|
+
- lib/rbkb/extends.rb
|
72
|
+
- lib/rbkb/plug.rb
|
73
|
+
- lib/rbkb/plug/blit.rb
|
74
|
+
- lib/rbkb/plug/peer.rb
|
75
|
+
- lib/rbkb/plug/plug.rb
|
76
|
+
has_rdoc: true
|
77
|
+
homepage: http://www.matasano.com
|
78
|
+
post_install_message:
|
79
|
+
rdoc_options:
|
80
|
+
- --title
|
81
|
+
- rbkb -- Ruby Black-Bag
|
82
|
+
- --main
|
83
|
+
- README.rdoc
|
84
|
+
- --line-numbers
|
85
|
+
- README.rdoc
|
86
|
+
- usage.txt
|
87
|
+
require_paths:
|
88
|
+
- lib
|
89
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
90
|
+
requirements:
|
91
|
+
- - ">="
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: "0"
|
94
|
+
version:
|
95
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
96
|
+
requirements:
|
97
|
+
- - ">="
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
version: "0"
|
100
|
+
version:
|
101
|
+
requirements: []
|
102
|
+
|
103
|
+
rubyforge_project:
|
104
|
+
rubygems_version: 1.2.0
|
105
|
+
signing_key:
|
106
|
+
specification_version: 2
|
107
|
+
summary: Ruby Black-Bag
|
108
|
+
test_files: []
|
109
|
+
|