Fork me on GitHub

Ruby BlackBag (rbkb) by emonti

A miscellaneous collection of command-line tools and ruby library helpers related to pen-testing and reversing.
Black Bag

Rationale

      Disclaimer:
      Most of what's in the black bag was born of a desire to do less typing.
      But there might be a few clever things that were added by accident.
    

rbkb is inspired by Matasano BlackBag (a set of similar tools written in C).

See: blackbag

Things go into the black bag as they are stolen (as a compliment!) or dreamed up, usually for simplifying some repetetive task or a desire for a new tool.

Along the way, some of tools in the blackbag spirit make their way into ‘rbkb’ that may or may not make it to ‘bkb’ right away (if ever). Similarly some of the things in ‘bkb’ have not yet made it to ‘rbkb’ (and may not).

Synopsis

Command Line Tools

The tools almost all support ’-h’, but I’ll admit this only goes so far. See cli_usage.rdoc for usage and a bit of extra info on the various tools.

When I get some spare time, I’ll try and do up some examples of using all the tools.

Plug

Black Bag includes several tools for testing network protocols using plugboard proxies. Users of the original Matasano BlackBag may be familiar with the commands ‘bkb replug’, ‘bkb telson’, and ‘bkb blit’.

Ruby BlackBag has a similar set of network tools:

Monkey Patches

Much of rbkb is implemented as a bunch of monkeypatches to Array, String, Numeric and other base classes. If this suits your fancy (some people despise monkeypatches, this is not their fancy) then you can ‘require "rbkb"’ from your irb sessions and own scripts. See lib_usage.rdoc for more info.

Documentation

See the rdoc API documentation

Dependencies

Install

Gem Installation

      gem install rbkb --source http://gemcutter.org
  

See below for download and manual build info.

Download

You can download this project in either zip or tar formats.

You can also clone the project with Git by running:

$ git clone git://github.com/emonti/rbkb

get the source code on GitHub : emonti/rbkb

Manual Installation

To generate the gem locally do:

    cd rbkb
    rake gem:install
  

or ... you can install manually without rubygems:

    cd rbkb
    cp -r rbkb/lib/* /usr/lib/ruby/1.8/site_ruby/1.8 # or another ruby libdir
    cp bin/* ~/bin      # or wherever else in your PATH
  

Run this to generate docs with rdoc the same way the gem would have:

    rdoc --main README.rdoc README.rdoc lib
  

License

(The MIT License)

  Copyright (c) 2009 Eric Monti, Matasano Security

  Permission is hereby granted, free of charge, to any person obtaining
  a copy of this software and associated documentation files (the
  'Software'), to deal in the Software without restriction, including
  without limitation the rights to use, copy, modify, merge, publish,
  distribute, sublicense, and/or sell copies of the Software, and to
  permit persons to whom the Software is furnished to do so, subject to
  the following conditions:

  The above copyright notice and this permission notice shall be
  included in all copies or substantial portions of the Software.

  THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
  CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
  TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
  SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  

Author

Eric Monti (emonti@matasano.com)