Codeby web-security - новый курс от Codeby Security School

Представляем вашему вниманию новый курс от команды The Codeby - "Тестирование Веб-Приложений на проникновение с нуля". Общая теория, подготовка рабочего окружения, пассивный фаззинг и фингерпринт, Активный фаззинг, Уязвимости, Пост-эксплуатация, Инструментальные средства, Social Engeneering и многое другое. Подробнее ...


Metasploit не запускается из-за ошибки

За последнее время Metasploit часто обновлялся. И это не прошло бесследно — они его таки сломали. Теперь он перестал запускаться — вылетает при старте.

Полюбоваться на жалобы на эту проблему можно на оф. форуме Kali, баг трекере Kali и других авторитетных ресурсах. Например:

  • https://forums.kali.org/showthread.php?25860-msfconsole-fails-to-start&p=46259
  • https://bugs.kali.org/view.php?id=2337
  • https://community.rapid7.com/thread/7388

Полный вывод ошибки такой:

root@WebWare-Kali:~# msfconsole
DEPRECATION WARNING: Support for Rails < 4.1.0 will be dropped. (called from <top (required)> at /opt/metasploit/apps/pro/ui/lib/metasploit/pro/ui.rb:16)
/opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/wicked-0.5.0/app/controllers/wicked/wizard_controller.rb:5:in `<top (required)>': uninitialized constant ApplicationController (NameError)
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/engine.rb:465:in `block (2 levels) in eager_load!'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/engine.rb:464:in `each'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/engine.rb:464:in `block in eager_load!'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/engine.rb:462:in `each'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/engine.rb:462:in `eager_load!'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/engine.rb:347:in `eager_load!'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/application/finisher.rb:56:in `each'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/application/finisher.rb:56:in `block in <module:Finisher>'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/initializable.rb:30:in `instance_exec'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/initializable.rb:30:in `run'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/initializable.rb:55:in `block in run_initializers'
from /opt/metasploit/ruby/lib/ruby/2.1.0/tsort.rb:226:in `block in tsort_each'
from /opt/metasploit/ruby/lib/ruby/2.1.0/tsort.rb:348:in `block (2 levels) in each_strongly_connected_component'
from /opt/metasploit/ruby/lib/ruby/2.1.0/tsort.rb:427:in `each_strongly_connected_component_from'
from /opt/metasploit/ruby/lib/ruby/2.1.0/tsort.rb:347:in `block in each_strongly_connected_component'
from /opt/metasploit/ruby/lib/ruby/2.1.0/tsort.rb:345:in `each'
from /opt/metasploit/ruby/lib/ruby/2.1.0/tsort.rb:345:in `call'
from /opt/metasploit/ruby/lib/ruby/2.1.0/tsort.rb:345:in `each_strongly_connected_component'
from /opt/metasploit/ruby/lib/ruby/2.1.0/tsort.rb:224:in `tsort_each'
from /opt/metasploit/ruby/lib/ruby/2.1.0/tsort.rb:205:in `tsort_each'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/initializable.rb:54:in `run_initializers'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/application.rb:215:in `initialize!'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/railtie/configurable.rb:30:in `method_missing'
from /usr/share/metasploit-framework/config/environment.rb:5:in `<top (required)>'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/polyglot-0.3.5/lib/polyglot.rb:65:in `require'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/polyglot-0.3.5/lib/polyglot.rb:65:in `require'
from /opt/metasploit/apps/pro/vendor/bundle/ruby/2.1.0/gems/railties-4.0.13/lib/rails/application.rb:189:in `require_environment!'
from /usr/share/metasploit-framework/lib/metasploit/framework/command/base.rb:63:in `require_environment!'
from /usr/share/metasploit-framework/lib/metasploit/framework/command/base.rb:81:in `start'
from /opt/metasploit/apps/pro/msf3/msfconsole:48:in `<main>'

Решение проблемы Metasploit в Kali Linux

На Kali Linux нужно сделать следующее:


Paranoid - курс от Codeby Security School

Представляем вашему вниманию курс от команды codeby - "Комплекс мер по защите персональных данных, анонимности в интернете и не только" Подробнее ...


ln -f -s /usr/share/metasploit-framework/msfconsole /usr/bin/msfconsole

После этого Metasploit заработает.

Если запускать его без поддержки базы данных, то он запуститься быстро. Если запускать Metasploit с поддержкой базы данных (как это сделано описано в этой инструкции), то процесс может зависнуть, если ему не хватит оперативной памяти, поскольку там будут выполняться какие-то внутренние операции — пересобираться кэш базы данных или что-то такое.

Решение проблемы Metasploit в других дистрибутивах Linux

Metasploit может быть расположен в других каталогах, отличных от тех, которые используются в Kali Linux

Необходимо использовать следующую команду, для определения путей:

locate msfconsole

Среди вывода будет:

/usr/bin/что-то_ещё
/usr/share/metasploit-framework/что-то_ещё

И уже на основании вывода поменять вышеприведённую команду. Например, в некоторых дистрибутивах она будет выглядеть так:

ln -f -s /usr/share/metasploit-framework/msfvenom /usr/bin/msfvenom

Codeby Market от Сodeby

Мы запустили свой магазин CodebyMarket Equipment for InfoSec. Уже добавили RaspberryAlfa Long-RangeOrange PiArduino и многое другое. Купить Pentesting Devices