mirror of
https://github.com/pentoo/pentoo-overlay
synced 2026-05-09 04:51:27 +02:00
metasploit: drop old
This commit is contained in:
parent
4ae39fdf06
commit
9bf725c594
2 changed files with 0 additions and 291 deletions
|
|
@ -11,8 +11,6 @@ AUX msfrpcd-4.4-conf 598 SHA256 3ad3e837061fd2b8b28d5afede50fc1965b0df083a8e4b74
|
|||
AUX msfrpcd-4.4-initd 638 SHA256 4e3f18ab619a0067c7ac9a9f13d6824496cb36adf20c216bb96ad365b1ef2725 SHA512 21faadd62a90deaecb617cb106a471de39147e1702f149c1d356ae18f188bf3102bb9e9642122afa2d9c49325bd4cba6f04acaa8f5be2ca238adeb56c9c81821 WHIRLPOOL 8069bec85919e26faf838b8965153425adbd5c46c004ddb0a94c7e6d2b63aeaa30479592b556f2939c90c216d63103931967c36a21b3d9eaa2763d0120c9ba09
|
||||
AUX msfweb.confd 273 SHA256 006040ecd27dc0279c2bea6d69365fe1f0d66f507c039ae43720662abe9f4460 SHA512 58481d69f99bec1644188ecb5f67249c3c85c12ae65d46643c3daf42b5221f8d1b025ea318ed6d11557cbc16e50acc5eaabb99162d538518265755ebcdb042ab WHIRLPOOL 1cbb5a5ff20eb90f7db6f5523bf8834cfd5aa2c98e378408e418f388993af661273257112db2ebcd950bfa9243e9f19ba4a5262fd2bccc7cc6276658f86115bb
|
||||
AUX msfweb.initd 533 SHA256 4fd9668e4b467ecfa5160e2c108ac8ace71fbeaefaf829d2f7bfb566d44bb13c SHA512 ec8eb9c09191d273417174c23d2fb1a3d27939a74b010fa33ca696bcce88e9c81d6cc1e6ebff90ea97cb6d730776364de4560db1bed10516ba4a7030e7233a53 WHIRLPOOL dec6ca3cf45ac4e6cea35266df1342b4dcdb3f813dc90820603f23e9d62ee67a9633de17d747cc12d7cb9c982e8868559896c2f8c42540a5005f485045d9730a
|
||||
DIST metasploit-4.11.0.tar.gz 36105268 SHA256 54817f7ed648818492f866db821dce7177adab8d1163e1d59e76695362720c55 SHA512 9462c2727a26fdfa5e626bb8bbf49229df7c736303d887c15f4dc6870d731fe4e6431a1bc2855b5f42f2f8bee5283d8559169bd2b7e8f18b86c0ff4d07f31889 WHIRLPOOL e978d6dad2a696b3b0ecd0943251493f1209d4d1d7fc23e07941bd5929cab579152c454f2afa1a7eef3c595254a68045e17c0ae3756cf2f91d3ccf5eec0169d5
|
||||
DIST metasploit-4.11.1_p2015042001.tar.gz 35968304 SHA256 51b5926641211571efb6336ca059cd7eef09dcc9022975fe368bf3a801506fc5 SHA512 cf5a79896a9a326fa21bc35fed9c62e5b13e096efd8ed3530f744a02c7463f6f0af41afbae1b4ac50b9c545a8e9e9e3a0ccb7adc9f73089e79568664457f0c75 WHIRLPOOL 3510265d443da207033f17d43a28a9830ad7d05d9423a61cf90bbdc60594e7bdf4e99ff0e5dd4b599525e6d3dde0fbaea8e0735be4245dffc0aa09fd96d4ffe6
|
||||
EBUILD metasploit-4.11.0-r2.ebuild 11011 SHA256 6fc2ba9bb363854299d6aece62aac9be8c2c95df56a0b646beacdb78e23b6707 SHA512 b7b76eeb06ca004d00c617f1bf7504bf1caed200520730726dc066d76209b462569e896ff84a9192ece3bccd72473553f0c8cc702df5b41b981364f42cd1024e WHIRLPOOL a7ee3e3d94589fa7dc453ba8a5edec94c720d8f5f5310558f69e0b7951dcddaabe7b359ac3470863523af5615fc19f7274746f80de4e0b477bb72b76cd49564a
|
||||
EBUILD metasploit-4.11.1_p2015042001.ebuild 11248 SHA256 b957f65dd652522e00973bed629e2dfd8fc1ec9ca5a8037172adf5a827ea2c12 SHA512 0bf272b8f88e7544af02fd2288132787aa7b0cf9e447837f34f856c118378f519f1607aae642932a606c8b615c1559a201dc008e60fd762401231c89ad5edeec WHIRLPOOL ec090ef5d633b7b38e46998c0d05753480f8b6f0ea16af11e7b071816384375e09c5c810f269e2ad55efd8f3e97e449b4e5e5809e68c5b9d17927b6f0e5f6293
|
||||
EBUILD metasploit-9999.ebuild 11232 SHA256 fd837bca7448cca963ff15a9e8f08b6e2d62a0193e9696bf51fdcfdf9068fd9d SHA512 e6f925661a55d9a99b19dbf92147ffff6aa6a4d313f6f5d35a279b810ba3153f54789d49a2342f68a09562311657db2125904c79d99cbf37dfdd7ff2cc9cf9bf WHIRLPOOL 7d8802bf4060336ea80b563653fa342bdd66868384440d618f98284ec73da8837cc45412de8667c378d564ec09b1415e46abfa3c14186296fabb06fb884b6da0
|
||||
|
|
|
|||
|
|
@ -1,289 +0,0 @@
|
|||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/net-analyzer/metasploit/metasploit-9999.ebuild,v 1.32 2014/07/17 19:28:14 zerochaos Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
#never ever ever have more than one ruby in here
|
||||
USE_RUBY="ruby21"
|
||||
inherit eutils ruby-ng
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/rapid7/metasploit-framework.git"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}"/all
|
||||
inherit git-r3
|
||||
KEYWORDS=""
|
||||
SLOT="9999"
|
||||
else
|
||||
#https://github.com/rapid7/metasploit-framework/wiki/Downloads-by-Version
|
||||
# SRC_URI="http://downloads.metasploit.com/data/releases/archive/framework-${PV}.tar.bz2"
|
||||
SRC_URI="https://github.com/rapid7/metasploit-framework/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm ~x86"
|
||||
# S="${WORKDIR}"/msf3
|
||||
RUBY_S="${PN}-framework-${PV}"
|
||||
inherit versionator
|
||||
SLOT="$(get_version_component_range 1).$(get_version_component_range 2)"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Advanced open-source framework for developing, testing, and using vulnerability exploit code"
|
||||
HOMEPAGE="http://www.metasploit.org/"
|
||||
LICENSE="BSD"
|
||||
IUSE="development +java oracle +pcap test"
|
||||
|
||||
#multiple known bugs with tests reported upstream and ignored
|
||||
#http://dev.metasploit.com/redmine/issues/8418 - worked around (fix user creation when possible)
|
||||
RESTRICT="test"
|
||||
|
||||
RUBY_COMMON_DEPEND="virtual/ruby-ssl
|
||||
dev-ruby/activesupport:3.2
|
||||
dev-ruby/activerecord:3.2
|
||||
dev-ruby/bcrypt-ruby
|
||||
dev-ruby/builder:3
|
||||
dev-ruby/bundler
|
||||
=dev-ruby/jsobfu-0.2*
|
||||
dev-ruby/json
|
||||
dev-ruby/kissfft
|
||||
>=dev-ruby/metasploit_data_models-0.21.3:0.21
|
||||
dev-ruby/meterpreter_bins:0.0.12
|
||||
>=dev-ruby/metasploit-credential-0.13.8:0.13
|
||||
<=dev-ruby/metasploit-credential-0.13.11:0.13
|
||||
dev-ruby/msgpack
|
||||
dev-ruby/nokogiri
|
||||
=dev-ruby/recog-1*
|
||||
=dev-ruby/rkelly-remix-0.0.6
|
||||
dev-ruby/sqlite3
|
||||
>=dev-ruby/pg-0.11
|
||||
=dev-ruby/packetfu-1.1.9
|
||||
dev-ruby/rubyzip
|
||||
dev-ruby/rb-readline
|
||||
dev-ruby/robots
|
||||
java? ( dev-ruby/rjb )
|
||||
oracle? ( dev-ruby/ruby-oci8 )
|
||||
pcap? ( dev-ruby/pcaprub
|
||||
dev-ruby/network_interface )
|
||||
development? ( dev-ruby/fivemat
|
||||
dev-ruby/pry
|
||||
dev-ruby/redcarpet
|
||||
dev-ruby/yard
|
||||
>=dev-ruby/rake-10.0.0
|
||||
>=dev-ruby/factory_girl-4.1.0 )"
|
||||
#lorcon doesn't support ruby21
|
||||
#lorcon? ( net-wireless/lorcon[ruby] )
|
||||
ruby_add_bdepend "${RUBY_COMMON_DEPEND}
|
||||
test? ( >=dev-ruby/factory_girl-4.1.0
|
||||
dev-ruby/fivemat
|
||||
dev-ruby/database_cleaner
|
||||
>=dev-ruby/rspec-2.12
|
||||
dev-ruby/shoulda-matchers
|
||||
dev-ruby/timecop
|
||||
>=dev-ruby/rake-10.0.0 )"
|
||||
ruby_add_rdepend "${RUBY_COMMON_DEPEND}"
|
||||
|
||||
COMMON_DEPEND="dev-db/postgresql[server]
|
||||
>=app-crypt/johntheripper-1.7.9-r1[-minimal]
|
||||
net-analyzer/nmap"
|
||||
RDEPEND+=" ${COMMON_DEPEND}
|
||||
>=app-eselect/eselect-metasploit-0.14"
|
||||
|
||||
RESTRICT="strip"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/templates/template_x86_linux.bin
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/templates/template_armle_linux.bin
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/templates/template_x86_solaris.bin
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/templates/template_x64_linux.bin
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/templates/template_x64_linux_dll.bin
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/templates/template_x86_bsd.bin
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/templates/template_mipsbe_linux.bin
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/templates/template_mipsle_linux.bin
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/meterpreter/msflinker_linux_x86.bin
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/meterpreter/ext_server_sniffer.lso
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/meterpreter/ext_server_networkpug.lso
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/meterpreter/ext_server_stdapi.lso
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/exploits/CVE-2013-2171.bin
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/android/libs/x86/libndkstager.so
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/android/libs/mips/libndkstager.so
|
||||
usr/$(get_libdir)/${PN}${SLOT}/data/android/libs/armeabi/libndkstager.so
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
if use test; then
|
||||
su postgres -c "dropdb msf_test_database" #this is intentionally allowed to fail
|
||||
su postgres -c "createuser msf_test_user -d -S -R"
|
||||
if [ $? -ne 0 ]; then
|
||||
su postgres -c "dropuser msf_test_user" || die
|
||||
su postgres -c "createuser msf_test_user -d -S -R" || die
|
||||
fi
|
||||
su postgres -c "createdb --owner=msf_test_user msf_test_database" || die
|
||||
fi
|
||||
ruby-ng_pkg_setup
|
||||
}
|
||||
|
||||
all_ruby_unpack() {
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
git-r3_src_unpack
|
||||
else
|
||||
default_src_unpack
|
||||
# mv "${WORKDIR}"/all/msf3/* "${WORKDIR}"/all
|
||||
# rm -r msf3
|
||||
fi
|
||||
}
|
||||
|
||||
all_ruby_prepare() {
|
||||
# add psexec patch from pull request 2657 to allow custom exe templates from any files, bypassing most AVs
|
||||
#epatch "${FILESDIR}/agix_psexec_pull-2657.patch"
|
||||
epatch_user
|
||||
|
||||
#unbundle johntheripper, at least it now defaults to running the system version
|
||||
rm -r data/john/run.*
|
||||
rm -r data/john/src.tar.bz2
|
||||
#remove random "cpuinfo" binaries which a only needed to detect which bundled john to run
|
||||
rm -r data/cpuinfo
|
||||
|
||||
#remove random oudated collected garbage
|
||||
rm -r external
|
||||
|
||||
#remove unneeded ruby bundler versioning files
|
||||
#Gemfile.lock contains the versions tested by the msf team but not the hard requirements
|
||||
#we regen this file in each_ruby_prepare
|
||||
rm Gemfile.lock
|
||||
#The Gemfile contains real known deps
|
||||
#add our dep on upstream rb-readline instead of bundled one
|
||||
#and then they broke it...
|
||||
#sed -i "/gem 'packetfu'/a #use upstream readline instead of bundled\ngem 'rb-readline'" Gemfile || die
|
||||
sed -i "/gem 'fivemat'/s/, '1.2.1'//" Gemfile || die
|
||||
#remove the bundled readline
|
||||
#https://github.com/rapid7/metasploit-framework/pull/3105
|
||||
#this PR was closed due to numerous changes to their local fork, almost entirely for non-linux
|
||||
#but now we have to go back to bundled readline because otherwise it's broken
|
||||
#rm lib/rbreadline.rb
|
||||
#now we edit the Gemfile based on use flags
|
||||
#even if we pass --without=blah bundler still calculates the deps and messes us up
|
||||
if ! use pcap; then
|
||||
sed -i -e "/^group :pcap do/,/^end$/d" Gemfile || die
|
||||
fi
|
||||
if ! use development; then
|
||||
sed -i -e "/^group :development do/,/^end$/d" Gemfile || die
|
||||
fi
|
||||
if ! use test; then
|
||||
sed -i -e "/^group :test/,/^end$/d" Gemfile || die
|
||||
fi
|
||||
if ! use test && ! use development; then
|
||||
sed -i -e "/^group :development/,/^end$/d" Gemfile || die
|
||||
fi
|
||||
#We don't need simplecov
|
||||
sed -i -e "s#gem 'simplecov', '0.5.4', :require => false##" Gemfile || die
|
||||
sed -i -e "s#require 'simplecov'##" spec/spec_helper.rb || die
|
||||
|
||||
#we need to edit the gemspec too, since it tries to call git instead of anything sane
|
||||
#probably a better way to fix this... if I care at some point
|
||||
sed -i -e "/^ spec.files/,/^ }/d" metasploit-framework.gemspec || die
|
||||
|
||||
#let's bogart msfupdate
|
||||
rm msfupdate
|
||||
echo "#!/bin/sh" > msfupdate
|
||||
echo "echo \"[*]\"" >> msfupdate
|
||||
echo "echo \"[*] Attempting to update the Metasploit Framework...\"" >> msfupdate
|
||||
echo "echo \"[*]\"" >> msfupdate
|
||||
echo "echo \"\"" >> msfupdate
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
echo "if [ -x /usr/bin/smart-live-rebuild ]; then" >> msfupdate
|
||||
echo " smart-live-rebuild -f net-analyzer/metasploit" >> msfupdate
|
||||
echo "else" >> msfupdate
|
||||
echo " echo \"Please install app-portage/smart-live-rebuild for a better experience.\"" >> msfupdate
|
||||
echo "emerge --oneshot \"=${CATEGORY}/${PF}\"" >> msfupdate
|
||||
echo "fi" >> msfupdate
|
||||
else
|
||||
echo "echo \"Unable to update tagged version of metasploit.\"" >> msfupdate
|
||||
echo "echo \"If you want the latest please install and eselect the live version (metasploit9999)\"" >> msfupdate
|
||||
echo "echo \"emerge metasploit:9999 -vat && eselect metasploit set metasploit9999\"" >> msfupdate
|
||||
fi
|
||||
#this is set executable in src_install
|
||||
|
||||
#install our database.yml file before tests are run
|
||||
cp "${FILESDIR}"/database.yml config/
|
||||
|
||||
}
|
||||
|
||||
each_ruby_prepare() {
|
||||
MSF_ROOT="." BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle install --local || die
|
||||
MSF_ROOT="." BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle check || die
|
||||
|
||||
#force all metasploit executables to use desired ruby version
|
||||
#https://dev.metasploit.com/redmine/issues/8357
|
||||
for file in $(ls -1 msf*)
|
||||
do
|
||||
#poorly adapted from python.eclass
|
||||
sed -e "1s:^#![[:space:]]*\([^[:space:]]*/usr/bin/env[[:space:]]\)\?[[:space:]]*\([^[:space:]]*/\)\?ruby\([[:digit:]]\+\(\.[[:digit:]]\+\)\?\)\?\(\$\|[[:space:]].*\):#!\1\2${RUBY}:" -i "${file}" || die "Conversion of shebang in '${file}' failed"
|
||||
done
|
||||
}
|
||||
|
||||
each_ruby_test() {
|
||||
#review dev-python/pymongo for ways to make the test compatible with FEATURES=network-sandbox
|
||||
|
||||
#we bogart msfupdate so no point in trying to test it
|
||||
rm spec/msfupdate_spec.rb || die
|
||||
#we don't really want to be uploading to virustotal during the tests
|
||||
rm spec/tools/virustotal_spec.rb || die
|
||||
|
||||
# https://dev.metasploit.com/redmine/issues/8425
|
||||
BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle exec rake db:create || die
|
||||
BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle exec rake db:migrate || die
|
||||
|
||||
MSF_DATABASE_CONFIG=config/database.yml BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle exec rake || die
|
||||
su postgres -c "dropuser msf_test_user" || die "failed to cleanup msf_test-user"
|
||||
}
|
||||
|
||||
each_ruby_install() {
|
||||
#Tests have already been run, we don't need this stuff
|
||||
rm -r spec || die
|
||||
rm -r test || die
|
||||
rm Gemfile.lock || die
|
||||
|
||||
#I'm 99% sure that this will only work for as long as we only support one ruby version. Creativity will be needed if we wish to support multiple.
|
||||
# should be as simple as copying everything into the target...
|
||||
dodir /usr/$(get_libdir)/${PN}${SLOT}
|
||||
cp -R * "${ED}"/usr/$(get_libdir)/${PN}${SLOT} || die "Copy files failed"
|
||||
rm -Rf "${ED}"/usr/$(get_libdir)/${PN}${SLOT}/documentation "${ED}"/usr/$(get_libdir)/${PN}${SLOT}/README.md
|
||||
fowners -R root:0 /
|
||||
|
||||
}
|
||||
|
||||
all_ruby_install() {
|
||||
# do not remove LICENSE, bug #238137
|
||||
dodir /usr/share/doc/${PF}
|
||||
cp -R {documentation,README.md} "${ED}"/usr/share/doc/${PF} || die
|
||||
dosym /usr/share/doc/${PF}/documentation /usr/$(get_libdir)/${PN}${SLOT}/documentation
|
||||
|
||||
fperms +x /usr/$(get_libdir)/${PN}${SLOT}/msfupdate
|
||||
|
||||
#tell revdep-rebuild to ignore binaries meant for the target
|
||||
dodir /etc/revdep-rebuild
|
||||
cat <<-EOF > "${ED}"/etc/revdep-rebuild/99-metasploit${SLOT}
|
||||
#These dirs contain prebuilt binaries for running on the TARGET not the HOST
|
||||
SEARCH_DIRS_MASK="/usr/lib*/${PN}${SLOT}/data/meterpreter"
|
||||
SEARCH_DIRS_MASK="/usr/lib*/${PN}${SLOT}/data/exploits"
|
||||
SEARCH_DIRS_MASK="/usr/lib*/${PN}${SLOT}/data/android/libs"
|
||||
EOF
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Before use you should run 'env-update' and '. /etc/profile'"
|
||||
elog "otherwise you may be missing important environmental variables."
|
||||
|
||||
elog "You need to prepare the database by running:"
|
||||
elog "emerge --config postgresql"
|
||||
elog "/etc/init.d/postgresql-<version> start"
|
||||
elog "emerge --config =metasploit-${PV}"
|
||||
|
||||
"${EROOT}"/usr/bin/eselect metasploit set --use-old ${PN}${SLOT}
|
||||
|
||||
einfo
|
||||
elog "Adjust /usr/lib/${PN}${SLOT}/config/database.yml if necessary"
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
einfo "If the following fails, it is likely because you forgot to start/config postgresql first"
|
||||
su postgres -c "createuser msf_user -D -S -R"
|
||||
su postgres -c "createdb --owner=msf_user msf_database"
|
||||
}
|
||||
Loading…
Reference in a new issue