emonti-rbkb 0.6.1.1
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
+
|