[总结] MSF攻击数据库服务
0x01 攻击Mysql服务
1.1 目标探测
auxiliary/scanner/mysql/mysql_version
常用于内网中的批量mysql主机发现:
1.2 爆破登录
auxiliary/scanner/mysql/mysql_login
常用于内网中的批量以及单主机的登录测试:
1.3 udf提权
exploit/multi/mysql/mysql_udf_payload
常用于root启动的mysql 并root的udf提权:
1.4 mof提权
exploit/windows/mysql/mysql_mof
1.5 执行命令
auxiliary/admin/mysql/mysql_sql
执行sql语句。尤其是在目标机没有web界面等无法用脚本执行的环境:
0x02 攻击Sql server服务
2.1 发现内网数据库
auxiliary/scanner/mssql/mssql_login
内网渗透中的常用模块之一,支持RHOSTS,来批量发现内网mssql主机
2.2 查阅数据库信息
auxiliary/admin/mssql/mssql_enum
非常详细的目标机Sql server 信息:
2.3 dbowner
发现dbowner,当sa无法得知密码的时候,或者需要其他账号提供来支撑下一步的内网渗透。
auxiliary/admin/mssql/mssql_escalate_dbowner
2.4 调用cmd_exec
auxiliary/admin/mssql/mssql_exec
最常用模块之一,当没有激活xp_cmdshell,自动激活。并且调用执行cmd命令。权限继承Sql server
2.5 调用cmd_sql
auxiliary/admin/mssql/mssql_sql
最常用模块之一,如果熟悉Sql server 数据库特性,以及sql语句。建议该模块,更稳定。
2.6 执行sql文件
auxiliary/admin/mssql/mssql_sql_file
当需要执行多条sql语句的时候,或者非常复杂。msf本身支持执行sql文件。授权渗透应用较少,非授权应用较多的模块。
2.7 payload执行
exploit/windows/mssql/mssql_payload
非常好的模块之一,在实战中。针对不同时间版本的系统都有着自己独特的方式来上传payload
由于本季的靶机是 windows 2003,故参数set method old,如果本次的参数为cmd,那么payload将会失败。
在内网横向渗透中,需要大量的主机发现来保证渗透的过程。而以上的插件,在内网横向或者Sql server主机发现的过程中,尤为重要。
与Mysql 不同的是,在Sql server的模块中,一定要注意参数的配备以及payload的组合。否则无法反弹payload。
0x03 参考链接
----------------------------------------------------------------------------
作者:肖洋肖恩、
----------------------------------------------------------------------------
文中可能会存在纰漏,若发现请联系与我。
本文所有代码仅可用于站长自我检测与学习,如用于非法攻击一切后果自负。