metasploit无法使用默认msf3连接

时间:2015-09-14 09:47:29

标签: postgresql ubuntu-14.04 metasploit

我在/ opt / metasploit中的ubuntu 14.04(LTS)中安装了metasploit v4。我也安装了postgresql。我对metasploit和postgresql非常新鲜。我启动metasploit,但我无法连接到数据库,所以我更改了这个文件/opt/metasploit/apps/pro/ui/config/database.yml,我只是将密码更改为“testtest”,文件内容为:

development:
     adapter: "postgresql"
     database: "msf3"
     username: "msf3"
     password: "testtest"
     port: 7337
     host: "localhost"
     pool: 256
     timeout: 5

  production:
    adapter: "postgresql"
    database: "msf3"
    username: "msf3"
    password: "testtest"
    port: 7337
    host: "localhost"
    pool: 256
    timeout: 5

所以我这样做:

service postgresql restart
service metasploit restart

那些成功执行。我运行“msfconsole”,然后得到“msf>”,我运行:

msf> db_connect msf3:testtest@127.0.0.1/msf3
msf> db_stats
[*] postgresql selected, no connection

我不知道会发生什么,所以我再次运行msfconsole,我得到了这个:

[-] Failed to connect to the database: FATAL:  password authentication failed for user "msf3"

我可以使用postgres创建新用户和数据库,然后使用db_connect进行连接。但每次,我都必须再次运行db_connect。所以我认为metasploit默认使用msf3作为用户和数据库。我想连接到msf3。我该怎么办?

6 个答案:

答案 0 :(得分:12)

在Kali Rolling 2016.2上有同样的错误 打开终端并输入:

msfdb delete
msfdb init
msfconsole

简而言之,您需要通过msf。

重新创建db msf使用

答案 1 :(得分:3)

sudo /opt/metasploit/postgresql/scripts/ctl.sh start postgresql

这将使用metasploit 4.14.8启动 postgresql 服务器。

答案 2 :(得分:0)

您应该尝试运行db_connect而无需任何选项。

也可能需要获取密码的哈希值并将其作为密码参数传递。这是使用msfrpc api模块时必须传递密码的方式。

答案 3 :(得分:0)

您可以将文件直接传递给db_connect,如下所示:

db_connect -y /usr/share/metasploit-framework/config/database.yml

答案 4 :(得分:0)

我知道这是旧线程,但是我发现了其他适合我的解决方案。 我检查了存储在{{1}中的postgresql.conf,并将默认端口配置为54 33 。Metasploit的Web服务在54 43 上运行。 所以我编辑了配置,现在对我有用! 希望能对某人有所帮助。

答案 5 :(得分:-1)

尝试这适用于我:

 >  msfdb delete

    >  msfdb init

    >  msfconsole

on kali2017.2