权限提升Web篇

权限总类

Linux

管理员UID为0:超级用户,即root用户,相当于system和administrator的集合

系统用户UID为1-999: Linux系统为了避免因某个服务程序漏洞而被黑客提权的普通用户,拥有部分权限

UID从1000开始: 是由管理员创建的用于日常工作的用户

Windows


用户及组: system adminlstrator user guest

phpmyadmin

PhpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库

phpmyadmin很可能存在弱密码root/root,phpmyadmin获得shell有两种方式

 into outfile导出木马

想在网站内部插入木马,前提是你得知道网站的绝对路径,最方便的是用点击sql,select @@basedir;直接查,也可以尝试phpinfo界面查看

|show global variables like '%secure%';使用这个命令查看

show global variables like '%secure%';使用这个命令查看
Variable_name Value
secure_auth OFF
secure_file_priv NULL

当`secure_file_priv`为NULL时,表示限制Mysql不允许导入导出,所以爆出错误。要想使得该语句导出成功,则需要在Mysql文件夹下修改my.ini文件,在[mysqld]内加入secure_file_priv =""`即可(注意在phpmyadmin不能修改,只能在安装目录修改),如果不能修改只能放弃这一方法

当secure_file_priv的值没有具体值时,表示不对mysqld 的导入|导出做限制,此时就可以执行导出命令。

select '' into outfile 'C:/phpStudy/MySQL/www/xxx/php';      注意Windows是\,而linux是/

利用MySQL日志文件

Mysql 5.0版本以上会创建日志文件,通过修改日志的全局变量,也可以getshell。但是也要对生成的日志有可读可写的权限。(注:linux因为权限问题亲测没有成功)。先来介绍两个MySQL全局变量:general_log 和 general_log file。

general log 指的是日志保存状态,general log file 指的是日志的保存路径。查看日志状态的命令:

show variables like '%general%'; 查看日志状态的命令
Variable_name Value
general_log OFF
general_log_file C:\phpStudy\MySQL\data\stu1.log

在以上配置中,当开启general时,所执行的sql语句都会出现在WIN-30DFNC8L78A.log文件。那么,如果修改general_log_file的值,那么所执行的sql语句就会对应生成,进而getshell。

set global general_log='on';

set global general_log_file='C:/phpStudy/www/xxx.php';

select ''

获得web权限途径

获得web权限后

获得Web权限后,可以寻找数据库配置文件,如果找到数据库账号密码,就可以借助数据库进行下一步的渗透,或者拿到网站后台账号密码,获得后台权限,即使数据库账号密码加密,也可以尝试破解或者直接添加密码,修改源码等方式。

你可能感兴趣的:(前端,adb,android)