Skip to content

Commit 3e898b2

Browse files
committed
Merge branch 'rapid7' into kernelsmith-console-alias-plugin
2 parents eed8d7c + 11d04ad commit 3e898b2

File tree

2,359 files changed

+42032
-65588
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,359 files changed

+42032
-65588
lines changed

.gitignore

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,23 @@
1+
# Rubymine project directory
2+
.idea
3+
# RVM control file
4+
.rvmrc
5+
# YARD cache directory
6+
.yardoc
7+
# Mac OS X files
8+
.DS_Store
9+
# simplecov coverage data
10+
coverage
111
data/meterpreter/ext_server_pivot.dll
212
data/meterpreter/ext_server_pivot.x64.dll
13+
doc
314
external/source/meterpreter/java/bin
415
external/source/meterpreter/java/build
516
external/source/meterpreter/java/extensions
617
external/source/javapayload/bin
718
external/source/javapayload/build
19+
# Packaging directory
20+
pkg
821
tags
922
*.swp
1023
*.orig

.rspec

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
--color
2+
--format documentation

.travis.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
language: ruby
2+
rvm:
3+
- '1.8.7'
4+
- '1.9.3'
5+
6+
matrix:
7+
allow_failures:
8+
- rvm: '1.8.7'
9+
10+
notifications:
11+
irc: "irc.freenode.org#msfnotify"
12+

