2.软文推荐
3.软文推荐
目录: 1、如何使用phpmyadmin管理mysql数据库 2、怎样使用phpmyadmin导入大数据的方法 3、怎样使用phpMyadmin创建Mysql数据库 4、phpMyAdmin利用小结 如何使用phpmyadmin管理mysql数据库本地phpmyadmin远程连接服务器端MySQL 首先要确定mysql远程连接已开启,如果没有开启按照下面的二个方法操作:
方法一:改表法
因为在linux环境下,默认是关闭3306端口远程连接的,需要开启,如果装mysql数据库时开启了3306就OK了。
默认mysql帐号不允许从远程登陆,只允许localhost访问。登入mysql后,更改 "mysql" 数据库 里的 "user"(远程数据库的名称) 表里的 "host" 项,把"localhost"改称"%" 。这样mysql就可以远程操作了。
update user set host = '%' where user = 'root';
注意:这样方法只是把本机localhost访问改为了"%"所有地址IP都可以访问mysql服务器,这样很不安全。默认localhost访问的时候有所有操作权限。所以不安全!推荐用第二个方法。
方法二:授权法 (推荐使用)
(1)SQL语句:
grant select,insert,update,delete on *.* to root@"%" Identified by "password";
允许地址IP上root用户,密码dboomysql来连接mysql的所有数据库,只付给select,insert,update,delete权限。 这样比较安全。如果只允许IP(192.168.1.1)上root用户
访问更安全,操作(2)
(2)SQ语句:
grant select,insert,update,delete on *.* to root@"192.168.1.1" Identified by "password";
只允许地址IP(192.168.1.1)上root用户访问更安全了。
(3)
grant all on *.* to root@"192.168.1.1" Identified by "password"
允许地址192.168.1.1上用root用户,密码password来连接mysql的所有数据库,付给所有权限。不太安全。
现在重启mysql服务,如果服务器上安装了防火墙,看看3306端口开启没,如果没需要开启3306端口才能用了,在linux下要开启防火墙 打开3306 端口,编辑这个文件vi /etc/sysconfig/iptables
输入
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
保存后在控制台输入 /etc/init.d/iptables restart 重启防火墙,记得一定要重启防火墙。
配置好本地PHP环境,下载PHPMYADMIN
方法一:
(一)、下载phpmyadmin
(二)、修改libraries文件夹下的config.default.php文件或者phpmyadmin根目录的config.inc.php文件。
1、查找$cfg['PmaAbsoluteUri'] ,将其值设置为本地的phpmyadmin路径
2、查找$cfg['Servers'][$i]['host'] , 将其值设置为mysql数据库地址,例如127.0.0.1
3、查找$cfg['Servers'][$i]['user'] , 将其值设置为mysql数据库用户名,例如admin
4、查找$cfg['Servers'][$i]['password'] , 将其值设置为mysql数据库密码,例如admin
(三)、在本地访问phpmyadmin 可查看远程mysql数据库,phpMyAdmin 3.3.1只需要修改 $cfg['Servers'][$i]['host']的值,用户名密码 访问phpmyadmin时输入。
方法二:
1,在浏览器中输入:
2,点击“新建服务器” ,填写表单:
服务器名称:主机名称
服务器主机名:主机IP
认证方式:config
config 认证方式的用户名:用户名
config 认证方式的密码:用户密码
3,保存后返回setup界面,点击下载,下载的文件为 config.inc.php
4,将下载的文件 config.inc.php 复制到 /usr/share/phpmyadmin/ 目录下
5,编辑 /usr/share/phpmyadmin/config.inc.php
添加以下代码
/* Server: localhost [1] */
$i++;
$cfg['Servers'][$i]['verbose'] = '主机名称';
$cfg['Servers'][$i]['host'] = '主机IP';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = '用户名';
$cfg['Servers'][$i]['password'] = '密码';
怎样使用phpmyadmin导入大数据的方法使用phpmyadmin导入大数据方法:
1、在phpMyAdmin的目录下,找到根目录的config.inc.php文件;
2、打开config.inc.php文件,查找$cfg['UploadDir'],这个参数就是设定导入文件存放的目录,这里把值设定为:ImportSQLFile。
3、在phpMyAdmin目录下,建立以ImportSQLFile命名的文件夹;
4、把需要导入的数据文件,放到ImportSQLFile文件夹下面;
5、登入phpMyAdmin,选择需要导入的数据,点击导航条上面的“导入”按钮;
6、选中“从网站服务器上传文件夹ImportSQLFile/中选择:”选项,并需要导入的数据文件,
7、最后点击“执行”,即可导入成功。
怎样使用phpMyadmin创建Mysql数据库1、新建数据库:
进入phpmyadmin管理界面以后,找到如下文字“创建一个新的数据库”,然后在下面填上要新建的数据库的名称,在后面的下拉列表中选择数据库的编码,如“utf8_general_ci”,点击“创建”按钮,这样就新建了一个数据库。
2、新建此数据库的对应帐户
在phpmyadmin管理界面点击“权限”,打开链接,点击“添加新用户”,在打开的页面中会看到“登入信息”,输入用户名、主机(一般为本地:localhost)、密码后,因为我们现在是要给单个用户配置单个数据库的权限,在这里不选择“全局权限”,然后点击最下面的“执行”按钮,这样就新建了一个用户名。
3、为新建的用户添加此数据库权限
添加完用户以后,管理界面的上方会提示“您已添加了一个新用户”,
现在就给新建的用户添加权限,在下面找到“按数据库指定权限”。
然后点击“在下列数据库添加权限”后面的下拉列表,选择数据库,选择数据下面的全部,然后选择结构除了最下面三个以外的复选框,其他一律不选,然后点击“执行”按钮,这样就配置好了这个用户完全管理这个数据库的权限了。
注:
1、只是要给这个用户管理这个数据库的全部权限,但是没有其他数据库的管理权限,所以在配置权限的时候一定要注意。
2、INFORMATION_SCHEMA是信息数据库,其中保存着关于MySQL服务器所维护的所有其他数据库的信息。假如不想在phpMyAdmin中显示的话只需要设置在config.inc.php(有的是config.default.php)中设置这样一句:$cfg['Servers'][$i]['hide_db']
= ‘information_schema';
此外,如果在创新用户时,选择“用户数据库”中的“给以 用户名_ 开头的数据库 (username_%)
授予所有权限”选项,新建的用户就可以自己创建以“username_”开头的数据库。
phpMyAdmin利用小结在phpmyadmin根目录下后面添加:
在fofa上搜索相应站点进行测试:
Trick:如何判断目录是否存在,往往确定了/var/www/html目录,但是还有一层目录不能 确定,可以采用目标域名+常用的网站根目录的方式进行爆破,当使用
不存在将会报错Can't create/write to file '/var/www/html/666.txt' (Errcode: 2);
如果存在但是目录写不进去将返回(Errcode: 13);
利用过程:
1、获取网站绝对路径
2、判断是否有读写权限:
版本5.5.53之前默认为空,之后的版本默认为null
这个值是只读变量,只能通过配置文件修改,且更改后需重启服务才生效
3、写入shell到网站根目录下
原理:MySQL5.0版本以上会创建日志文件,phpmyadmin有一个记录日志的文件,但是一般情况下会关闭。通过修改日志的全局变量,打开日志并指定日志保存路径,设置日志记录名称为.php
查询日志全局变量:
打开日志全局变量:
设置日志保存路径:
进行查询,使查询的语句写入日志文件中:
原理:只有当查询语句执行的时间要超过系统默认的时间时,该语句才会被记入进慢查询日志
启用慢查询日志(默认禁用):
修改slow_query_log_file日志文件的绝对路径以及文件名:
慢查询时间值:
如果查询时间超过了这个时间值(默认为10秒),这个查询语句将被记录到慢查询日志中
通常情况下执行sql语句时的执行时间一般不会超过10s,所以说这个日志文件应该是比较小的,而且默认也是禁用状态,不会引起管理员的察觉。
向日志文件写入shell:
phpmyadmin反序列化漏洞任意文件读取(WooYun-2016-199433)
影响phpMyAdmin 2.x版本,poc如下:
CVE-2016-5734 RCE:
利用条件:
主要原因由于将用户输入的信息拼接进preg_replace函数第一个参数中,而在PHP5.4.7以前,preg_replace存在漏洞,可以0进行截断,并将正则模式修改为e,进而执行命令。
在Kali中有自带的EXP
具体请参考:
CVE-2018-12613文件包含:
利用条件:
满足以下5个条件:
判断是否存在漏洞经过二次编码绕过
/index.php?target=db_sql.php%253f/../../../../../../../../etc/passwd
然后在sql语句中执行一些语句记录到日志,然后在包含即可
SELECT '?php phpinfo()?';
查询phpmyadmin cookie值(开发者工具查看)
CVE-2014 -8959:本地文件包含
利用条件:
POC:
在实际利用中可以利用写入文件到/tmp目录下结合此漏洞完成RCE,php版本可以通过http header、导出表内容到文件的附加内容看到。
CVE-2013-3238:
利用条件:
msf有相应的利用模块:
exploit/multi/http/phpmyadmin_preg_replace
CVE-2012-5159:
利用条件:
msf有相应的利用模块:
exploit/multi/http/phpmyadmin_3522_backdoor
CVE-2009-1151:
PhpMyAdmin配置文件/config/config.inc.php存在命令执行
利用条件:
msf有相应的利用模块:
exploit/unix/webapp/phpmyadmin_config
弱口令万能密码:
弱口令:版本phpmyadmin2.11.9.2, 直接root用户登陆,无需密码
万能密码:版本2.11.3 / 2.11.4,用户名’localhost’@'@”则登录成功
phpMyAdmin渗透利用总结
phpMyAdmin 渗透利用总结
1
目录:1、俄罗斯vps速度快吗2、onevps端口放行在哪3、国外VPS云服务器选择攻略心得分享4、国际三字代码表 要以国家区分 有城市的中文名和...