信安之路(第四周作业)-数据库系统功能相关学习

问题:

1、学习数据库自带函数的功能与用法(思考在什么情况下可以执行命令)

2、将所有涉及的函数进行测试并举例说明其用法并形成报告

扩展学习:针对自己所选数据库,尝试执行系统命令,自己构造所需环境

具体解释
在 sql
注入时为了应对各种限制措施,利用数据库自带的一些系统函数经过各种变换之后可以绕过一些安全设备或者一些基础防御的措施,比如一些字符串转换的函数、截取字符串长度的函数等,
参考:菜鸟课程
应用的场景包括:通过注入获取数据、变换字符串绕过 WAF、盲注猜解字符数据等
我们经常在注入时候想要利用数据库来执行系统命令,不同的数据库可能使用不不同的方式,比如
Mysql 的 udf、Mssql 的 xp_cmdshell
等,这个在利用注入提权的时候非常有帮助,通过数据库执行系统命令所拥有的权限跟数据库的安装过程是有关系的,所以搞清楚这个关系也很重要,这样我们在安装配置数据库的时候可以尽量避免权限过高,造成安全隐患。
除了学习这些基础基础知识外,自己可以动手构造一些可以利用数据库执行命令的场景然后进行测试,完全理解这个提权的过程。

实践如下:

一开虚拟机就报low disk space,只扩大虚拟机的磁盘空间可不行。

查看磁盘信息:
信安之路(第四周作业)-数据库系统功能相关学习_第1张图片
总空间为120G,现有sda1、sda2、sda5三块磁盘设备。

接下来先创建一个快照,以防接下来的操作出现错误,我们可以接着回到最初。

接下来就是扩展分区了,步骤参加下面的链接

https://jingyan.baidu.com/article/86fae34604bdd53c49121a26.html
信安之路(第四周作业)-数据库系统功能相关学习_第2张图片

Mysql字符串函数:

ascii(s):返回的是第一个字母的ascii码:
信安之路(第四周作业)-数据库系统功能相关学习_第3张图片
信安之路(第四周作业)-数据库系统功能相关学习_第4张图片
char_length(s)与character_length(s);这俩是同义词
信安之路(第四周作业)-数据库系统功能相关学习_第5张图片
信安之路(第四周作业)-数据库系统功能相关学习_第6张图片
信安之路(第四周作业)-数据库系统功能相关学习_第7张图片
concat(s1,s2,s3……);
信安之路(第四周作业)-数据库系统功能相关学习_第8张图片
concat_ws(s,s1,s2,s3……);
在这里插入图片描述
field(s,s1,s2,s3……);
信安之路(第四周作业)-数据库系统功能相关学习_第9张图片

find_in_set(s,s1);
信安之路(第四周作业)-数据库系统功能相关学习_第10张图片
format(x,s);
信安之路(第四周作业)-数据库系统功能相关学习_第11张图片
insert(s1,x,s,s2);s2替换从s1的x开始的s个长度的位置
信安之路(第四周作业)-数据库系统功能相关学习_第12张图片
locate(s1,s2);s1在s2中的起始位置数
信安之路(第四周作业)-数据库系统功能相关学习_第13张图片
lcase(s)与lower(s);
信安之路(第四周作业)-数据库系统功能相关学习_第14张图片
ucase(s)与upper(s);
信安之路(第四周作业)-数据库系统功能相关学习_第15张图片
left(s1,n);返回前n个字符
信安之路(第四周作业)-数据库系统功能相关学习_第16张图片
right(s,n);返回后n个字符:
信安之路(第四周作业)-数据库系统功能相关学习_第17张图片
lpad(s1,n,s2);在s1的开始填充s2,使其达到长度n
信安之路(第四周作业)-数据库系统功能相关学习_第18张图片
rpad(s1,n,s2);
信安之路(第四周作业)-数据库系统功能相关学习_第19张图片
ltrim(s);
信安之路(第四周作业)-数据库系统功能相关学习_第20张图片
rtrim(s);
信安之路(第四周作业)-数据库系统功能相关学习_第21张图片
trim(s);
信安之路(第四周作业)-数据库系统功能相关学习_第22张图片
mid(s,n1,n2);
信安之路(第四周作业)-数据库系统功能相关学习_第23张图片
position(s1 in s2);
信安之路(第四周作业)-数据库系统功能相关学习_第24张图片
repeat(s1,n);
信安之路(第四周作业)-数据库系统功能相关学习_第25张图片
replace(s,s1,s2);s2替换s中s1的位置:
信安之路(第四周作业)-数据库系统功能相关学习_第26张图片
reverse(s);
信安之路(第四周作业)-数据库系统功能相关学习_第27张图片
space(n):
信安之路(第四周作业)-数据库系统功能相关学习_第28张图片
strcmp(s1,s2);
信安之路(第四周作业)-数据库系统功能相关学习_第29张图片
substr(s,n1,n2);
信安之路(第四周作业)-数据库系统功能相关学习_第30张图片
substring_index(s,s1,n);(正左负右)
信安之路(第四周作业)-数据库系统功能相关学习_第31张图片
信安之路(第四周作业)-数据库系统功能相关学习_第32张图片
mysql数字函数:
信安之路(第四周作业)-数据库系统功能相关学习_第33张图片
反余弦值:
信安之路(第四周作业)-数据库系统功能相关学习_第34张图片

