一、mysql4与5区别
1. MySQL 4版本数据库由于存在着字符转义与不支持字句查询的情况,因此在注入攻击上存在着很大的局限性,只能采用类似Access的方法进行查询猜解。
首先,利用order by获得当前表的字段数,再使用union select联合查询来获取想要的数据库信息。使用union select联合查询数据库时,由于不知道数据库中的表名与字段名,因此只能像Access一样直接用常见表名和字段名进行猜测判断。
2.MySQL 5版本由于information_schema库的存在,注入攻击相对来说方便了许多
通过load_file()函数来读取脚本代码或系统敏感文件内容,进行漏洞分析或直接获取数据库连接账号、密码。
通过dumpfile/outfile函数导出获取WebShell。
二、mysql用户名密码存储位置
数据库最高权限用户是root 密码保存在mysql数据库的user表中,密码是采用mysql5特有的加密,通过cmd5网站进行解密或通过cain等这类专业可以对mysql hash破解.所以对数据库做安全的时候无论如何不能给网站root 权限,一定要给一个普通用户权限。
三、检查注入点
dvwa用户名admin 密码:password
下面order by语句是用来测字段数的,如果正确会显示正常页面,如果错误会有提示信息
http://192.168.16.105:90/DVWA/vulnerabilities/sqli/?id=1' order by 1,3--+&Submit=Submit#
后面的submit是提交按钮,所有要有+连接符
union select user(),version()--+&Submit=Su
本文介绍了MySQL 4与5在数据库注入上的区别,重点讨论了MySQL 5中利用information_schema库进行攻击的方法,包括通过load_file()和outfile函数获取敏感信息。同时,详细说明了MySQL用户名和密码的存储位置以及如何防止高权限泄露。在检查注入点部分,列举了dvwa示例并探讨了如何利用order by检测字段数。最后,文章提到了获取服务器路径的方法,如通过load_file()读取文件,并讨论了写webshell以获取权限的操作。
最低0.47元/天 解锁文章
439

被折叠的 条评论
为什么被折叠?