CONTRIBUTING.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Contributing to Metasploit
2+
3+
## Reporting Bugs
4+
5+
If you would like to report a bug, please take a look at [our Redmine
6+
issue
7+
tracker](https://dev.metasploit.com/redmine/projects/framework/issues?query_id=420)
8+
-- your bug may already have been reported there! Simply [searching](https://dev.metasploit.com/redmine/projects/framework/search) for some appropriate keywords may save everyone a lot of hassle.
9+
10+
If your bug is new and you'd like to report it you will need to
11+
[register
12+
first](https://dev.metasploit.com/redmine/account/register). Don't
13+
worry, it's easy and fun and takes about 30 seconds.
14+
15+
## Contributing Metasploit Modules
16+
17+
If you have an exploit that you'd like to contribute to the Metasploit
18+
Framework, please familiarize yourself with the
19+
**[HACKING](https://github.com/rapid7/metasploit-framework/blob/master/HACKING)**
20+
document in the
21+
Metasploit-Framework repository. There are many mysteries revealed in
22+
HACKING concerning code style and content.
23+
24+
[Pull requests](https://github.com/rapid7/metasploit-framework/pulls)
25+
should corellate with modules at a 1:1 ratio
26+
-- there is rarely a good reason to have two, three, or ten modules on
27+
one pull request, as this dramatically increases the review time
28+
required to land (commit) any of those modules.
29+
30+
Pull requests tend to be very collaborative for Metasploit -- do not be
31+
surprised if your pull request to rapid7/metasploit-framework triggers a
32+
pull request back to your own fork. In this way, we can isolate working
33+
changes before landing your PR to the Metasploit master branch.

Gemfile

Lines changed: 29 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,30 @@
11
source 'http://rubygems.org'
2-
gem 'rails', '3.2.2'
3-
gem 'metasploit_data_models', '0.0.2', :git => "git://github.com/rapid7/metasploit_data_models.git"
4-
gem 'pg', '>=0.13'
5-
gem 'msgpack'
6-
gem 'nokogiri'
2+
3+
# Need 3+ for ActiveSupport::Concern
4+
gem 'activesupport', '>= 3.0.0'
5+
# Needed for Msf::DbManager
6+
gem 'activerecord'
7+
# Database models shared between framework and Pro.
8+
gem 'metasploit_data_models', :git => 'git://github.com/rapid7/metasploit_data_models.git', :tag => '0.3.0'
9+
# Needed for module caching in Mdm::ModuleDetails
10+
gem 'pg', '>= 0.11'
11+
12+
group :development do
13+
# Markdown formatting for yard
14+
gem 'redcarpet'
15+
# generating documentation
16+
gem 'yard'
17+
end
18+
19+
group :development, :test do
20+
# running documentation generation tasks and rspec tasks
21+
gem 'rake'
22+
end
23+
24+
group :test do
25+
# testing framework
26+
gem 'rspec'
27+
# code coverage for tests
28+
# any version newer than 0.5.4 gives an Encoding error when trying to read the source files.
29+
gem 'simplecov', '0.5.4', :require => false
30+
end

Gemfile.lock

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
GIT
2+
remote: git://github.com/rapid7/metasploit_data_models.git
3+
revision: 73f26789500f278dd6fd555e839d09a3b81a05f4
4+
tag: 0.3.0
5+
specs:
6+
metasploit_data_models (0.3.0)
7+
activerecord
8+
activesupport
9+
pg
10+
pry
11+
12+
GEM
13+
remote: http://rubygems.org/
14+
specs:
15+
activemodel (3.2.8)
16+
activesupport (= 3.2.8)
17+
builder (~> 3.0.0)
18+
activerecord (3.2.8)
19+
activemodel (= 3.2.8)
20+
activesupport (= 3.2.8)
21+
arel (~> 3.0.2)
22+
tzinfo (~> 0.3.29)
23+
activesupport (3.2.8)
24+
i18n (~> 0.6)
25+
multi_json (~> 1.0)
26+
arel (3.0.2)
27+
builder (3.0.3)
28+
coderay (1.0.8)
29+
diff-lcs (1.1.3)
30+
i18n (0.6.1)
31+
method_source (0.8.1)
32+
multi_json (1.3.6)
33+
pg (0.14.1)
34+
pry (0.9.10)
35+
coderay (~> 1.0.5)
36+
method_source (~> 0.8)
37+
slop (~> 3.3.1)
38+
rake (0.9.2.2)
39+
redcarpet (2.1.1)
40+
rspec (2.11.0)
41+
rspec-core (~> 2.11.0)
42+
rspec-expectations (~> 2.11.0)
43+
rspec-mocks (~> 2.11.0)
44+
rspec-core (2.11.1)
45+
rspec-expectations (2.11.3)
46+
diff-lcs (~> 1.1.3)
47+
rspec-mocks (2.11.3)
48+
simplecov (0.5.4)
49+
multi_json (~> 1.0.3)
50+
simplecov-html (~> 0.5.3)
51+
simplecov-html (0.5.3)
52+
slop (3.3.3)
53+
tzinfo (0.3.33)
54+
yard (0.8.2.1)
55+
56+
PLATFORMS
57+
ruby
58+
59+
DEPENDENCIES
60+
activerecord
61+
activesupport (>= 3.0.0)
62+
metasploit_data_models!
63+
pg (>= 0.11)
64+
rake
65+
redcarpet
66+
rspec
67+
simplecov (= 0.5.4)
68+
yard

HACKING

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ puts.
3434
2. Don't read from standard input, doing so will make your code
3535
lock up the entire module when called from other interfaces. If you
3636
need user input, you can either register an option or expose an
37-
interactve session type specific for the type of exploit.
37+
interactive session type specific for the type of exploit.
3838

3939
3. Don't use "sleep". It has been known to cause issues with
4040
multi-threaded programs on various platforms. Instead, we use
@@ -48,7 +48,7 @@ the creation of ruby sockets and won't know how to clean them up in
4848
case your module raises an exception without cleaning up after itself.
4949
Secondly, non-Rex sockets do not know about routes and therefore can't
5050
be used through a meterpreter tunnel. Lastly, regular sockets miss
51-
out on msf's proxy and ssl features. Msf includes many protocols
51+
out on msf's proxy and SSL features. Msf includes many protocols
5252
already implemented with Rex and if the protocol you need is missing,
5353
porting another library to use them is straight-forward. See our
5454
Net::SSH modifications in lib/net/ssh/ for an example.
@@ -121,8 +121,8 @@ development team. Note that this process requires a GitHub account.
121121

122122
For Git commits, please adhere to 50/72 formatting: your commits should
123123
start with a line 50 characters or less, followed by a blank line,
124-
followed by one or more lines of explanitory text wrapped at at 72
125-
characters Pull requests with commits not formmated this way will
124+
followed by one or more lines of explanatory text wrapped at at 72
125+
characters Pull requests with commits not formatted this way will
126126
be rejected without review.
127127

128128
For modules, note that Author field is not automatic, and should be

README.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11

2-
Metasploit
2+
Metasploit [![Build Status](https://travis-ci.org/rapid7/metasploit-framework.png)](https://travis-ci.org/rapid7/metasploit-framework) [![Code Climate](https://codeclimate.com/badge.png)](https://codeclimate.com/github/rapid7/metasploit-framework)
33
==
44
The Metasploit Framework is released under a BSD-style license. See
55
COPYING for more details.
@@ -40,10 +40,11 @@ reading some of the great tutorials online:
4040

4141
Contributing
4242
--
43-
See the [Dev Environment Setup][wiki-devenv] guide on github which will
43+
See the [Dev Environment Setup][wiki-devenv] guide on GitHub which will
4444
walk you through the whole process starting from installing all the
4545
dependencies, to cloning the repository, and finally to submitting a
46-
pull request.
46+
pull request. For slightly more info, see
47+
[Contributing](https://github.com/rapid7/metasploit-framework/blob/master/CONTRIBUTING.md).
4748

4849

4950
[wiki-devenv]: https://github.com/rapid7/metasploit-framework/wiki/Metasploit-Development-Environment "Metasploit Development Environment Setup"

Rakefile

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
require 'bundler/setup'
2+
3+
require 'rspec/core/rake_task'
4+
require 'yard'
5+
6+
RSpec::Core::RakeTask.new(:spec)
7+
8+
task :default => :spec
9+
10+
namespace :yard do
11+
yard_files = [
12+
# Ruby source files first
13+
'lib/msf/**/*.rb',
14+
'lib/rex/**/*.rb',
15+
# Anything after '-' is a normal documentation, not source
16+
'-',
17+
'COPYING',
18+
'HACKING',
19+
'THIRD-PARTY.md'
20+
]
21+
yard_options = [
22+
# include documentation for protected methods for developers extending the code.
23+
'--protected'
24+
]
25+
26+
YARD::Rake::YardocTask.new(:doc) do |t|
27+
t.files = yard_files
28+
# --no-stats here as 'stats' task called after will print fuller stats
29+
t.options = yard_options + ['--no-stats']
30+
31+
t.after = Proc.new {
32+
Rake::Task['yard:stats'].execute
33+
}
34+
end
35+
36+
desc "Shows stats for YARD Documentation including listing undocumented modules, classes, constants, and methods"
37+
task :stats => :environment do
38+
stats = YARD::CLI::Stats.new
39+
yard_arguments = yard_options + ['--compact', '--list-undoc'] + yard_files
40+
stats.run(*yard_arguments)
41+
end
42+
end
43+
44+
# @todo Figure out how to just clone description from yard:doc
45+
desc "Generate YARD documentation"
46+
# allow calling namespace to as a task that goes to default task for namespace
47+
task :yard => ['yard:doc']

data/armitage/armitage.jar

2.58 KB
Binary file not shown.

0 commit comments

Comments
 (0)