余弦值:
信安之路(第四周作业)-数据库系统功能相关学习_第35张图片
正弦值:
信安之路(第四周作业)-数据库系统功能相关学习_第36张图片

反正弦值:
信安之路(第四周作业)-数据库系统功能相关学习_第37张图片
正切值:

[外链图片转存失败(img-ESR4pY8M-1566910578797)(第四周-数据库系统功能相关学习.fld/image039.jpg)]

反正切值:

[外链图片转存失败(img-4cwwwKsw-1566910578797)(第四周-数据库系统功能相关学习.fld/image040.jpg)]

[外链图片转存失败(img-dcS9hQI8-1566910578797)(第四周-数据库系统功能相关学习.fld/image041.jpg)]

余切值:

[外链图片转存失败(img-dRUOkjPi-1566910578798)(第四周-数据库系统功能相关学习.fld/image042.jpg)]

avg();

[外链图片转存失败(img-kp4bCHNQ-1566910578798)(第四周-数据库系统功能相关学习.fld/image043.jpg)]

ceil(n);

[外链图片转存失败(img-3eUONUfM-1566910578798)(第四周-数据库系统功能相关学习.fld/image044.jpg)]

floor(n);

[外链图片转存失败(img-npSA6HZj-1566910578798)(第四周-数据库系统功能相关学习.fld/image045.jpg)]

round(n);返回离n最近的整数:

[外链图片转存失败(img-PtPjEWGC-1566910578799)(第四周-数据库系统功能相关学习.fld/image046.jpg)]

返回查询的记录总数:

[外链图片转存失败(img-kKClbZG3-1566910578799)(第四周-数据库系统功能相关学习.fld/image047.jpg)]

greatest(s1,s2,s3,……);

[外链图片转存失败(img-fPlF2EGg-1566910578800)(第四周-数据库系统功能相关学习.fld/image048.jpg)]

[外链图片转存失败(img-F2JT8BWu-1566910578800)(第四周-数据库系统功能相关学习.fld/image049.jpg)]

[外链图片转存失败(img-dZRcvYw3-1566910578800)(第四周-数据库系统功能相关学习.fld/image050.jpg)]

[外链图片转存失败(img-djl6uyVV-1566910578801)(第四周-数据库系统功能相关学习.fld/image051.jpg)]

[外链图片转存失败(img-t5CyCmoF-1566910578801)(第四周-数据库系统功能相关学习.fld/image052.jpg)]

[外链图片转存失败(img-xvNepoiI-1566910578801)(第四周-数据库系统功能相关学习.fld/image053.jpg)]

[外链图片转存失败(img-Ijx7YFHc-1566910578802)(第四周-数据库系统功能相关学习.fld/image054.jpg)]

rand();返回0到1的随机数

[外链图片转存失败(img-BuOmNEVA-1566910578802)(第四周-数据库系统功能相关学习.fld/image055.jpg)]

sign(x);返回x的符号:

[外链图片转存失败(img-HIn40swq-1566910578802)(第四周-数据库系统功能相关学习.fld/image056.jpg)]

[外链图片转存失败(img-7cLqJCBw-1566910578803)(第四周-数据库系统功能相关学习.fld/image057.jpg)]

