1.什么是DCL?

(1)DCL数据控制语言

主要是DBA来管理权限使用的,包括如何授权和回收权限。而对于注入者来说,注入的目标之一是提升权限,这样我们获得数据的能力和控制范围就扩大,另外我们可以授权一个具有较高权限的临时账户或者把一个已经存在的账户,但是权限范围比较小的,我们把它提升起来,这样既有隐秘性,又达到目的。

2.如何创建一个从任意IP登录的超级权限用户

我们输入mysql hxf

首先,我们需要从数据库字典中,查出数据库中,到底有那些用户,这些用户有哪些可以使用的

mysql.user是mysql中的用户字典,select host,user,password from mysql.user;

我们看到当前中,root没有密码,对于root没有密码,往往是我们忽略的一部分,这也是需要注意的地方,凡是密码为空的,我们都应该置为密码,如果不置密码,我们应该把它删除掉,

授权一个超级管理用户,授权,我们使用grant,所有权限,我们使用all privileges,就是所有权限,授权限是针对所有,所以用on,星就代表数据库,*.*代表所有数据库下的任意表或者其它对象,授权给谁,to一个admin,admin往往是管理员的账号,对当前我们没有admin,使用admin相对比较隐秘,@的目的是从那里登录,输个%号,说明可以从任意地方登录,密码验证使用identified,by ‘abc’,这样我们就创建了一个具有在任何数据库,任何表对象下,具有所有权限的admin账户,它能够从任意地方登录,密码是abc,回车,grant all privileges on *.* to admin@'%' identified by 'abc';

这样就成功了,我们还可以通过,数据字典表查找出来,验证一下,select host,user,password from mysql.user;

我们看到已经加进去了,那么这就成功创建了一个从任意ip登录的超级权限用户

我们概括一下

授权:grant all privileges on *.* to admin@'%' identified by ‘abc’;

这种情况是授权所有的权限

验证:mysql -h 192.168.233.128 -uadmin -pabc

从任意地方登录,说明可以从外网登录,当然我们这是一个测试机,没有外网,但是我们可以验证一下,我们打开一个用户窗口

我们在这里刷新一下权限,flush privileges;

刷新完之后,我们用ifconfig看一下

假设inet addr是外网地址,那么我们mysql -h,h是指明登录的IP地址是那个,-u是admin,指明登录的用户名是什么,-p是指登录的密码是什么,abc,那么回车,mysql -h 192.168.248.137 -uadmin -pabc

登录失败,我觉得可能是我系统的问题,懒得搞了,我这里放几张视频里面的截图

我们发现已经登录进去了,show databases;

我们看到所有的数据库和表,这说明,它具有非常高的权限

我们如何创建一个具有少量权限的用户,有时候我们不需要这么高权限的用户

3.如何创建一个从指定权限的用户

比如我们输入一个只有select、insert级别的用户,这样对一些数据库表中,我们仅仅是记录数据或查询数据,这样它不能够修改和删除,对于我们数据库的操作来说,这样是安全的

grant之后授予select、insert,on说明,在那里,在什么数据库表对象上具有这种权限,*.*对所有数据库,给谁,to admin2,那么还可以从任意地方登录,密码我们仍然使用abc,回车,grant select,insert on *.* to admin2@'%' identified by 'abc';

我们刷新一下权限,目的是在内存中,把权限表刷新一下,flush privileges;

好,那么验证一下,它只有select和insert的权限,然后我们打开一个窗口验证一下,我们连接到hxf数据库,mysql -uadmin2 -pabc hxf

show tables;我们可以看到所有的表

我们还可以查询一下users2,select * from users2;

我们看到可以select,接下来,我们可以做一个insert操作,我们插入一个uid和uname,那么我们插入1和michael,insert into users2(uid,uname) select 1,‘michael’;

我们看到确实插进去了,我们还可以验证一下,select * from users2;

这个是michael,但是我们想更新它,update users2 set password=123 where uid=1;

我们看到update命令被拒绝掉了,原因是它没有权限

因此,我们概括一下

授权:grant select,insert on *.* to admin2@'%' identified by 'abc';

假如,我们在授权的时候,只授权select、insert,给admin只有select、insert权限,对于其它权限是没有的

验证:mysql -h 192.168.233.128 -uadmin2 -pabc

那么我们可以验证一下,但是往往在应用中,我们也处理这种问题,所以有部分只写日志表的这个应用程序,只使用admin2,那么它只有select、insert操作,但是对我们注入成功之后,我们会发现admin2它的权限相对比较小,因此我们要想利用admin2现有的账号,因为我们增加账号,可能会引起管理员的注意,而对现有的账号进行提权,反而隐蔽性更强

操作:insert,select,update,delete

4.数据库提权

假如我们注入成功之后,我们提权和授权的操作是一致的,我们就把所有的权限,all privileges on *.*授权给admin2,密码我们就不在修改了,回车,grant all privileges on *.* to admin2@'%';

刷新一下权限,flush privileges;

我们在这边在验证一下,update users2 set password=123 where uid=1;

exit,回出去

我们在重新登录,mysql -uadmin2 -pabc hxf

我们在更新一次,update users2 set password=123 where uid=1;

我们发现更新成功,那就说明提权之后,就可以进行更新操作,这里就可以证明,我们提权的操作是成功的

利用当前登录的管理员账号,对其它用户提权

