搭建sql本地靶场出现的问题--无法显示SQL注入报错问题

最近想重新打一遍SQL靶场,前几天刚把phpstudy更新到最新版,然后进行本地SQL靶场练习时,发现报错型注入,无报错显示,自闭了一个早上,终于解决了,花了大量时间,希望这篇文章能让你快速解决而不像我被这个小问题搞了半天

问题描述

搭建本地SQL靶场,可以使用一切正常,但到了第五关的,SQL语句文本错误信息没有正常显示
也就是下图红色框的内容并不显示
在这里插入图片描述

问题原因

打开源码通过一系列测试发现我的问题是只是mysql_error()函数无法输出内容但mysql_errno()函数可以输出内容,也就是error和warnings无具体信息显示。
你可以自己试试是不是跟我一样的问题加入代码:

 echo (mysql_errno().":".mysql_error()) 

如果可以输出错误编号却无具体信息可能你的问题和我差不多
下面是我的靶场代码,将上面代码插入测试看看
在这里插入图片描述
其实就是在使用时,我们没找到mysql里的错误信息文件。问题在于其实这个文件是存在的只是,mysql文件的配置信息出错了,才导致这个问题。
在这里插入图片描述
还有一个测试方法就是,在cmd里使用mysql,打条错误的sql语句提示内容是不是(当然错误代码编号不唯一,重点是后面是Unknown error,不显示具体错误信息)

ERROR 1049 (42000): Unknown error 1049

在你的mysql日志文件也可以看到这样的问题

Can't find error-message file 'F:\mysql\mysql-8.0.15-winx64\share\errmsg.sys'. Check error-message file location and 'lc-messages-dir' configuration directive.

解决方案

找到errmsg.txt文件路径,基本是在mysql/share的文件内
打开mysql的my.ini配置文件,添加或修改配置内容
lc-messages-dir="路径"即可

Ps:我就不写太详细了,太费时间了 awsl 我打靶场去了

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值