0x01 如何找
实战来说,拿到一个shell,肯定是会想上数据库看看的,那么java项目下,数据库配置一般会放哪里呢?
传统的Web应用的数据库配置:一般来说存放在WEB-INF目录下的 *.properties、*.yml、*.xml
SpringBoot项目的数据库配置:一般来说,查找./src/main/resources/目录下即可
SpringBoot单jar应用项目的数据库配置:配置文件大概率需要解压缩jar包,在BOOT-INF目录下的classes文件夹里查看
常见的存储数据库配置信息的文件路径如:db.xmlapplicationContext.xmlhibernate.cfg.xmlc3p0-config.xmlserver.xmljdbc.propertiesdb.propertiesapplication.ymlapplication.properties./WEB-INF/db.xml./WEB-INF/applicationContext.xml./WEB-INF/hibernate.cfg.xml./WEB-INF/jdbc.properties./WEB-INF/jdbc/jdbc.properties./resources/db.yml./resources/db.properties./resources/application.yml./resources/application.properties
0x02 常见的驱动程序类名称
| 常见的驱动程序类名称 | 备注 |
|---|---|
| com.mysql.jdbc.Driver | mysql-connector-java 5中的 |
| com.mysql.cj.jdbc.Driver | mysql-connector-java 6中的 |
| oracle.jdbc.driver.OracleDriver | oracle的驱动类 |
| com.microsoft.sqlserver.jdbc.SQLServerDriver | SQL Server 2005 and 2008 JDBC drive使用 |
| com.microsoft.jdbc.sqlserver.SQLServerDriver | SQL Server 2000 JDBC driver使用 |
| dm.jdbc.driver.DmDriver | 达梦数据库-国产数据库 |
0x03 快速查找
这招是园长教的,也是我最喜欢的方法
注意: 这招无法查找SpringBoot单jar应用项目的数据库配置!!!!注意: 这招无法查找SpringBoot单jar应用项目的数据库配置!!!!注意: 这招无法查找SpringBoot单jar应用项目的数据库配置!!!!注意: 这招无法查找SpringBoot单jar应用项目的数据库配置!!!!注意: 这招无法查找SpringBoot单jar应用项目的数据库配置!!!!注意: 这招无法查找SpringBoot单jar应用项目的数据库配置!!!!语法: find "[路径]" -type f |xargs grep "[驱动程序类名称]"
例子: 查找Mysql配置信息例如我的项目路径是: /Users/pmiaowu/Desktop/JavaTestproject/SpringBootDemo使用的驱动程序类名称是: com.mysql.jdbc.Driver使用: find "/Users/pmiaowu/Desktop/JavaTestproject/SpringBootDemo" -type f |xargs grep "com.mysql.jdbc.Driver"
0x04 致谢
感谢shxjia提出的补充
:)