提权备用账户:grant all privileges on *.* to admin2@'%';(提权)

5.小结

1.DCL语言与授权、注入提权应用

1-9DCL语言与提权逻辑相关推荐

  1. Penetration_Testing_POC-About 渗透测试有关的POC、EXP、脚本、提权、小工具等

    Penetration_Testing_POC 搜集有关渗透测试中用到的POC.脚本.工具.文章等姿势分享,作为笔记吧,欢迎补充. Penetration_Testing_POC 请善用搜索[Ctrl ...

  2. 护卫神mysql提权_护卫神主机大师被提权漏洞利用(可千万不能乱装护卫神主机管理一键安装的软件)...

    "护卫神·主机大师支持一键安装网站运行环境(IIS+ASP+ASP.net+PHP5.2-5.6+MySQL+FTP+伪静态+PhpMyAdmin),并可在线开设主机.SQL Server和 ...

  3. 护卫神主机大师被提权漏洞利用(可千万不能乱装护卫神主机管理一键安装的软件)

    "护卫神·主机大师支持一键安装网站运行环境(IIS+ASP+ASP.net+PHP5.2-5.6+MySQL+FTP+伪静态+PhpMyAdmin),并可在线开设主机.SQL Server和 ...

  4. 37: sudo提权 、 Ansible配置 、 Ansible Playbook 、 Ansible进阶 、 总结和答疑

    Top NSD AUTOMATION DAY02 案例1:配置sudo权限 案例2:修改Ansible配置 案例3:Playbook应用案例 案例4:Playbook应用案例 1 案例1:配置sudo ...

  5. SUDO提权-Ansible配置-变量-Playbook应用案例

    返回 文章目录 1 案例1:配置sudo权限 1.1 问题 1.2 方案 步骤一:配置sudo提权 2 案例2:修改Ansible配置 2.1 问题 步骤一:配置普通用户远程管理其他主机 1)修改主配 ...

  6. 护卫神主机大师被提权漏洞利用(可千万不能乱装护卫神主机管理一键安装的软件)...

    "护卫神·主机大师支持一键安装网站运行环境(IIS+ASP+ASP.net+PHP5.2-5.6+MySQL+FTP+伪静态+PhpMyAdmin),并可在线开设主机.SQL Server和 ...

  7. 护卫神mysql提权_护卫神主机大师提权漏洞利用分析

    *本文原创作者:Freedom,本文属FreeBuf原创奖励计划,未经许可禁止转载 0x01 前言 护卫神·主机大师支持一键安装网站运行环境(IIS+ASP+ASP.net+PHP5.2-5.6+My ...

  8. 护卫神mysql提权_护卫神主机大师被提权漏洞利用(可千万不能乱装护卫神主机大师安装的软件)...

    原标题:护卫神主机大师被提权漏洞利用(可千万不能乱装护卫神主机大师安装的软件) "护卫神·主机大师支持一键安装网站运行环境(IIS+ASP+ASP.net+PHP5.2-5.6+MySQL+ ...

  9. linux显示不在sudoers文件中,Ubuntu无法使用sudo提权提示当前用户不在sudoers文件中...

    Ubuntu安装后默认root不能登陆系统,密码也是随机生成,其他用户使用root权限,可以使用sudo提权,前提是该用户在/etc/sudoers配置列表中. 但是有时用户名从/etc/sudoer ...

最新文章

  1. Matlab与线性代数 -- 对角矩阵
  2. platform平台工作原理
  3. 《HTML、CSS、JavaScript 网页制作从入门到精通》——6.6 单元格属性
  4. MySQL root密码重置 报错:mysqladmin: connect to server at 'localhost' failed的解决方案
  5. UA OPTI544 量子光学7 2-level system approximation的Density Matrix模型
  6. 360金融CEO徐军发明:资金饥渴分模型
  7. sy-repid 和 sy-cprog的区别
  8. elasticsearch 数据类型_基于 MySQL Binlog 的 Elasticsearch 数据同步实践
  9. 探索云计算、大数据的特色化应用之路
  10. 深入理解 JVM Class文件格式(六)
  11. 南阳14(会场安排问题)
  12. 闭关修炼了5个月的源码,终于拿到蚂蚁金服Offer
  13. 同名文件替换怎么恢复_U盘里被替换的文件怎么恢复?方法选对,其实很简单...
  14. HDU杭电操作系统实验报告-操作系统课程设计-咸鱼的自留地
  15. Mi11Pro刷机记录
  16. Stanford Dogs Dataset(斯坦福狗数据集)
  17. Linux系统数据文件和信息
  18. Cisco Vlan trunk
  19. 一文速学数模-降维模型(一)PCA(主成分分析法)原理以及应用+代码实现
  20. iOS 开发者账号总结

热门文章

  1. 加拿大滑铁卢大学计算机世界排名,滑铁卢大学世界排名
  2. 周易六十四卦——谦卦
  3. proe常用c语言语句,Proe如何使用if条件语句?
  4. v-model的radio checkbox以及键盘修饰符使用
  5. python function gamma_Python math gamma()用法及代码示例
  6. linux下解压iso镜像文件方法
  7. 谷歌浏览器显示不安全内容
  8. UiPath:以API接口方式启动流程
  9. 编写一个静态方法 lg(),接受一个整型参数 N,返回不大于 log2N 的最大整数
  10. 快对作业超级计算机,快对作业2020