如何测试靶机是否可以通过sql注入写sheel

如何测试靶机是否可以通过sql注入写sheel,第1张

此方法利用的先决条件

web目录具有写权限,能够使用单引号

知道网站绝对路径(根目录,或则是根目录往下的目录都行)

secure_file_priv没有具体值(在mysql/my.ini中查看)

secure_file_priv

secure_file_priv是用来限制load dumpfile、into outfile、load_file()函数在哪个目录下拥有上传和读取文件的权限。在mysql 5.6.34版本以后 secure_file_priv的值默认为NULL。如下关于secure_file_priv的配置介绍

secure_file_priv的值为null ,表示限制mysqld 不允许导入|导出

当secure_file_priv的值为/tmp/ ,表示限制mysqld 的导入|导出只能发生在/tmp/目录下

当secure_file_priv的值没有具体值时,表示不对mysqld 的导入|导出做限制

所以如果我们要想使用into outfile函数写入一句话的话就需要将secure_file_priv 的值设为没有值,那如何设置了?修改secure_file_priv 的值只能通过手动打开配置文件进行修改,不能直接使用sql语句进行修改

有DVWA,pikachu,bwapp等。

结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式。

所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。

通过对参数进行转义:

比如如下的sql prdtNo这个参数如果包含可能会引起sql注入的字符时,mybatis会对其进行转义

<select id="queryCustomerDetail" resultMap="customerInfoMap">

select

      <include refid="Base_LinkColimn_list"/>

     from FSP_CUSTOMER_INFO i inner join FSP_CUST_RELATION r 

     on i.id=r.cust_id where i.CIF_NO = #{cifNo,jdbcType=VARCHAR}

     and r.PRODUCT_NO=#{prdtNo,jdbcType=VARCHAR}

</select>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8508090.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-17
下一篇 2023-04-17

发表评论

登录后才能评论

评论列表(0条)

保存