[外链图片转存失败(img-eHZ9XoUy-1566910578803)(第四周-数据库系统功能相关学习.fld/image058.jpg)]

[外链图片转存失败(img-VFGFzodH-1566910578803)(第四周-数据库系统功能相关学习.fld/image059.jpg)]

日期函数(不晓得日期函数在攻击中是怎么用的,好奇):

[外链图片转存失败(img-rGpe9Rdk-1566910578804)(第四周-数据库系统功能相关学习.fld/image060.jpg)]

[外链图片转存失败(img-VWcE1L7f-1566910578804)(第四周-数据库系统功能相关学习.fld/image061.jpg)]

[外链图片转存失败(img-IB8KKSY3-1566910578804)(第四周-数据库系统功能相关学习.fld/image062.jpg)]

[外链图片转存失败(img-RnXlnfqt-1566910578805)(第四周-数据库系统功能相关学习.fld/image063.jpg)]

[外链图片转存失败(img-FCQ3BGXD-1566910578805)(第四周-数据库系统功能相关学习.fld/image064.jpg)]

[外链图片转存失败(img-FcJXzjx1-1566910578805)(第四周-数据库系统功能相关学习.fld/image065.jpg)]

[外链图片转存失败(img-tZe35qnx-1566910578806)(第四周-数据库系统功能相关学习.fld/image066.jpg)]

[外链图片转存失败(img-1I8gCAxF-1566910578806)(第四周-数据库系统功能相关学习.fld/image067.jpg)]

[外链图片转存失败(img-lnA7P9N2-1566910578806)(第四周-数据库系统功能相关学习.fld/image068.jpg)]

[外链图片转存失败(img-BUDL5Bzw-1566910578807)(第四周-数据库系统功能相关学习.fld/image069.jpg)]

[外链图片转存失败(img-BPK7Y8Wr-1566910578807)(第四周-数据库系统功能相关学习.fld/image070.jpg)]

[外链图片转存失败(img-zZ2dMb8k-1566910578808)(第四周-数据库系统功能相关学习.fld/image071.jpg)]

[外链图片转存失败(img-M9pjX0We-1566910578808)(第四周-数据库系统功能相关学习.fld/image072.jpg)]

高级函数:

返回二进制编码:

[外链图片转存失败(img-u6FNGJkO-1566910578808)(第四周-数据库系统功能相关学习.fld/image073.jpg)]

转为二进制字符串:

[外链图片转存失败(img-trq4KMHL-1566910578809)(第四周-数据库系统功能相关学习.fld/image074.jpg)]

条件判断:

[外链图片转存失败(img-x9ymfRxh-1566910578811)(第四周-数据库系统功能相关学习.fld/image075.jpg)]

转换数据类型:

[外链图片转存失败(img-jhUIjgm9-1566910578811)(第四周-数据库系统功能相关学习.fld/image076.jpg)]

返回第一个非空表达式:

[外链图片转存失败(img-4OeMFsHt-1566910578811)(第四周-数据库系统功能相关学习.fld/image077.jpg)]

返回服务器的连接数:

[外链图片转存失败(img-klFr3jGX-1566910578812)(第四周-数据库系统功能相关学习.fld/image078.jpg)]

conv(x,n1,n2);将x由n1进制的转为n2进制的:

[外链图片转存失败(img-8ReC6KOq-1566910578812)(第四周-数据库系统功能相关学习.fld/image079.jpg)]

[外链图片转存失败(img-obzC5SUm-1566910578812)(第四周-数据库系统功能相关学习.fld/image080.jpg)]

[外链图片转存失败(img-2Z7l4nTD-1566910578813)(第四周-数据库系统功能相关学习.fld/image081.jpg)]

[外链图片转存失败(img-PNSw0n6D-1566910578813)(第四周-数据库系统功能相关学习.fld/image082.jpg)]

[外链图片转存失败(img-LLXBO8cD-1566910578814)(第四周-数据库系统功能相关学习.fld/image083.jpg)]

[外链图片转存失败(img-z7sSegpl-1566910578814)(第四周-数据库系统功能相关学习.fld/image084.jpg)]

关于mysql的udf漏洞:

以前利用phpstudy复现过,复现过程中借用了sqlmap的提权脚本,将提权脚本上传到lib\plugin文件夹下。

你可能感兴趣的:(web,web安全)