在Metasploit中使用PostgreSQL
启动postgresql数据库
#service postgresql start
登录数据库
#sudo -u postgres psql psql (11.2 (Debian 11.2-2)) 输入 "help" 来获取帮助信息.
设置postgres密码
postgres=# \password postgres
创建用户msf_db,密码为admin
postgres=# CREATE USER msf_db WITH PASSWORD 'admin'; CREATE ROLE
为用户msf_db创建一个数据库msf_db
CREATE DATABASE 数据库名 OWNER 用户名
postgres=# CREATE DATABASE msf_db OWNER msf_db;
CREATE DATABASE
exit退出,输入msfconsole启动msf
连接数据库:
msf > db_connect msf_db:admin@localhost/msf_db
查看连接状态:
msf5 > db_status
[*] Connected to msf_db. Connection type: postgresql. Connection name: AugOVMKJ.
断开连接:
msf > db_disconnect
hosts命令检查数据库正常使用
msf5 > hosts Hosts ===== address mac name os_name os_flavor os_sp purpose info comments ------- --- ---- ------- --------- ----- ------- ---- -------- 10.10.10.1 00:50:56:c0:00:08 Unknown device 10.10.10.2 00:50:56:f3:5a:a1 Unknown device 10.10.10.128 attacker.dvssc.com 10.10.10.129 00:0c:29:3c:86:a4 www.dvssc.com Linux server 10.10.10.130 00:0c:29:e1:9d:8f service.dvssc.com Unknown device 10.10.10.254 00:0C:29:5A:43:59 gate.dvssc.com
PostgreSQL常用命令
\password 设置密码
\q 退出
\h 查看SQL命令的解释,比如\h select
\? 查看psql命令列表
\l 列出所有数据库
\c [database_name] 连接其他数据库
\x 对数据做展开操作
\du 列出所有用户
\dt:连接进入到某个数据库后,使用此命令查看数据库中的所有表;
\d TableName:查看某个表的描述,此命令可以用来查看某个表中的列元素和相应的数据类型;
创建数据库用户xxx
CREATE USER xxx WITH PASSWORD 'xxxxxx';
创建数据库yyy并指定全部者为xxx
CREATE DATABASE yyy OWNER xxx;
将对数据库yyy的全部操作权限赋给用户xxx,否则xxx仅仅能登录控制台,没有不论什么数据库的操作权限
GRANT ALL PRIVILEGES ON DATABASE yyy to xxx;
删除数据库yyy
DROP DATABASE yyy;
删除用户xxx
DROP USER XXX;